.ptr-calculator{--ptr-border:#dedede;--ptr-muted:#646b73;--ptr-surface:#f6f6f4;--ptr-text:#202326;--ptr-accent:#570018;width:100%;max-width:none;margin:0;color:var(--ptr-text);font-family:inherit;}
.ptr-calculator *{box-sizing:border-box;}
.ptr-progress{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:10px;width:100%;margin:0 0 22px;padding:0;list-style:none;}
.ptr-progress li{position:relative;display:flex;align-items:center;gap:9px;min-width:0;color:var(--ptr-muted);font-size:13px;font-weight:650;}
.ptr-progress li::after{position:absolute;top:16px;right:0;left:38px;height:1px;background:var(--ptr-border);content:'';transform:translateX(8px);}
.ptr-progress li:last-child::after{display:none;}
.ptr-progress span{position:relative;z-index:1;display:inline-flex;flex:0 0 32px;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--ptr-border);border-radius:50%;background:#fff;}
.ptr-progress small{position:relative;z-index:1;overflow:hidden;padding-right:8px;background:#fff;text-overflow:ellipsis;white-space:nowrap;}
.ptr-progress li.is-active, .ptr-progress li.is-complete{color:var(--ptr-text);}
.ptr-progress li.is-active span{border-color:var(--ptr-accent);background:var(--ptr-accent);color:#fff;}
.ptr-progress li.is-complete span{border-color:var(--ptr-accent);background:var(--ptr-accent);color:transparent;font-size:0;}
.ptr-progress li.is-complete span::before{content:'✓';color:#fff;font-size:17px;font-weight:800;line-height:1;}
.ptr-form, .ptr-result, .ptr-fixed-result, .ptr-request-panel{width:100%;border:1px solid var(--ptr-border);border-radius:16px;background:#fff;box-shadow:0 10px 34px rgba(16, 24, 40, .06);}
.ptr-form, .ptr-result, .ptr-fixed-result, .ptr-request-panel{padding:clamp(20px, 4vw, 36px);}
.ptr-step{animation:ptrFadeIn .2s ease-out;}
@keyframes ptrFadeIn {
from{opacity:0;transform:translateY(5px);}
to{opacity:1;transform:translateY(0);}
}
.ptr-step-heading{margin-bottom:24px;}
.ptr-step-heading > span{display:block;margin-bottom:5px;color:var(--ptr-muted);font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;}
.ptr-step-heading h3{margin:0;font-size:clamp(23px, 3.5vw, 32px);line-height:1.2;}
.ptr-grid{display:grid;gap:18px;}
.ptr-grid-2{grid-template-columns:repeat(2, minmax(0, 1fr));}
.ptr-access-grid{align-items:start;}
.ptr-access-card{min-width:0;margin:0;padding:20px;border:1px solid var(--ptr-border);border-radius:13px;background:var(--ptr-surface);}
.ptr-access-card legend{margin-bottom:16px;padding:0;font-size:18px;font-weight:750;}
.ptr-field{display:block;margin-bottom:18px;}
.ptr-field > span, .ptr-field > label, .ptr-address-field > label{display:block;margin-bottom:7px;color:var(--ptr-text);font-weight:650;}
.ptr-field small{display:block;margin-top:6px;color:var(--ptr-muted);font-size:12px;}
.ptr-step-equivalent{display:block;margin-top:9px;color:var(--ptr-text);font-size:13px;font-weight:700;}
.ptr-elevator-hint{display:block;margin:-5px 0 14px 28px;color:var(--ptr-muted);font-size:12px;line-height:1.45;}
.ptr-calculator input[type="text"],
.ptr-calculator input[type="email"],
.ptr-calculator input[type="tel"],
.ptr-calculator input[type="number"],
.ptr-calculator input[type="date"],
.ptr-calculator select{width:100%;min-height:50px;padding:11px 16px !important;border:1px solid #c9cdd2;border-radius:9px;background:#fff;color:var(--ptr-text);font:inherit;}
.ptr-calculator input:focus, .ptr-calculator select:focus{outline:2px solid rgba(145, 20, 45, .13);outline-offset:1px;border-color:currentColor;}
.ptr-calculator input:disabled{background:#ececeb;color:#777;}
.ptr-calculator input::placeholder{color:#777d84;opacity:1;}
.ptr-calculator select{padding-right:42px !important;}
.ptr-autocomplete{position:relative;}
.ptr-suggestions{position:absolute;z-index:1000;top:calc(100% + 6px);right:0;left:0;overflow:hidden;border:1px solid #cfd2d6;border-radius:10px;background:#fff;box-shadow:0 16px 38px rgba(16, 24, 40, .16);}
.ptr-suggestion{display:grid;gap:2px;width:100%;padding:12px 14px;border:0;border-bottom:1px solid #ececec;background:#fff;color:var(--ptr-text);font:inherit;text-align:left;cursor:pointer;}
.ptr-suggestion:last-of-type{border-bottom:0;}
.ptr-suggestion:hover, .ptr-suggestion:focus, .ptr-suggestion.is-active{outline:none;background:var(--ptr-surface);}
.ptr-suggestion strong{font-size:14px;font-weight:700;}
.ptr-suggestion span{overflow:hidden;color:var(--ptr-muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap;}
.ptr-google-attribution{display:flex;justify-content:flex-end;padding:8px 12px;background:#fff;}
.ptr-google-attribution img{display:block;width:120px;height:15px;object-fit:contain;}
.ptr-options{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:4px;}
.ptr-options-column{flex-direction:column;}
.ptr-options label, .ptr-check{display:flex;align-items:flex-start;gap:9px;cursor:pointer;}
.ptr-options input, .ptr-check input{margin-top:3px;}
.ptr-check{margin:12px 0 18px;}
.ptr-same-building-check{width:fit-content;}
.ptr-route-status{display:grid;gap:4px;margin:4px 0 20px;padding:14px 16px;border:1px solid #d5ddd4;border-radius:10px;background:#f5f8f4;}
.ptr-route-status strong{margin-bottom:3px;}
.ptr-route-status span{color:var(--ptr-muted);font-size:14px;}
.ptr-step-actions, .ptr-result-actions, .ptr-request-actions{display:grid;gap:12px;width:100%;}
.ptr-step-actions{grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:28px;padding-top:20px;border-top:1px solid var(--ptr-border);}
.ptr-step-actions-end{grid-template-columns:minmax(0, 1fr);}
.ptr-step-actions-end > *{grid-column:1 / -1;}
.ptr-result-actions{grid-template-columns:repeat(3, minmax(0, 1fr));}
.ptr-fixed-result .ptr-result-actions, .ptr-request-actions{grid-template-columns:repeat(2, minmax(0, 1fr));}
.ptr-calculator .ptr-button, .ptr-calculator .ptr-secondary-button{width:100%;min-height:48px;margin:0;text-align:center;cursor:pointer;}
.ptr-calculator .ptr-button:disabled, .ptr-calculator .ptr-secondary-button:disabled{cursor:wait;opacity:.65;}
.ptr-calculator .ptr-button:not(.btn){border:1px solid #99152d;background:#99152d;color:#fff;}
.ptr-calculator .ptr-secondary-button:not(.btn){border:1px solid #99152d;background:transparent;color:#99152d;}
.ptr-validation, .ptr-request-validation{margin-top:18px;padding:12px 14px;border-radius:9px;background:#fff1ef;color:#982b20;font-weight:650;}
.ptr-result, .ptr-fixed-result, .ptr-request-panel{margin-top:24px;}
.ptr-result-main{display:grid;gap:4px;margin-bottom:22px;}
.ptr-result-label, .ptr-vat{color:var(--ptr-muted);}
.ptr-total{font-size:clamp(36px, 6vw, 58px);line-height:1;}
.ptr-breakdown-table{width:100%;margin:0 0 20px;border-collapse:collapse;}
.ptr-breakdown-table td{padding:12px;border:1px solid var(--ptr-border);vertical-align:top;}
.ptr-breakdown-table td:last-child{width:28%;text-align:right;white-space:nowrap;font-weight:700;}
.ptr-breakdown-table small{display:block;margin-top:3px;color:var(--ptr-muted);}
.ptr-breakdown-table .ptr-total-row td{font-size:18px;font-weight:800;}
.ptr-result-note{margin:0 0 20px;padding:14px 16px;border-radius:9px;background:var(--ptr-surface);color:var(--ptr-muted);}
.ptr-fixed-result h3, .ptr-request-success h3{margin-top:0;}
.ptr-fixed-result > p{margin:0 0 26px;}
.ptr-fixed-result .ptr-result-actions{margin-top:0;}
.ptr-request-intro{margin:-10px 0 22px;color:var(--ptr-muted);}
.ptr-privacy-note{margin:4px 0 18px;color:var(--ptr-muted);font-size:13px;line-height:1.5;}
.ptr-honeypot{position:absolute !important;left:-9999px !important;width:1px !important;height:1px !important;overflow:hidden !important;}
.ptr-request-success{padding:16px;border-radius:10px;background:#f5f8f4;}
.ptr-request-success p{margin-bottom:0;}
.ptr-calculator [hidden]{display:none !important;}
@media(max-width:900px){
.ptr-result-actions{grid-template-columns:1fr;}
}
@media(max-width:720px){
.ptr-progress small{display:none;}
.ptr-progress li::after{left:32px;transform:translateX(4px);}
.ptr-grid-2, .ptr-step-actions, .ptr-fixed-result .ptr-result-actions, .ptr-request-actions{grid-template-columns:1fr;}
.ptr-step-actions .ptr-back{order:2;}
.ptr-breakdown-table td{font-size:14px;}
.ptr-breakdown-table td:last-child{width:auto;}
}
.ptr-autocomplete-status{margin-top:8px;padding:9px 12px;border-radius:6px;background:rgba(0, 0, 0, 0.05);font-size:13px;line-height:1.45;}
.ptr-autocomplete-status.is-error{background:rgba(180, 35, 35, 0.08);color:#8f1d1d;}
.ptr-postal-result{display:flex;align-items:center;gap:10px;width:100%;margin-top:9px;padding:10px 12px;border:1px solid #d8dde2;border-radius:9px;background:#f7f8f8;color:var(--ptr-text);font-size:13px;line-height:1.4;}
.ptr-postal-result[hidden]{display:none !important;}
.ptr-postal-result.is-selected{border-color:rgba(30, 126, 52, .25);background:rgba(30, 126, 52, .07);}
.ptr-postal-result.is-loading{color:var(--ptr-muted);}
.ptr-postal-result.is-error{border-color:rgba(168, 35, 35, .22);background:rgba(168, 35, 35, .07);color:#a82323;}
.ptr-postal-check{display:inline-flex;flex:0 0 24px;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#24783a;color:#fff;font-size:14px;font-weight:800;}
.ptr-postal-result.is-selected > span:last-child{display:flex;min-width:0;flex-direction:column;}
.ptr-postal-result.is-selected small{margin:0;color:var(--ptr-muted);font-size:11px;}
.ptr-postal-result.is-selected strong{font-size:14px;}
.ptr-postal-result.has-options{display:block;}
.ptr-postal-options-title{display:block;margin-bottom:8px;}
.ptr-postal-options{display:flex;flex-wrap:wrap;gap:8px;}
.ptr-postal-option{min-height:38px;padding:8px 12px;border:1px solid var(--ptr-accent);border-radius:999px;background:#fff;color:var(--ptr-accent);cursor:pointer;font:inherit;font-size:13px;font-weight:700;}
.ptr-postal-option:hover, .ptr-postal-option:focus {
background: var(--ptr-accent);
color: #fff;
}