/* Vinyl preview: readable service copy, full-width bands and real project photography. */
.vinyl-editorial{--vinyl-gutter:max(6vw,calc((100vw - 1268px)/2))}
.vinyl-editorial .service-shell{max-width:none;padding:0 var(--vinyl-gutter)}
.vinyl-editorial .service-hero{padding:28px 0 72px;gap:5%;grid-template-columns:1.1fr 1fr}
.vinyl-editorial .service-hero h1{font-size:clamp(48px,5.7vw,82px);line-height:1.02}
.vinyl-editorial .service-visual img{display:block;height:auto;aspect-ratio:1.12;object-position:center 65%;border-radius:6px}
.vinyl-editorial .service-lead{font-size:16px;margin:22px 0}
.vinyl-editorial .service-tagline{font-size:26px}
.vinyl-editorial .service-answer{background:transparent;color:#f2f1ed;padding:38px 0 48px;margin:0;border-top:1px solid #ffffff25;border-radius:0;display:grid;grid-template-columns:1fr 1.35fr;gap:8%}
.vinyl-editorial .service-answer p{color:#bcc1c1;margin:0;font-size:16px}
.vinyl-editorial .service-answer h2{font-size:36px}
.vinyl-editorial :is(.vinyl-options,.consultation,#guide-1,.service-quote){margin:0 calc(-1 * var(--vinyl-gutter));padding:70px var(--vinyl-gutter);border-radius:0;border:0;background:#f2f1ed;color:#171b1c;--line:#17202426;--red:#c8201d}
.vinyl-editorial :is(.vinyl-options,.consultation,#guide-1,.service-quote) p{color:#586164}
.vinyl-editorial :is(.vinyl-options,.consultation) .eyebrow{color:#b41e1c}
.vinyl-editorial .vinyl-options h2,.vinyl-editorial .consultation h2{max-width:750px}
.vinyl-editorial .option-grid article{border-top:1px solid #17202430;padding-top:23px}
.vinyl-editorial .option-grid h3{font-size:32px;margin:14px 0}
.vinyl-editorial .service-guide{padding-top:74px;padding-bottom:74px}
.vinyl-editorial .service-guide h2{max-width:430px}
.vinyl-editorial .service-prose p{font-size:16px}
.vinyl-project{margin:0 calc(-1 * var(--vinyl-gutter));background:#181c1d}
.vinyl-project-image{overflow:hidden;aspect-ratio:2.45}
.vinyl-project-image img{display:block;width:100%;height:120%;object-fit:cover;object-position:center 48%;transform:translateY(-8%)}
.vinyl-project figcaption{padding:30px var(--vinyl-gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}
.vinyl-project .eyebrow{font-size:10px;color:#b8c0c1;margin:0 0 10px;display:block}
.vinyl-project h2,.vinyl-cta h2{font:600 clamp(30px,3.6vw,48px)/1.05 var(--display);text-transform:uppercase;margin:0}
.vinyl-project .text-link{font-size:13px;white-space:nowrap}
.vinyl-cta{margin:35px calc(-1 * var(--vinyl-gutter)) 0;padding:44px var(--vinyl-gutter);background:#c8201d;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}
.vinyl-cta .eyebrow{color:#fff;margin-bottom:12px;font-size:10px}
.vinyl-cta .button{background:#fff;color:#181c1d;white-space:nowrap;font-size:13px}
.vinyl-editorial #questions{border:0;padding-top:80px;padding-bottom:80px}
.vinyl-editorial .service-quote{border-top:1px solid #17202426}
@supports(animation-timeline:view()){@media(min-width:901px) and (prefers-reduced-motion:no-preference){.vinyl-project-image img{animation:vinyl-drift linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes vinyl-drift{from{transform:translateY(-14%)}to{transform:translateY(0)}}}}
@media(max-width:760px){.vinyl-editorial .service-hero{grid-template-columns:1fr;gap:30px;padding:18px 0 42px}.vinyl-editorial .service-hero h1{font-size:clamp(46px,9vw,64px)}.vinyl-editorial .service-visual img{aspect-ratio:1.5}.vinyl-editorial .service-answer{grid-template-columns:1fr;gap:14px}.vinyl-editorial :is(.vinyl-options,.consultation,#guide-1,.service-quote){padding-top:46px;padding-bottom:46px}.vinyl-editorial .service-guide{padding-top:48px;padding-bottom:48px}.vinyl-project-image{aspect-ratio:1.5}.vinyl-project-image img{height:100%;transform:none}.vinyl-project figcaption,.vinyl-cta{align-items:flex-start;flex-direction:column}.vinyl-project figcaption{padding-top:25px;padding-bottom:25px}.vinyl-cta{padding-top:35px;padding-bottom:35px}.vinyl-editorial #questions{padding-top:48px;padding-bottom:48px}}

/* Keep the project photo uninterrupted, with just a discreet gallery link. */
.vinyl-project{position:relative}
.vinyl-project figcaption{position:absolute;right:var(--vinyl-gutter);bottom:20px;padding:0;display:block}
.vinyl-project figcaption .text-link{display:block;padding:10px 15px;background:#0b0d0ee6;border:1px solid #ffffff45;border-radius:3px;color:#fff;font-size:12px}
.vinyl-project figcaption .text-link:hover{background:#0b0d0e}
.vinyl-project figcaption .text-link:focus-visible{outline:2px solid white;outline-offset:4px}
@media(max-width:760px){.vinyl-project figcaption{bottom:12px}.vinyl-project figcaption .text-link{font-size:11px;padding:8px 12px}}

/* Distinguish the quote area from the cream consultation section. */
.vinyl-editorial #quote.service-quote{background:#dedfdb;border-top:1px solid #c9ccc6}

/* Light option sections need light cards with explicit readable text colors. */
.vinyl-editorial .vinyl-options .service-hub-card{background:#fff;color:#171b1c;border:1px solid #d5d8d3;border-radius:12px}
.vinyl-editorial .vinyl-options .service-hub-card :is(h2,h3,.text-link){color:#171b1c}
.vinyl-editorial .vinyl-options .service-hub-card p{color:#50595c}
.vinyl-editorial .vinyl-options .service-hub-card .text-link{border-color:#677174}
.vinyl-editorial .vinyl-options .service-hub-card .text-link:hover{color:#b51d1a;border-color:#b51d1a}
