.pf-teaser{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:#eef1e9;border:1px solid #d5ddd0;padding:clamp(1.4rem,3vw,2.4rem);margin:2rem 0 2.5rem;text-align:left}
.pf-teaser h3{font-family:inherit;font-size:1.25rem;line-height:1.4;margin:0 0 .4rem;color:#264439}.pf-teaser p{margin:0;max-width:44rem;font-size:1rem;line-height:1.6}.pf-teaser button{flex-shrink:0}
.pf-dialog{width:min(780px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0;border:1px solid #d4d8cb;background:#faf8f2;color:#2b4137;box-shadow:0 24px 90px #152c3438;font-family:inherit;border-radius:8px;overscroll-behavior:contain}
.pf-dialog::backdrop{background:#142c26a6;backdrop-filter:blur(4px)}
.pf-dialog *{box-sizing:border-box}.pf-dialog [hidden]{display:none!important}.pf-dialog button,.pf-dialog input,.pf-dialog select{font:inherit}.pf-dialog button,.pf-dialog a{touch-action:manipulation}.pf-dialog :focus-visible{outline:2px solid #8a6846;outline-offset:4px}
.pf-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.8rem;border-bottom:1px solid #dce1d6;background:#faf8f2;position:sticky;top:0;z-index:2}.pf-top span{font-size:.76rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.pf-close{display:grid;place-items:center;width:40px;height:40px;border:0;background:transparent;color:inherit;cursor:pointer;border-radius:50%}.pf-close:hover{background:#e9ede4}.pf-close svg{width:20px;height:20px}
.pf-main{padding:1.8rem 2.3rem 1rem}.pf-progress{height:3px;background:#e2e6dc;margin-bottom:1.8rem}.pf-progress span{height:100%;display:block;background:#496b55;transition:width .2s}
.pf-dialog h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.7rem,5vw,2.3rem);line-height:1.2;letter-spacing:-.025em;margin:0 0 .7rem}.pf-dialog h3{font-family:inherit;font-size:1.06rem;font-weight:600;margin:1.5rem 0 .8rem;line-height:1.4}.pf-dialog p{font-size:1rem;line-height:1.65;margin:.65rem 0 1.1rem}.pf-intro{color:#647062}.pf-dialog fieldset{border:0;padding:0;margin:1.3rem 0}.pf-dialog legend{font-size:.9rem;font-weight:600;margin:0 0 .8rem;padding:0}.pf-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin:1.6rem 0}.pf-field{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem;font-weight:600;min-width:0}.pf-field-full{grid-column:1/-1}.pf-field input,.pf-field select{width:100%;min-width:0;height:49px;border:1px solid #c7d2c2;border-radius:4px;background:#fffefa;color:#2b4137;padding:.7rem .8rem;font-weight:400;box-shadow:none}.pf-field select{padding-right:2.4rem}.pf-field input[type=date]{appearance:none;-webkit-appearance:none;display:block;max-width:100%}
.pf-choices{display:grid;gap:.65rem}.pf-choice{display:flex;gap:.85rem;align-items:flex-start;padding:1rem;border:1px solid #d8dfd2;background:#fffefa;border-radius:5px;cursor:pointer}.pf-choice:has(input:checked){border-color:#496b55;background:#edf2e8;box-shadow:inset 0 0 0 1px #496b55}.pf-choice input{flex:0 0 19px;width:19px;height:19px;margin:.15rem 0 0;accent-color:#3e634e}.pf-choice strong{display:block;font-size:.97rem;font-weight:600;line-height:1.45}.pf-choice small{display:block;font-size:.85rem;line-height:1.5;margin-top:.2rem;color:#62705e}.pf-features{grid-template-columns:1fr 1fr}.pf-note{padding:.85rem 1rem;background:#edf1e7;border-radius:4px;color:#53624e}.pf-dialog .pf-note,.pf-dialog .pf-fine{font-size:.83rem;line-height:1.6}.pf-fine{color:#687260}.pf-error{color:#913e30;background:#f8eae2;padding:.8rem 1rem;border-radius:4px}.pf-footer{padding:1rem 2.3rem 1.6rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;position:sticky;bottom:0;background:#faf8f2;border-top:1px solid #e0e5d9;z-index:2}.pf-btn{display:inline-flex;justify-content:center;align-items:center;gap:.7rem;padding:.85rem 1.25rem;min-height:48px;border:1px solid #2a483b;background:#2a483b;color:#fffdf6;text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.3;border-radius:4px;cursor:pointer}.pf-btn:hover{background:#3b5f4c}.pf-btn:disabled{opacity:.6;cursor:wait}.pf-btn svg{width:18px;height:18px;flex:none}.pf-secondary{background:transparent;color:#344d3d;border-color:#c6d0c0}.pf-secondary:hover{background:#eaf0e4}.pf-dialog .pf-privacy{font-size:.74rem;text-align:center;padding:0 1.8rem;margin:0 0 1rem;color:#77806f}
.pf-result-label{font-size:.73rem!important;font-weight:600;letter-spacing:.14em;color:#8d705a;margin-bottom:.5rem!important}.pf-price{font-family:Georgia,serif;font-size:2.6rem;line-height:1.2;white-space:nowrap}.pf-price-caption{color:#687260;font-size:.85rem;margin-left:.7rem}.pf-breakdown{margin:1.5rem 0;padding:1.1rem 1.2rem;background:#fffefa;border:1px solid #d9e0d2;border-radius:5px}.pf-line{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid #edf0e8;font-size:.9rem;line-height:1.5}.pf-line:last-child{border-bottom:0}.pf-money{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.pf-total{font-weight:600;border-top:1px solid #cbd6c2;margin-top:.4rem;padding-top:.9rem}.pf-timeline{display:grid;grid-template-columns:1fr;gap:0;margin:1rem 0}.pf-timeline div{display:flex;justify-content:space-between;gap:.8rem;padding:.65rem 0;border-bottom:1px solid #dce3d4;font-size:.86rem}.pf-timeline dt{color:#65715d}.pf-timeline dd{margin:0;text-align:right;font-weight:600;white-space:nowrap}.pf-check{display:flex;gap:.6rem;align-items:flex-start}.pf-check svg{width:19px;height:19px;flex:none;margin-top:.15rem}.pf-comparison{width:100%;border-collapse:collapse;font-size:.87rem}.pf-comparison td{padding:.75rem .3rem;border-bottom:1px solid #d8e0d1;vertical-align:top}.pf-comparison td:last-child{text-align:right;white-space:nowrap}.pf-comparison small{display:block;font-size:.76rem;line-height:1.45;color:#77816e}.pf-warning{background:#f3ecdc;border-left:3px solid #a78a53;padding:.8rem 1rem}.pf-result-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.4rem 0}.pf-result-actions .pf-btn{flex:1}.pf-dialog summary{cursor:pointer;font-weight:600;font-size:.9rem;padding:1rem 0}.pf-result-block{margin:1.4rem 0}.pf-dialog hr{border:0;border-top:1px solid #dce2d3;margin:1.5rem 0}
@media(max-width:600px){.pf-teaser{align-items:stretch;flex-direction:column;gap:1rem}.pf-teaser button{width:100%}.pf-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:7px}.pf-top{padding:.65rem 1rem}.pf-main{padding:1.25rem 1.1rem .6rem}.pf-fields,.pf-features{grid-template-columns:1fr;gap:.8rem}.pf-footer{padding:.9rem 1.1rem 1rem}.pf-footer .pf-btn{padding:.8rem 1rem}.pf-dialog h2{font-size:1.8rem}.pf-price{font-size:2.3rem}.pf-price-caption{display:block;margin:.3rem 0 0}.pf-choice{padding:.85rem}.pf-result-actions{flex-direction:column}.pf-timeline div{flex-wrap:wrap}.pf-timeline dd{margin-left:auto}.pf-breakdown{padding:.8rem}.pf-line{font-size:.85rem}.pf-dialog p{font-size:.94rem}}
@media(prefers-reduced-motion:reduce){.pf-progress span{transition:none}}

.pf-dialog #pf-title:focus{outline:none}.pf-comparison th{padding:.75rem .3rem;border-bottom:1px solid #d8e0d1;vertical-align:top;text-align:left;font-weight:500}.pf-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pf-teaser .pf-btn{flex-shrink:0}.pf-dialog:not([open]){display:none}
