@font-face{font-family:Tenor;src:url('assets/fonts/tenor-sans.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Source;src:url('assets/fonts/source-sans-3.woff2') format('woff2');font-style:normal;font-weight:200 900;font-display:swap}
:root{--night:#091421;--navy:#0d1c2c;--ink:#122330;--paper:#eeede7;--ivory:#f7f4ea;--muted:#a9b5c0;--rule:#2d3b47;--warm:#c9ad83;--red:#b64a42;--body:Source,'Helvetica Neue',Arial,sans-serif;--display:Tenor,'Helvetica Neue',Arial,sans-serif;--gutter:clamp(1.5rem,5.5vw,6rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:8rem}body{margin:0;background:var(--night);color:var(--ivory);font:1.0625rem/1.6 var(--body);font-synthesis:none}body,button,input,select{font-family:var(--body)}button,input,select{font-size:1rem}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(3.4rem,4.7vw,5.5rem)}h2{font-size:clamp(2.1rem,3.5vw,3.75rem)}h3{font-size:1.75rem}.wrap{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}[hidden]{display:none!important}.skip{position:fixed;left:1rem;top:-10rem;background:var(--ivory);color:var(--ink);padding:1rem;z-index:100}.skip:focus{top:1rem}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #91bed5;outline-offset:6px}.review-strip{padding:.65rem var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:1.5rem;background:#192534;border-bottom:1px solid #2c3a49;font-size:.75rem;letter-spacing:.06em;color:#bdc7d1}.review-strip>span{display:flex;align-items:center;gap:.8rem}.review-strip i{height:1rem;width:1px;background:#607082}.review-strip>div{display:flex;gap:1.6rem;letter-spacing:0}.review-strip a{border-bottom:1px solid #536372}.review-strip a:hover{color:white}.header{height:6rem;position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-inline:var(--gutter);background:var(--night);border-bottom:1px solid #1e2c39}.logo{flex-shrink:0;display:block;width:8.75rem}.logo img{width:100%;height:auto}.header nav{display:flex;gap:2.2rem;color:#c8d0d6;font-size:.9375rem}.header nav a{padding-block:.7rem;border-bottom:1px solid transparent}.header nav a:hover{border-color:var(--warm);color:var(--ivory)}.button{display:inline-flex;justify-content:center;align-items:center;gap:2rem;min-height:3.5rem;padding:.85rem 1.4rem;background:var(--ivory);color:var(--ink);border:1px solid var(--ivory);font-weight:600;font-size:1rem;line-height:1.35;transition:background .2s,color .2s}.button:hover{background:#d8c6a7;border-color:#d8c6a7}.button span{font:1.25rem/1 var(--body)}.button-small{min-height:2.875rem;padding:.7rem 1.1rem;font-size:.9375rem;gap:1.6rem}.eyebrow{display:flex;align-items:center;gap:.85rem;font-size:.75rem;line-height:1.55;letter-spacing:.14em;font-weight:600;color:var(--warm)}.red-rule{display:inline-block;width:1.6rem;height:2px;background:var(--red);flex-shrink:0}.hero{display:grid;grid-template-columns:45% 55%;min-height:650px;max-width:1920px;margin-inline:auto}.hero-copy{padding:clamp(4.5rem,6vw,7rem) 2.5rem 3.5rem var(--gutter);align-self:center;position:relative;z-index:1}.hero-location{font-size:.75rem;letter-spacing:.115em;color:#90a0b0;margin:.35rem 0 2.3rem 2.45rem}.hero-copy h1{white-space:normal;margin:0 -.5rem 1.8rem 0;line-height:1.12;letter-spacing:-.035em}.hero-description{font-size:1.125rem;color:#afbbc7;line-height:1.65;margin-bottom:2rem;max-width:28rem}.quiet-link{display:table;width:fit-content;color:var(--ivory);font-size:.9375rem;border-bottom:1px solid #83909a;padding-bottom:.25rem;line-height:1.5}.quiet-link:hover{color:var(--warm);border-color:var(--warm)}.hero-copy>.quiet-link{margin-top:1.2rem}.hero-service{margin-top:3.1rem;padding-top:1.25rem;border-top:1px solid var(--rule);max-width:26rem;font-size:.875rem}.hero-service>span{color:#c4cdd4}.hero-service>p{color:#8193a4;font-size:.875rem;margin-top:.2rem}.hero-photo{position:relative;overflow:hidden;min-height:650px}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:53% center}.hero-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#06111cd9);pointer-events:none}.hero-photo figcaption{position:absolute;z-index:1;left:2rem;right:2rem;bottom:1.4rem;color:#dadfe4;display:flex;justify-content:space-between;align-items:end;gap:2rem;font-size:.75rem;line-height:1.6}.hero-photo figcaption>span:first-child{letter-spacing:.13em}.hero-photo figcaption>span:last-child{max-width:200px;text-align:right;color:#bfc8cf}.service-ribbon{background:#101f2e;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.45rem var(--gutter);border-block:1px solid #283642}.service-ribbon>span{font-size:.9375rem;color:#dfdfd7;flex-shrink:0}.service-ribbon>p{font-size:.875rem;color:#9faebb;text-align:right}.service-ribbon b{font-weight:400;color:#607283;margin:0 .75rem}.testimonial-lead{display:grid;grid-template-columns:1fr 2.1fr;column-gap:4rem;padding-top:4rem;padding-bottom:4rem;border-bottom:1px solid var(--rule)}.testimonial-lead .eyebrow{align-items:flex-start;padding-top:.45rem;max-width:12rem;color:#7f94a6}.testimonial-lead blockquote{font:400 clamp(1.3rem,1.7vw,1.7rem)/1.45 var(--display);letter-spacing:-.018em;color:#d5d8d5}.quote-attribution{grid-column:2;display:flex;gap:1.25rem;align-items:center;margin-top:1.3rem;font-size:.75rem;color:#8093a6}.quote-attribution>span:first-child{color:#b7c1ca;letter-spacing:.1em}.collections{padding-top:6rem;padding-bottom:6rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:3rem;margin-bottom:3rem}.section-heading .eyebrow{margin-bottom:1.5rem}.section-number{font-size:.75rem;font-variant-numeric:tabular-nums;color:#7890a5;border-right:1px solid #4d5d6c;padding-right:.9rem}.section-heading>p{font-size:1rem;color:#93a7b8;line-height:1.7;max-width:25rem;padding-bottom:.25rem}.collection-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);gap:clamp(2rem,4vw,5rem)}.collection-photo-column{min-width:0;align-self:center}.collection-photo{border-block:1px solid #405061}.photo-meta{display:flex;justify-content:space-between;gap:1.5rem;padding:1rem 0;font-size:.75rem;letter-spacing:.07em;color:#91a5b7}.photo-meta>span:last-child{color:var(--warm);text-align:right}.collection-photo img{width:100%;height:auto;aspect-ratio:2.3;object-fit:contain;background:#071320}.collection-photo figcaption{display:flex;justify-content:space-between;gap:1.5rem;padding:1rem 0;font-size:.875rem;color:#c0cad2}.collection-photo figcaption>span:last-child{color:#7e93a5;font-size:.75rem;max-width:155px;text-align:right}.collection-note{display:flex;gap:1.5rem;margin-top:1.8rem;max-width:40rem}.note-line{height:1px;width:3rem;background:var(--warm);flex-shrink:0;margin-top:.8rem}.collection-note p{color:#8fa4b6;font-size:1rem}.collection-choice{width:100%;display:flex;align-items:flex-start;text-align:left;gap:1.4rem;padding:1.25rem .2rem 1.25rem 1rem;background:none;border:0;border-top:1px solid #354454;border-left:2px solid transparent;color:#a3b3c0;transition:border-color .2s}.collection-choice:last-of-type{border-bottom:1px solid #354454}.collection-choice .choice-number{font-size:.75rem;font-variant-numeric:tabular-nums;line-height:2;color:#758da2;min-width:1rem}.collection-choice small{display:block;font-size:.75rem;letter-spacing:.1em;color:#869aab;margin-bottom:.3rem}.collection-choice strong{font-family:var(--display);font-size:1.65rem;line-height:1.22;font-weight:400;letter-spacing:-.03em;color:#b4c0ca;display:block}.collection-choice em{font-style:normal;display:block;font-size:.9375rem;color:#7f96aa;margin-top:.4rem}.choice-marker{margin-left:auto;font:1.25rem var(--body);color:#8c9ead}.collection-choice.active{border-left-color:var(--warm);background:#101f2c}.collection-choice.active strong{color:var(--ivory)}.collection-choice.active small,.collection-choice.active .choice-marker{color:var(--warm)}.collection-choice:hover strong{color:white}.collection-cta{margin:1.7rem 0 0 1rem}.collection-cta span{margin-left:1.5rem}.work{background:var(--paper);color:var(--ink);padding-block:6rem}.work .eyebrow{color:#687b83}.work .section-number{color:#889497;border-color:#b3bcbe}.work .section-heading{margin-bottom:3.5rem}.work .section-heading h2{max-width:62rem}.work-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:5rem;align-items:start}.installation-photo img{width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;object-position:50% 52%}.installation-photo figcaption{display:flex;justify-content:space-between;gap:2rem;padding-top:1rem;font-size:.875rem;color:#596c73}.installation-photo figcaption>span:last-child{font-size:.75rem;max-width:170px;text-align:right;color:#7b898c}.craft-story{padding-top:.5rem}.craft-story .eyebrow{margin-bottom:1.6rem}.craft-story h3{font-size:clamp(2rem,3vw,2.8rem);margin-bottom:1.5rem}.craft-story>p:not(.eyebrow){color:#586e79;max-width:27rem;font-size:1.0625rem}.craft-list{list-style:none;padding:0;margin:1.5rem 0 2rem}.craft-list li{padding:.75rem 0;border-bottom:1px solid #cbd1d0;font-size:.9375rem;color:#3f5662}.craft-list li:before{content:'—';margin-right:.75rem;color:#8e9a9c}.crew-photo{max-width:26rem}.crew-photo img{width:100%;height:auto;aspect-ratio:2.1;object-fit:cover;object-position:50% 40%}.crew-photo figcaption{font-size:.75rem;color:#6a7c83;margin-top:.6rem}.reviews-row{display:grid;grid-template-columns:.8fr 1.15fr 1.15fr;gap:3rem;border-top:1px solid #c2cdcc;margin-top:4rem;padding-top:3rem}.reviews-row .eyebrow{margin-bottom:.8rem}.source-note{font-size:.75rem!important;color:#79898e!important;line-height:1.7}.reviews-row blockquote{font-size:1.125rem;color:#344d5a;line-height:1.65}.reviews-row cite{display:block;font-style:normal;font-size:.75rem;letter-spacing:.1em;margin-top:1rem;color:#718187}.process{padding-block:6rem}.process-grid{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:0;margin:3.5rem 0 0}.process-grid li{padding-top:1.5rem;border-top:1px solid #49596b}.process-grid li>span{font-size:.75rem;letter-spacing:.08em;color:var(--warm)}.process-grid h3{font-size:1.6rem;margin:1.7rem 0 1rem;line-height:1.22;max-width:15rem}.process-grid p{font-size:1rem;color:#95a9bb;line-height:1.65}.investment-note{display:grid;grid-template-columns:1.05fr 1.2fr .7fr;gap:2rem;align-items:center;border-block:1px solid #354352;background:#0e1e2d;margin-top:4rem;padding:2rem}.investment-note .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:.8rem;color:#8fa3b4}.investment-note h3{font-size:1.45rem}.investment-note>p{font-size:1rem;color:#a2b4c2}.investment-note .quiet-link{font-size:.875rem;justify-self:end}.investment-note .quiet-link>span{margin-left:.75rem}.questions{display:grid;grid-template-columns:1fr 1.1fr;gap:6rem;padding-top:1rem;padding-bottom:6rem}.questions .eyebrow{margin-bottom:1.5rem}.questions h2{font-size:clamp(2rem,3vw,3.1rem)}.faq-intro{color:#89a0b3;max-width:22rem;font-size:1rem;margin-top:1.5rem}.faq-list details{border-bottom:1px solid #334657}.faq-list summary{list-style:none;position:relative;padding:1.25rem 2rem 1.25rem 0;cursor:pointer;font-size:1.0625rem;color:#d7dfe3}.faq-list summary:after{content:'+';position:absolute;right:.3rem;font-size:1.25rem;font-weight:300;color:var(--warm)}.faq-list details[open] summary:after{content:'−'}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{font-size:1rem;color:#98aebe;line-height:1.7;padding:0 1rem 1.5rem 0}.quote-section{background:#142535;border-block:1px solid #3b4e5f;padding-block:6rem}.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:start}.quote-copy{padding-top:1rem}.quote-copy>.eyebrow{margin-bottom:2rem}.quote-copy h2{font-size:clamp(2.9rem,4.7vw,5rem);line-height:1.08}.quote-copy>p:not(.eyebrow){max-width:26rem;font-size:1.125rem;color:#a7b8c8;margin-top:2rem}.quote-steps{margin-top:2.5rem;display:grid;gap:.9rem;counter-reset:steps}.quote-steps span{font-size:.9375rem;color:#c5cdd1}.quote-steps span:before{counter-increment:steps;content:'0' counter(steps);color:#889fb0;font-size:.75rem;display:inline-block;width:2.7rem}.service-area{border-top:1px solid #3b4e5e;margin-top:3rem;padding-top:2rem;max-width:28rem}.service-area .eyebrow{color:#839cac;font-size:.75rem;margin-bottom:.8rem}.service-area>p:not(.eyebrow){font-size:1rem;color:#b5c5d0;line-height:1.8}.service-area>span{display:block;font-size:.875rem;color:#8099ac;margin-top:.7rem}.quote-panel{background:#f3f2ed;color:#163041;padding:2rem 2.2rem}.preview-label{border-bottom:1px solid #cdd5d5;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding-bottom:1rem;margin-bottom:1.4rem;font-size:.75rem;font-weight:600;letter-spacing:.065em;color:#526d7a}.preview-label span{font-weight:400;letter-spacing:0;color:#7c8b8f}.property-types{border:0;padding:0;margin:0 0 1.4rem;display:flex;gap:.6rem;flex-wrap:wrap}.property-types legend{font-size:.9375rem;font-weight:600;margin-bottom:.7rem}.property-types label{display:inline-flex;position:relative;margin:0;cursor:pointer}.property-types input{position:absolute;inset:0;opacity:0}.property-types span{display:block;padding:.6rem .9rem;background:transparent;border:1px solid #bccbd0;font-size:.875rem;color:#4d6674}.property-types input:checked+span{background:#1a3345;color:white;border-color:#1a3345}.property-types input:focus-visible+span{outline:2px solid #34677f;outline-offset:3px}form>label,.form-grid>label{display:block;font-size:.9375rem;font-weight:600;margin-bottom:1.2rem}form label>span{float:right;font-size:.8125rem;color:#748995;font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}input:not([type=radio]):not([type=file]),select{width:100%;display:block;margin-top:.4rem;border:1px solid #c2cfd4;padding:.75rem .85rem;background:#fbfbf8;color:#213e50;border-radius:0;min-width:0;line-height:1.5;font-size:1rem}input::placeholder{color:#85959d;font-size:.9375rem}select{min-height:3.05rem}.photo-disclosure{border-block:1px solid #c9d4d9;margin:1.3rem 0}.photo-disclosure summary{display:flex;justify-content:space-between;padding:.9rem 0;cursor:pointer;font-size:.9375rem;list-style:none}.photo-disclosure summary:after{content:'+';margin-left:1rem}.photo-disclosure[open] summary:after{content:'−'}.photo-disclosure summary::-webkit-details-marker{display:none}.photo-disclosure summary>span{color:#8296a0;font-size:.8125rem;margin-left:auto}.photo-disclosure>p{font-size:.9375rem;color:#5f7888;margin:0 0 .9rem}.file-control{position:relative;display:flex;justify-content:space-between;padding:.8rem;border:1px dashed #8ca3b0;font-size:.9375rem;color:#375668;cursor:pointer;margin-bottom:.6rem}.file-control input{opacity:0;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.file-control:focus-within{outline:2px solid #34677f;outline-offset:4px}.field-help{font-size:.8125rem!important;color:#6c8391!important;line-height:1.6;margin:.7rem 0}.preview-explanation{font-size:.875rem;line-height:1.6;color:#65808f;margin-bottom:1.2rem}.submit-button{background:#132d40;border-color:#132d40;color:var(--ivory);width:100%;justify-content:space-between}.submit-button:hover{background:#2b4a5f;border-color:#2b4a5f}#photo-preview{margin:1rem 0}#photo-preview img{max-height:200px;width:100%;object-fit:contain;background:#dbe3e7}#photo-preview figcaption{font-size:.75rem;color:#728b97;margin-top:.5rem}.remove-photo{border:0;border-bottom:1px solid #71899a;padding:0;background:none;font-size:.875rem;color:#38596d;margin-top:.7rem}.quote-result{padding-block:1.5rem}.quote-result .eyebrow{color:#7b8e96;margin-bottom:1.3rem}.quote-result h3{font-size:2rem;margin-bottom:1.5rem}.quote-result p{font-size:1rem;color:#537080;margin-bottom:1.5rem}.result-note{padding:1rem;background:#dfe6e7}.quote-result .button{background:#183549;color:var(--ivory);border-color:#183549}.footer{display:grid;grid-template-columns:1fr .6fr 1.2fr;gap:3rem;padding-block:3rem}.footer>div:first-child>p{font-size:.875rem;color:#7f96a9;margin-top:1rem}.footer nav{display:grid;align-content:start;gap:.5rem;font-size:.9375rem;color:#a2b4c2}.footer-review{font-size:.75rem;color:#647f93;line-height:1.75;text-align:right}.footer-review>a{display:inline-block;color:#adc0ce;border-bottom:1px solid #4b6477;margin:.4rem 0 1rem}.mobile-quote{display:none}.research-main{padding-block:5rem;max-width:1280px}.research-main h1{font-size:clamp(2.6rem,5vw,4.8rem);max-width:1000px;margin:1.5rem 0 2rem}.research-main .research-lead{font-size:1.2rem;color:#a2b8c9;max-width:48rem}.research-meta{font-size:.875rem;color:#778fa2;margin-top:1.5rem}.research-section{margin-top:4rem;border-top:1px solid #34495a;padding-top:3rem}.research-section h2{font-size:2.2rem;margin-bottom:1.5rem}.research-section>p{color:#a7b8c7;max-width:58rem;margin-bottom:1.5rem}.research-table-wrap{overflow-x:auto}.research-table{width:100%;border-collapse:collapse;min-width:620px;font-size:1rem}.research-table th{color:var(--warm);font-size:.8125rem;letter-spacing:.06em;text-align:left;border-bottom:1px solid #53677a;padding:1rem}.research-table td{padding:1.4rem 1rem;border-bottom:1px solid #304659;vertical-align:top;color:#adc0cf;line-height:1.65}.research-table td:first-child{width:22%;color:var(--ivory);font-size:1.1rem}.research-table a,.research-section p a,.research-section li a{border-bottom:1px solid #6c879c;color:#c5d8e5}.research-table td:first-child>small{display:block;font-size:.8125rem;color:#6f8a9f;margin-top:.5rem}.research-table td:nth-child(2){width:39%}.research-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.research-cards article{border-top:1px solid #4b6072;padding-top:1.5rem}.research-cards h3{font-size:1.5rem;margin-bottom:1rem}.research-cards p{font-size:1rem;color:#94adbf}.research-section ul,.research-section ol{padding-left:1.4rem;color:#a8becf;max-width:58rem}.research-section li{padding:.5rem 0}.research-section strong{color:#e0e4df}.research-callout{padding:1.5rem 2rem;background:#162a3a;border-left:2px solid var(--warm);margin-top:2rem;color:#aabfce}.research-callout strong{color:var(--ivory)}
@media(min-width:1800px){.hero-copy{padding-left:var(--gutter)}.hero{grid-template-columns:44% 56%;min-height:740px}.hero-photo{min-height:740px}}
@media(max-width:1250px){.hero{grid-template-columns:48% 52%}.hero-copy{padding-right:1.5rem}.hero-copy h1{font-size:clamp(3rem,4.8vw,4rem)}.hero-location{font-size:.75rem;letter-spacing:.06em}.hero-photo figcaption{left:1.5rem;right:1.5rem;display:block}.hero-photo figcaption>span{display:block}.hero-photo figcaption>span:last-child{text-align:left;max-width:none;margin-top:.35rem}.service-ribbon{display:block}.service-ribbon>p{text-align:left;margin-top:.5rem}.service-ribbon b{margin-inline:.45rem}.collection-layout{gap:2.5rem;grid-template-columns:1.2fr 1fr}.collection-choice{gap:1rem}.collection-choice strong{font-size:1.5rem}.work-layout{gap:3rem}.reviews-row{gap:2rem}.process-grid{gap:1.5rem}.process-grid h3{font-size:1.4rem}.investment-note{grid-template-columns:1fr 1.2fr}.investment-note .quiet-link{grid-column:2;justify-self:start}.quote-layout{gap:4rem}.quote-panel{padding:1.8rem}.header nav{gap:1.5rem}.hero-photo>img{object-position:55% center}}
@media(max-width:950px){.review-strip{font-size:.75rem}.review-strip>span{max-width:270px;line-height:1.5;flex-wrap:wrap;gap:.25rem .5rem}.review-strip i{display:none}.header{gap:1.5rem}.header nav{gap:1.2rem;font-size:.875rem}.header .logo{width:7.5rem}.hero{min-height:610px}.hero-photo{min-height:610px}.hero-copy{padding-top:3rem;padding-bottom:2.5rem}.hero-copy h1{font-size:3rem}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.08em;gap:.6rem}.hero-location{margin-left:0;margin-bottom:2rem;max-width:250px;line-height:1.7}.hero-description{font-size:1.0625rem}.hero-copy .button{font-size:.9375rem;gap:1rem;padding:.85rem 1.1rem}.hero-service{font-size:.875rem;margin-top:2rem}.testimonial-lead{gap:2rem;grid-template-columns:1fr 2fr}.quote-attribution{display:block}.quote-attribution span{display:block;margin-bottom:.3rem}.section-heading>p{max-width:19rem}.collection-layout{grid-template-columns:1fr}.collection-photo-column{max-width:none}.collection-photo img{aspect-ratio:3.15}.collection-index{display:grid;grid-template-columns:1fr 1fr;column-gap:2rem}.collection-choice{border-bottom:1px solid #354454}.collection-cta{grid-column:1/-1}.collection-note{margin-top:1.3rem}.work-layout{gap:2.5rem;grid-template-columns:1fr 1fr}.installation-photo img{aspect-ratio:.85}.installation-photo figcaption{display:block}.installation-photo figcaption>span{display:block}.installation-photo figcaption>span:last-child{max-width:none;text-align:left;margin-top:.3rem}.craft-story h3{font-size:2.1rem}.craft-story>p:not(.eyebrow){font-size:1rem}.craft-list li{font-size:.875rem}.reviews-row{grid-template-columns:1fr 1fr;gap:2rem}.reviews-row>div{grid-column:1/-1;max-width:30rem}.process-grid{grid-template-columns:1fr 1fr;row-gap:2.5rem}.process-grid h3{font-size:1.7rem}.questions{gap:3rem}.quote-layout{gap:2.5rem;grid-template-columns:.9fr 1.1fr}.quote-copy h2{font-size:3.2rem}.quote-copy>p:not(.eyebrow){font-size:1.0625rem}.quote-panel{padding:1.5rem}.form-grid{grid-template-columns:1fr;gap:0}.footer{grid-template-columns:1fr 1fr}.footer-review{grid-column:1/-1;text-align:left;border-top:1px solid #2b4255;padding-top:1.5rem}.footer-review br{display:none}}
@media(max-width:700px){html{scroll-padding-top:6rem}.review-strip{padding:.6rem 1.5rem;display:block}.review-strip>span{max-width:none;font-size:.75rem}.review-strip>div{margin-top:.3rem;gap:1.5rem;font-size:.75rem}.header{height:5rem;padding-inline:1.5rem;gap:1rem}.header .logo{width:7rem}.header nav{display:none}.header .button{font-size:.875rem;padding:.7rem 1rem;gap:1.2rem;min-height:2.75rem}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:3rem 1.5rem 2.7rem;align-self:auto}.hero-copy h1{font-size:clamp(2.5rem,8.5vw,3.7rem);white-space:normal;letter-spacing:-.03em;margin:0 0 1.5rem;line-height:1.1}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.09em}.hero-location{margin:.3rem 0 1.8rem 2.2rem;max-width:none;font-size:.75rem;letter-spacing:.06em}.hero-description{font-size:1.125rem;max-width:28rem;margin-bottom:1.7rem}.hero-copy>.quiet-link{margin-top:1rem}.hero-service{margin-top:2rem;padding-top:1rem;max-width:26rem}.hero-photo{min-height:400px}.hero-photo>img{object-position:50% center}.hero-photo figcaption{left:1.5rem;right:1.5rem;bottom:1.2rem}.hero-photo figcaption>span:last-child{font-size:.75rem}.service-ribbon{padding:1.5rem}.service-ribbon>span{font-size:1rem}.service-ribbon>p{font-size:.9375rem;line-height:1.9;max-width:28rem}.testimonial-lead{display:block;padding-block:3rem}.testimonial-lead .eyebrow{max-width:none;margin-bottom:1.2rem}.testimonial-lead blockquote{font-size:1.35rem}.quote-attribution{margin-top:1.2rem;font-size:.75rem}.collections,.process{padding-block:4rem}.section-heading{display:block;margin-bottom:2.2rem}.section-heading .eyebrow{margin-bottom:1.2rem}.section-heading h2{font-size:2.35rem;line-height:1.16;letter-spacing:-.03em}.section-heading>p{max-width:29rem;margin-top:1.3rem;font-size:1.0625rem}.section-heading>p br{display:none}.collection-layout{gap:1.7rem}.collection-photo img{aspect-ratio:2.65}.photo-meta{font-size:.75rem;letter-spacing:0;gap:1rem;padding:.85rem 0}.photo-meta>span:first-child{max-width:140px}.collection-photo figcaption{font-size:.9375rem;gap:1rem;line-height:1.5}.collection-photo figcaption>span:last-child{font-size:.75rem;max-width:115px}.collection-note{gap:1rem;margin-top:1.3rem}.note-line{width:2rem}.collection-note p{font-size:1rem}.collection-index{display:block}.collection-choice{padding:1.2rem .5rem 1.2rem 1rem;gap:1rem}.collection-choice strong{font-size:1.6rem}.collection-choice em{font-size:1rem}.collection-choice small,.collection-choice .choice-number{font-size:.75rem}.collection-cta{font-size:1rem;margin-top:1.5rem}.work{padding-block:4rem}.work .section-heading h2{font-size:2.15rem}.work .section-heading h2 br{display:none}.work-layout{display:flex;flex-direction:column;gap:2.5rem}.installation-photo{width:100%}.installation-photo img{aspect-ratio:1.05;object-fit:cover}.installation-photo figcaption{font-size:.9375rem}.craft-story .eyebrow{margin-bottom:1.2rem}.craft-story h3{font-size:2.3rem}.craft-story h3 br{display:none}.craft-story>p:not(.eyebrow){font-size:1.0625rem;max-width:32rem}.craft-list li{font-size:1rem}.crew-photo{max-width:none;width:100%}.crew-photo img{aspect-ratio:1.65;object-position:center}.reviews-row{display:block;margin-top:3rem;padding-top:2rem}.reviews-row>div{margin-bottom:2rem}.reviews-row blockquote{font-size:1.125rem;margin-top:2rem}.process-grid{grid-template-columns:1fr;gap:1.8rem;margin-top:2rem}.process-grid li{padding-top:1.2rem}.process-grid h3{max-width:none;font-size:1.75rem;margin:1rem 0 .7rem}.process-grid p{font-size:1.0625rem}.investment-note{display:block;padding:1.8rem 1.5rem;margin-top:3rem}.investment-note h3{font-size:1.65rem}.investment-note>p{font-size:1rem;margin-top:1.4rem}.investment-note .quiet-link{font-size:1rem;margin-top:1.5rem}.questions{display:block;padding-top:0;padding-bottom:4rem}.questions h2{font-size:2.2rem}.faq-intro{font-size:1.0625rem;margin:1.3rem 0 2rem}.faq-list summary{font-size:1.0625rem;line-height:1.4;padding-block:1.25rem}.faq-list details p{font-size:1rem}.quote-section{padding-block:4rem}.quote-layout{display:block}.quote-copy{padding-top:0}.quote-copy h2{font-size:3.1rem}.quote-copy>.eyebrow{margin-bottom:1.5rem}.quote-copy>p:not(.eyebrow){font-size:1.125rem;margin-top:1.5rem;max-width:30rem}.quote-steps{margin-top:1.8rem}.service-area{margin-top:2rem;padding-top:1.5rem;max-width:none}.quote-panel{margin-top:2.5rem;padding:1.5rem}.property-types{gap:.4rem}.property-types span{font-size:.875rem;padding:.6rem .7rem}form>label,.form-grid>label{font-size:1rem}.photo-disclosure summary{font-size:1rem}.preview-explanation{font-size:.875rem}.footer{padding-block:2.5rem 6rem;gap:2rem}.footer .logo{width:7rem}.footer>div:first-child>p{font-size:.875rem;max-width:13rem}.footer nav{font-size:1rem}.footer-review{font-size:.75rem;padding-top:1.5rem}.mobile-quote{display:block;position:fixed;inset:auto 0 0;z-index:16;background:var(--ivory);color:var(--ink);padding:.8rem 1.5rem max(.8rem,env(safe-area-inset-bottom));border-top:1px solid #d5d4cc;box-shadow:0 -5px 25px #0712222b}.mobile-quote a{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:1rem;min-height:2rem}.research-main{padding-block:3rem}.research-main h1{font-size:2.65rem}.research-main .research-lead{font-size:1.125rem}.research-section{margin-top:3rem;padding-top:2rem}.research-section h2{font-size:2rem}.research-cards{grid-template-columns:1fr}.research-section p,.research-section li{font-size:1.0625rem}.research-table{font-size:1rem}.research-callout{padding:1.5rem}.research-main+.footer{padding-bottom:2rem}}
@media(max-width:380px){.hero-location{margin-left:0}.hero-copy h1{font-size:2.65rem}.hero-description{font-size:1.0625rem}.header .button{gap:.7rem;padding:.65rem .8rem}.header .logo{width:6.3rem}.review-strip>span{font-size:.75rem;letter-spacing:.02em}.quote-panel{padding:1.2rem}.property-types span{padding:.55rem .6rem}.collection-choice strong{font-size:1.45rem}.collection-choice em{font-size:.9375rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(min-width:701px) and (max-width:950px){.hero-copy h1{font-size:clamp(2.3rem,4.55vw,3rem)}}

/* Maintain readable supporting text on light surfaces. */
.work .eyebrow,.work .section-number{color:#526872}
.installation-photo figcaption,.installation-photo figcaption>span:last-child,.crew-photo figcaption,.reviews-row cite{color:#526872}
.source-note{color:#526872!important}
.preview-label,.preview-label span,form label>span,.photo-disclosure summary>span{color:#526b78}
.field-help{color:#526b78!important}
.preview-explanation,.photo-disclosure>p,#photo-preview figcaption{color:#526b78}
input::placeholder{color:#607781}
.footer-review{color:#8da3b4}

/* Central Pennsylvania: local service content within the Midnight Estate system. */
.hero-copy h1{font-size:clamp(2.75rem,3.75vw,4.5rem);line-height:1.14;letter-spacing:-.035em}
.hero-photo>img{object-position:50% center}
.hero-location{font-size:.875rem;margin-left:0;letter-spacing:.1em}
.hero-description{max-width:30rem}
.local-intro{display:grid;grid-template-columns:1fr 2.1fr;gap:4rem;padding-block:4rem;border-bottom:1px solid var(--rule)}
.local-intro>.eyebrow{align-items:flex-start;padding-top:.5rem}
.local-intro h2{font-size:clamp(1.9rem,2.6vw,2.7rem);margin-bottom:1.4rem}
.local-intro p:not(.eyebrow){max-width:48rem;color:#a9bbc9;margin-top:1rem}
.local-intro a,.faq-list p a,.areas-heading p a,.coverage-source a{text-decoration:underline;text-underline-offset:4px}
.installation-photo img{aspect-ratio:1.5;object-position:center}
.coverage-summary{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;padding-top:1rem;padding-bottom:5rem}
.coverage-summary .eyebrow{margin-bottom:1.5rem}.coverage-summary h2{font-size:clamp(2rem,3vw,3rem)}
.coverage-summary p:not(.eyebrow){font-size:1.0625rem;color:#a5b9c8;margin-bottom:1.5rem;max-width:34rem}
.service-area>.quiet-link{margin-top:1rem}.service-area>.contact-phone{display:inline-block;font-family:var(--display);font-size:1.7rem;margin-top:1.2rem;color:var(--ivory)}
.areas-main{max-width:1450px;padding-block:5rem}.areas-heading{max-width:960px}.areas-heading h1{font-size:clamp(2.6rem,4.4vw,4.5rem);margin:1.5rem 0;line-height:1.15}
.areas-heading .areas-lead{color:var(--warm);font-family:var(--display);font-size:1.5rem;margin-bottom:1rem}
.areas-heading p:not(.eyebrow):not(.areas-lead){max-width:47rem;color:#a9bbc9;font-size:1.125rem}
.areas-heading>.quiet-link{margin-top:1.6rem}
.areas-service-note{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;border-block:1px solid var(--rule);padding-block:1.7rem;margin-top:3rem}
.areas-service-note>p{color:#a5bacb;max-width:48rem;font-size:1rem}
.area-jumps{display:flex;flex-wrap:wrap;gap:.7rem 1.6rem;padding-block:2.5rem;font-size:.9375rem;color:#bfced8}
.area-jumps a{padding-block:.3rem;border-bottom:1px solid #526575}.area-jumps a:hover{color:var(--warm)}
.directory-heading{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;padding-block:1.7rem 2rem}
.directory-heading .eyebrow{margin-bottom:1.2rem}.directory-heading h2{font-size:2.7rem}.directory-heading>p{font-size:1rem;color:#a9bdcc;max-width:32rem}
.area-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem 5rem}
.area-group{padding-top:1.7rem;border-top:1px solid #4a5f70;scroll-margin-top:1.5rem}
.area-group-title{display:flex;gap:1rem;align-items:baseline}.area-number{font-size:.875rem;color:var(--warm)}
.area-group h3{font-size:1.6rem;line-height:1.3}
.area-group ul{list-style:none;padding:0;margin:1.5rem 0 0;columns:2;column-gap:2rem}
.area-group li{break-inside:avoid;padding:.25rem 0;font-size:1rem;color:#b9c9d5;line-height:1.6}
.coverage-source{border-top:1px solid #34495a;padding-top:1.7rem;font-size:.875rem;color:#9cafbd;margin-top:3rem;max-width:65rem}
.areas-next{display:grid;grid-template-columns:1fr 1fr;gap:5rem;border-block:1px solid #34495a;padding-block:3rem;margin-top:4rem;align-items:center}
.areas-next h2{font-size:3rem;margin:1.2rem 0 1.5rem}.areas-next p{max-width:30rem;font-size:1rem;color:#a8bbc9}
.areas-next .quiet-link{margin:1.5rem 0}.areas-next>div:last-child>p{font-size:.9375rem}
@media(min-width:701px) and (max-width:950px){.hero-copy h1{font-size:clamp(2.1rem,3.8vw,2.6rem)}}
@media(max-width:950px){.local-intro{gap:2.5rem}.coverage-summary{gap:2.5rem}.area-directory{column-gap:2.5rem}.area-group ul{columns:1}.areas-service-note{grid-template-columns:1fr;gap:1rem}.directory-heading{gap:2.5rem}.areas-next{gap:2.5rem}.area-group h3{font-size:1.4rem}}
@media(max-width:700px){.hero-copy h1{font-size:clamp(2.15rem,8.2vw,3.4rem);line-height:1.13}.hero-location{margin-left:0;font-size:.875rem}.hero-photo{min-height:330px}.hero-photo>img{object-fit:cover}.local-intro{display:block;padding-block:3rem}.local-intro>.eyebrow{margin-bottom:1.3rem}.local-intro h2{font-size:2rem}.local-intro p:not(.eyebrow){font-size:1.0625rem}.coverage-summary{display:block;padding-top:0;padding-bottom:3rem}.coverage-summary h2{font-size:2.2rem;margin-bottom:1.5rem}.areas-main{padding-block:3rem}.areas-heading h1{font-size:clamp(2rem,7.6vw,3.1rem)}.areas-heading h1 br{display:none}.areas-heading .areas-lead{font-size:1.3rem}.areas-service-note{margin-top:2rem}.area-jumps{gap:.6rem 1.2rem;font-size:1rem}.directory-heading{display:block}.directory-heading h2{font-size:2.3rem}.directory-heading>p{margin-top:1.4rem}.area-directory{grid-template-columns:1fr;gap:2.2rem}.area-group ul{columns:2;column-gap:1.3rem}.area-group h3{font-size:1.5rem}.areas-next{display:block;padding-block:2rem;margin-top:3rem}.areas-next h2{font-size:2.5rem}.areas-next>div:last-child{margin-top:2rem}.coverage-source{font-size:.875rem}}
@media(max-width:380px){.area-group ul{columns:1}.hero-photo{min-height:290px}}

/* TurboGlow brand artwork, customer stories and real team photography. */
.header .logo{width:10rem}.header .logo img,.footer .logo img{width:100%;height:auto}.header nav{gap:1.6rem}
.review-spotlight{background:var(--ivory);color:var(--ink);padding-block:4.5rem;border-bottom:5px solid #b64a42}
.review-spotlight-layout{display:grid;grid-template-columns:.85fr 1.6fr;gap:5rem;align-items:center}
.review-spotlight .eyebrow{color:#735529;font-size:.8125rem;letter-spacing:.1em;margin-bottom:1.25rem}
.review-spotlight-heading h2{font-size:clamp(2.75rem,4.2vw,4.4rem);line-height:1.08;color:#122737}
.review-spotlight-heading>p:not(.eyebrow){color:#556975;margin-top:1.4rem;font-size:1rem}
.review-spotlight-heading .quiet-link{color:#243f51;border-color:#7c8b91;margin-top:1.3rem}
.featured-review{border-left:1px solid #c4c7c1;padding-left:3.5rem}
.review-stars{color:#93620c;font-size:1.4rem;letter-spacing:.18em;line-height:1;margin-bottom:1.5rem}
.review-highlight{font:400 clamp(1.6rem,2.35vw,2.55rem)/1.35 var(--display);letter-spacing:-.025em;color:#152e40}
.review-detail{font-size:1.0625rem;color:#4c6472;line-height:1.75;margin-top:1.3rem;max-width:44rem}
.featured-review figcaption{margin-top:1.7rem;display:grid;gap:.4rem}
.review-name{font-size:1.125rem;font-weight:600;color:#153044}
.featured-review figcaption>span:last-child{font-size:.8125rem;color:#607580}
.local-intro{grid-template-columns:1fr 1.15fr;align-items:center;gap:5rem;padding-block:5rem;border-bottom:0}
.local-intro>div>.eyebrow{margin-bottom:1.3rem}.local-intro>div>.quiet-link{margin-top:1.5rem}
.team-intro-photo img{width:100%;height:auto}
.team-intro-photo figcaption{display:flex;justify-content:space-between;gap:1.25rem;border-top:1px solid #42566a;padding-top:1rem;margin-top:1rem;font-size:.8125rem;color:#a8bac7}
.team-intro-photo figcaption>span:first-child{font-weight:600;letter-spacing:.07em;color:#d8dfdf}.team-intro-photo figcaption>span:last-child{text-align:right;max-width:14rem}
.installation-team-photo{max-width:none}.installation-team-photo img{aspect-ratio:auto;object-fit:contain}
.customer-stories{margin-top:4rem;padding-top:3rem;border-top:1px solid #b8c4c4}
.customer-stories-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}
.customer-stories-heading .eyebrow{font-size:.8125rem;margin-bottom:1rem}.customer-stories-heading h3{font-size:clamp(1.85rem,2.65vw,2.7rem)}
.customer-stories-heading .quiet-link{color:#284653;border-color:#869b9e;flex-shrink:0}
.customer-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem}
.customer-review{background:#fcfbf6;border:1px solid #d1d8d4;border-top:3px solid #b64a42;padding:1.8rem;display:flex;flex-direction:column}
.customer-review .review-stars{font-size:1.15rem;margin-bottom:1.3rem;color:#94650e}
.customer-review blockquote{font-size:1.125rem;line-height:1.7;color:#243f4f}
.customer-review figcaption{font-size:1rem;font-weight:600;color:#152f40;border-top:1px solid #d4dcd7;padding-top:1.2rem;margin-top:auto}
.customer-review blockquote{padding-bottom:1.5rem}.review-source{font-size:.8125rem!important;color:#546d79!important;margin-top:1.4rem;line-height:1.6}
.quote-team{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:1.5rem;align-items:center;margin-top:2rem;padding-block:1.5rem;border-block:1px solid #405368}
.quote-team img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 35%}
.quote-team .eyebrow{font-size:.75rem;letter-spacing:.08em;line-height:1.6;margin-bottom:.8rem}
.quote-team>div>p:last-child{font:400 clamp(1.15rem,1.8vw,1.6rem)/1.4 var(--display);color:#e2e8e7;letter-spacing:-.02em}
.area-team-photo{max-width:29rem;margin-bottom:2.2rem}.area-team-photo img{width:100%;height:auto}
.area-team-photo figcaption{font-size:.875rem;color:#b1c3cf;margin-top:.8rem}
@media(max-width:1100px){.review-spotlight-layout{gap:3rem}.featured-review{padding-left:2.5rem}.local-intro{gap:3rem}.customer-review-grid{gap:1rem}.customer-review{padding:1.4rem}.customer-review blockquote{font-size:1.0625rem}}
@media(max-width:950px){.header .logo{width:8rem}.header nav{gap:1rem}.review-spotlight-layout{grid-template-columns:.8fr 1.2fr;gap:2rem}.review-spotlight-heading h2{font-size:2.8rem}.featured-review{padding-left:2rem}.review-highlight{font-size:1.7rem}.local-intro{gap:2.5rem;grid-template-columns:1fr 1fr}.local-intro h2{font-size:2rem}.team-intro-photo figcaption{display:block}.team-intro-photo figcaption>span{display:block}.team-intro-photo figcaption>span:last-child{text-align:left;max-width:none;margin-top:.4rem}.customer-review-grid{grid-template-columns:1fr}.customer-review{padding:1.6rem 1.8rem}.customer-review blockquote{font-size:1.125rem}.customer-review figcaption{padding-top:1rem}.quote-team{grid-template-columns:1fr;gap:1rem}.quote-team img{max-width:18rem;aspect-ratio:1.35}.quote-team>div>p:last-child br{display:none}.quote-team>div>p:last-child{font-size:1.4rem}.customer-stories-heading{display:block}.customer-stories-heading .quiet-link{margin-top:1.2rem}}
@media(max-width:700px){.header .logo{width:8rem}.review-spotlight{padding-block:3rem}.review-spotlight-layout{display:block}.review-spotlight-heading h2{font-size:2.7rem}.review-spotlight-heading h2 br{display:none}.review-spotlight-heading>p:not(.eyebrow){margin-top:1rem}.featured-review{border-left:0;border-top:1px solid #bbc5c4;margin-top:2rem;padding:1.8rem 0 0}.review-highlight{font-size:clamp(1.65rem,5.5vw,2rem)}.review-detail{font-size:1rem;line-height:1.7}.review-stars{font-size:1.35rem;margin-bottom:1.2rem}.local-intro{display:flex;flex-direction:column;align-items:stretch;padding-block:3.5rem;gap:2rem}.local-intro h2{font-size:2.15rem}.local-intro p:not(.eyebrow){font-size:1.0625rem}.team-intro-photo figcaption{display:block}.customer-stories{margin-top:3rem;padding-top:2rem}.customer-stories-heading h3{font-size:2rem;line-height:1.2}.customer-review{padding:1.5rem}.customer-review blockquote{font-size:1.125rem}.quote-team{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:1.2rem}.quote-team img{aspect-ratio:1;max-width:none}.quote-team>div>p:last-child{font-size:1.2rem}.quote-team>div>p:last-child br{display:inline}.area-team-photo{max-width:none}.area-team-photo figcaption{font-size:.875rem}}
@media(max-width:380px){.header .logo{width:7rem}.quote-team{grid-template-columns:1fr}.quote-team img{max-width:16rem;aspect-ratio:1.4}.quote-team>div>p:last-child br{display:none}}

/* Brand refinement: quiet framing, clear type and room for the original logo. */
:root{--label-size:.875rem;--caption-size:.875rem;--label-tracking:.035em;--brand-clear-space:1.125rem}
.header{height:auto;min-height:7rem;padding-block:var(--brand-clear-space);gap:clamp(.875rem,2vw,2rem);border-bottom-color:#24313e}
.header .logo,.footer .logo{width:9rem;flex-shrink:0}
.header nav{gap:clamp(.8rem,1.5vw,1.6rem)}
.footer .logo{margin-bottom:1.5rem}
.eyebrow,.review-spotlight .eyebrow,.customer-stories-heading .eyebrow{font-size:var(--label-size);letter-spacing:var(--label-tracking);font-weight:600;line-height:1.6}
.hero-copy .eyebrow{font-size:var(--label-size);letter-spacing:var(--label-tracking)}
.hero-location{letter-spacing:.025em;margin-top:.4rem}
.hero-service{border-top:0;padding-top:0}
.service-ribbon{border:0}
.review-spotlight{border-bottom:0}
.featured-review{border:0;padding-left:0}
.featured-review figcaption>span:last-child{font-size:var(--caption-size)}
.team-intro-photo figcaption{border:0;padding-top:0;margin-top:1rem;font-size:var(--caption-size)}
.team-intro-photo figcaption>span:last-child{max-width:none;text-align:left;letter-spacing:0;font-weight:400;color:#a8bac7}
.collection-photo{border:0}
.photo-meta{padding:0 0 1rem;font-size:var(--label-size);letter-spacing:var(--label-tracking)}
.photo-meta>span:last-child{text-align:left}
.collection-photo figcaption>span:last-child,.installation-photo figcaption>span:last-child,.crew-photo figcaption{font-size:var(--caption-size)}
.collection-note{gap:0;margin-top:1.4rem}
.collection-choice{padding-left:1.25rem;gap:1rem}
.collection-choice small{font-size:var(--label-size);letter-spacing:var(--label-tracking);margin-bottom:.45rem}
.collection-choice em{line-height:1.55}
.craft-list li{border:0;padding:.45rem 0}
.craft-list li:before{content:none}
.customer-stories{border:0;padding-top:0}
.customer-review{border:0;padding:2rem}
.customer-review figcaption{border:0;padding-top:.5rem}
.review-source{font-size:var(--caption-size)!important}
.process-grid li{border:0;padding-top:0}
.process-grid li>span{font-size:var(--label-size);letter-spacing:.025em}
.process-grid h3{margin-top:1.1rem}
.investment-note{border:0}
.quote-team{border:0;padding-block:0;margin-block:2rem}
.quote-copy h2{margin-top:0}
.quote-steps{border:0}
.area-group{border:0;padding-top:0}
.areas-service-note{border-bottom:0}
.coverage-source{border:0;padding-top:0}
.areas-next{border:0}
@media(max-width:950px){.header .logo{width:7rem}.header nav{gap:.9rem}.featured-review{padding-left:0}.customer-review{padding:1.8rem}}
@media(max-width:700px){html{scroll-padding-top:7rem}.header{min-height:6rem;padding-block:.875rem}.header .logo{width:7.25rem}.footer .logo{width:8rem}.hero-copy .eyebrow{font-size:var(--label-size);letter-spacing:var(--label-tracking)}.hero-location{margin-left:0}.featured-review{border:0;padding-top:0;margin-top:2rem}.customer-review{padding:1.6rem}.quote-team{padding-block:0}.photo-meta{padding:0 0 1rem}.photo-meta>span:first-child{max-width:none}.process-grid li{padding-top:0}.team-intro-photo figcaption>span:last-child{margin-top:0}}
@media(max-width:380px){.header{padding-inline:1.25rem;gap:.75rem}.header .logo{width:6.25rem}}

/* Show the complete supplied photograph; compose each screen around its landscape proportions. */
.hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);gap:clamp(2rem,4vw,4rem);align-items:center;min-height:0;max-width:1600px;padding:clamp(3rem,5vw,5rem) var(--gutter)}
.hero-copy{padding:0;min-width:0;align-self:center}
.hero-copy h1{font-size:clamp(2.25rem,3.3vw,3.75rem);margin-right:0;line-height:1.15}
.hero-location{margin-bottom:1.7rem}
.hero-description{max-width:29rem}
.hero-details>.quiet-link{margin-top:1.2rem}
.hero-service{margin-top:2rem}
.hero-photo{min-height:0;overflow:visible;align-self:center}
.hero-photo>img{position:static;width:100%;height:auto;aspect-ratio:1140/717;object-fit:contain}
.hero-photo:after{display:none}
.hero-photo figcaption{position:static;display:flex;align-items:start;justify-content:space-between;gap:1.5rem;margin-top:1rem;font-size:.8125rem;line-height:1.6}
.hero-photo figcaption>span:first-child{letter-spacing:.04em;color:var(--warm)}
.hero-photo figcaption>span:last-child{max-width:14rem;text-align:right;color:#a9b5c0;margin-top:0}
@media(min-width:701px) and (max-width:1050px){.hero{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:2rem}.hero-copy h1{font-size:clamp(2rem,3.4vw,2.9rem)}.hero-photo figcaption{display:block}.hero-photo figcaption>span{display:block}.hero-photo figcaption>span:last-child{max-width:none;text-align:left;margin-top:.35rem}}
@media(max-width:700px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:2rem 1.5rem 2.5rem}.hero-copy{display:contents}.hero-intro{order:0}.hero-photo{order:1;align-self:stretch;margin:0 -1.5rem 1.75rem}.hero-details{order:2}.hero-copy h1{font-size:clamp(2rem,7.6vw,3.15rem);margin:0 0 1.5rem;line-height:1.13}.hero-location{margin-bottom:1.25rem}.hero-photo>img{min-height:0;aspect-ratio:1140/717;object-fit:contain}.hero-photo figcaption{padding-inline:1.5rem;display:block;margin-top:.75rem}.hero-photo figcaption>span:first-child{display:none}.hero-photo figcaption>span:last-child{display:block;max-width:none;text-align:left;font-size:.8125rem;margin:0}.hero-description{margin-bottom:1.5rem}.hero-details>.quiet-link{margin-top:1rem}.hero-service{margin-top:1.5rem}}

/* One mobile opening: service, finished house, then a single quote action. */
.hero-description-mobile{display:none}
@media(max-width:700px){
 .home-page .header>.button{display:none}
 .home-page .header{min-height:5rem;padding-block:.75rem}
 .home-page .hero{padding-top:1.25rem}
 .home-page .hero-intro .eyebrow,.home-page .hero-location{display:none}
 .home-page .hero-copy h1{font-size:clamp(1.8rem,7.3vw,3rem);margin-bottom:1.25rem;max-width:24rem}
 .home-page .hero-copy h1 br{display:none}
 .home-page .hero-photo{margin-bottom:1rem}
 .hero-description-desktop{display:none}
 .hero-description-mobile{display:inline}
 .home-page .hero-description{font-size:1.0625rem;line-height:1.45;margin:0 0 1rem}
 .home-page .hero-details>.button{display:flex;justify-content:space-between;width:100%}
 .home-page .hero-details>.quiet-link,.home-page .hero-service{display:none}
 .home-page .mobile-quote{display:none}
 .home-page .mobile-quote.is-visible{display:block}
}

/* Lead with the feeling, then make the service and location explicit. */
.hero-copy h1{margin-bottom:1.25rem}
.hero-service-line{font-size:1.125rem;line-height:1.45;color:var(--warm);margin:0 0 1.25rem;max-width:27rem}
.hero-photo figcaption>span:only-child{display:block;max-width:none;text-align:left;letter-spacing:0;color:#a9b5c0}
@media(max-width:700px){
 .home-page .hero-copy h1{font-size:clamp(1.8rem,7.6vw,3rem);margin-bottom:.625rem}
 .home-page .hero-copy h1 br{display:block}
 .hero-service-line{font-size:1rem;line-height:1.4;margin-bottom:1rem;max-width:23rem}
 .home-page .hero-description{font-size:1rem;line-height:1.4}
}

/* Clear customer navigation with a keyboard-accessible mobile disclosure. */
.header{gap:1rem}
.header nav{gap:clamp(.75rem,1.2vw,1.4rem)}
.header .logo{width:8rem}
.header-phone{font-size:.9375rem;white-space:nowrap;line-height:1.4;text-decoration:underline;text-underline-offset:.25em}
.header-phone span{display:block}
.header nav{order:1}.header-phone{order:2}.header-quote{order:3}
.header-quote{gap:.75rem;padding-inline:1rem}
.menu-toggle{background:transparent;border:1px solid #667888;border-radius:2px;min-height:44px;padding:.5rem .75rem;display:flex;gap:.65rem;align-items:center}
@media(max-width:1100px){
 .header{flex-wrap:wrap;gap:.75rem}
 .header .logo{margin-right:auto}
 .header-phone{order:0;font-size:.875rem}
 .menu-toggle{order:0}
 .header>.header-quote{display:none}
 .header nav{order:4;display:flex;width:100%;flex-direction:column;gap:0;padding-block:.5rem;max-height:60vh;overflow:auto}
 .header nav a{padding:.7rem .25rem;min-height:44px}
 .header nav a[aria-current]{color:var(--warm)}
}
@media(max-width:700px){
 .home-page .hero-details>.quiet-link{display:table;margin-top:.75rem;min-height:32px}
 .home-page .header .logo{width:6.25rem}
 .header-phone span{display:block}
 .header .menu-toggle{font-size:.9375rem}
}
@media(max-width:360px){.header{padding-inline:1rem;gap:.5rem}.header .logo,.home-page .header .logo{width:5.5rem}.header-phone{font-size:.8125rem}.menu-toggle{padding-inline:.5rem}}

/* Authentic full views and clearly identified details. */
.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 2rem}
.gallery-open{display:block;position:relative;background:var(--night);overflow:hidden}
.gallery-open img{width:100%;height:auto;aspect-ratio:1.59;object-fit:contain}
.enlarge-label{position:absolute;right:.75rem;bottom:.75rem;padding:.45rem .75rem;background:var(--night);color:var(--ivory);font-size:.875rem}
.project-card figcaption{font-size:1rem;line-height:1.5;margin-top:.75rem}
.gallery-entry,.gallery-porch{aspect-ratio:1.8;overflow:hidden;position:relative}
.gallery-entry img,.gallery-porch img{position:absolute;width:200%;max-width:none;height:auto;aspect-ratio:auto;object-fit:initial}
.gallery-entry img{left:-92%;top:-100%}
.gallery-porch img{left:-12%;top:-95%}
.gallery-source{font-size:.875rem;margin-top:1.5rem;color:#52616b}
.gallery-craft{display:block;margin-top:4rem;max-width:52rem}
.gallery-craft .craft-story{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem}
.gallery-craft .craft-story h3,.gallery-craft .craft-story p,.gallery-craft .craft-list{grid-column:1}
.gallery-craft .crew-photo{grid-column:2;grid-row:1 / 4;align-self:center;margin:0}
.gallery-dialog{border:1px solid #425161;background:var(--night);color:var(--ivory);padding:1.25rem;width:min(1000px,94vw,110dvh);max-height:94dvh;overflow:auto}
.gallery-dialog::backdrop{background:#020810e8}
.gallery-is-open{overflow:hidden}
.gallery-close{display:block;margin:0 0 1rem auto}
.gallery-dialog button{background:transparent;color:var(--ivory);border:1px solid #82909e;padding:.6rem 1rem;min-height:44px}
.gallery-expanded{background:var(--night)}
.gallery-expanded.gallery-full img{width:100%;height:auto;max-height:65dvh;object-fit:contain}
.gallery-dialog figcaption{margin-top:1rem;font-size:1rem}
.gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-top:1rem}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr;gap:2rem}.gallery-craft .craft-story{display:block}.gallery-craft .crew-photo{margin-top:1.5rem}.gallery-dialog{padding:.75rem}.gallery-dialog button{padding:.5rem .75rem}}

/* Preserve the complete regional house in every collection illustration. */
.collection-photo img{aspect-ratio:3/2;object-fit:contain;width:100%;height:auto}
.collection-photo figcaption{display:block}
.collection-photo figcaption>span:last-child{display:block;width:100%;max-width:none;text-align:left;white-space:normal;overflow-wrap:break-word}

/* Numbered visual additions and a direct comparison with the preceding tier. */
.collection-visual{position:relative}
.collection-markers{position:absolute;inset:0;pointer-events:none}
.collection-pin{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:1.8rem;height:1.8rem;border:2px solid var(--ivory);border-radius:50%;background:var(--night);color:var(--ivory);font-size:.875rem;font-weight:700;box-shadow:0 2px 8px #0008}
.collection-compare{min-height:44px;background:transparent;color:var(--ivory);border:1px solid #82909e;padding:.65rem 1rem;margin:1rem 0}
.collection-compare[aria-pressed=true]{background:var(--ivory);color:var(--ink)}
.collection-includes{margin-top:1.25rem}
.collection-includes h3{font-family:var(--body);font-size:1.125rem;line-height:1.4;font-weight:600;letter-spacing:0;color:var(--warm)}
.collection-includes ol{padding-left:1.5rem;margin:.75rem 0 0;color:#c8d0d6}
.collection-includes li{padding:.3rem 0 .3rem .25rem;line-height:1.5}
.collection-service{margin-top:3rem;padding:1.5rem 0;border-top:1px solid var(--rule)}
.collection-service h3{font-size:1.3rem;margin-bottom:.75rem}
.collection-service p{font-size:1rem;color:#afbbc7;margin-top:.5rem}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.collection-photo{scroll-margin-top:1rem}

/* On phones, all four choices stay immediately beside their changing preview. */
@media(max-width:700px){
 .mobile-collection-choices{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1rem}
 .mobile-collection-choices .collection-choice{display:flex;align-items:center;justify-content:center;text-align:center;min-height:64px;padding:.65rem .5rem;border:1px solid #667888;background:transparent;width:100%}
 .mobile-collection-choices .collection-choice.active{background:var(--ivory);color:var(--ink);border-color:var(--ivory)}
 .mobile-collection-choices .collection-choice strong{font-family:var(--body);font-size:1rem;font-weight:600;line-height:1.25;color:inherit}
 .mobile-collection-choices .collection-choice small,.mobile-collection-choices .collection-choice em,.mobile-collection-choices .choice-marker{display:none}
 .collection-layout{gap:1.5rem}
 .collection-index{border:0;padding:0}
 .collection-index #collection-quote{margin-top:0}
}

/* Focused examples of the finishing touches offered in the client brief. */
.enhancements{padding-top:5rem;padding-bottom:5rem;background:var(--paper);color:var(--ink)}
.enhancements .eyebrow{color:#63543c}.enhancements .section-heading>p{color:#52616b}
.enhancement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}
.enhancement-visual{position:relative;overflow:hidden;aspect-ratio:1.5;background:var(--night)}
.enhancement-card figcaption{font-size:.8125rem;line-height:1.5;color:#52616b;margin-top:.65rem}
.enhancement-card h3{font-size:1.5rem;margin:1.25rem 0 .75rem}
.enhancement-card p{font-size:1rem;line-height:1.65;color:#425360}
.enhancement-wreath img{position:absolute;width:300%;max-width:none;height:auto;left:-205%;top:-145%}
.enhancement-garland img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.enhancement-entrance img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.enhancement-tree img{position:absolute;width:200%;max-width:none;height:auto;left:0;top:-15%}
.enhancement-next{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2.5rem}
.enhancement-next p{max-width:40rem;color:#52616b;font-size:1rem}
.enhancement-next .button{background:var(--ink);border-color:var(--ink);color:var(--ivory);flex-shrink:0}
.enhancement-next .button:hover{background:#283e4c}
@media(max-width:1100px){.enhancement-grid{grid-template-columns:1fr 1fr;gap:2.5rem 1.5rem}}
@media(max-width:700px){.enhancements{padding-top:3rem;padding-bottom:3rem}.enhancement-grid{grid-template-columns:1fr;gap:2rem}.enhancement-next{align-items:stretch;flex-direction:column;gap:1.25rem}.enhancement-card h3{margin-top:1rem}}
.enhancement-visual.gallery-entry img{top:-65%}
.enhancement-visual.gallery-porch img{top:-85%}

/* Each team photo has a distinct editorial role. */
.local-intro{align-items:start}
.team-intro-photo img{width:100%;height:auto;aspect-ratio:566/344;object-fit:contain}
.team-intro-photo figcaption{color:#a8bac7;font-size:.875rem;line-height:1.5}
.team-story>.quiet-link{margin-top:1.25rem}
.team-candid{display:flex;align-items:center;gap:1.25rem;margin-top:2rem;max-width:30rem}
.team-candid img{width:8rem;height:auto;flex-shrink:0;aspect-ratio:561/527;object-fit:contain}
.team-candid figcaption{font-size:1rem;line-height:1.5;color:var(--ivory)}
.team-candid figcaption span{display:block;font-size:.875rem;color:#a8bac7;margin-top:.35rem}
@media(max-width:700px){.team-candid{gap:1rem;margin-top:1.5rem}.team-candid img{width:7rem}}

/* Footer and privacy information */
.footer{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;gap:3rem;padding-bottom:2rem}.footer-business address{font-style:normal;margin-top:1rem;color:#bbc6cf;font-size:1rem}.footer-business address a{display:inline-block;padding:.4rem 0}.footer-contact h3{font-size:1.5rem;margin-bottom:1.25rem}.footer-contact .quiet-link{margin-bottom:.8rem}.footer-contact>p{font-size:1rem;color:#a7b6c3;margin-top:1.2rem}.footer-legal{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:.8rem 2rem;border-top:1px solid var(--rule);padding-top:1.5rem;color:#a7b6c3;font-size:.875rem}.footer-legal>a{text-decoration:underline;text-underline-offset:4px}.footer-preview{margin-left:auto}.privacy-main{max-width:1100px;padding-block:5rem}.privacy-main h1{margin:1rem 0 1.5rem;font-size:clamp(2.8rem,5vw,4.5rem)}.privacy-lead{font-size:1.3rem}.privacy-date{color:#a7b6c3;margin-top:.8rem}.privacy-main section{margin-block:2.8rem;max-width:760px}.privacy-main h2{font-size:1.8rem;margin-bottom:1rem}.privacy-main section p+p{margin-top:1rem}.privacy-main p a{text-decoration:underline;text-underline-offset:3px}.privacy-main section p{color:#bbc6cf}.footer-business a:hover,.footer-legal a:hover{color:var(--warm)}
@media(max-width:700px){.footer{grid-template-columns:1fr;gap:2rem;padding-bottom:6rem}.footer-legal{display:block}.footer-legal>*+*{display:block;margin-top:.8rem}.footer-preview{margin-left:0}.privacy-main{padding-block:3rem}}

/* Customer journey: proof, portfolio, options, people, service, reviews, price. */
.opening-proof{background:var(--ivory);color:var(--ink);padding-block:1.6rem}.opening-proof-layout{display:flex;align-items:center;gap:2rem}.opening-proof .review-stars{flex-shrink:0}.opening-proof p{max-width:49rem;font-size:1.1rem;line-height:1.5}.opening-proof p span{display:block;font-size:.875rem;color:#556975;margin-top:.35rem}.opening-proof .quiet-link{flex-shrink:0;color:var(--ink);margin-left:auto}.local-intro>.gallery-craft{grid-column:1/-1;width:100%;max-width:none;margin-top:1rem;padding-top:2.5rem;border-top:1px solid var(--rule)}.local-intro .craft-story>p{color:#a9bbc9}.local-intro .craft-list{color:#c5d0da}.local-intro .crew-photo figcaption{color:#a9bbc9}.review-spotlight .customer-stories{margin-top:3rem}.pricing{padding-block:4rem}.pricing .investment-note{margin-top:0}.pricing+.questions{padding-top:1rem}
@media(max-width:700px){.opening-proof-layout{display:block}.opening-proof .review-stars{margin-bottom:.6rem}.opening-proof .quiet-link{margin:.85rem 0 0}.opening-proof p{font-size:1rem}.local-intro>.gallery-craft{margin-top:.5rem;padding-top:2rem}.pricing{padding-block:3rem}}
.local-intro .craft-list li{color:#c5d0da}
.pricing .investment-note h2{font-size:1.75rem}@media(max-width:700px){.pricing .investment-note h2{font-size:1.65rem}}

.hero-photo>img{aspect-ratio:3/2;height:auto;object-fit:contain}

/* Region-specific presentation with shared typography and navigation. */
.other-regions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;padding-top:1rem;border-top:1px solid var(--rule);font-size:.9375rem;color:var(--muted)}
.other-regions a{text-decoration:underline;text-underline-offset:.25em;color:var(--ivory)}
.inquiry-region{margin:0 0 1rem;color:var(--ink);font-size:1rem}
[data-region="scottsdale"] .collection-visual img{aspect-ratio:3/2;height:auto;object-fit:contain}
[data-region="scottsdale"] .project-gallery .gallery-open img{aspect-ratio:4/3;object-fit:cover;display:block}
[data-region="scottsdale"] .collection-visual{background:var(--night)}
[data-region="scottsdale"] .coverage-summary p+p{margin-top:1rem}
[data-region="scottsdale"] .hero-photo>img{aspect-ratio:3/2;object-fit:contain}
@media(max-width:700px){[data-region="scottsdale"] .hero-photo{margin-top:0}}

/* Keep service headings visually consistent while exposing their meaning. */
h2.hero-service-line{font-family:var(--body);font-size:1.125rem;font-weight:400;line-height:1.5;letter-spacing:normal}
.pricing-guide-link{margin-bottom:1.5rem}
.guide-breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.9375rem;color:var(--muted);margin-bottom:2rem}
.guide-breadcrumb a{text-decoration:underline;text-underline-offset:.2em}
.lighting-guide{max-width:1100px}.lighting-guide section{max-width:760px}.lighting-guide li{margin-bottom:.65rem}
.lighting-guide section .button{margin:1rem 0}.lighting-guide section p+p{margin-top:1rem}
.community-filter{max-width:42rem;margin:1.5rem 0 2rem}.community-filter label{display:block;margin-bottom:.5rem;font-weight:600}.community-filter input{width:100%;background:var(--ivory);color:var(--ink);padding:1rem;border:1px solid var(--muted);border-radius:0}.community-filter p{font-size:.9375rem;margin-top:.75rem}.community-filter a{text-decoration:underline}
.footer-email{overflow-wrap:anywhere}

/* Confirmed seasonal lease and Scottsdale coverage. */
.lease-inclusions{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.25rem;margin:2.5rem 0}
.lease-inclusions li{border-top:1px solid rgba(155,174,190,.3);padding-top:1.25rem}
.lease-inclusions h3{font-size:1.3rem;margin:0 0 .6rem}.lease-inclusions p{margin:0}
.lease-ownership{max-width:52rem;margin:2rem 0 3rem}.lease-process-heading{font-size:1.45rem;margin:0 0 2rem}
.az-service-places{columns:2;column-gap:2rem;padding-left:1.2rem;margin:1.5rem 0}.az-service-places li{break-inside:avoid;margin:0 0 .5rem}
@media(max-width:700px){.lease-inclusions{grid-template-columns:1fr;gap:1.25rem}.az-service-places{columns:1}}
