/* Original deep green and white page surfaces with Farrow & Ball-inspired accents.
   Paint colours are digital approximations.
   Digital reference: https://gist.github.com/pouretrebelle/95e4685a109dd1e84947d5fbd07970e8
   Base swatches remain exact; pale surfaces are explicitly mixed tints.
   The original deep green is used for text, buttons and small selected controls. */
:root{--brand-deep:#234e40;--fb-red-earth:#c57b67;--fb-card-room-green:#899081;--fb-green-smoke:#737c70;--fb-studio-green:#464c49;--fb-pointing:#f7f1e3;--fb-all-white:#fbf8f4;--fb-skimming-stone:#dfd6cb;--sage-tint:color-mix(in srgb,var(--fb-card-room-green) 22%,var(--fb-all-white));--sage-selected:color-mix(in srgb,var(--fb-card-room-green) 32%,var(--fb-all-white));--sage-line:color-mix(in srgb,var(--fb-card-room-green) 60%,var(--fb-all-white));--earth-tint:color-mix(in srgb,var(--fb-red-earth) 22%,var(--fb-all-white));--ink:#253e38;--cream:#ffffff;--green:var(--brand-deep);--muted:#52624e;--line:var(--sage-line);--control-muted:#52624e;--surface:#ffffff;--accent:var(--fb-red-earth);--accent-soft:var(--earth-tint)}
body{background:var(--cream);color:var(--ink)}
body :is(h1 em,h2 em,h3 em){color:var(--fb-green-smoke)}
body :is(.primary-button,.nav-cta,.brand-icon,.workshop-actions button){background:var(--brand-deep);color:var(--fb-all-white)}
body :is(.primary-button,.nav-cta):hover:not(:disabled){background:color-mix(in srgb,var(--brand-deep) 90%,black)}
body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--fb-red-earth);outline-offset:4px}
body :is(input,select){accent-color:var(--brand-deep)}
body :is(.eyebrow,.field-help,.muted,.breadcrumb,.microcopy,.source-list){color:var(--ink)}
body .microcopy{color:var(--ink)!important}
body :is(.section-heading p,.page-hero p,.info-hero p,.maker-hero p,.intro-right p,.shop-card p,.steps-three p,.simple-banner p,.faq-list p,.final-cta p,.article-columns p,.article-columns li,.planning-cards p,.planning-cards li,.maker-story p,.maker-feature p,.making-steps p,.guide-profiles p,.guide-explainer p,.guide-checklist p,.guide-table td,.help-grid p,.help-grid small,.info-block p,.info-block li,.enquiry-aside p,.enquiry-aside li,.enquiry-field-help,.enquiry-small,.enquiry-local-note,.enquiry-response span,.enquiry-piece small,.enquiry-delivery-note p,.enquiry-review dt,.review-hero p,.review-summary p,.review-item-body dt,.reference p,.confirmation-hero p,.confirmation-status p,.confirmation-totals p,.confirmation-steps p,.confirmed-piece dt,.store-footer small,.footer-links a){color:var(--ink)}
body :is(.cushion-hero-art,.range-collage,.shop-card>.mini-art,.hero-visual,.guided-intro,.basis-pair>div,.help-diagram-layout,.guide-explainer,.guide-checklist,.maker-feature,.material-stack,.enquiry-response,.enquiry-piece,.enquiry-delivery-note,.review-summary,.confirmation-status,.confirmation-totals,.reference strong){background:var(--sage-tint);border-color:var(--sage-line)}
body :is(.shop-card img,.shop-card>.mini-art,.cushion-hero-art){background-color:var(--sage-tint)}
body :is(.maker-strip,.maker-tiles>a,.maker-tiles>article,.help-grid>a,.planning-cards>article,.review-item,.confirmed-piece,.enquiry-form,.enquiry-review,.cushion-measuring,.filling-comparison,.final-cta){background:var(--surface);border-color:var(--sage-line)}
body :is(.maker-strip p,.maker-tiles p,.maker-facts span,.maker-year small,.enquiry-topic-grid small,.review-reassurance p,.confirmation-care p){color:var(--ink)}
body :is(.maker-year,.review-reassurance,.simple-banner){background:var(--fb-skimming-stone);border-color:var(--sage-line)}
body :is(.maker-promise,.saving-card){background:var(--brand-deep);color:var(--fb-all-white)}
body .maker-promise :is(p,em,.eyebrow){color:var(--fb-all-white)}
body .maker-promise li>strong::before{color:var(--fb-all-white)}
body .saving-card :is(p,label,small,.eyebrow,.estimated-foam,.saving-label){color:var(--fb-all-white)}
body .saving-card :is(input,output){background:var(--fb-all-white);color:var(--ink);border-color:var(--fb-all-white)}
body .saving-card .saving-amount{color:var(--fb-all-white)}
body .saving-result .saving-percent{background:var(--earth-tint);color:var(--ink)}
body .saving-result .saving-percent small{color:inherit}
body .saving-card .error{color:var(--earth-tint)}
body :is(.sofa-offer-banner,.construction-note,.basket-added){background:var(--earth-tint);border-color:var(--fb-red-earth);color:var(--ink)}
body .sofa-offer-banner{border-left:5px solid var(--fb-red-earth)}
body .sofa-offer-banner :is(strong,span,a){color:var(--ink)}
body .keep-section{background:var(--sage-tint)}
body :is(.keep-section p,.keep-benefits p,.keep-benefits>div>span,.hero-reassurance,.cushion-hero-art span){color:var(--ink)}
body :is(.steps-three>div>span,.making-steps article>span){color:var(--fb-green-smoke)}
body :is(.enquiry-topic-grid label:has(input:checked),.help-shape-buttons button[aria-pressed=true]){background:var(--sage-selected);border-color:var(--brand-deep);box-shadow:0 0 0 1px var(--brand-deep)}
body .final-cta{border-top:4px solid var(--fb-red-earth)}
body :is(.spec-diagram,.project-line .line-art){background:color-mix(in srgb,var(--fb-skimming-stone) 45%,var(--fb-all-white))}
@media print{body{background:white;color:black}.workshop-notice{background:none}}
:is(.page-sofa,.configurator-page) :is(input,select){accent-color:var(--brand-deep)}
:is(.page-sofa,.configurator-page) :is(.primary-button,.nav-cta){background:var(--brand-deep);color:var(--fb-all-white)}
:is(.page-sofa,.configurator-page) :is(.primary-button,.nav-cta):hover:not(:disabled){background:var(--brand-deep)}
:is(.page-sofa,.configurator-page) :is(button,a,input,select,summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
:is(.page-sofa,.configurator-page) .secondary-button{background:var(--surface);border-color:var(--fb-card-room-green);color:var(--brand-deep)}
:is(.page-sofa,.configurator-page) .secondary-button:hover{background:var(--sage-tint)}
:is(.page-sofa,.configurator-page) .sofa-offer-banner{background:var(--accent-soft);border-color:var(--fb-red-earth);color:var(--brand-deep)}
:is(.page-sofa,.configurator-page) .sofa-offer-banner :is(strong,span,a){color:var(--brand-deep)}
:is(.page-sofa,.configurator-page) .sofa-offer-banner a{text-decoration:underline;text-underline-offset:4px}

/* Configurator: a distinct studio backdrop, ivory controls and decisive selection marks. */
.configurator-page .configurator{border-color:var(--sage-line);background:var(--surface)}
.configurator-page .configuration-panel{background:var(--surface)}
.configurator-page .preview-column{background:var(--fb-skimming-stone);border-color:var(--sage-line)}
.configurator-page .canvas-wrap{background:radial-gradient(ellipse at 50% 40%,var(--fb-all-white) 0%,var(--fb-skimming-stone) 75%)}
.configurator-page :is(.pill,.preview-caption){border-color:var(--sage-line);color:var(--ink)}
.configurator-page :is(.preview-title small,.drag-hint,.hybrid-key small,.confidence small){color:var(--ink)}
.configurator-page .view-controls .segmented{background:var(--sage-line)}
.configurator-page .segmented button.active{background:var(--brand-deep);color:var(--fb-all-white)}
.configurator-page :is(.route-card,.guided-route-panel,.guided-option,.shape-button,.construction-option,.fullness-option,.finish-card){background:var(--surface);border-color:var(--sage-line)}
.configurator-page .route-card.guided-route{background:var(--sage-tint);border-color:var(--fb-card-room-green)}
.configurator-page .route-card:hover{background:var(--sage-tint);border-color:var(--brand-deep)}
.configurator-page :is(.construction-option[aria-pressed=true],.guided-option[aria-pressed=true],.fullness-option[aria-pressed=true],.finish-card:has(input:checked)){background:var(--sage-selected);border-color:var(--green);box-shadow:0 0 0 1px var(--green)}
.configurator-page .shape-button.selected{background:var(--brand-deep);border-color:var(--green);box-shadow:0 0 0 1px var(--green);color:var(--fb-all-white)}
.configurator-page .shape-button.selected svg{fill:#ffffff29;stroke:var(--fb-all-white)}
.configurator-page .grade-button{background:var(--surface);border-color:var(--sage-line)}
.configurator-page .grade-button.selected{background:var(--surface);border-color:var(--green);box-shadow:0 0 0 1px var(--green),inset 0 -4px 0 var(--grade-colour)}
.configurator-page .units{background:var(--sage-tint)}
.configurator-page .units button.active{background:var(--brand-deep);color:var(--fb-all-white)}
.configurator-page .dimension-field{color:var(--ink)}
.configurator-page .dimension-input{background:#fff;border-color:var(--fb-card-room-green)}
.configurator-page :is(.dimension-input small,.finish-card small,.fullness-option small,.price-block small){color:var(--control-muted)}
.configurator-page :is(.guided-intro,.comfort-context){background:var(--sage-tint)}
.configurator-page :is(.guided-intro p,.guided-option small,.guided-summary dt,.comfort-help p,.comfort-context p,.guided-privacy){color:var(--control-muted)}
.configurator-page .piece-recap{background:var(--fb-skimming-stone);border-color:var(--sage-line)}
.configurator-page .piece-purpose select{background:#fff;border-color:var(--fb-card-room-green)}
.configurator-page :is(.price,.project-total>strong,.line-right>strong){color:var(--brand-deep)}
.configurator-page .sofa-project{background:var(--surface);border-color:var(--sage-line)}
.configurator-page .project-line{border-color:var(--sage-line)}
.configurator-page .project-line .line-art{background:var(--fb-skimming-stone)}
.configurator-page .project-presets>button{background:#fff;border-color:var(--fb-card-room-green);color:var(--brand-deep)}
.configurator-page .basket-added{background:var(--sage-tint);border-color:var(--fb-green-smoke)}
.configurator-page .sofa-offer-status{color:var(--ink)}

/* Replacement cushions: white product surfaces, one sage support band, a forest calculator. */
.page-sofa .cushion-hero-art{background:var(--sage-tint)}
.page-sofa :is(.cushion-hero>div>p,.section-heading p,.cushion-route-grid p,.filling-comparison p,.cushion-measuring p,.keep-section p,.keep-benefits p,.faq-list p,.savings-copy p,.maker-strip p,.maker-tiles p,.final-cta p){color:var(--muted)}
.page-sofa .hero-reassurance{color:var(--ink)}
.page-sofa :is(.cushion-route-grid>a,.cushion-measuring,.maker-strip,.maker-tiles>a,.maker-tiles>article,.final-cta){background:var(--surface);border:1px solid var(--sage-line)}
.page-sofa .cushion-route-grid>a{box-shadow:0 3px 0 var(--fb-skimming-stone)}
.page-sofa :is(.cushion-route-grid>a,.maker-tiles>a):hover{background:var(--sage-tint);border-color:var(--brand-deep)}
.page-sofa :is(.cushion-route-grid strong,.filling-comparison strong){color:var(--brand-deep)}
.page-sofa .filling-comparison{background:var(--surface);border-color:var(--sage-line)}
.page-sofa .filling-comparison>a{border-color:var(--sage-line)}
.page-sofa .filling-comparison>a:hover{background:var(--sage-tint)}
.page-sofa .maker-strip{border-left:4px solid var(--green)}
.page-sofa .keep-section{background:var(--sage-tint)}
.page-sofa .keep-benefits>div>span{color:var(--ink)}
.page-sofa .saving-card{background:var(--brand-deep);color:var(--fb-all-white)}
.page-sofa .saving-card :is(p,label,small,.eyebrow,.estimated-foam){color:var(--fb-all-white)}
.page-sofa .saving-card input{background:var(--fb-all-white);color:var(--ink);border-color:var(--fb-all-white)}
.page-sofa .saving-card .saving-amount{color:var(--fb-all-white)}
.page-sofa .saving-result .saving-percent{background:var(--earth-tint);color:var(--ink)}
.page-sofa .final-cta{border-top:4px solid var(--accent)}
.page-sofa :is(.construction-section,.savings-intro,.final-cta) .eyebrow{color:var(--ink)}
.page-sofa .faq-list details{border-color:var(--sage-line)}
.page-sofa .saving-result .saving-percent small{color:inherit}
.page-sofa .saving-card .error{color:var(--earth-tint)}

/* Keep small navigation text on the accessible deep-green surface. */
body .store-header .nav-cta{background:var(--brand-deep);color:var(--fb-all-white)}
body .store-header .nav-cta:hover{background:color-mix(in srgb,var(--brand-deep) 90%,black)}
body :is(.maker-inline,.organised-footer .footer-group a,.organised-footer .footer-group h2,.confirmation-totals .review-total-row){color:var(--ink)}
body .construction-icon{background:var(--fb-card-room-green);border-color:var(--fb-green-smoke);box-shadow:3px 4px 0 var(--fb-green-smoke)}
body .construction-icon.fibre{background:var(--fb-all-white);border-color:var(--fb-skimming-stone);box-shadow:2px 4px 7px #464c4922}
body .construction-icon.hybrid{background:var(--fb-card-room-green);border-color:var(--fb-all-white);box-shadow:2px 3px 0 var(--fb-skimming-stone)}
body .route-illustration.seat{background:var(--fb-card-room-green);border-color:var(--fb-green-smoke);box-shadow:7px 8px 0 var(--sage-tint),inset 0 -9px 0 var(--fb-green-smoke)}
body .route-illustration.back{background:var(--fb-skimming-stone);border-color:var(--fb-card-room-green);box-shadow:7px 7px 0 var(--fb-pointing),inset 0 -8px 0 var(--fb-card-room-green)}
body .route-illustration.scatter{background:var(--earth-tint);border-color:var(--fb-red-earth);box-shadow:5px 6px 0 var(--fb-pointing),inset 0 -7px 0 var(--fb-red-earth)}
body :is(.guide-visual,.guide-table thead){background:var(--sage-tint)}
body .guide-profiles article{background:var(--surface);border-color:var(--sage-line)}

/* Keep the proposed name in the established wordmark style. */
.wordmark .brand-amp{font:italic 1.05em var(--serif);margin-inline:.18em;letter-spacing:0;color:var(--brand-deep)}
