:root{--pl-navy:#102b3a;--pl-stone:#edf0ed;--pl-paper:#faf9f5;--pl-copper:#a9502a;--pl-blue:#315d72;--pl-ink:#17272e;--pl-line:#cdd5d2}.cv-shell{background:var(--pl-paper);color:var(--pl-ink)}.cv-kicker{font:800 .72rem ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--pl-copper)}.cv-hero{display:grid;grid-template-columns:1.08fr .92fr;min-height:620px;background:var(--pl-navy);color:#fff}.cv-hero>div{padding:clamp(3rem,7vw,7rem)}.cv-hero h1{font:400 clamp(3rem,6vw,6.6rem)/.98 Georgia,serif;max-width:10ch}.cv-hero p{max-width:58ch;line-height:1.7}.cv-hero .button{background:var(--pl-copper);color:#fff}.cv-hero aside{display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(150deg,var(--pl-blue),var(--pl-navy));position:relative}.cv-hero aside:before{content:'';position:absolute;inset:10% 12%;border:1px solid #ffffff55;border-radius:50% 50% 10% 50%}.cv-wrap{width:min(1160px,calc(100% - 2rem));margin-inline:auto}.cv-section{padding-block:clamp(3.5rem,7vw,7rem)}.cv-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;margin-bottom:2rem}.cv-heading h2,.cv-article h2{font:400 clamp(2rem,4vw,4rem)/1.05 Georgia,serif}.cv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cv-card{padding:1.6rem;border-left:6px solid var(--pl-copper);background:#fff;box-shadow:0 12px 35px #102b3a12}.cv-card h3{font:400 1.4rem Georgia,serif}.cv-path{counter-reset:path}.cv-path .cv-card{display:grid;grid-template-columns:3.5rem 1fr}.cv-path .cv-card:before{counter-increment:path;content:counter(path,decimal-leading-zero);font:800 .78rem ui-monospace,monospace;color:var(--pl-copper)}.cv-band{background:var(--pl-stone)}.cv-article-layout{display:grid;grid-template-columns:15rem 1fr;gap:4rem}.cv-toc{position:sticky;top:1rem;align-self:start;padding:1rem;border-top:5px solid var(--pl-copper);background:var(--pl-stone)}.cv-toc a{display:block;padding:.4rem 0}.cv-article{max-width:760px}.cv-article p,.cv-card p{line-height:1.72}.cv-record{padding:1.5rem;background:var(--pl-stone);margin-top:2rem}.cv-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.cv-fields div{padding:.8rem;background:#fff}.cv-fields dt{font:800 .68rem ui-monospace,monospace;text-transform:uppercase}.cv-fields dd{margin:.5rem 0 0;color:#7a8380}.cv-planner{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:clamp(1.3rem,4vw,3rem);background:var(--pl-navy);color:#fff}.cv-planner fieldset{border:0;padding:0;margin:0 0 1.5rem}.cv-planner legend{font-weight:800;margin-bottom:.6rem}.cv-planner label{display:block;margin:.5rem 0}.cv-planner select{width:100%;padding:.7rem}.cv-summary{background:#fff;color:var(--pl-ink);padding:1.4rem;min-height:260px}.cv-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cv-case{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cv-case img{width:100%;height:420px;object-fit:contain;background:var(--pl-stone)}.cv-boundary{padding:1.2rem;border-left:5px solid var(--pl-copper);background:#f5e9e3}.faq summary span{flex:0 0 1em;width:1em;height:1em;align-self:flex-start;text-align:center}@media(max-width:800px){.cv-hero,.cv-heading,.cv-article-layout,.cv-planner{grid-template-columns:1fr}.cv-hero{min-height:0}.cv-toc{position:static}}@media(max-width:600px){.cv-grid,.cv-resources,.cv-fields,.cv-case{grid-template-columns:1fr}.cv-case img{height:auto}.cv-hero>div{padding:3rem 1.2rem}.cv-hero aside{min-height:260px}}
@media print{header,.topline,.mobile-contact,.final-cta,.footer,.cv-planner form{display:none!important}.cv-planner{display:block;background:#fff;color:#000}.cv-summary{border:1px solid #000}}
.cv-hero .lede,.cv-hero aside p{color:#fff}.cv-hero aside{background:var(--pl-navy)}.cv-hero aside:before{display:none}
.cv-photo-caption{background:#102b3acc;padding:.8rem;margin:0 0 1rem;font-size:.78rem}.cv-case-card{display:grid;grid-template-columns:minmax(16rem,.8fr) 1.2fr;gap:1.5rem;align-items:center}.cv-case-card img{width:100%;height:280px;object-fit:contain;background:var(--pl-stone)}@media(max-width:600px){.cv-case-card{grid-template-columns:1fr}.cv-case-card img{height:auto}}
.cv-hero h1{font-size:clamp(3rem,5vw,4.6rem);max-width:14ch}.cv-hero aside{display:grid;grid-template-rows:minmax(280px,1.1fr) auto;padding:0;background:var(--pl-navy)}.cv-hero-figure{margin:0;min-height:0;background:var(--pl-stone)}.cv-hero-figure img{display:block;width:100%;height:100%;max-height:430px;object-fit:cover}.cv-hero-figure figcaption{padding:.7rem 1rem;background:var(--pl-navy);color:#fff;font-size:.74rem;line-height:1.45}.cv-hero-panel{padding:clamp(1.4rem,3vw,2.5rem)}.cv-hero-panel h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.08;margin:.25rem 0 .7rem}.cv-hero-panel p{margin-bottom:0}@media(max-width:800px){.cv-hero-figure img{height:auto;max-height:none}.cv-hero aside{grid-template-rows:auto auto}}

.cv-path .cv-card:before{grid-column:1;grid-row:1/4}.cv-path .cv-card>h3,.cv-path .cv-card>p,.cv-path .cv-card>a{grid-column:2}
.cv-planner .button.secondary{color:#fff;border-color:#ffffff99;background:transparent}.cv-planner .button.secondary:hover,.cv-planner .button.secondary:focus{color:var(--pl-navy);background:#fff}
@media print{body:has([data-planner])>.topline,body:has([data-planner])>header,body:has([data-planner])>.final-cta,body:has([data-planner])>footer,body:has([data-planner])>.mobile-contact,body:has([data-planner]) main>nav,body:has([data-planner]) main>section:not(:has([data-summary])),body:has([data-planner]) .cv-section:has([data-summary])>.cv-heading{display:none!important}body:has([data-planner]) .cv-section:has([data-summary]){display:block!important;width:auto;margin:0;padding:0}body:has([data-planner]) .cv-planner{display:block!important;padding:0;background:#fff}body:has([data-planner]) .cv-summary{display:block!important;min-height:0;border:1px solid #000}}

/* Site 17: warm restoration workshop composition */
:root{--cv-ink:#292725;--cv-charcoal:#34312d;--cv-paper:#f6efe3;--cv-chalk:#fffaf2;--cv-clay:#a9472f;--cv-copper:#be6b45;--cv-sage:#68705b}
body.cv-shell{background:var(--cv-paper);color:var(--cv-ink)}
.cv-hero{background:var(--cv-chalk);color:var(--cv-ink);grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);border-bottom:12px solid var(--cv-clay)}
.cv-hero>div{padding:clamp(3rem,7vw,7rem) clamp(1.25rem,6vw,6rem)}
.cv-hero h1{color:var(--cv-charcoal);font-family:Georgia,serif;font-size:clamp(3rem,6vw,5.8rem);max-width:13ch;line-height:.94}
.cv-hero .lede{color:#514c45;max-width:38rem}.cv-kicker{color:var(--cv-clay);letter-spacing:.16em}
.cv-hero>aside{background:var(--cv-charcoal);padding:clamp(1rem,3vw,2.5rem);display:flex;flex-direction:column;gap:1rem}
.cv-hero-figure{background:#1d1c1a;border:1px solid #756c61}.cv-hero-figure img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.cv-hero-figure figcaption{color:#f8eee2;padding:.8rem;line-height:1.45}
.cv-hero-panel{background:var(--cv-clay);color:white;padding:1.5rem}.cv-hero-panel .cv-kicker{color:#fff1e8}.cv-hero-panel h2{font-size:clamp(1.8rem,3vw,3rem);margin:.3rem 0}
.cv-band{background:var(--cv-charcoal);color:var(--cv-chalk)}.cv-band .cv-card{background:#454039;border-color:#6b6259}.cv-band .cv-card p{color:#eee3d5}.cv-band a{color:#ffc3a7}
.cv-card{border:1px solid #d4c4b2;border-radius:0;background:var(--cv-chalk);box-shadow:8px 8px 0 #ddcebc;padding:1.35rem}
.cv-path{counter-reset:sequence}.cv-path .cv-card{display:grid;grid-template-columns:3rem 1fr;column-gap:1rem;align-items:start}.cv-path .cv-card:before{counter-increment:sequence;content:counter(sequence,decimal-leading-zero);grid-column:1;grid-row:1/5;color:var(--cv-clay);font-weight:800;font-size:1.15rem}.cv-path .cv-card>*{grid-column:2}
.button{background:var(--cv-clay);color:#fff;border-color:var(--cv-clay)}.button:hover,.button:focus-visible{background:#7e3021;color:#fff}.button.secondary{background:var(--cv-charcoal);border-color:var(--cv-charcoal);color:#fff}
.cv-planner{border:2px solid var(--cv-charcoal);background:var(--cv-chalk);box-shadow:12px 12px 0 #cabba8}.cv-summary{background:#f0dfce;border-left:6px solid var(--cv-clay)}
.cv-article-layout{grid-template-columns:minmax(12rem,.28fr) minmax(0,1fr)}.cv-toc{border-top:5px solid var(--cv-clay);background:#eadfce}.cv-record{background:#efe2d2;border:1px solid #cfb9a0}.cv-boundary{border-left:6px solid var(--cv-clay);background:#f3e5d5}
.cv-case{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.cv-case img{width:100%;height:auto;max-height:36rem;object-fit:contain;background:#282622}
@media(max-width:760px){.cv-hero{grid-template-columns:1fr}.cv-hero h1{font-size:clamp(2.8rem,14vw,4rem)}.cv-hero>aside{padding:1rem}.cv-article-layout{grid-template-columns:1fr}.cv-path .cv-card{grid-template-columns:2.5rem 1fr}}
@media print{body:has([data-planner]) main>:not(:has([data-summary])){display:none!important}body:has([data-planner]) .cv-planner form{display:none!important}body:has([data-planner]) .cv-summary{display:block!important;box-shadow:none}}
/* Restoration builder contrast */
.cv-planner,.cv-planner label,.cv-planner legend{color:var(--cv-ink)}
.cv-planner .button.secondary{color:#fff;background:var(--cv-charcoal);border-color:var(--cv-charcoal)}
.cv-planner .button.secondary:hover,.cv-planner .button.secondary:focus-visible{color:#fff;background:#171614;border-color:#171614}
.cv-planner select{color:#171614;background:#fff;border:1px solid #756c61}
