:root{--ink:#252925;--muted:#6e716b;--paper:#f7f3eb;--cream:#eee5d6;--white:#fffdf8;--brown:#976845;--brown-dark:#714a2f;--green:#607263;--line:#ddd6ca;--serif:'Newsreader',Georgia,serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500;line-height:1.04;letter-spacing:-.025em}h1{font-size:clamp(3.2rem,7vw,6.8rem)}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{line-height:1.25}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,28px);border-bottom:1px solid var(--line);background:rgba(247,243,235,.95);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-weight:700}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--green);color:white;font-family:var(--serif)}nav{display:flex;align-items:center;gap:28px;font-size:.92rem}nav>a:not(.button):hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-toggle{display:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;background:var(--brown-dark);color:#fff;padding:14px 22px;border:0;border-radius:4px;font:600 .92rem var(--sans);cursor:pointer}.button:hover{background:#593923}.button.small{padding:10px 16px}.button.secondary{background:var(--green)}.eyebrow{text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;font-weight:700;color:var(--brown)}.lead{font-size:clamp(1.08rem,2vw,1.35rem);color:#51554f;max-width:680px}.hero{min-height:690px;display:grid;grid-template-columns:1.08fr .92fr}.hero-copy{padding:100px max(5vw,40px) 50px;display:flex;flex-direction:column;justify-content:center}.hero h1{max-width:760px;margin:18px 0 28px}.hero .lead{max-width:660px}.actions{display:flex;align-items:center;gap:28px;margin:20px 0 55px}.text-link{font-weight:700}.hero-image{background-size:cover;background-position:center;min-height:590px;position:relative}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(22,26,22,.58))}.hero-note{position:absolute;z-index:1;left:40px;bottom:38px;color:white}.hero-note span,.hero-note strong{display:block}.hero-note strong{font:500 1.75rem var(--serif)}.trust-row{display:flex;flex-wrap:wrap;gap:12px 26px;padding-top:28px;border-top:1px solid var(--line);font-size:.85rem}.trust-row span{color:#4e5f50}.section{padding:110px max(5vw,40px)}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:50px}.section-head h2{margin:10px 0 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-icon{display:grid;place-items:center;width:44px;height:44px;background:var(--cream);border-radius:50%;font-size:1.2rem}.service h3{margin:28px 0 8px;font-size:1.1rem}.service p,.project-card p{color:var(--muted);font-size:.92rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:110px max(7vw,50px)}.warm{background:var(--cream)}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid #d3c6b4}.steps li>span{color:var(--brown);font-size:.72rem;font-weight:700}.steps p{margin:4px 0;color:var(--muted);font-size:.9rem}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-card img{aspect-ratio:4/3;object-fit:cover;margin-bottom:20px}.project-card>span{color:var(--brown);text-transform:uppercase;font-size:.68rem;letter-spacing:.12em}.project-card h3{font:500 1.6rem var(--serif);margin:8px 0}.about-preview{padding-top:60px}.about-image{min-height:500px;background:url('https://images.unsplash.com/photo-1562259929-b4e1fd3aef09?auto=format&fit=crop&w=1000&q=80') center/cover}.final-cta{text-align:center;background:#344038;color:white;padding:110px 25px}.final-cta h2{margin:16px 0}.final-cta p{color:#d8ded8}.light{color:#d9c0aa}.light-button{background:var(--white);color:var(--ink)}footer{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px;padding:60px max(5vw,40px);background:#202720;color:#d9ddd7;font-size:.85rem}footer p{color:#aeb6ae;margin-top:14px}.footer-brand{color:white}.page-hero{padding:110px max(8vw,60px) 80px;border-bottom:1px solid var(--line)}.page-hero h1{max-width:950px;margin:16px 0 24px}.page-hero.compact{text-align:center}.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;padding-top:60px}.service-detail-grid article{padding:38px;border-bottom:1px solid var(--line)}.service-detail-grid h2{font-size:2rem}.service-detail-grid small{color:var(--brown);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.inline-cta{display:flex;align-items:center;justify-content:space-between;margin:0 max(5vw,40px) 100px;padding:55px;background:var(--cream)}.inline-cta h2{margin:0}.story{align-items:start}.quiet-card,.panel{background:var(--white);border:1px solid var(--line);padding:34px;box-shadow:0 12px 30px rgba(44,37,28,.04)}dl{margin:0}dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--brown);font-weight:700}dd{margin:5px 0 24px}.faq-list{max-width:900px;margin:auto;padding-top:50px}.faq-list details{border-bottom:1px solid var(--line);padding:25px 4px}.faq-list summary{font:500 1.55rem var(--serif);cursor:pointer}.faq-list details p{color:var(--muted);padding:18px 0 0;max-width:760px}.form-shell{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:90px max(7vw,50px)}.form-intro{position:sticky;top:110px;align-self:start}.form-intro h1{font-size:clamp(3rem,5vw,5.2rem);margin:15px 0 25px}.form-tip{border-left:3px solid var(--brown);padding:8px 20px;margin-top:40px}.form-tip p{color:var(--muted);font-size:.9rem;margin:5px 0}.estimate-form fieldset{border:0;border-top:1px solid var(--line);padding:30px 0 45px;margin:0}.estimate-form legend{font:500 1.8rem var(--serif);padding-right:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.full{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:700}label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cbc2b6;background:var(--white);border-radius:3px;padding:13px 14px;font:1rem var(--sans);color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(96,114,99,.35);border-color:var(--green)}textarea{resize:vertical}.upload-zone{border:1px dashed #aaa093;padding:30px;text-align:center;align-items:center;background:rgba(255,255,255,.35)}.upload-zone input{border:0;background:none;width:auto}.file-list{font-size:.82rem;margin-top:12px;color:var(--green)}.fine-print,.disclaimer{font-size:.78rem;color:var(--muted)}.flash-wrap{position:fixed;z-index:50;right:20px;top:100px;max-width:390px}.flash{background:var(--ink);color:white;padding:14px 18px;margin-bottom:8px;box-shadow:0 8px 24px #0003}.flash.error{background:#7c3d33}.flash.success{background:var(--green)}.confirmation{max-width:760px;margin:auto;padding:120px 30px;text-align:center}.success-mark{margin:0 auto 25px;display:grid;place-items:center;width:65px;height:65px;border-radius:50%;background:var(--green);color:white;font-size:1.8rem}.confirmation .quiet-card{text-align:left;margin:40px 0}.helper-shell{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:100px max(7vw,50px)}.helper-form{display:flex;flex-direction:column;gap:22px}.result{border-left:3px solid var(--green);padding:25px;margin-top:35px;background:var(--cream)}.result>span,.panel-label{text-transform:uppercase;color:var(--brown);font-size:.7rem;letter-spacing:.13em;font-weight:700}.disclaimer{max-width:900px;margin:0 auto 90px;padding:22px;border-top:1px solid var(--line);text-align:center}.login-shell{min-height:70vh;display:grid;place-items:center;padding:60px 20px}.login-shell form{width:min(440px,100%);display:flex;flex-direction:column;gap:20px}.login-shell h1{font-size:3.4rem;margin:8px 0}.admin-shell{padding:65px max(5vw,40px)}.admin-head,.detail-head{display:flex;align-items:end;justify-content:space-between}.admin-head h1,.detail-head h1{font-size:4rem;margin:8px 0}.text-button{background:none;border:0;text-decoration:underline;cursor:pointer}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:38px 0}.stat-grid a{background:var(--white);border:1px solid var(--line);padding:22px;display:flex;justify-content:space-between}.stat-grid strong{font:500 2rem var(--serif)}.filter-row,.status-actions{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.chip{border:1px solid var(--line);border-radius:30px;padding:8px 14px;background:transparent;font:500 .78rem var(--sans);cursor:pointer}.chip.active{background:var(--ink);color:white}.table-wrap{overflow:auto;background:var(--white);border:1px solid var(--line)}table{width:100%;border-collapse:collapse;min-width:800px}th,td{text-align:left;padding:16px;border-bottom:1px solid var(--line);font-size:.84rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.67rem}.status{display:inline-block;padding:5px 9px;border-radius:3px;background:#e7e2d9;font-size:.72rem}.status-new{background:#e2ebdf;color:#3f5b42}.status-accepted,.status-scheduled{background:#dce8e5;color:#345651}.status-declined{background:#eee0dc;color:#783e35}.status.large{padding:9px 14px}.detail-head{margin-top:35px}.detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;align-items:start}.detail-main,.detail-grid aside{display:flex;flex-direction:column;gap:20px}.panel h2{font-size:1.8rem}.panel pre{white-space:pre-wrap;font:inherit;color:#4f534e}.data-list dt{margin-top:18px}.data-list dd{font-size:1.05rem}.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.photo-grid img{aspect-ratio:4/3;object-fit:cover}.photo-grid figcaption{font-size:.75rem;color:var(--muted);padding:8px 0}.planning{border-top:4px solid var(--green)}.warning{padding:14px;background:#f3e8d7;color:#6a4a2e;font-size:.85rem}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.nav-toggle{display:block;background:none;border:0}.hero,.split,.form-shell,.helper-shell,.detail-grid{grid-template-columns:1fr}.hero-image{min-height:420px}.hero-copy{padding-top:70px}.service-grid,.project-grid{grid-template-columns:1fr 1fr}.form-intro{position:static}.stat-grid{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}.about-image{min-height:400px}.detail-head{align-items:start;gap:20px}}@media(max-width:600px){h1{font-size:3.1rem}.site-header{padding:0 18px}.brand>span:last-child{max-width:180px;font-size:.86rem}.hero-copy,.section,.split,.page-hero,.form-shell,.helper-shell,.admin-shell{padding-left:22px;padding-right:22px}.service-grid,.project-grid,.service-detail-grid,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.section-head,.inline-cta,.admin-head,.detail-head{align-items:start;flex-direction:column;gap:22px}.inline-cta{margin:0 22px 70px;padding:30px}.stat-grid,footer{grid-template-columns:1fr}.trust-row{flex-direction:column}.photo-grid{grid-template-columns:1fr}}

.request-row{cursor:pointer;transition:background-color .15s ease}
.request-row:hover{background:#f3eee5}
.request-row:focus-visible{outline:3px solid var(--brown);outline-offset:-3px;background:#f3eee5}
.archived-label{display:inline-block;margin-left:7px;padding:5px 9px;border:1px solid #aaa093;border-radius:3px;color:#655c51;font-size:.68rem}
.archived-label.large{padding:8px 12px;font-size:.72rem}
.detail-status{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.summary-panel pre{line-height:1.72}
.summary-addendum{border-top:1px solid var(--line);margin-top:24px;padding-top:20px;color:#4f534e}
.summary-addendum ul{margin:8px 0 0;padding-left:20px}
.planning-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.planning-actions form{margin:0}
.lifecycle-panel form{margin:0}
.delete-zone{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}
.delete-zone p{font-size:.82rem;color:var(--muted)}
.danger-button{border:0;background:transparent;color:#8a3f34;padding:4px 0;font:600 .82rem var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.danger-button:hover{color:#662a22}
.danger-button:focus-visible{outline:3px solid #a94c3e;outline-offset:4px}
.structured-report{margin-top:22px}
.structured-section+.structured-section{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}
.structured-section h3{margin:0 0 10px;color:var(--brown);font:700 .7rem var(--sans);letter-spacing:.1em;text-transform:uppercase}
.structured-section p{margin:0;color:#4f534e;line-height:1.7}
.structured-section ul,.generated-item-list,.summary-addendum ul{margin:0;padding-left:20px;color:#4f534e}
.structured-section li,.generated-item-list li,.summary-addendum li{padding-left:4px;line-height:1.6}
.structured-section li+li,.generated-item-list li+li,.summary-addendum li+li{margin-top:8px}
.generated-item-list{margin:10px 0 24px}
.empty-review-content{margin:18px 0 0;color:var(--muted);font-style:italic}

/* Homepage visual refinement */
.hero{min-height:600px;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr)}
.hero-copy{padding:62px max(4.5vw,44px) 42px}
.hero h1{font-size:clamp(3.45rem,4.35vw,4.85rem);line-height:1.01;max-width:700px;margin:14px 0 20px;text-wrap:balance}
.hero .lead{font-size:clamp(1.03rem,1.25vw,1.18rem);line-height:1.58;max-width:610px;margin-bottom:0}
.actions{margin:24px 0 32px;gap:26px}
.trust-row{gap:10px 22px;padding-top:22px;font-size:.8rem}
.hero-image{min-height:600px;isolation:isolate;overflow:hidden;background-position:center;background-size:cover}
.hero-image.photo-placeholder{display:grid;place-items:center;background-color:#84715f;background-image:linear-gradient(145deg,rgba(37,41,37,.06),rgba(37,41,37,.36)),repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 18px)}
.photo-slot-label{display:none;position:relative;z-index:1;text-align:center;color:#f7f3eb;border:1px solid rgba(255,255,255,.38);padding:22px 28px;background:rgba(37,41,37,.28);backdrop-filter:blur(2px)}
.photo-placeholder .photo-slot-label{display:block}
.photo-slot-label span,.photo-slot-label strong,.photo-slot-label small{display:block}
.photo-slot-label span{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:#e7d7c8}
.photo-slot-label strong{font:500 1.45rem var(--serif);margin:7px 0 2px}
.photo-slot-label small{font-size:.76rem;color:#e8e3dc}
.hero-note{left:34px;bottom:30px}
.hero-note strong{font-size:1.55rem}
.home-page .section{padding-top:90px;padding-bottom:90px}
.home-page .section-head{margin-bottom:40px}
.home-page .section.reviews-section{padding-top:40px;padding-bottom:48px}
.reviews-section h2{font-size:clamp(2rem,3vw,3rem);margin:12px 0 16px}
.reviews-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:20px}
.home-page .split{padding-top:90px;padding-bottom:90px}
.home-page .steps li{padding:18px 0}
.recent-projects{padding-top:86px;padding-bottom:78px}
.recent-projects .project-card img{aspect-ratio:16/10;object-fit:cover;margin-bottom:18px}
.project-photo-placeholder{aspect-ratio:16/10;display:grid;place-content:center;text-align:center;margin-bottom:18px;padding:22px;background-color:#d7c8b5;background-image:linear-gradient(145deg,rgba(255,255,255,.36),rgba(96,114,99,.16)),repeating-linear-gradient(45deg,rgba(113,74,47,.055) 0,rgba(113,74,47,.055) 1px,transparent 1px,transparent 16px);border:1px solid #cbbba7;color:#4b4c45}
.project-photo-placeholder span,.project-photo-placeholder strong,.project-photo-placeholder small{display:block}
.project-photo-placeholder span{font-size:.62rem;text-transform:uppercase;letter-spacing:.15em;color:#766857}
.project-photo-placeholder strong{font:500 1.35rem var(--serif);margin:5px 0 1px}
.project-photo-placeholder small{font-size:.72rem;color:#766f66}
.about-preview{padding-top:52px;padding-bottom:84px}
.about-image{min-height:450px}
.final-cta{padding:88px 25px}
.button:focus-visible,.text-link:focus-visible,.nav-toggle:focus-visible{outline:3px solid #b68058;outline-offset:4px}

@media(max-width:1180px) and (min-width:901px){
  .site-header nav{gap:18px}
  .hero{grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);min-height:570px}
  .hero-copy{padding:50px 38px 36px}
  .hero h1{font-size:clamp(3.25rem,4.7vw,4rem);max-width:590px}
  .hero-image{min-height:570px}
  .trust-row{gap:8px 16px}
}
@media(max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:58px 40px 42px}
  .hero h1{font-size:clamp(3.15rem,7.5vw,4.4rem);max-width:720px}
  .hero-image{min-height:390px}
  .home-page .section,.home-page .split{padding-top:72px;padding-bottom:72px}
}
@media(max-width:600px){
  .hero-copy{padding-top:48px;padding-bottom:34px}
  .hero h1{font-size:clamp(2.85rem,13vw,3.45rem)}
  .actions{align-items:flex-start;flex-direction:column;gap:18px;margin:22px 0 28px}
  .trust-row{display:grid;grid-template-columns:1fr 1fr}
  .hero-image{min-height:320px}
  .photo-slot-label{padding:18px 20px}
  .home-page .section,.home-page .split{padding-top:62px;padding-bottom:62px}
  .project-grid{grid-template-columns:1fr}
  .final-cta{padding:72px 22px}
}
.photo-triage-content{margin-top:28px;padding-top:26px;border-top:1px solid var(--line)}
.photo-triage-content h3{margin:22px 0 7px}
.photo-triage-content ul{margin:6px 0 0;padding-left:1.25rem}
.photo-triage-content li{margin:.35rem 0;line-height:1.55}
.triage-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 20px;color:var(--muted);font-size:.78rem}

/* Owner request detail scanability */
.admin-shell{padding-top:48px;padding-bottom:56px}
.detail-head{margin-top:26px}
.detail-head h1{font-size:clamp(3rem,4.2vw,4rem)}
.status-actions{margin:18px 0}
.review-glance{margin:0 0 18px;padding:20px 24px;border:1px solid var(--line);background:rgba(255,253,248,.55)}
.review-glance h2{margin:0 0 14px;font:500 1.4rem var(--serif)}
.review-glance dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 24px}
.review-glance dl>div{min-width:0}
.review-glance dt{font-size:.64rem}
.review-glance dd{margin:3px 0 0;font-size:.86rem;line-height:1.35;overflow-wrap:anywhere}
.detail-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:16px}
.detail-main,.detail-grid aside{gap:16px}
.detail-grid .panel{padding:28px}
.data-list dd{margin-bottom:18px}
.disclosure{display:block}
.disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font:500 1.65rem var(--serif)}
.disclosure>summary::-webkit-details-marker{display:none}
.disclosure>summary::after{content:'+';flex:0 0 auto;color:var(--brown);font:500 1.25rem var(--sans)}
.disclosure[open]>summary::after{content:'−'}
.disclosure>summary span{min-width:0}
.disclosure>summary small{margin-left:auto;color:var(--muted);font:500 .7rem var(--sans);letter-spacing:.06em;text-transform:uppercase}
.disclosure>summary:focus-visible{outline:3px solid #b68058;outline-offset:6px;border-radius:2px}
.disclosure-content{padding-top:18px}
.summary-panel .structured-report{margin-top:0}
.photo-triage-content{margin-top:24px;padding-top:22px}
.photo-triage-content.disclosure{border-bottom:0;border-left:0;border-right:0}
.planning.disclosure{border-top:4px solid var(--green)}
.planning .disclosure-content>h2{font-size:1.65rem;margin-bottom:12px}
.lifecycle-panel{font-size:.9rem}
.delete-zone{margin-top:22px;padding-top:20px}
@media(max-width:1180px){.review-glance dl{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.review-glance dl{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.detail-grid aside{display:grid;grid-template-columns:1fr 1fr}.disclosure>summary{font-size:1.5rem}}
@media(max-width:600px){.review-glance{padding:18px}.review-glance dl,.detail-grid aside{grid-template-columns:1fr}.detail-grid .panel{padding:22px}.disclosure>summary{align-items:flex-start;flex-wrap:wrap;gap:8px 14px}.disclosure>summary small{order:3;width:100%;margin-left:0}.disclosure>summary::after{margin-left:auto}}

/* Customer page heading and confirmation refinement */
.confirmation{max-width:820px;padding:68px 30px 76px}
.confirmation .success-mark{width:58px;height:58px;margin:0 auto 15px;font-size:1.6rem}
.confirmation h1{max-width:780px;margin:10px auto 16px;font-size:clamp(3rem,4.6vw,4.5rem);line-height:1.02;text-wrap:balance}
.confirmation>.lead{max-width:680px;margin:0 auto;line-height:1.55}
.confirmation .quiet-card{margin:28px 0 24px;padding:28px 32px}
.confirmation .quiet-card ol{margin-bottom:0}
.page-hero h1{font-size:clamp(3.2rem,5vw,5.5rem);text-wrap:balance}
.helper-shell h1{font-size:clamp(3rem,4.4vw,4.5rem);line-height:1.03;text-wrap:balance}
@media(max-width:600px){.confirmation{padding:50px 22px 60px}.confirmation h1{font-size:clamp(2.7rem,12vw,3.35rem)}.confirmation .quiet-card{padding:24px;margin-top:24px}}

/* Owner invoice milestone */
.admin-head-actions{display:flex;align-items:center;gap:1.25rem}.admin-head-actions form{margin:0}.settings-shell{max-width:980px}.settings-form{margin-top:1.5rem}.settings-form label span{display:block;margin-top:.35rem;color:var(--muted);font-size:.82rem;font-weight:400}.settings-form .button{margin-top:1rem}
.invoice-summary h2{font-size:1.45rem;margin:8px 0 18px;overflow-wrap:anywhere}.invoice-summary dd{margin-bottom:14px}.invoice-summary form{margin-top:14px}.invoice-finalize-link{font-size:.78rem;color:var(--brown)}
.invoice-shell{max-width:1320px;margin:auto}.invoice-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:28px 0 22px}.invoice-head h1{font-size:clamp(2.8rem,4.5vw,4.5rem);margin:8px 0}.invoice-form{display:flex;flex-direction:column;gap:18px}.invoice-meta-grid,.invoice-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.invoice-meta-grid label+label{margin-top:14px}.invoice-section-head,.invoice-actions,.invoice-ai,.finalize-panel{display:flex;align-items:center;justify-content:space-between;gap:24px}.invoice-section-head h2{margin:5px 0 0}.invoice-table-wrap{max-width:100%;overflow-x:auto}.invoice-items{min-width:760px}.invoice-items th:nth-child(1){width:48%}.invoice-items th:nth-child(2),.invoice-items th:nth-child(3){width:16%}.invoice-items input{min-width:110px}.invoice-items td:last-child{width:1%;white-space:nowrap}.remove-invoice-item{border:0;background:transparent;color:#8a3f34;font:600 .75rem var(--sans);text-decoration:underline;cursor:pointer}.invoice-totals{justify-self:end;width:min(100%,360px)}.invoice-totals dl{display:grid;grid-template-columns:1fr auto;gap:10px 28px}.invoice-totals dt{align-self:center}.invoice-totals dd{margin:0;text-align:right;font-size:1rem}.invoice-totals dt:last-of-type,.invoice-totals dd:last-of-type{padding-top:12px;border-top:1px solid var(--line);font-size:1.3rem;font-weight:700}.invoice-ai,.finalize-panel{margin-top:18px;padding:26px 28px;border:1px solid var(--line);background:var(--cream)}.invoice-ai h2{font-size:1.65rem;margin:6px 0}.invoice-ai p,.finalize-panel p{margin:0;color:var(--muted);font-size:.86rem}.invoice-suggestions{margin-top:18px}.suggestion-option{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:10px;margin:12px 0;font-size:.92rem}.suggestion-option input{width:auto;margin-top:5px}.invoice-readonly>.invoice-meta-grid{margin-bottom:30px}.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}
@media(max-width:900px){.invoice-meta-grid,.invoice-lower-grid{grid-template-columns:1fr}.invoice-totals{justify-self:stretch}.invoice-ai,.finalize-panel{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.invoice-head,.invoice-section-head{align-items:flex-start;flex-direction:column}.invoice-items{min-width:680px}.invoice-ai,.finalize-panel{padding:22px}}
.invoice-items{min-width:940px}.invoice-items th:nth-child(1){width:38%}.invoice-items th:nth-child(2),.invoice-items th:nth-child(3){width:13%}.invoice-items select{min-width:180px}.price-review-row{background:#fbf4e8}.price-review-label{display:block;margin-top:6px;color:#8a5a2f;font-size:.7rem;font-weight:700}.invoice-delivery{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:18px;border-top:4px solid var(--green)}.invoice-delivery h2{margin:6px 0 10px}.invoice-delivery p{margin:0;color:var(--muted);font-size:.88rem}.invoice-delivery-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.invoice-delivery-actions form{margin:0}@media(max-width:900px){.invoice-delivery{align-items:flex-start;flex-direction:column}.invoice-delivery-actions{justify-content:flex-start}}

/* Bounded public-page UX cleanup */
.site-header>.brand{flex:0 1 220px;min-width:0}
.brand-badge{flex:none;width:48px;height:auto}
.brand>span.brand-wordmark{font:600 1.65rem/1.1 var(--serif);white-space:nowrap}
.footer-brand{color:var(--paper)}
@media(max-width:600px){.site-header>.brand{flex-basis:190px}.site-header .brand-badge{width:40px}.site-header .brand>span.brand-wordmark{font-size:1.35rem}}
footer{grid-template-columns:2fr repeat(2,1fr)}
.page-hero:not(.compact){padding-top:72px;padding-bottom:58px}
.page-hero:not(.compact) h1{font-size:clamp(3rem,4.4vw,4.8rem);line-height:1.02;margin-bottom:18px}
.page-hero+.section{padding-top:64px}
.page-hero.faq-hero{padding-bottom:32px}
.faq-hero+.faq-list{padding-top:24px}
.privacy-content{max-width:900px;margin:auto}
.privacy-content h2{font-size:1.8rem;margin:32px 0 14px}
.privacy-content h2:first-child{margin-top:0}
.estimate-form .privacy-notice{margin-top:20px}
.page-hero+.story{padding-top:72px}
.result ul{padding-left:1.25rem;margin:10px 0 20px}.result li+li{margin-top:6px}
.photo-acknowledgement,.handoff-note{padding:13px 15px;background:rgba(255,253,248,.65);border-left:3px solid var(--brown);font-size:.88rem}
.handoff-note{margin-bottom:22px;color:#55594f}
@media(max-width:900px){footer{grid-template-columns:1fr 1fr}.page-hero:not(.compact){padding-top:60px;padding-bottom:48px}.page-hero+.story{padding-top:60px}}
@media(max-width:600px){footer{grid-template-columns:1fr}}

/* Owner workflow and generated-content rhythm */
.workflow-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 20px}.workflow-control{border:1px solid var(--line);background:rgba(255,253,248,.58)}.workflow-control>summary{display:flex;justify-content:space-between;gap:18px;padding:14px 18px;cursor:pointer;font-weight:700}.workflow-control>summary small{color:var(--muted);font-weight:500}.workflow-control>summary:focus-visible{outline:3px solid #b68058;outline-offset:2px}.workflow-control-body{padding:4px 18px 18px}.workflow-control-body form{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.follow-up-form,.follow-up-form label{width:100%}.schedule-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end}.saved-follow-up{margin:16px 0;padding:14px 16px;border-left:3px solid var(--brown);background:var(--cream)}.saved-follow-up p{margin:6px 0;white-space:pre-wrap}.saved-follow-up small{color:var(--muted)}
.planning .disclosure-content>h3{margin:30px 0 10px}.planning .generated-item-list{margin-bottom:24px}.planning .structured-report{margin-bottom:26px}.planning .warning{margin:12px 0 22px}.planning-actions{margin-top:24px}.structured-report+h3,.generated-item-list+h3{margin-top:30px}.panel>h2+label,.settings-form .form-grid{margin-top:18px}.invoice-form>.panel,.invoice-suggestions,.invoice-ai,.finalize-panel{margin-bottom:2px}.flash{max-width:390px;line-height:1.45}
@media(max-width:900px){.workflow-controls{grid-template-columns:1fr}.schedule-form{grid-template-columns:1fr 1fr}.schedule-form .button{grid-column:1/-1}}
@media(max-width:600px){.schedule-form{grid-template-columns:1fr}.schedule-form .button{grid-column:auto}.workflow-control>summary{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:600px){.upload-zone{min-width:0;overflow:hidden}.upload-zone input[type=file]{display:block;width:100%;max-width:100%;padding-left:0;padding-right:0;font-size:.82rem}.estimate-form{min-width:0}}
.request-edit-shell{max-width:1100px;margin:0 auto}.request-edit-head{margin:34px 0 24px}.request-edit-head h1{font-size:clamp(2.8rem,5vw,4rem);margin:8px 0 14px}.request-edit-form{max-width:900px}.request-edit-form fieldset:first-of-type{border-top:0;padding-top:0}.form-actions{display:flex;align-items:center;gap:24px;margin-top:22px}
.gallery-shell,.gallery-form-shell{max-width:1180px;margin:0 auto}.gallery-manager-list{display:flex;flex-direction:column;gap:16px;margin-top:34px}.gallery-manager-item{display:grid;grid-template-columns:180px 1fr auto;gap:24px;align-items:center;padding:22px}.gallery-manager-image{display:grid;place-items:center;min-height:130px;background:var(--cream);color:var(--muted);font-size:.82rem}.gallery-manager-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery-manager-copy h2{font-size:1.8rem;margin:6px 0}.gallery-manager-copy p{margin-bottom:10px;color:var(--muted)}.gallery-state{display:flex;gap:8px}.gallery-manager-actions{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:110px}.gallery-manager-actions form{margin:0}.gallery-form-head{margin:34px 0 24px}.gallery-form-head h1{font-size:clamp(2.8rem,5vw,4rem);margin:8px 0 14px}.gallery-form{max-width:900px}.gallery-form fieldset:first-of-type{border-top:0;padding-top:0}.gallery-ai-actions{display:flex;align-items:center;gap:16px}.gallery-suggestion{padding:18px;border-left:3px solid var(--green);background:var(--cream)}.gallery-suggestion p{margin:8px 0 14px}.gallery-current-image img{width:min(320px,100%);aspect-ratio:4/3;object-fit:cover;margin-top:6px}.check-label{display:flex;flex-direction:row;align-items:center;gap:10px}.check-label input{width:auto}.gallery-form input[type=file]{min-width:0;max-width:100%}
@media(max-width:900px){.gallery-manager-item{grid-template-columns:150px 1fr}.gallery-manager-actions{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap}.gallery-manager-actions form{display:inline-flex}}
@media(max-width:600px){.gallery-manager-item{grid-template-columns:1fr}.gallery-manager-image{min-height:0}.gallery-manager-actions{grid-column:auto}.gallery-ai-actions,.form-actions{align-items:flex-start;flex-direction:column}.admin-head-actions{align-items:flex-start;flex-wrap:wrap}}

/* Owner Estimate Advisor: scoped to the existing request panel. */
.estimate-advisor{min-width:0;scroll-margin-top:24px;overflow-wrap:anywhere}
.estimate-advisor .advisor-suggestion{border-top:1px solid var(--line);padding:16px 0;margin-top:12px}
.estimate-advisor h3{font-size:1.15rem;margin:18px 0 10px}
.estimate-advisor h4{margin:4px 0 12px}
.estimate-advisor .advisor-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.estimate-advisor .advisor-metrics dt{font-size:.8rem;color:var(--muted)}
.estimate-advisor .advisor-metrics dd{margin:4px 0 10px;font-size:1.15rem;font-weight:600}
.estimate-advisor .advisor-explanation{margin:8px 0;font-size:.9rem}
.estimate-advisor .advisor-explanation>summary{cursor:pointer;font-weight:600}
.estimate-advisor .advisor-explanation ul{padding-left:1.25rem;line-height:1.6}
.estimate-advisor .advisor-stale{border-left:3px solid var(--brown);padding:12px 14px;background:var(--cream)}
.estimate-advisor #advisor-saved-draft{scroll-margin-top:24px}
.estimate-advisor .advisor-save{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px}
.estimate-advisor .advisor-save .fine-print{margin:4px 0 0}
.estimate-advisor .advisor-selection{display:flex;flex-direction:row;align-items:center;gap:10px;margin:16px 0}
.estimate-advisor .advisor-selection input{width:auto;flex:none}
.estimate-advisor .advisor-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:0;padding:12px 0;margin:0;min-width:0}
.estimate-advisor .advisor-editor legend{font-weight:600;font-size:.9rem;padding:0}
.estimate-advisor .advisor-editor label{min-width:0;font-size:.85rem}
.estimate-advisor .advisor-editor input{width:100%;min-width:0}
.estimate-advisor .advisor-description{grid-column:1/-1}
.estimate-advisor .advisor-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.estimate-advisor [data-advisor-generate]{margin:18px 0 24px}
.estimate-advisor [data-advisor-progress]{display:block;margin-top:8px}
.estimate-advisor [hidden]{display:none!important}
.estimate-advisor button:disabled{opacity:.65;cursor:wait}
.estimate-advisor :is(input,button,summary,a,[tabindex]):focus-visible{outline:3px solid var(--brown);outline-offset:3px}
@media(max-width:600px){.estimate-advisor .advisor-editor,.estimate-advisor .advisor-metrics{grid-template-columns:1fr}.estimate-advisor .advisor-description{grid-column:auto}.estimate-advisor .button{max-width:100%;white-space:normal}}

/* Owner customer Estimate workflow */
.estimate-summary h2{font-size:1.45rem;margin:8px 0 14px}.estimate-summary>.button{width:100%}.estimate-history{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.estimate-history h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.estimate-history ul{list-style:none;margin:0;padding:0}.estimate-history li+li{border-top:1px solid var(--line)}.estimate-history a{display:block;padding:12px 0}.estimate-history a:hover strong{text-decoration:underline;text-underline-offset:4px}.estimate-history span{display:block;color:var(--muted);font-size:.76rem}
.estimate-shell{max-width:1320px;margin:auto}.estimate-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:28px 0 22px}.estimate-head h1{font-size:clamp(2.7rem,4.5vw,4.5rem);margin:8px 0}.estimate-choice-shell{max-width:1050px}.estimate-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.estimate-choice-grid h2{font-size:2rem;margin:8px 0 14px}.estimate-choice-grid .panel{display:flex;flex-direction:column;align-items:flex-start}.estimate-choice-grid .panel p{flex:1}.estimate-choice-grid form{margin:12px 0 0}.estimate-choice-note{margin-top:18px}
.estimate-editor{display:flex;flex-direction:column;gap:18px}.estimate-meta-grid,.estimate-lower-grid,.estimate-document-meta,.estimate-document-lower{display:grid;grid-template-columns:1fr 1fr;gap:36px}.estimate-meta-grid label{margin-top:18px}.estimate-section-head,.estimate-actions,.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.estimate-section-head h2{margin:5px 0 0}.estimate-line-list{display:flex;flex-direction:column;gap:10px;margin-top:22px}.estimate-line{display:grid;grid-template-columns:minmax(220px,1fr) minmax(105px,.2fr) minmax(120px,.25fr) minmax(110px,.2fr) auto;gap:12px;align-items:end;margin:0;padding:18px;border:1px solid var(--line);background:var(--paper)}.estimate-line legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.estimate-line-total{display:flex;min-height:72px;flex-direction:column;justify-content:flex-end}.estimate-line-total span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.estimate-line-total strong{font-size:1.05rem}.remove-estimate-item{min-height:44px;border:0;background:transparent;color:#8a3f34;font:600 .76rem var(--sans);text-decoration:underline;cursor:pointer}.estimate-empty{margin:6px 0 0;color:var(--muted)}.estimate-totals{justify-self:end;width:min(100%,360px)}.estimate-totals dl{display:grid;grid-template-columns:1fr auto;gap:10px 28px}.estimate-totals dd{margin:0;text-align:right;font-size:1.3rem;font-weight:700}.estimate-notice{padding:20px 24px;border-left:3px solid var(--brown);background:var(--cream)}.estimate-notice h2{font:700 .72rem var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--brown);margin-bottom:8px}.estimate-notice p{font-size:.84rem;color:var(--muted);margin:0}.estimate-actions{justify-content:flex-end;margin-top:2px}.estimate-actions form{margin:0}.estimate-readonly>.estimate-meta-grid{margin-bottom:30px}.estimate-readonly-lines>div{display:grid;grid-template-columns:1fr auto auto;gap:24px;padding:15px 0;border-bottom:1px solid var(--line)}.estimate-readonly-lines>div span:nth-child(2){color:var(--muted)}.estimate-readonly .estimate-lower-grid{margin:32px 0}.preview-toolbar{margin:28px 0}.preview-toolbar p{margin:4px 0;color:var(--muted)}.estimate-document{padding:48px}.estimate-document>header{display:flex;justify-content:space-between;gap:30px;padding-bottom:28px;border-bottom:3px solid var(--brown)}.estimate-document>header>div:last-child{text-align:right}.estimate-document h1{font-size:2.4rem;margin:5px 0}.estimate-business-name{font:600 2rem var(--serif)}.estimate-document-meta{margin:34px 0}.estimate-document h2{font-size:1.45rem}.estimate-document-lower{margin-top:34px}.estimate-document .estimate-notice{margin-top:36px}
.estimate-line :is(input,button):focus-visible,.estimate-actions :is(a,button):focus-visible,.estimate-history a:focus-visible{outline:3px solid var(--brown);outline-offset:3px}
@media(max-width:900px){.estimate-meta-grid,.estimate-lower-grid,.estimate-document-meta,.estimate-document-lower{grid-template-columns:1fr}.estimate-totals{justify-self:stretch}.estimate-line{grid-template-columns:minmax(180px,1fr) 100px 120px}.estimate-description{grid-column:1/-1}.estimate-line-total{min-height:auto}.estimate-choice-grid{grid-template-columns:1fr}}
@media(max-width:600px){.estimate-head,.estimate-section-head,.preview-toolbar,.estimate-document>header{align-items:flex-start;flex-direction:column}.estimate-line{grid-template-columns:1fr;padding:16px}.estimate-description{grid-column:auto}.estimate-line-total{padding:4px 0}.remove-estimate-item{justify-self:start}.estimate-actions{align-items:stretch;flex-direction:column}.estimate-actions .button,.estimate-actions form,.estimate-actions form .button{width:100%}.estimate-document{padding:24px}.estimate-document>header>div:last-child{text-align:left}.estimate-readonly-lines>div{grid-template-columns:1fr auto}.estimate-readonly-lines>div span:nth-child(2){grid-column:1/-1;grid-row:2}.estimate-business-name{font-size:1.65rem}}
