:root{--green-900: #14311a;--green-800: #24572e;--green-700: #31753d;--green-600: #4a954e;--green-500: #65aa57;--green-100: #eef7eb;--green-050: #f8fcf7;--text: #213022;--muted: #5f6f60;--line: #d8e3d4;--shadow: 0 18px 45px rgba(21, 47, 24, .12);--radius-lg: 28px;--radius-md: 20px;--radius-sm: 14px;--max-width: 1360px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;font-family:"Source Sans 3",sans-serif;color:var(--text);background:linear-gradient(#0a1e0e33,#0a1e0e33),url(/pnpgrass.png) center center / cover fixed no-repeat}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}#root{min-height:100vh}.admin-page-surface{min-height:100vh;width:100%;background:#fff}.page{width:min(calc(100% - 1rem),var(--max-width));margin:0 auto;background:#fffffaeb;box-shadow:0 30px 80px #0e1f1029;min-height:100vh}.site-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#fffff8fa;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(49,117,61,.08)}.brand{display:inline-flex;align-items:center;gap:.85rem}.brand-badge{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:linear-gradient(135deg,var(--green-700),var(--green-500));color:#fff;font-family:Montserrat,sans-serif;font-weight:800}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy strong,.header-phone strong,.section-heading h2,.hero-copy h1,.cta-strip h2,.about-copy h2{font-family:Montserrat,sans-serif}.brand-copy strong{font-size:1.05rem}.brand-copy small{color:var(--muted)}.site-nav{display:flex;flex:1 1 auto;justify-content:center;gap:1.4rem;min-width:0}.site-nav a{font-weight:700;color:var(--green-800)}.header-phone{display:inline-flex;flex-direction:column;align-items:flex-end;color:var(--green-800);white-space:nowrap;flex:0 0 auto;margin-left:auto}.header-phone span{font-size:.85rem;color:var(--muted)}.header-phone strong{font-size:1.1rem}.menu-toggle{display:none;border:0;border-radius:999px;padding:.8rem 1rem;background:var(--green-700);color:#fff}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:1.5rem;padding:1.2rem 1.5rem 2rem;align-items:stretch}.hero-media,.service-overview-card,.service-card,.gallery-card,.calendar-card,.booking-card,.about-media{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.hero-media{overflow:hidden;border-radius:var(--radius-lg);min-height:540px}.hero-media img{height:100%;object-fit:cover}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:2rem;border-radius:var(--radius-lg);background:linear-gradient(180deg,#fffffff5,#f0f8edfa);border:1px solid var(--line);box-shadow:var(--shadow)}.eyebrow{margin:0 0 .9rem;color:var(--green-700);font-size:.84rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hero-copy h1{margin:0;max-width:11ch;font-size:clamp(3rem,5.8vw,4.85rem);line-height:.95;color:var(--green-900)}.hero-text,.section-heading p,.service-card p,.gallery-copy p,.about-copy p,.booking-help,.calendar-note,.service-overview-card p,.site-footer p,.cta-strip p{color:var(--muted);line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:1.8rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.15rem;padding:0 1.4rem;border-radius:999px;border:1px solid transparent;background:linear-gradient(135deg,var(--green-700),var(--green-500));color:#fff;font-weight:700;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.button:hover,.button:focus-visible{transform:translateY(-2px);box-shadow:0 14px 28px #4a954e33}.button-secondary,.button-light{background:#fff;color:var(--green-800);border-color:#31753d29}.hero-points{display:grid;gap:.85rem;margin-top:1.8rem}.hero-points p{margin:0;padding-left:1rem;border-left:3px solid var(--green-500);font-weight:700}.service-overview-card h2,.gallery-copy h3,.service-card h3,.calendar-header h3{margin:0;font-family:Montserrat,sans-serif}.service-overview-card h2{padding:1.1rem 1.1rem .25rem;font-size:1.3rem;color:var(--green-900)}.service-overview-card p{margin:0;padding:0 1.1rem 1.2rem}.section{padding:4rem 1.5rem}.section-heading{max-width:720px;margin:0 auto 2rem;text-align:center}.section-heading h2,.cta-strip h2,.about-copy h2{margin:0;font-size:clamp(2.1rem,4vw,3.35rem);color:var(--green-900)}.signature-section{display:grid;gap:1.5rem}.signature-heading{max-width:780px}.signature-heading h2{margin:0;font-family:Montserrat,sans-serif;font-size:clamp(2.3rem,4vw,3.8rem);line-height:.98;color:var(--green-900)}.signature-heading p:last-child{max-width:62ch;color:var(--muted);line-height:1.7}.signature-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:1.15rem;align-items:start}.signature-feature,.signature-secondary,.signature-owner-card,.about-note{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.signature-feature img,.signature-secondary img{height:100%;object-fit:cover}.signature-feature{min-height:100%}.signature-feature img{height:360px}.signature-feature-copy,.signature-secondary-copy,.signature-owner-card,.about-note{padding:1.4rem}.signature-feature-copy h3,.signature-secondary-copy h3,.signature-service-card h3,.signature-owner-card h3,.about-note h3{margin:0;font-family:Montserrat,sans-serif;color:var(--green-900)}.signature-feature-copy p:last-child,.signature-secondary-copy p,.signature-service-card p,.signature-owner-card p,.about-note p{color:var(--muted);line-height:1.7}.signature-services{display:grid;gap:.9rem}.signature-service-card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:1rem;align-items:start;padding:1.15rem 1.2rem;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg,#fff,#f6fbf4);box-shadow:var(--shadow)}.signature-service-card span{display:inline-flex;align-items:center;justify-content:center;width:3.3rem;height:3.3rem;border-radius:50%;background:linear-gradient(135deg,var(--green-700),var(--green-500));color:#fff;font-family:Montserrat,sans-serif;font-weight:800}.signature-service-card h3{margin-bottom:.45rem}.signature-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.signature-secondary img{height:250px}.signature-owner-card{display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at top right,rgba(101,170,87,.18),transparent 30%),linear-gradient(180deg,#fff,#eff7ec)}.signature-owner-list{margin:1rem 0 0;padding-left:1.2rem;color:var(--green-800);line-height:1.9;font-weight:700}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{padding:1.5rem;border-radius:var(--radius-md);background:linear-gradient(180deg,#eef7ebe6,#fffffff2)}.service-card h3{margin-bottom:.7rem;color:var(--green-800)}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:1rem}.gallery-card{overflow:hidden;border-radius:var(--radius-md)}.gallery-card img{height:310px;object-fit:cover}.gallery-large img{height:100%;min-height:460px}.gallery-copy{padding:1.1rem 1.2rem 1.25rem}.gallery-copy h3{color:var(--green-900)}.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 1.5rem 0;padding:2rem;border-radius:var(--radius-lg);color:#fff;background:linear-gradient(#24572ed6,#24572ed6),url(/pnpback.jpg) center / cover;box-shadow:var(--shadow)}.cta-strip h2,.cta-strip p,.cta-strip .eyebrow{color:#fff}.about-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.92fr);gap:1.25rem;align-items:center}.about-copy{padding-right:1rem}.about-list{margin:1.5rem 0 0;padding-left:1.2rem;color:var(--green-800);line-height:1.9;font-weight:700}.about-note{background:linear-gradient(180deg,#fffffff5,#eff7ecf5)}.booking-layout{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:1rem}.booking-section-priority{padding-top:1.5rem}.calendar-card,.booking-card{padding:1.4rem;border-radius:var(--radius-lg)}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.calendar-nav{border:1px solid var(--line);background:var(--green-050);color:var(--green-800);padding:.7rem .9rem;border-radius:999px;cursor:pointer;font-weight:700}.calendar-nav:disabled{opacity:.45;cursor:not-allowed}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem}.calendar-weekdays{margin-bottom:.6rem}.calendar-weekdays span{text-align:center;font-size:.85rem;font-weight:700;color:var(--muted)}.calendar-day{min-height:3.5rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text);cursor:pointer;font-weight:700}.calendar-day:hover,.calendar-day:focus-visible{border-color:var(--green-500)}.calendar-day.is-empty{border-color:transparent;background:transparent;cursor:default}.calendar-day.is-disabled{color:#9aa89a;background:#f3f6f2;cursor:not-allowed}.calendar-day.is-selected{background:linear-gradient(135deg,var(--green-700),var(--green-500));border-color:transparent;color:#fff}.selected-date-box{margin-bottom:1rem;padding:1rem;border-radius:var(--radius-md);background:var(--green-100)}.selected-label{margin:0 0 .2rem;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--green-700)}.selected-date-box strong{font-size:1.15rem;color:var(--green-900)}.booking-card{display:grid;gap:.95rem}.booking-card label{display:grid;gap:.45rem;font-weight:700;color:var(--green-900)}.booking-card input,.booking-card select,.booking-card textarea,.estimate-card input,.estimate-card select,.estimate-card textarea,.admin-day-card input{width:100%;border:1px solid var(--line);border-radius:14px;padding:.9rem 1rem;background:#fff;color:var(--text)}.booking-card textarea,.estimate-card textarea{resize:vertical}.address-autocomplete{position:relative}.address-fieldset{display:grid;gap:.75rem}.address-fieldset-label{font-weight:700;color:var(--green-900)}.address-autocomplete-menu{position:absolute;top:calc(100% + .45rem);left:0;right:0;z-index:16;display:grid;gap:.35rem;padding:.55rem;border:1px solid var(--line);border-radius:16px;background:#fffffffa;box-shadow:0 18px 40px #122d171f}.address-autocomplete-option,.address-autocomplete-state{width:100%;padding:.85rem .95rem;border-radius:12px}.address-autocomplete-option{border:1px solid transparent;background:#fff;color:var(--text);text-align:left;cursor:pointer}.address-autocomplete-option:hover,.address-autocomplete-option:focus-visible{border-color:#4a954e3d;background:var(--green-050)}.address-autocomplete-state{background:var(--green-050);color:var(--muted);font-weight:600}.field-helper-text{font-size:.92rem;color:var(--muted);font-weight:600}.address-detail-row{align-items:start}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.time-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.time-slot{min-height:3.1rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--green-900);font-weight:700;cursor:pointer}.time-slot:hover,.time-slot:focus-visible{border-color:var(--green-500)}.time-slot.is-selected{background:linear-gradient(135deg,var(--green-700),var(--green-500));border-color:transparent;color:#fff}.time-slot-empty{border:1px dashed var(--line);border-radius:14px;padding:.95rem 1rem;background:var(--green-050);color:var(--muted);font-weight:600}.booking-button{width:100%}.booking-feedback{min-height:1.5rem;color:var(--green-800);font-weight:700}.planner-booking-section{padding-top:1.5rem}.planner-booking-section .section-heading{margin-bottom:1.1rem}.planner-booking-section .section-heading h1{margin:0;font-family:Montserrat,sans-serif;font-size:clamp(1.75rem,2.4vw,2.35rem);line-height:1.15;color:var(--green-900)}.planner-booking-section .section-heading p{margin-top:.55rem;font-size:.98rem}.planner-booking-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:1rem;align-items:start}.planner-booking-grid.is-consultation{grid-template-columns:minmax(0,1fr)}.planner-form-card,.planner-side-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.planner-form-card{display:grid;gap:1rem;padding:1.2rem}.planner-form-card label,.planner-schedule-card label{display:grid;gap:.45rem;font-weight:700;color:var(--green-900)}.planner-step{display:grid;grid-template-columns:52px minmax(0,1fr);gap:.9rem;align-items:start}.planner-step h3{margin:0;font-family:Montserrat,sans-serif;color:var(--green-900)}.planner-step p,.planner-helper-note,.planner-side-copy p{margin:.35rem 0 0;color:var(--muted);line-height:1.7}.planner-step-number{display:inline-flex;align-items:center;justify-content:center;width:3.1rem;height:3.1rem;border-radius:50%;background:linear-gradient(135deg,var(--green-700),var(--green-500));color:#fff;font-family:Montserrat,sans-serif;font-weight:800;font-size:1.15rem}.planner-choice-row,.planner-weekday-row,.admin-action-row{display:flex;flex-wrap:wrap;gap:.75rem}.planner-choice,.planner-day-pill{min-height:2.5rem;padding:0 .85rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--green-900);font-weight:700;cursor:pointer}.planner-choice.is-selected,.planner-day-pill.is-selected,.planner-inline-selected{background:linear-gradient(135deg,var(--green-700),var(--green-500))!important;color:#fff!important;border-color:transparent!important}.planner-schedule-card{display:grid;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--green-050)}.planner-checkbox{display:inline-flex!important;align-items:center;gap:.65rem;font-weight:800;color:var(--green-900)}.planner-checkbox input,.admin-switch input{width:auto!important}.planner-helper-label{margin:0 0 .55rem;font-weight:800;color:var(--green-900)}.planner-confirmation{padding:1rem;border-radius:var(--radius-md);background:var(--green-100);color:var(--green-900)}.planner-confirmation p{margin:.4rem 0 0;color:var(--green-800)}.planner-side-card{display:grid;gap:1rem;padding:1.2rem}.consultation-flow-form{display:grid;gap:1.2rem;width:min(100%,820px);margin:0 auto;padding:0}.consultation-intro h3{margin:0;font-family:Montserrat,sans-serif;font-size:clamp(1.45rem,2vw,1.85rem);color:var(--green-900)}.consultation-intro p{margin:.45rem 0 0;color:var(--muted);line-height:1.7}.consultation-section{display:grid;gap:.9rem}.consultation-section h4{margin:0;font-family:Montserrat,sans-serif;font-size:1.2rem;color:var(--green-900)}.consultation-flow-form label{display:grid;gap:.45rem;font-weight:700;color:var(--green-900)}.consultation-flow-form input,.consultation-flow-form select,.consultation-flow-form textarea{width:100%;border:1px solid #cdd9c8;border-radius:12px;padding:.72rem .85rem;background:#fff;color:var(--text)}.consultation-services-field{margin:0;padding:0;border:0;display:grid;gap:.65rem}.consultation-services-field legend{padding:0;font-weight:800;color:var(--green-900)}.consultation-service-list{display:grid;gap:.55rem}.consultation-service-option{display:flex!important;align-items:center;gap:.65rem;padding:.65rem .75rem;border:1px solid var(--line);border-radius:12px;background:#fbfdf9;cursor:pointer}.consultation-service-option input{width:1rem!important;height:1rem!important;margin:0}.consultation-service-option span{color:var(--text);font-weight:700}.consultation-notes textarea{min-height:150px}.consultation-divider{height:1px;background:var(--line)}.planner-mini-calendar{padding:0;border:0;box-shadow:none}.planner-side-copy{padding:.2rem .2rem 0}.planner-layout{grid-template-columns:250px minmax(0,1fr)}.planner-sidebar{gap:1rem}.client-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:1rem;align-items:start}.client-detail-stack{display:grid;gap:1rem}.estimate-filter-rail{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:.5rem;align-items:center;padding-bottom:.15rem}.estimate-filter-button{width:auto;flex:0 0 auto;white-space:nowrap}.estimate-request-list{gap:.9rem}.estimate-request-item{border:1px solid var(--line);border-radius:var(--radius-md);background:#f7fbf6;padding:.75rem}.estimate-inline-card{margin-top:.7rem}.client-list{display:grid;gap:.7rem;margin-top:1rem}.client-list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;padding:.95rem 1rem;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--green-050)}.client-list-item strong{display:block;color:var(--green-900)}.client-list-item span{display:block;margin-top:.3rem;color:var(--muted)}.client-list-item.is-selected{background:linear-gradient(180deg,#fff,#eff7ec);border-color:var(--green-500)}.client-list-item-stack{display:grid;gap:.9rem}.client-row-main{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.client-row-dropdown{border-top:1px dashed var(--line);padding-top:.95rem}.client-search-wrap{display:grid;gap:.5rem;margin-bottom:1rem}.client-search-input{min-height:3.2rem!important;font-size:1.05rem;padding:1rem 1.1rem!important}.client-dropdown-card{margin-bottom:1rem}.admin-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-detail-grid strong{display:block;color:var(--green-900)}.admin-detail-grid p{margin:.35rem 0 0;color:var(--muted);line-height:1.7}.planner-admin-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.65rem}.planner-admin-day{min-height:7.2rem;padding:.75rem;border:1px solid var(--line);border-radius:18px;background:#fff;text-align:left;cursor:pointer}.planner-admin-day.is-selected{border-color:var(--green-500);background:linear-gradient(180deg,#fff,#eff7ec)}.planner-admin-day-number{display:block;font-weight:800;font-size:1.05rem;color:var(--green-900)}.planner-admin-day-count,.planner-admin-day-block{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;margin-top:.55rem;padding:0 .75rem;border-radius:999px;font-size:.98rem;font-weight:800}.planner-admin-day-count{background:linear-gradient(135deg,var(--green-700),var(--green-500));color:#fff}.planner-admin-day-block{background:#fff3d6;color:#8b5d00}.availability-preview-grid{display:grid;gap:.8rem;margin:1rem 0 1.1rem}.availability-preview-grid.is-day{grid-template-columns:1fr}.availability-preview-grid.is-week{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-preview-grid.is-month{grid-template-columns:repeat(3,minmax(0,1fr))}.availability-preview-card{display:grid;gap:.45rem;text-align:left;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#f7fbf6;cursor:pointer}.availability-preview-card strong{color:var(--green-900)}.availability-preview-card span{color:var(--muted);font-weight:700}.availability-preview-card.is-selected{border-color:var(--green-500);background:linear-gradient(180deg,#fff,#eff7ec)}.availability-selected-card{display:grid;gap:.9rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-md);background:#f7fbf6;margin-bottom:1rem}.estimate-section{padding-top:1rem}.estimate-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:1rem;align-items:start}.estimate-card,.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.estimate-card{display:grid;gap:.95rem;padding:1.5rem}.estimate-card label{display:grid;gap:.45rem;font-weight:700;color:var(--green-900)}.section-heading-left{max-width:none;margin:0 0 .5rem;text-align:left}.contact-card{padding:1.5rem;background:radial-gradient(circle at top right,rgba(101,170,87,.18),transparent 30%),linear-gradient(180deg,#fff,#eff7ec)}.contact-card h3{margin:0;font-size:1.55rem;color:var(--green-900)}.contact-card p,.contact-list{color:var(--muted);line-height:1.7}.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.3rem}.contact-list{margin:1.25rem 0 0;padding-left:1.2rem}.site-footer{display:flex;justify-content:space-between;gap:1rem;padding:2rem 1.5rem 3rem;border-top:1px solid var(--line)}.site-footer strong,.site-footer a{font-family:Montserrat,sans-serif;color:var(--green-900)}.owner-link{display:inline-flex;margin-top:.85rem;font-size:.92rem;color:var(--green-700)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}.admin-shell{width:min(calc(100% - 1.5rem),1660px);margin:0 auto;padding:1rem 0 2rem;font-size:.94rem}.admin-auth-card,.admin-card,.admin-sidebar,.admin-inline-alert,.admin-list-card{background:#fff;border:1px solid #d8ddd6;border-radius:12px;box-shadow:none}.admin-auth-card{width:min(100%,520px);margin:8vh auto 0;padding:1.5rem;display:grid;gap:.85rem}.admin-auth-card h1,.admin-topbar h1,.admin-card h2,.admin-card h3,.admin-list-card h2,.admin-list-card h3,.admin-kpi-card strong,.admin-message-card strong,.admin-booking-card strong,.contact-card h3{font-family:Montserrat,sans-serif}.admin-auth-card h1,.admin-topbar h1,.admin-card h2,.admin-card h3,.admin-list-card h2,.admin-list-card h3{margin:0;color:var(--green-900)}.admin-topbar h1{font-size:clamp(1.25rem,1.7vw,1.6rem)}.admin-card h2,.admin-list-card h2{font-size:clamp(1.15rem,1.35vw,1.4rem)}.admin-card h3,.admin-list-card h3{font-size:1.02rem}.admin-auth-card label,.admin-card label{display:grid;gap:.45rem;font-weight:700;color:var(--green-900)}.admin-auth-card input,.admin-card input,.admin-card textarea,.admin-card select{width:100%;border:1px solid var(--line);border-radius:14px;padding:.72rem .82rem;background:#fff;color:var(--text)}.admin-card textarea{resize:vertical}.admin-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1rem;align-items:start}.admin-sidebar{position:sticky;top:1rem;padding:1rem;display:grid;gap:1rem}.admin-brand{display:flex;align-items:center;gap:.9rem}.admin-brand strong{display:block;color:var(--green-900)}.admin-brand p,.admin-sidebar-note p,.admin-topbar-copy,.admin-note{margin:.35rem 0 0;color:var(--muted);line-height:1.7}.admin-nav{display:grid;gap:.6rem}.admin-nav-button{display:flex;align-items:center;justify-content:space-between;gap:.6rem;width:100%;text-align:left;padding:.75rem .85rem;border-radius:10px;border:1px solid #d8ddd6;background:#fff;color:#243326;font-weight:800;cursor:pointer}.admin-nav-button-label{min-width:0}.admin-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.3rem;height:1.3rem;padding:0 .35rem;border-radius:999px;background:#e53935;color:#fff;font-size:.72rem;font-weight:800;line-height:1}.admin-nav-button.is-active{background:var(--green-700);color:#fff;border-color:var(--green-700)}.admin-sidebar-note{padding:1rem;border-radius:10px;background:#fff;border:1px solid #d8ddd6}.admin-main{display:grid;gap:.85rem}.admin-topbar{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.1rem;border-radius:12px;background:#fff;border:1px solid #d8ddd6;box-shadow:none}.admin-topbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.admin-chip{display:inline-flex;align-items:center;justify-content:center;min-height:2.1rem;padding:0 .75rem;border-radius:999px;font-weight:800}.admin-chip{background:#eff2ef;color:#324335;font-size:.88rem}.admin-chip.is-soft{background:#21302214;color:var(--text)}.admin-inline-alert{padding:1rem 1.2rem;color:#8f3600;background:#fff4e9}.admin-inline-alert.is-success{color:#1f5d2c;background:#eaf7e9}.admin-inline-alert.is-warning{color:#8f3600;background:#fff4e9}.admin-tab-stack{display:grid;gap:.85rem}.admin-card,.admin-list-card{padding:.95rem}.admin-card-header,.admin-repeat-header,.admin-day-header,.admin-message-top,.admin-booking-top{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.admin-card-header{margin-bottom:.7rem}.admin-kpi-grid,.admin-quick-grid{display:grid;gap:.85rem}.admin-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-kpi-card{padding:1rem;border-radius:10px;background:#fff;border:1px solid #d8ddd6;box-shadow:none}.admin-kpi-card span{display:block;color:var(--muted);font-weight:700}.admin-kpi-card strong{display:block;margin-top:.35rem;font-size:clamp(1.7rem,3.5vw,2.2rem);color:#1f2e21}.admin-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-list,.admin-message-list,.admin-booking-list,.admin-stack{display:grid;gap:.75rem}.admin-list-item,.admin-message-card,.admin-booking-card,.admin-repeat-card,.admin-day-card{padding:.75rem;border:1px solid #d8ddd6;border-radius:10px;background:#fff}.admin-list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-list-item strong,.admin-message-card strong,.admin-booking-card strong{display:block;color:var(--green-900)}.admin-list-item p,.admin-message-card p,.admin-booking-card p{margin:.25rem 0 0;color:var(--muted)}.admin-grid{display:grid;gap:1rem}.admin-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-list-section{display:grid;gap:.7rem;margin-top:1rem}.admin-section-label{margin:0;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.estimate-line-item{display:grid;grid-template-columns:minmax(0,2fr) 120px 140px auto;gap:1rem;align-items:end}.estimate-line-remove{align-self:end;min-height:2.75rem}.admin-full{grid-column:1 / -1}.admin-remove{border:0;background:transparent;color:#9b3a3a;font-weight:700;cursor:pointer}.admin-image-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1rem}.admin-preview{width:160px;height:110px;object-fit:cover;border-radius:14px;border:1px solid var(--line);background:#f4f6f3}.admin-upload{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 1.2rem;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--green-800);cursor:pointer}.admin-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.admin-uploading,.admin-message{color:var(--green-800);font-weight:700}.admin-empty{padding:1rem;border:1px dashed var(--line);border-radius:10px;color:var(--muted);background:#fff}.admin-shell .button{background:var(--green-700);border-color:var(--green-700);box-shadow:none}.admin-shell .button:hover,.admin-shell .button:focus-visible{transform:none;box-shadow:none}.admin-shell .button-secondary{background:#fff;border-color:#cfd6ce;color:#233425}.admin-home-stack{gap:1rem}.admin-home-primary{padding:1rem 1.1rem}.admin-home-job-list{gap:.6rem}.admin-home-job-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.9rem;padding:.75rem .1rem;border-bottom:1px solid #ecefec}.admin-home-job-row:last-child{border-bottom:0}.admin-home-address{margin:.22rem 0 0;color:#667466;font-size:.9rem}.admin-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.95rem;padding:0 .7rem;border-radius:999px;border:1px solid #d9ddd8;background:#f3f5f3;color:#2c3a2f;font-size:.82rem;font-weight:700;white-space:nowrap}.admin-home-secondary-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:.85rem;align-items:start}.admin-home-request-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.65rem .1rem;border-bottom:1px solid #ecefec}.admin-home-request-row:last-child{border-bottom:0}.admin-home-request-row .button{min-height:2.35rem;padding-inline:.9rem}.admin-home-quick{display:grid;gap:.85rem}.admin-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-day-card{display:grid;gap:.8rem}.admin-availability-actions{display:flex;flex-wrap:wrap;gap:.75rem}.admin-time-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.admin-time-slot-grid .planner-day-pill{min-height:2.75rem;justify-content:center}.availability-slot-pill.is-disabled,.availability-slot-pill:disabled{background:#e7ece5!important;color:#6d7b6f!important;border-color:#d2dad0!important;cursor:not-allowed;opacity:1}.admin-switch{display:inline-flex!important;align-items:center;gap:.5rem;font-weight:800}.admin-switch input{width:auto}.admin-booking-groups{display:grid;gap:1rem}.admin-booking-group h3{margin:0 0 .75rem}.admin-booking-meta,.admin-message-meta,.admin-action-row{display:flex;flex-wrap:wrap;gap:.75rem}.admin-booking-meta,.admin-message-meta{margin-top:.7rem}.admin-booking-meta a,.admin-message-meta a{color:var(--green-800);font-weight:700}.admin-action-row{margin-top:1rem}.schedule-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(420px,.95fr);gap:.75rem;align-items:start}.schedule-left-column{display:grid;gap:.75rem}.schedule-jobs-card{position:sticky;top:.8rem;padding:.75rem}.schedule-jobs-list{max-height:72vh;overflow-y:auto;padding-right:.2rem;gap:.45rem}.schedule-view-controls,.schedule-filter-controls{margin-top:0;gap:.4rem}.schedule-control-button{min-height:2rem;padding:0 .65rem;border-radius:8px;font-size:.8rem;font-weight:700}.schedule-calendar-nav{min-height:2rem;padding:.4rem .65rem;border-radius:8px;font-size:.8rem}.schedule-calendar-grid{gap:.42rem}.schedule-calendar-day{min-height:5.2rem;padding:.5rem;border-radius:10px}.schedule-calendar-day .planner-admin-day-number{font-size:.95rem}.schedule-day-count,.schedule-day-block{min-height:1.4rem;margin-top:.35rem;padding:0 .45rem;border-radius:7px;font-size:.72rem;font-weight:800}.schedule-day-count{background:#e9efe8;color:#1e3021;border:1px solid #d2dcd1}.schedule-day-block{background:#f7efd8;color:#6f5416;border:1px solid #ead9ab}.schedule-calendar-day.is-selected{background:#f7faf6;border-color:#6da172}.schedule-job-card{padding:.6rem .65rem;border-radius:8px;border:1px solid #dce3db;background:#fff;display:grid;gap:.28rem}.schedule-job-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.schedule-job-head strong{margin:0;font-size:.95rem;line-height:1.2}.schedule-job-datetime{margin:0;font-size:.8rem;color:#627163}.schedule-job-service{margin:0;font-size:.84rem;color:#273629}.schedule-job-address,.schedule-job-phone{margin:0;font-size:.76rem;color:#7a887b}.schedule-status-badge{min-height:1.45rem;padding:0 .45rem;border-radius:6px;font-size:.72rem;font-weight:700}.schedule-job-actions{display:flex;flex-wrap:nowrap;gap:.35rem;margin-top:.3rem}.schedule-action-button{min-height:1.85rem;padding:0 .55rem;border-radius:7px;font-size:.76rem;font-weight:700}.availability-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,.95fr);gap:1rem;align-items:start}.availability-block-card{position:sticky;top:.8rem}.availability-block-list{max-height:62vh;overflow-y:auto;padding-right:.2rem}@media(max-width:980px){.site-header{display:grid;grid-template-columns:auto auto;grid-template-areas:"brand menu" "nav nav" "phone phone";padding-inline:1rem}.brand-lockup{grid-area:brand}.menu-toggle{grid-area:menu;justify-self:end;display:inline-flex}.site-nav{grid-area:nav;display:none;flex-direction:column;align-items:flex-start;padding:1rem;border-radius:var(--radius-md);background:#fff;border:1px solid var(--line)}.site-nav.is-open{display:flex}.header-phone{grid-area:phone;align-items:flex-start}.hero,.signature-layout,.signature-bottom,.about-section,.estimate-layout,.planner-booking-grid,.booking-layout,.client-layout,.service-grid,.gallery-grid,.form-row,.admin-layout,.admin-kpi-grid,.admin-quick-grid,.admin-home-secondary-grid,.admin-day-grid,.admin-grid-2,.admin-grid-3,.schedule-layout{grid-template-columns:1fr}.schedule-jobs-card{position:static}.schedule-jobs-list{max-height:none;overflow:visible}.schedule-job-actions{flex-wrap:wrap}.client-row-main{flex-direction:column;align-items:stretch}.availability-layout{grid-template-columns:1fr}.availability-block-card{position:static}.availability-block-list{max-height:none;overflow:visible}.estimate-line-item{grid-template-columns:1fr}.time-slot-grid,.planner-admin-calendar,.admin-time-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-detail-grid{grid-template-columns:1fr}.availability-preview-grid.is-week,.availability-preview-grid.is-month{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-large img,.gallery-card img,.hero-media{min-height:0;height:auto}.cta-strip,.site-footer,.admin-topbar{flex-direction:column;align-items:flex-start}.admin-sidebar{position:static}.admin-topbar-actions{justify-content:flex-start}}@media(max-width:640px){.page{width:min(calc(100% - 1rem),var(--max-width));background:#fffffaf5}.site-header{padding:.75rem .85rem}.hero-copy{padding:1.35rem}.hero-copy h1{max-width:100%;font-size:clamp(2.5rem,12vw,3.6rem)}.calendar-weekdays,.calendar-grid{gap:.35rem}.calendar-day{min-height:3rem}.planner-admin-calendar,.time-slot-grid,.admin-time-slot-grid{grid-template-columns:1fr}.client-list-item{flex-direction:column;align-items:flex-start}.availability-preview-grid.is-week,.availability-preview-grid.is-month{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
