/* The workshop identity extends to the working calculator and the full site footer. */
.ppr-taller .pcalc { --pc-bg:#f5f2e9; --pc-surface:#fffdf7; --pc-soft:#eceee3; --pc-ink:#242820; --pc-muted:#62675c; --pc-line:#d5d8ca; --pc-accent:#d54b2a; --pc-accent-dark:#ad391c; --pc-accent-soft:#f5e5d9; --pc-deep:#263b30; --pc-radius:0px; --pc-shadow:none; background:var(--pc-bg); padding:46px 0 60px; }
.ppr-taller .pcalc__inner { width:min(100% - 80px,1200px); max-width:none; }
.ppr-taller .pcalc__head { position:relative; text-align:left; max-width:none; padding:0 150px 30px 0; margin:0 0 30px; border-bottom:1px solid var(--pc-line); }
.ppr-taller .pcalc__head::after { content:"m² → L → $"; position:absolute; right:0; top:52px; font:italic 23px Georgia,serif; color:var(--pc-accent); }
.ppr-taller .pcalc__eyebrow { background:none; padding:0; border-radius:0; font:600 13px/1.7 ui-monospace,Consolas,monospace; letter-spacing:.12em; color:var(--pc-accent-dark); }
.ppr-taller .pcalc .pcalc__title { font-size:clamp(36px,4.2vw,56px); line-height:1.08; letter-spacing:-.055em; margin:16px 0 18px; }
.ppr-taller .pcalc__lead { max-width:740px; font-size:16px; line-height:1.8; }
.ppr-taller .pcalc .paccount-editor-bar { margin:0; padding:0 0 25px; }
.ppr-taller .pcalc .paccount-editor-bar p { font-size:14px; color:var(--pc-muted); }
.ppr-taller .pcalc .paccount-actions a,.ppr-taller .pcalc .paccount-actions button { border-radius:0; box-shadow:none; background:var(--pc-surface); border:1px solid var(--pc-line); color:var(--pc-deep); font-size:14px; padding:11px 14px; min-height:44px; }
.ppr-taller .pcalc-wizard-nav { gap:0; scroll-margin-top:95px; border:1px solid var(--pc-line); }
.ppr-taller .pcalc-wizard-nav button { border:0; border-right:1px solid var(--pc-line); border-radius:0; background:transparent; min-height:64px; padding:14px 10px; font-size:14px; gap:10px; }
.ppr-taller .pcalc-wizard-nav button:last-child { border-right:0; }
.ppr-taller .pcalc-wizard-nav button>span { border-radius:0; min-width:20px; background:none; color:var(--pc-accent-dark); font:13px ui-monospace,monospace; }
.ppr-taller .pcalc-wizard-nav button[aria-current=step] { background:var(--pc-deep); border-color:var(--pc-deep); color:#fffdf7; }
.ppr-taller .pcalc-wizard-nav button[aria-current=step]>span { color:#e0cc94; background:none; }
.ppr-taller .pcalc-wizard-nav button:hover:not([aria-current]) { background:#e8ecdf; }
.ppr-taller .pcalc-wizard-caption { margin-top:19px; margin-bottom:10px; font:600 13px/1.6 ui-monospace,monospace; letter-spacing:.06em; text-transform:uppercase; }
.ppr-taller .pcalc-wizard-progress { height:3px; border-radius:0; margin-bottom:6px; }
.ppr-taller .pcalc-wizard-progress::-webkit-progress-bar,.ppr-taller .pcalc-wizard-progress::-webkit-progress-value { border-radius:0; }
.ppr-taller .pcalc-wizard-error:empty { margin-bottom:20px; }
.ppr-taller .pcalc__grid { gap:28px; grid-template-columns:minmax(0,1fr) 340px; }
.ppr-taller .pcalc-card { border-radius:0; box-shadow:none; padding:28px; border-color:var(--pc-line); }
.ppr-taller .pcalc-card__head { gap:16px; padding-bottom:24px; border-bottom:1px solid var(--pc-line); margin-bottom:26px; }
.ppr-taller .pcalc-step { width:auto; min-width:32px; height:auto; justify-content:flex-start; border-radius:0; box-shadow:none; background:none; color:var(--pc-accent); font:italic 44px/1 Georgia,serif; }
.ppr-taller .pcalc-card__head h2 { font-size:24px; font-weight:800; letter-spacing:-.035em; line-height:1.2; margin:0 0 8px; }
.ppr-taller .pcalc-card__head p { font-size:14px; line-height:1.7; }
.ppr-taller .pcalc-label { font-size:14px; font-weight:700; }
.ppr-taller .pcalc :is(input[type=text],input[type=email],input[type=date],input[type=number],input:not([type]),select,textarea) { border:1px solid #bdc5b5; border-radius:0; box-shadow:none; background:#fffdf7; font-size:16px; min-height:46px; color:var(--pc-ink); }
.ppr-taller .pcalc :is(input,select,textarea):focus { border-color:var(--pc-deep); box-shadow:0 0 0 1px var(--pc-deep); }
.ppr-taller .pcalc input[aria-invalid=true] { border-color:#a52525; }
.ppr-taller .pcalc-help { color:var(--pc-muted); font-size:14px; line-height:1.7; }
.ppr-taller .pcalc-error { font-size:14px; line-height:1.6; }
.ppr-taller .pcalc-affix { font-size:14px; color:#58634f; }
.ppr-taller .pcalc-check input { accent-color:var(--pc-deep); }
.ppr-taller .pcalc-room,.ppr-taller .pcalc-material,.ppr-taller .pcalc-empty,.ppr-taller .pcalc-opening { border-radius:0; border-color:var(--pc-line); box-shadow:none; background:#f0f1e7; }
.ppr-taller .pcalc-room { padding:22px; }
.ppr-taller .pcalc-room__num { border-radius:0; background:var(--pc-deep); color:#fffdf7; }
.ppr-taller .pcalc-room__result { border-radius:0; background:#e4e8da; color:var(--pc-deep); }
.ppr-taller .pcalc .pcalc-room__name { color:var(--pc-ink); font-size:20px; font-weight:750; }
.ppr-taller .pcalc-details { border-color:var(--pc-line); }
.ppr-taller .pcalc-details summary { font-size:14px; color:var(--pc-deep); }
.ppr-taller .pcalc-material-total,.ppr-taller .pcalc-labor-result,.ppr-taller .pcalc [data-materials]>p { color:#596450; }
.ppr-taller .pcalc-material-total strong { color:var(--pc-deep); }
.ppr-taller .pcalc-economic-equation { border-radius:0; border-left:3px solid var(--pc-accent); background:var(--pc-soft); font-size:14px; }
.ppr-taller .pcalc-btn { border-radius:0; box-shadow:none; min-height:46px; font-size:14px; padding:13px 18px; }
.ppr-taller .pcalc-btn:hover:not(:disabled) { transform:none; }
.ppr-taller .pcalc-btn--ghost { color:var(--pc-deep); border:1px solid #b9c2af; background:transparent; }
.ppr-taller .pcalc-btn--ghost:hover:not(:disabled) { background:#e8ecdf; }
.ppr-taller .pcalc [data-action=next-step] { background:var(--pc-accent); color:#fffdf7; border-color:var(--pc-accent); }
.ppr-taller .pcalc [data-action=next-step]:hover { background:var(--pc-accent-dark); border-color:var(--pc-accent-dark); }
.ppr-taller .pcalc-icon-btn { border-radius:0; min-height:40px; min-width:40px; }
.ppr-taller .pcalc-sum { background:#fffdf7; border:1px solid var(--pc-line); border-top:4px solid var(--pc-deep); border-radius:0; box-shadow:0 10px 20px #263b300a; color:var(--pc-ink); padding:26px; }
.ppr-taller .pcalc-sum__top { padding-bottom:20px; border-bottom:1px solid var(--pc-line); margin-bottom:20px; }
.ppr-taller .pcalc-sum__label { font:600 13px/1.5 ui-monospace,monospace; color:var(--pc-deep); letter-spacing:.1em; }
.ppr-taller .pcalc-sum__num { color:var(--pc-muted); font:13px ui-monospace,monospace; }
.ppr-taller .pcalc-sum__metrics { gap:0; border-bottom:1px solid var(--pc-line); padding-bottom:18px; }
.ppr-taller .pcalc-sum__metrics>div { background:none; border-radius:0; padding:8px 5px; }
.ppr-taller .pcalc-sum__metrics>div+div { border-left:1px solid var(--pc-line); }
.ppr-taller .pcalc-sum__metrics dt { color:var(--pc-muted); font-size:13px; letter-spacing:0; }
.ppr-taller .pcalc-sum__metrics dd { color:var(--pc-deep); font-size:14px; margin-top:10px; }
.ppr-taller .pcalc-sum__rows>div { border-color:var(--pc-line); font-size:14px; padding-block:11px; }
.ppr-taller .pcalc-sum__rows dt { color:var(--pc-muted); }
.ppr-taller .pcalc-sum__rows dd { color:var(--pc-ink); }
.ppr-taller .pcalc-internal-cost { border-color:var(--pc-line); }
.ppr-taller .pcalc-sum__total { padding:20px 26px; margin:24px -26px; background:var(--pc-deep); color:#fffdf7; flex-wrap:wrap; }
.ppr-taller .pcalc-sum__total span { color:#d7dfce; font-size:14px; }
.ppr-taller .pcalc-sum__total strong { color:#fffdf7; font-size:30px; max-width:100%; overflow-wrap:anywhere; letter-spacing:-.04em; }
.ppr-taller .pcalc-btn--wa { background:#2c6445; color:#fffdf7; box-shadow:none; }
.ppr-taller .pcalc-btn--wa:hover:not(:disabled) { background:#214e35; }
.ppr-taller .pcalc-btn--light { border:1px solid var(--pc-deep); background:transparent; color:var(--pc-deep); }
.ppr-taller .pcalc-btn--light:hover:not(:disabled) { background:#e8ecdf; }
.ppr-taller .pcalc-sum__msg { color:var(--pc-muted); font-size:14px; }
.ppr-taller .pcalc-link { color:var(--pc-deep); font-size:14px; }
.ppr-taller .pcalc-wizard-controls { margin-bottom:24px; }
.ppr-taller .pcalc-mbar { border-radius:0; box-shadow:none; background:var(--pc-deep); bottom:10px; }
.ppr-taller .pcalc-mbar span { font-size:13px; color:#d7dfce; }
.ppr-taller .pcalc-mbar>a { border-radius:0; }
.ppr-taller .pcalc-document,.ppr-taller .pcalc-document-total { border-radius:0; }
.ppr-taller .pcalc-document { background:#fffdf7; }
.ppr-taller .pcalc-document-kicker { font-size:13px!important; }
.ppr-taller .pcalc-document table { font-size:14px; }
.ppr-taller .pcalc-document td small,.ppr-taller .pcalc-document>small { font-size:13px; line-height:1.6; }
.ppr-taller .pcalc :focus-visible { outline:3px solid #ad391c; outline-offset:3px; }
/* Footer: brand, site navigation and real contact details, with a shared baseline. */
.ppr-taller footer.ppr-footer { margin-top:0; background:#263b30; color:#f5f2e9; border-top:4px solid #d54b2a; padding:0; }
.ppr-footer__inner { width:min(100% - 80px,1200px); margin:0 auto; padding:55px 0 24px; }
.ppr-footer__grid { display:grid; grid-template-columns:1.4fr .75fr .9fr 1.15fr; gap:40px; padding-bottom:45px; }
.ppr-taller .ppr-footer p { margin:0; }
.ppr-taller .ppr-footer a { color:#f5f2e9!important; opacity:1; text-decoration:none!important; }
.ppr-taller .ppr-footer a:hover { color:#efb38c!important; }
.ppr-taller .ppr-footer a:focus-visible { outline:3px solid #dcc58f; outline-offset:5px; }
.ppr-footer__logo { display:flex; align-items:center; gap:14px; }
.ppr-footer__logo>span { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; font-size:23px; font-weight:800; color:#263b30; background:#dac58e; letter-spacing:-.09em; }
.ppr-footer__logo>strong { font-size:22px; font-weight:800; line-height:1.16; letter-spacing:-.04em; }
.ppr-taller .ppr-footer__brand>p { margin:23px 0; font-size:14px; line-height:1.9; color:#c5cebd; max-width:270px; }
.ppr-footer__beta { display:block; font:13px/1.7 ui-monospace,Consolas,monospace; letter-spacing:.07em; color:#d6c28e; }
.ppr-taller .ppr-footer .ppr-footer__label { font:13px/1.8 ui-monospace,monospace; color:#d6c28e; letter-spacing:.08em; margin:3px 0 22px; }
.ppr-footer__grid nav>a,.ppr-footer__contact>a { display:block; font-size:14px; line-height:1.6; margin:0 0 13px; }
.ppr-footer__grid nav>a>span,.ppr-footer__contact>a>span { color:#d6c28e; padding-left:8px; }
.ppr-footer__contact>a { overflow-wrap:anywhere; }
.ppr-taller .ppr-footer__contact>p:last-child { font-size:14px; color:#c5cebd; line-height:1.8; margin-top:24px; }
.ppr-footer__bottom { display:flex; justify-content:space-between; align-items:center; gap:25px; padding-top:22px; border-top:1px solid #7d8e774d; }
.ppr-taller .ppr-footer__bottom>p { font-size:14px; color:#c5cebd; line-height:1.9; }
.ppr-footer__bottom>p>span { padding-left:8px; }
.ppr-footer__signature { font:13px/1.7 ui-monospace,monospace; letter-spacing:.08em; color:#d6c28e; white-space:nowrap; }
.ppr-footer__break { display:none; }
@media(max-width:1100px) { .ppr-taller .pcalc__inner,.ppr-footer__inner { width:calc(100% - 64px); } .ppr-footer__grid { gap:25px; grid-template-columns:1.2fr .7fr .9fr 1.15fr; } }
@media(max-width:980px) { .ppr-taller .pcalc__grid { grid-template-columns:minmax(0,1fr); } .ppr-taller .pcalc__summary { position:static; } .ppr-footer__grid { grid-template-columns:1.2fr 1fr; gap:35px 55px; } .ppr-footer__contact { grid-column:2; grid-row:1; } .ppr-footer__bottom { align-items:flex-start; } .ppr-footer__break { display:block; } .ppr-footer__bottom>p>span { padding-left:0; } }
@media(max-width:700px) { .ppr-taller .pcalc-wizard-nav { border-bottom:0; } .ppr-taller .pcalc-wizard-nav button { min-height:56px; padding:10px 6px; font-size:14px; gap:6px; border-bottom:1px solid var(--pc-line); } .ppr-taller .pcalc-wizard-nav button:nth-child(3) { border-right:0; } .ppr-taller .pcalc-wizard-nav button>span { min-width:16px; font-size:14px; } }
@media(max-width:600px) {
 .ppr-taller .pcalc { padding-block:32px 42px; }
 .ppr-taller .pcalc__inner,.ppr-footer__inner { width:calc(100% - 40px); }
 .ppr-taller .pcalc__head { padding:0 0 24px; margin-bottom:25px; }
 .ppr-taller .pcalc__head::after { content:none; }
 .ppr-taller .pcalc .pcalc__title { font-size:38px; }
 .ppr-taller .pcalc__lead { font-size:16px; }
 .ppr-taller .pcalc-card { padding:22px 18px; }
 .ppr-taller .pcalc-card__head { padding-bottom:20px; gap:12px; }
 .ppr-taller .pcalc-card__head h2 { font-size:22px; }
 .ppr-taller .pcalc-step { font-size:38px; min-width:25px; }
 .ppr-taller .pcalc-room { padding:18px 14px; }
 .ppr-taller .pcalc-sum { padding:22px; }
 .ppr-taller .pcalc-sum__total { margin-inline:-22px; padding-inline:22px; }
 .ppr-taller .pcalc-wizard-controls button { font-size:14px; }
 .ppr-footer__inner { padding-top:38px; }
 .ppr-footer__grid { grid-template-columns:1fr 1fr; gap:32px 20px; padding-bottom:30px; }
 .ppr-footer__brand { grid-column:1/-1; }
 .ppr-taller .ppr-footer__brand>p { margin:20px 0; }
 .ppr-footer__contact { grid-column:1/-1; grid-row:auto; border-top:1px solid #7d8e774d; padding-top:25px; }
 .ppr-footer__contact>a { font-size:14px; }
 .ppr-taller .ppr-footer__contact>p:last-child { margin-top:15px; }
 .ppr-footer__bottom { flex-direction:column; gap:18px; }
 .ppr-footer__bottom>p>span { display:block; }
 .ppr-footer__logo>strong { font-size:24px; }
}
@media(prefers-reduced-motion:reduce) { .ppr-taller .pcalc *, .ppr-footer * { transition:none!important; } }
