/* ReRig V6. Primary palette: black, white, warm grey. One muted accent. */
:root { --accent:#d56b42; --accent-subtle:#fff1eb; --accent-border:#f0d0c2; --ink:#151515; --muted:#666; --line:#e3e2df; --paper:#f8f7f5; --width:1160px; --shadow:none; color-scheme:light; }
html[data-accent="green"] { --accent:#538664; --accent-subtle:#eef7f0; --accent-border:#c6dfce; }
body,button,input,textarea,select { font-family:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif; }
body { font-size:14px; line-height:1.65; }
h1,h2,h3,h4,strong { letter-spacing:-.034em; }
h1,h2,h3 { font-weight:600; }
:focus-visible { outline:3px solid var(--accent);outline-offset:3px; }
.site-header { background:#fff;backdrop-filter:none;border-color:var(--line) }
.header-row { height:76px; }
.brand { display:inline-flex;align-items:center;gap:10px;font-size:1.54rem;font-weight:700;letter-spacing:-.058em;line-height:1.12; }
.logo-symbol { display:inline-flex;align-items:center;width:37px;height:37px; }
.brand-mark { width:37px;height:37px;color:#151515;display:block; }
.logo-period { color:var(--accent); }
.desktop-nav { gap:30px; }
.desktop-nav a { font-size:.82rem;font-weight:500; }
.desktop-nav a[aria-current="page"] { color:#101010; }
.desktop-nav a[aria-current="page"]:after { content:'';display:block;width:18px;height:2px;background:var(--accent);margin-top:3px; }
.header-action { background:#171717;color:white;border:1px solid #171717;border-radius:6px;padding:12px 17px;font-size:.79rem;font-weight:600; }
.header-action:hover { background:var(--accent);border-color:var(--accent);color:white; }
.menu-button { border-radius:7px; }
.mobile-nav { background:#fff; }
.mobile-nav a[aria-current="page"] { color:var(--accent); }
.container { width:min(calc(100% - 50px),var(--width)); }
.small-label { color:var(--accent);letter-spacing:.10em;font-weight:600;font-size:.70rem; }
.btn { border-radius:7px;min-height:49px;gap:32px;font-weight:600;font-size:.86rem;background:#171717;color:white;border:1px solid #171717; }
.btn:hover { background:#2c2c2c;color:white; }
.btn.v6-primary { background:var(--accent);border-color:var(--accent); }
.btn.v6-primary:hover { filter:brightness(.91); }
.btn-outline { background:white;color:#171717;border-color:var(--line) }
.btn-outline:hover { background:var(--paper);color:#171717; }
.v6-eyebrow { font-weight:600;color:#565656;text-transform:uppercase;font-size:.68rem;letter-spacing:.13em;display:flex;align-items:center;gap:11px; }
.eyebrow-line { width:24px;height:3px;background:var(--accent);display:block; }
.v6-hero { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.84fr);align-items:center;gap:clamp(40px,7vw,110px);min-height:660px;padding-block:80px; }
.v6-hero h1 { font-size:clamp(3rem,5.1vw,5rem);font-weight:600;letter-spacing:-.071em;line-height:1.13;margin:25px 0 24px;max-width:700px; }
.v6-hero-copy>p:not(.v6-legal-hint) { color:#626262;font-size:1rem;line-height:1.85;max-width:565px; }
.v6-hero-actions { display:flex;align-items:center;gap:28px;margin-top:29px;flex-wrap:wrap; }
.v6-text-link { display:inline-flex;align-items:center;gap:12px;font-weight:600;font-size:.83rem;color:#333; }
.v6-text-link:hover { color:var(--accent); }
.v6-legal-hint { font-size:.74rem;color:#777;margin-top:17px; }
.v6-preview { background:#fff;border:1px solid #d9d8d5;border-radius:13px;box-shadow:0 16px 50px #10101009;padding:29px 30px 24px; }
.v6-preview-heading { display:flex;justify-content:space-between;align-items:center;font-size:.69rem;font-weight:600;letter-spacing:.10em;color:#7b7b7b; }
.v6-preview-heading .tiny-stamp { border:1px solid #e8e8e6;border-radius:3px;padding:4px 8px; }
.v6-preview h2 { font-size:1.8rem;font-weight:600;letter-spacing:-.055em;line-height:1.22;margin:33px 0 7px; }
.v6-preview>p { color:#777;margin:0 0 19px;font-size:.82rem; }
.v6-preview-choice { display:grid;grid-template-columns:36px 1fr 18px;gap:14px;align-items:center;border:1px solid #e7e6e3;border-radius:9px;margin-top:10px;padding:17px 18px;transition:border-color .16s,background .16s; }
.v6-preview-choice:hover { background:var(--accent-subtle);border-color:var(--accent-border); }
.v6-choice-icon { font-weight:700;color:var(--accent);font-size:.8rem; }
.v6-preview-choice strong { display:block;font-size:.9rem;font-weight:600;letter-spacing:-.025em; }
.v6-preview-choice small { display:block;font-size:.72rem;color:#777;letter-spacing:0; }
.v6-preview-choice>span:last-child { color:#888; }
.v6-preview-foot { border-top:1px solid #ecebe8;margin-top:25px;padding-top:16px;display:flex;align-items:center;justify-content:space-between;font-size:.69rem;color:#777; }
.accent-dot { width:7px;height:7px;border-radius:50%;background:var(--accent); }
.v6-home-strip { background:#f7f7f6;border-block:1px solid var(--line); }
.v6-strip-inner { padding-block:23px;display:flex;justify-content:space-between;align-items:center;gap:30px; }
.v6-strip-inner strong { font-size:.87rem;font-weight:600; }
.v6-strip-inner span { color:#707070;font-size:.81rem; }
.v6-home-end { display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:34px 55px; }
.v6-home-end p { max-width:690px;color:#666;margin:0;font-size:.88rem; }
/* Secondary pages: simple editorial typography */
.page-top { padding-block:74px 56px;background:#fbfbfa; }
.page-top h1 { font-weight:600;letter-spacing:-.055em;font-size:clamp(2.4rem,4.3vw,4.4rem); }
.page-top p, .page-top .subtitle { color:#656565; }
.section-title, .about-grid h2 { font-weight:600;letter-spacing:-.05em; }
.process h3,.material-grid h3 { font-weight:600; }
.contact-panel,.material-row { border-radius:10px; }
/* Configurator */
.v6-config-main { background:#fafaf9;min-height:calc(100vh - 76px);padding-bottom:45px; }
.v6-config-heading { padding-top:49px;padding-bottom:30px; }
.v6-config-heading h1 { font-size:clamp(2.1rem,3.3vw,3.7rem);font-weight:600;letter-spacing:-.06em;margin:11px 0 9px;line-height:1.16; }
.v6-config-heading p { color:#666;font-size:.88rem;margin:0; }
.v6-builder-layout { display:grid;grid-template-columns:minmax(0,1fr) 312px;align-items:start;gap:23px; }
.v6-builder-layout .wizard { width:100%;max-width:none;padding-bottom:10px;margin:0; }
.v6-builder-layout .wizard-nav { display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;border:1px solid var(--line);background:#fff;border-radius:11px 11px 0 0;overflow:hidden; }
.v6-builder-layout .wizard-tab { border:0;border-right:1px solid var(--line);border-radius:0;margin:0;min-height:63px;padding:12px 15px;font-size:.82rem;font-weight:500;display:flex;align-items:center;justify-content:flex-start;gap:12px;color:#777;background:#fff;text-align:left; }
.v6-builder-layout .wizard-tab:last-child { border-right:0; }
.v6-builder-layout .wizard-tab.active { background:#fff;color:#171717;box-shadow:inset 0 -3px var(--accent); }
.v6-builder-layout .wizard-tab.done { color:#333;background:#fcfcfc; }
.v6-builder-layout .wizard-tab .step-number { display:inline-block;color:#999;font-size:.75rem;font-weight:600; }
.v6-builder-layout .wizard-tab.active .step-number { color:var(--accent); }
.v6-builder-layout .wizard-panel { background:#fff;border:1px solid var(--line);border-top:0;border-radius:0;min-height:360px;padding:35px 39px; }
.v6-builder-layout .wizard-panel[hidden] { display:none!important; }
.v6-builder-layout .wizard-panel .small-label { margin-bottom:10px; }
.v6-builder-layout .step-title { font-weight:600;font-size:clamp(1.45rem,2vw,2.2rem);letter-spacing:-.05em;margin:5px 0 9px;line-height:1.3; }
.v6-builder-layout .step-desc { margin:0 0 25px;font-size:.84rem;color:#747474;max-width:620px; }
.v6-use-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.v6-use-card { position:relative;min-height:155px;border:1px solid #dededb;border-radius:8px;text-align:left;background:#fff;display:flex;flex-direction:column;align-items:flex-start;padding:16px 16px;gap:6px;transition:all .16s; }
.v6-use-card:hover { border-color:var(--accent); }
.v6-use-card.selected { background:var(--accent-subtle);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent); }
.v6-use-card .use-number { color:var(--accent);font-size:.76rem;font-weight:700;margin-bottom:12px; }
.v6-use-card strong { font-size:.95rem;letter-spacing:-.035em;line-height:1.25;font-weight:600; }
.v6-use-card small { font-size:.69rem;line-height:1.45;color:#777; }
.v6-use-card .use-tick { position:absolute;top:13px;right:16px;color:var(--accent);opacity:0;font-size:.9rem; }
.v6-use-card.selected .use-tick { opacity:1; }
.v6-usage-fields { margin-top:24px; }
.v6-task-field[hidden] { display:none!important; }
.v6-task-field { padding-top:21px;border-top:1px solid var(--line); }
.v6-config-main .control-block { min-width:0; }
.v6-config-main .control-block label,.v6-config-main .field-label { font-weight:600;color:#333;font-size:.80rem; }
.v6-config-main .control-value { color:#333;font-size:.79rem;font-weight:600; }
.v6-config-main .control-value.budget-value { color:var(--accent);font-size:1.16rem; }
.v6-config-main .controls-grid { gap:25px 22px; }
.v6-config-main select { background:#fff;border:1px solid #dcdcd9;border-radius:7px;min-height:47px;color:#333;font-weight:500;font-size:.83rem;padding-inline:13px; }
.v6-config-main input[type="range"] { accent-color:var(--accent); }
.v6-config-main .range-labels,.v6-config-main .hint { color:#8b8b8b;font-size:.73rem; }
.v6-builder-layout .wizard-actions { padding:18px 25px;margin:0;background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 11px 11px;box-shadow:none; }
.v6-builder-layout .wizard-actions .btn { background:var(--accent);border-color:var(--accent);color:#fff; }
.v6-builder-layout .wizard-actions .btn:hover { filter:brightness(.92); }
.v6-builder-layout .back-button { font-weight:500; }
.v6-builder-layout .wizard-footnote { font-size:.70rem;color:#858585;line-height:1.6;padding:12px 5px 0;margin:0; }
.v6-estimate { position:sticky;top:100px;background:#171717;color:#fff;border-radius:11px;padding:24px 25px 21px; }
.v6-estimate-top { display:flex;align-items:center;justify-content:space-between;font-size:.7rem;letter-spacing:.11em;font-weight:600;color:#bbb; }
.v6-estimate-icon { color:var(--accent);font-size:1.2rem;font-weight:700; }
.v6-estimate-budget-label { font-size:.8rem;color:#acacac;margin-top:32px; }
.v6-summary-budget { font-weight:600;font-size:2.25rem;letter-spacing:-.055em;line-height:1.2;margin-top:5px; }
.v6-progress { height:6px;background:#383838;border-radius:8px;overflow:hidden;margin:26px 0 28px; }
.v6-progress-fill { height:100%;width:0;background:var(--accent);border-radius:8px;transition:width .12s; }
.v6-estimate-stats { display:grid;gap:20px; }
.v6-estimate-stats>div { display:flex;justify-content:space-between;align-items:center;gap:15px; }
.v6-estimate-stats span { font-size:.72rem;color:#b7b7b7; }
.v6-estimate-stats strong { font-size:.91rem;white-space:nowrap;letter-spacing:-.02em; }
.v6-estimate-note { margin-top:25px;padding:13px 14px;border:1px solid #444;border-radius:6px;font-size:.73rem;color:#dedede;line-height:1.5; }
.v6-estimate-note.positive { border-color:#656565;color:#efefef; }
.v6-estimate>p { color:#929292;font-size:.68rem;line-height:1.8;margin:19px 0 0; }
.v6-result-costs { background:#fafaf9;border:1px solid var(--line);border-radius:8px;padding:15px 19px;margin:0 0 20px;display:grid;grid-template-columns:1fr 1fr;gap:15px; }
.v6-result-costs span { display:block;color:#747474;font-size:.72rem; }
.v6-result-costs strong { display:block;font-size:1.32rem;font-weight:600;letter-spacing:-.05em; }
.v6-result-costs small { display:block;font-size:.69rem;color:#999; }
.v6-result-costs .v6-total-emphasis { color:var(--accent); }
.v6-result-cta { display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:22px; }
.v6-result-cta .result-disclaimer { margin:0;max-width:430px; }
.v6-result-cta .share-button { white-space:nowrap; }
.v6-result-actions { display:flex;gap:12px;flex-wrap:wrap; }
.v6-result-actions .btn { background:var(--accent);border:1px solid var(--accent); }
.v6-config-main .result-notice { border-radius:7px; }
.v6-config-main .part-row { gap:14px; }
.v6-config-main .part-category { color:#888;font-size:.73rem; }
.v6-config-main .part-model { font-weight:600;font-size:.85rem; }
.v6-config-main .part-condition { font-size:.68rem; }
.v6-config-main .result-mini span { color:#777; }
.v6-config-main .result-intro { margin-bottom:17px; }
.v6-config-main .result-empty { border-radius:8px;padding:26px; }
.v6-config-main .result-empty a { font-size:.82rem; }
/* Mobile-only concise budget summary, shown directly below the steps */
.v6-mobile-summary { display:none; }
/* Footer, legal, and contact */
.footer { background:#fbfbfb;border-top:1px solid var(--line); }
.footer-upper { padding-top:33px; }
.footer small { font-size:.73rem; }
.footer-links { font-size:.75rem; }
.footer-bottom { font-size:.71rem; }
dialog { border-radius:13px; }
.dialog-inner h2 { font-weight:600; }
.modal-actions .btn { background:var(--accent);border-color:var(--accent); }
.form-field input:focus,.form-field textarea:focus { border-color:var(--accent); }
.legal a { text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px; }
@media(max-width:1080px) {
  .v6-builder-layout { grid-template-columns:minmax(0,1fr) 270px;gap:15px; }
  .v6-estimate { padding-inline:19px; }
  .v6-hero { gap:45px; }
}
@media(max-width:900px) {
  .v6-hero { grid-template-columns:1fr;min-height:0;padding-block:60px; }
  .v6-preview { max-width:590px; }
  .v6-builder-layout { grid-template-columns:1fr; }
  .v6-estimate { display:none; }
  .v6-mobile-summary { display:flex;justify-content:space-between;gap:12px;align-items:flex-start;background:#1b1b1b;color:#fff;padding:13px 19px; }
  .v6-mobile-summary>div { display:grid;gap:3px;min-width:0; }
  .v6-mobile-summary span { font-size:.63rem;color:#acacac; }
  .v6-mobile-summary strong { font-size:.87rem;white-space:nowrap;letter-spacing:-.035em;font-weight:600; }
  .v6-estimate[aria-hidden] { display:none; }
  .v6-estimate-note { grid-column:1/-1;margin:6px 0 0;padding:9px 12px; }
  .v6-estimate>p { display:none; }
}
@media(max-width:720px) {
  .container { width:min(calc(100% - 34px),var(--width)); }
  .header-row { height:65px; }
  .brand { font-size:1.4rem; }
  .brand-mark,.logo-symbol { width:32px;height:32px; }
  .menu-button { display:flex; }
  .v6-hero { padding-block:44px 45px;gap:35px; }
  .v6-hero h1 { font-size:clamp(2.4rem,9.2vw,4.25rem);letter-spacing:-.06em;margin:18px 0;line-height:1.17; }
  .v6-hero-copy>p:not(.v6-legal-hint) { font-size:.87rem;line-height:1.8; }
  .v6-hero-actions { margin-top:23px;gap:17px; }
  .v6-hero-actions .btn { width:100%;justify-content:space-between; }
  .v6-preview { padding:21px 19px; }
  .v6-preview h2 { font-size:1.36rem;margin-top:24px; }
  .v6-preview-choice { padding:14px; }
  .v6-strip-inner { display:block;padding-block:19px; }
  .v6-strip-inner strong,.v6-strip-inner span { display:block; }
  .v6-strip-inner span { margin-top:8px; }
  .v6-home-end { display:block;padding-block:24px 40px; }
  .v6-home-end .v6-text-link { margin-top:16px; }
  .v6-config-heading { padding-block:25px 24px; }
  .v6-config-heading h1 { font-size:clamp(1.9rem,7.5vw,3rem); }
  .v6-config-heading p { font-size:.79rem; }
  .v6-mobile-summary { padding:11px 12px;gap:6px; }
  .v6-mobile-summary strong { font-size:clamp(.70rem,2.7vw,.83rem); }
  .v6-summary-budget { font-size:1.85rem; }
  .v6-estimate-stats span { font-size:.64rem; }
  .v6-estimate-stats strong { font-size:.79rem; }
  .v6-builder-layout .wizard-nav { gap:0; }
  .v6-builder-layout .wizard-tab { min-height:55px;padding:8px 8px;font-size:.68rem;line-height:1.25;gap:6px;text-align:center;justify-content:center; }
  .v6-builder-layout .wizard-tab .step-number { display:inline-block;font-size:.66rem; }
  .v6-builder-layout .wizard-panel { padding:22px 18px;min-height:0; }
  .v6-builder-layout .step-title { font-size:1.42rem; }
  .v6-builder-layout .step-desc { font-size:.77rem; }
  .v6-use-grid { grid-template-columns:1fr;gap:8px; }
  .v6-use-card { min-height:0;display:grid;grid-template-columns:35px 1fr 22px;gap:0 10px;align-items:center;padding:14px 13px; }
  .v6-use-card .use-number { margin:0;grid-row:1/3; }
  .v6-use-card strong { font-size:.85rem;grid-column:2; }
  .v6-use-card small { grid-column:2;font-size:.69rem; }
  .v6-use-card .use-tick { position:static;grid-column:3;grid-row:1/3;justify-self:end; }
  .v6-builder-layout .wizard-actions { position:sticky;bottom:0;z-index:20;margin:0;background:white;padding:10px 12px;box-shadow:0 -10px 32px #00000012; }
  .v6-builder-layout .wizard-actions .btn { min-height:46px;font-size:.77rem;padding:11px 14px; }
  .v6-result-costs { padding:12px;gap:9px; }
  .v6-result-costs strong { font-size:1.05rem; }
  .v6-result-actions { display:block; }
  .v6-result-actions .btn { width:100%;justify-content:space-between; }
}
@media(max-width:370px) { .v6-builder-layout .wizard-tab .step-number { display:none; } }
@media(prefers-reduced-motion:reduce) { .v6-preview-choice, .v6-use-card,.v6-progress-fill { transition:none; } }
