.bright-home .reveal.reveal-ready.in{animation-delay:var(--entry-delay,0s);animation-fill-mode:backwards}.hero-photo-counter{z-index:1;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-variant-numeric:tabular-nums;letter-spacing:.1em;background:#33241c75;border:1px solid #fff6;border-radius:999px;align-items:center;gap:.45rem;padding:.5rem .8rem;font-size:.68rem;display:inline-flex;position:absolute;inset:1.1rem auto auto 1.1rem}.hero-photo-counter>span{opacity:.7}.bright-home .hero-small-photo{color:var(--color-ink);text-decoration:none}.bright-home .hero-small-photo>span{align-items:center;gap:.6rem;display:flex}.bright-home .hero-small-photo:focus-visible{outline:3px solid var(--color-cedar);outline-offset:5px}.bright-home .hero-photo-select button{min-height:48px}.bright-home .hero-photo-select button span{transition:transform .22s}.bright-home .hero-photo-select button.active span{transform:translateY(-2px)}.comparison-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.comparison-actions a{border:1px solid var(--color-line);min-height:44px;color:var(--color-cedar);background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:.8rem;padding:.6rem .85rem;font-size:.73rem;font-weight:600;text-decoration:none;transition:background .22s,border-color .22s;display:inline-flex}.comparison-actions a:hover,.comparison-actions a:focus-visible{border-color:var(--color-cedar);background:#f4e7d8}.bright-home .comparison-stage:focus-within{outline:3px solid var(--color-cedar);outline-offset:5px}.bright-home .comparison-stage input{cursor:ew-resize}.bright-home .comparison-stage input:focus-visible{outline:none}.lightbox-navigation{align-items:center;gap:1rem;display:flex}.lightbox-count{white-space:nowrap;color:var(--color-muted);font-variant-numeric:tabular-nums;font-size:.75rem}.bright-home .lightbox-arrows{flex-direction:row}.bright-home .lightbox-arrows .round-control{min-width:44px;min-height:44px}.process-stage-badge{color:#fffaf4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#33241ce6;border:1px solid #ffffff60;border-radius:14px;flex-direction:column;align-items:flex-start;gap:.45rem;padding:1.05rem 1.2rem;display:flex;position:absolute;top:1.5rem;right:1.5rem}.process-stage-badge>span:first-child{letter-spacing:.14em;color:#e5d9cd;font-size:.48rem}.process-stage-badge>strong{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:500;line-height:1.2}.process-stage-badge>strong span{color:#c5ae98;font-size:.75rem}.process-stage-badge>span:last-child{font-size:.66rem}.process-progress{gap:.5rem;margin-top:2rem;display:flex}.process-progress span{background:var(--color-line);border-radius:99px;flex:1;height:3px;transition:background .3s}.process-progress span.complete{background:var(--color-cedar)}.bright-home .process-steps{margin-top:.6rem}.bright-home .process-steps>div{border-radius:0 0 8px 8px;transition:padding .25s,background .25s}.bright-home .process-steps>.active{background:#f7f2ec;padding-inline:.7rem}.bright-home .process-steps button{min-height:60px}.area-search-panel{margin:1.5rem 0}.area-search-panel>label{color:var(--color-ink);margin-bottom:.65rem;font-size:.76rem;font-weight:600;display:block}.area-search-control{border:1px solid var(--color-line);color:var(--color-cedar);background:#fff;border-radius:12px;align-items:center;gap:.75rem;padding-inline:.9rem;display:flex}.area-search-control:focus-within{border-color:var(--color-cedar);box-shadow:0 0 0 3px #925a3515}.area-search-control>svg{flex-shrink:0}.area-search-control input{width:100%;min-width:0;min-height:52px;color:var(--color-ink);background:0 0;border:none;outline:none;padding-block:.75rem;font-family:inherit;font-size:.86rem}.area-search-control input::placeholder{color:var(--color-muted)}.area-search-control input::-webkit-search-cancel-button{-webkit-appearance:none}.area-search-control button{height:44px;color:var(--color-muted);background:0 0;border:none;border-radius:8px;flex:0 0 44px;place-items:center;margin-right:-.45rem;display:grid}.area-search-control button:hover{color:var(--color-cedar);background:#f4e7d8}.area-search-panel>p{color:var(--color-muted);margin:.65rem 0 0;font-size:.69rem}.area-no-results{border:1px solid var(--color-line);background:#fffdf9;border-radius:18px;grid-column:1/-1;padding:2.5rem}.area-no-results>svg{color:var(--color-cedar)}.area-no-results h3{letter-spacing:-.03em;margin:1rem 0;font-size:1.5rem;line-height:1.2}.area-no-results p{color:var(--color-muted);font-size:.85rem;line-height:1.8}.area-no-results .text-link{margin-top:.8rem}.area-reset{min-height:44px;color:var(--color-muted);text-underline-offset:4px;background:0 0;border:none;margin-top:.8rem;font-size:.72rem;text-decoration:underline;display:block}.bright-home .local-area-card:focus-visible{border-color:var(--color-cedar);outline:3px solid var(--color-cedar);outline-offset:3px}@media (hover:hover) and (pointer:fine){.bright-home .hero-small-photo:focus-visible{transform:rotate(-1deg)translateY(-5px)}.bright-home .journal-card .text-link svg{transition:transform .25s}.bright-home .journal-card:hover .text-link svg,.bright-home .journal-card:focus-visible .text-link svg{transform:translate(3px,-3px)}}@media (width<=640px){.hero-photo-counter{padding:.4rem .65rem;font-size:.6rem;inset:.8rem auto auto .8rem}.comparison-actions{gap:.55rem}.comparison-actions a{flex:140px;font-size:.69rem}.process-stage-badge{padding:.8rem 1rem;top:1rem;right:1rem}.process-stage-badge>strong{font-size:1.5rem}.area-search-control input{font-size:16px}.area-no-results{padding:1.5rem}.lightbox-navigation{flex-direction:column;align-items:flex-end;gap:.6rem}.lightbox-count{font-size:.65rem}}@media (prefers-reduced-motion:reduce){.bright-home .hero-photo-select button.active span,.bright-home .hero-small-photo:focus-visible,.bright-home .journal-card:hover .text-link svg,.bright-home .journal-card:focus-visible .text-link svg{transform:none}}.interior-page .page-hero{animation:.65s ease-out both interior-arrive}.interior-page :is(.surface-panel,.photo-card){transition:border-color .3s,box-shadow .3s,transform .3s}.interior-page .photo-card img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.interior-page details{transition:background .25s}.interior-page details[open]{background:color-mix(in srgb, var(--color-surface) 70%, transparent)}.interior-page details[open]>:not(summary){animation:.3s ease-out both interior-arrive}.interior-page summary{min-height:3.25rem}.interior-page :is(#service-results,#area-results,#article-results,#glossary-terms),.interior-page h2[id]{scroll-margin-top:9rem}.interior-section-links{flex-wrap:wrap;gap:.6rem;display:flex}.interior-section-links a{border:1px solid var(--color-line);min-height:44px;color:var(--color-muted);border-radius:99px;align-items:center;gap:.7rem;padding:.65rem 1rem;font-size:.72rem;font-weight:600;text-decoration:none;transition:color .2s,background .2s;display:inline-flex}.interior-section-links a:hover{color:var(--color-cedar-deep);background:var(--color-surface)}.interior-page :is(#service-results,#area-results)>li{animation:.4s ease-out both interior-arrive}.interior-page .page-hero figure img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}.interior-page .article h2,.interior-page .article h3{scroll-margin-top:9rem}.project-match{border:1px solid var(--color-line);background:var(--color-surface);border-radius:1.75rem;grid-template-columns:.85fr 1.15fr;display:grid;overflow:hidden}.project-match-choices{flex-direction:column;padding:1.25rem;display:flex}.project-match-choices button{border:0;border-bottom:1px solid var(--color-line);text-align:left;width:100%;color:var(--color-muted);background:0 0;flex:1;align-items:center;gap:1rem;padding:1.4rem 1rem;transition:background .25s,color .25s,border-radius .25s;display:flex}.project-match-choices button:last-child{border-bottom-color:#0000}.project-match-choices button[aria-pressed=true]{color:#fff;background:var(--color-cedar-deep);border-bottom-color:#0000;border-radius:.85rem}.project-match-choices button>span:nth-child(2){flex:1}.project-match-choices button strong{font:600 1.08rem/1.3 var(--font-display);color:var(--color-ink);display:block}.project-match-choices button[aria-pressed=true] strong{color:#fff}.project-match-choices button>span>span{margin-top:.45rem;font-size:.8rem;line-height:1.5;display:block}.project-match-choices button[aria-pressed=true]>span>span{color:#f3e7db}.project-match-number{align-self:start;padding-top:.2rem;font-size:.65rem;font-weight:700}.project-match-choices svg{flex-shrink:0;transition:transform .25s}.project-match-choices button[aria-pressed=true] svg{transform:translate(3px)}.project-match-result{background:#fff;min-width:0}.project-match-photo{aspect-ratio:1.8;animation:.45s ease-out interior-arrive;overflow:hidden}.project-match-photo img{object-fit:cover;width:100%;height:100%}.project-match-caption{padding:1.5rem 2rem 2rem;animation:.45s ease-out interior-arrive}.project-match-caption h3{margin:.6rem 0;font-size:1.8rem}.project-match-caption>p:not(.eyebrow){color:var(--color-muted);font-size:.9rem}.preparation-checklist{border:1px solid var(--color-line);background:#fff;border-radius:1rem;padding:1.5rem}.preparation-checklist label{cursor:pointer;min-height:44px;color:var(--color-muted);align-items:start;gap:.75rem;padding:.6rem 0;font-size:.83rem;line-height:1.55;display:flex;position:relative}.preparation-checklist input{opacity:0;width:20px;height:20px;position:absolute}.checklist-box{border:1px solid var(--color-line-strong);color:#0000;border-radius:.3rem;flex-shrink:0;place-items:center;width:20px;height:20px;margin-top:.08rem;transition:background .2s,color .2s;display:grid}.preparation-checklist input:checked+.checklist-box{background:var(--color-cedar);border-color:var(--color-cedar);color:#fff}.preparation-checklist input:focus-visible+.checklist-box{outline:3px solid var(--color-cedar);outline-offset:3px}.preparation-checklist input:checked~span:last-child{color:var(--color-ink)}.checklist-track,.reading-track{background:var(--color-line);border-radius:99px;height:4px;overflow:hidden}.checklist-track>span,.reading-track>span{background:var(--color-cedar);height:100%;transition:width .3s;display:block}.reading-track>span{transform-origin:0;width:100%;transform:scaleX(0)}.article-contents{max-height:min(65vh,42rem);overflow:auto}.article-contents li+li{border-top:1px solid var(--color-line)}.article-contents li a{color:var(--color-muted);align-items:baseline;gap:.65rem;min-height:44px;padding:.75rem 0;font-size:.78rem;line-height:1.5;text-decoration:none;display:flex}.article-contents li a>span{color:var(--color-cedar);font-size:.6rem}.article-contents li a[aria-current=location]{color:var(--color-cedar-deep);font-weight:700}.resource-search{max-width:42rem;position:relative}.resource-search>svg{color:var(--color-muted);pointer-events:none;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.resource-search input{width:100%;padding-left:3rem;padding-right:3.25rem}.resource-search button{width:44px;height:44px;color:var(--color-muted);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:.25rem;transform:translateY(-50%)}.glossary-letters{flex-wrap:wrap;gap:.4rem;display:flex}.glossary-letters button{border:1px solid var(--color-line);min-width:44px;min-height:44px;color:var(--color-muted);background:#fff;border-radius:.6rem;padding:.45rem .7rem;font-weight:600;transition:background .2s,color .2s}.glossary-letters button[aria-pressed=true]{color:#fff;background:var(--color-cedar-deep);border-color:var(--color-cedar-deep)}.interior-process-tip{border-top:1px solid var(--color-line);margin-top:1.25rem;padding-top:.75rem}.interior-process-tip summary{color:var(--color-cedar);justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;list-style:none;display:flex}.interior-process-tip summary::-webkit-details-marker{display:none}.interior-process-tip summary svg{transition:transform .25s}.interior-process-tip[open] summary svg{transform:rotate(45deg)}.interior-process-tip p{color:var(--color-muted);margin:.25rem 0 0;font-size:.8rem;line-height:1.65}@media (hover:hover) and (prefers-reduced-motion:no-preference){.interior-page .photo-card:hover{box-shadow:0 16px 36px color-mix(in srgb, var(--color-cedar-deep) 10%, transparent);transform:translateY(-4px)}.interior-page .photo-card:hover img,.interior-page .page-hero figure:hover img{transform:scale(1.035)}.interior-page a.surface-panel:hover{box-shadow:0 12px 30px color-mix(in srgb, var(--color-cedar-deep) 8%, transparent);transform:translateY(-3px)}.project-match-choices button:not([aria-pressed=true]):hover{background:color-mix(in srgb, var(--color-line) 50%, white);border-radius:.85rem}}@media (width<=767px){.project-match{grid-template-columns:1fr}.project-match-choices{grid-template-columns:1fr 1fr;gap:.35rem;padding:.65rem;display:grid}.project-match-choices button{border:0;border-radius:.75rem;align-items:center;gap:.5rem;padding:.9rem .65rem}.project-match-choices button strong{font-size:.83rem}.project-match-choices button>span>span,.project-match-number,.project-match-choices button svg{display:none}.project-match-photo{aspect-ratio:1.55}.project-match-caption{padding:1.25rem}.project-match-caption h3{font-size:1.5rem}.article-contents{max-height:none}.interior-page .page-hero h1{overflow-wrap:break-word}}@keyframes interior-arrive{0%{opacity:.25;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.interior-page *,.interior-page :before,.interior-page :after{transition:none!important;animation:none!important}}.reviews-track{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;grid-auto-columns:calc(33.3333% - .8rem);grid-auto-flow:column;gap:1.2rem;padding:.25rem .1rem .75rem;display:grid;overflow-x:auto}.reviews-track::-webkit-scrollbar{display:none}.review-card{scroll-snap-align:start;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);flex-direction:column;gap:1.1rem;min-height:100%;margin:0;padding:1.8rem 1.7rem 1.6rem;display:flex}.review-quote-icon{color:var(--color-cedar)}.review-card blockquote{flex:1;margin:0}.review-card blockquote p{color:var(--color-ink);margin:0;font-size:1rem;line-height:1.75}.review-card figcaption{gap:.15rem;font-size:.9rem;display:grid}.review-card figcaption strong{color:var(--color-ink);font-weight:700}.review-card figcaption span{color:var(--color-muted);font-size:.82rem}.reviews-nav{justify-content:center;align-items:center;gap:1rem;margin-top:1rem;display:flex}.reviews-nav button{border:1px solid var(--color-line-strong);width:2.9rem;height:2.9rem;color:var(--color-ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.reviews-nav button:disabled{opacity:.35;cursor:default}.reviews-dots{gap:.45rem;display:flex}.reviews-dots span{background:var(--color-line-strong);border-radius:999px;width:.5rem;height:.5rem;transition:width .2s,background .2s}.reviews-dots span.on{background:var(--color-cedar);width:1.4rem}.reviews-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}@media (width<=1023px){.reviews-track{grid-auto-columns:calc(50% - .6rem)}}@media (width<=680px){.reviews-track{grid-auto-columns:100%}.review-card{padding:1.5rem 1.35rem 1.4rem}.reviews-actions .btn{width:100%}}.review-page{padding-block:3.5rem 5rem}.review-shell{max-width:40rem;margin-inline:auto}.review-shell h1{font-family:var(--font-display);letter-spacing:-.045em;color:var(--color-ink);margin:.7rem 0 .9rem;font-size:clamp(2.1rem,5vw,3rem);font-weight:600;line-height:1.1}.review-shell .lede{color:var(--color-muted);margin:0 0 2rem;font-size:1.05rem;line-height:1.7}.review-choice{border:1px solid var(--color-line-strong);width:100%;min-height:4.4rem;color:var(--color-ink);font:700 1.08rem/1.25 var(--font-sans);text-align:left;background:#fff;border-radius:1.1rem;align-items:center;gap:1rem;padding:1rem 1.3rem;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.review-choice:hover{border-color:var(--color-cedar);transform:translateY(-2px);box-shadow:0 10px 24px #33241c14}.review-choice .choice-icon{background:var(--color-surface);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;display:inline-flex}.review-choice .choice-text{flex:1;gap:.2rem;display:grid}.review-choice .choice-text small{font:500 .86rem/1.45 var(--font-sans);color:var(--color-muted)}.review-choice.primary{background:var(--color-cedar);border-color:var(--color-cedar);color:#fff;min-height:5rem}.review-choice.primary .choice-text small{color:#f6e9dd}.review-choice.primary .choice-icon{background:#fff}.review-choice.primary:hover{background:var(--color-cedar-deep)}.review-choices{gap:.85rem;display:grid}.review-note{color:var(--color-muted);margin:.1rem .3rem .4rem;font-size:.86rem;line-height:1.55}.review-form{background:var(--color-surface);border:1px solid var(--color-line);border-radius:1.2rem;gap:1rem;margin-top:1rem;padding:1.5rem;display:grid}.review-form label{color:var(--color-ink);gap:.35rem;font-size:.92rem;font-weight:600;display:grid}.review-form label .opt{color:var(--color-muted);font-weight:400}.review-form input[type=text],.review-form input[type=email],.review-form select,.review-form textarea{border:1px solid var(--color-line-strong);width:100%;font:400 1rem/1.4 var(--font-sans);color:var(--color-ink);background:#fff;border-radius:.75rem;padding:.8rem .9rem}.review-form textarea{resize:vertical;min-height:8rem}.review-form .row2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=560px){.review-form .row2{grid-template-columns:1fr}}.star-input{gap:.35rem;display:flex}.star-input button{border:1px solid var(--color-line-strong);width:2.9rem;height:2.9rem;color:var(--color-line-strong);background:#fff;border-radius:.7rem;justify-content:center;align-items:center;display:inline-flex}.star-input button.on{color:#c98a2b;border-color:#c98a2b}.consent{grid-template-columns:none;align-items:flex-start;line-height:1.5;gap:.7rem!important;font-weight:500!important;display:flex!important}.consent input{width:1.25rem;height:1.25rem;accent-color:var(--color-cedar);flex-shrink:0;margin-top:.15rem}.hp-field{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-error{color:#a3341f;margin:0;font-size:.92rem;font-weight:600}.review-done{text-align:left}.review-done .done-badge{background:var(--color-accent-soft);width:3rem;height:3rem;color:var(--color-cedar);border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.review-contact{border-top:1px solid var(--color-line);color:var(--color-muted);margin-top:2.5rem;padding-top:1.5rem;font-size:.92rem;line-height:1.6}.review-contact a{color:var(--color-cedar-deep);font-weight:700}.admin-page{padding-block:2.5rem 5rem}.admin-page h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 .5rem;font-size:2rem}.admin-status{flex-wrap:wrap;gap:.5rem;margin:.8rem 0 1.4rem;display:flex}.admin-pill{background:var(--color-surface);border:1px solid var(--color-line);border-radius:999px;padding:.3rem .7rem;font-size:.78rem;font-weight:700}.admin-pill.warn{color:#7a4a0b;background:#fff4e5;border-color:#f0c88d}.admin-pill.good{color:#1f5a2b;background:#eaf6ec;border-color:#a9d5b1}.admin-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.admin-tabs button{border:1px solid var(--color-line-strong);background:#fff;border-radius:999px;padding:.45rem .9rem;font-size:.85rem;font-weight:600}.admin-tabs button.on{background:var(--color-ink);color:#fff;border-color:var(--color-ink)}.admin-list{gap:.9rem;display:grid}.admin-item{border:1px solid var(--color-line);background:#fff;border-radius:1rem;gap:.6rem;padding:1.1rem 1.2rem;display:grid}.admin-item header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;display:flex}.admin-item header strong{font-size:1.02rem}.admin-item .meta{color:var(--color-muted);font-size:.82rem}.admin-item p{white-space:pre-wrap;margin:0;line-height:1.6}.admin-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-actions button{border:1px solid var(--color-line-strong);background:#fff;border-radius:.6rem;padding:.45rem .8rem;font-size:.85rem;font-weight:600}.admin-actions button.approve{color:#fff;background:#1f5a2b;border-color:#1f5a2b}.admin-actions button.reject{color:#a3341f}.admin-actions label{align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:inline-flex}.admin-login{gap:.8rem;max-width:24rem;display:grid}.admin-login input{border:1px solid var(--color-line-strong);border-radius:.7rem;padding:.8rem;font-size:1rem}
