.pt-app{--pt-bg:#faf8f5;--pt-card:#fff;--pt-tx:#2c2825;--pt-sb: #5f5b57;--pt-ac:#0068b4;--pt-al:#f9ebe6;--pt-ah: #dc3232;--pt-tk:#e8e4df;--pt-bd:#e8e4df;--pt-tg:#f3f0ec;--pt-sh:0 2px 14px rgba(44,40,37,.05);--pt-sl:0 5px 28px rgba(44,40,37,.08);max-width: 880px;margin:0 auto;padding: 0 0px 3em;line-height:1.6}
.pt-header{text-align:center;padding: 0 0 1em;}
.pt-header-en{font-family: din-2014, sans-serif;font-weight:600;letter-spacing:.2em;color:var(--pt-ac);text-transform:uppercase;}
.pt-header h2{font-size: 280%;font-weight:700;letter-spacing:.04em;line-height:1.5;margin:0;text-align: center;}
.pt-header p{color:var(--pt-sb);line-height: 1.8;margin: .5em 0 1em;text-align: center;}
.pt-nav{display:flex;gap:4px;margin-bottom: 1.5em;overflow-x:auto;padding-bottom:6px}
.pt-nav-btn{flex:1 1 0;min-width:0;padding:10px 4px 8px;background:var(--pt-card);color:var(--pt-sb);border:1px solid var(--pt-bd);border-radius:8px;font-size:11px;font-weight:500;cursor:default;transition:all .15s;font-family:inherit;line-height:1.3;text-align:center}
.pt-nav-btn.active{background:var(--pt-ac);color:#fff;border-color:var(--pt-ac);font-weight:700}
.pt-nav-btn.done{background:var(--pt-al);color:var(--pt-ac);border-color:var(--pt-al);cursor:pointer}
.pt-nav-num{font-family: din-2014, sans-serif;font-size:15px;font-weight:700;opacity:.55;margin-bottom:2px}
.pt-nav-btn.active .pt-nav-num{opacity:1}
.pt-card{background:var(--pt-card);border-radius: .5em;box-shadow:var(--pt-sh);overflow: hidden;border: 1px solid rgba(196,93,62,.18);}

/* Sticky header */
.pt-sticky-hd{position:sticky;top:0;z-index:10;background:var(--pt-card);border:1px solid var(--pt-bd);border-bottom:none;border-radius:.5em .5em 0 0}
.pt-sticky-hd::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--pt-bd)}
.pt-sticky-hd + .pt-card-body{border-radius:0 0 .5em .5em;border-top:none}

.pt-sec-head{display:flex;align-items:center;gap:10px;font-size: 150%;padding:  1em 1em 0;background: #e8f0f8;}
.pt-sec-num{font-family: din-2014, sans-serif;font-weight:700;color:var(--pt-ac);font-size: 140%;}
.pt-sec-title{font-weight:700}
.pt-sec-count{font-size: 70%;color:var(--pt-sb);margin-left:auto}
.pt-sec-desc{color:var(--pt-sb);border-bottom: 3px solid #0068b4;padding-bottom: .8em;padding: 0px 1.5em 1.5em;background: #e8f0f8;}
.pt-field{padding: 1.5em;border-bottom: 1px solid var(--pt-bd);}
.pt-field + .pt-field {}
.pt-field:nth-child(2n) {background:#fafafa;}
.pt-field:last-child{margin-bottom:0;border: none;}
.pt-label{display: flex;align-items: center;font-size: 120%;font-weight:600;margin-bottom: .5em;}
.pt-req{color: #FFF;font-size: 70%;margin-left: .5em;font-weight:700;background: var(--pt-ah);padding: .2em .6em;border-radius: .2em;vertical-align: middle;line-height: 1.4;}
.pt-select-grid{display:flex;flex-direction:column;gap:6px}

input[type=text].pt-text-input {width: 100%;}

@media(min-width:650px){.pt-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}}
.pt-opt-btn{display:block;width:100%;text-align:left;padding: .95em .8em .8em;background:var(--pt-card);border: 1px solid #cac5bf;border-radius: .3em;color:var(--pt-tx);cursor:pointer;transition:all .15s;line-height:1.5;font-weight:400}
.pt-opt-btn:hover{border-color:var(--pt-ac);background: #e8f0f8;}
.pt-opt-btn.selected{border-color:var(--pt-ac);background: #e8f0f8;font-weight:500;color: var(--pt-ac);}
.pt-opt-chk{color:var(--pt-ac);font-weight:700;margin-right:4px}
.pt-multi-wrap{display:flex;flex-wrap:wrap;gap:7px}
.pt-multi-btn{padding: .7em 1em .6em;background:var(--pt-card);border: 1px solid var(--pt-bd);border-radius: 999px;color:var(--pt-tx);cursor:pointer;transition:all .15s;font-weight:400;line-height:1.4}
.pt-multi-btn:hover{border-color:var(--pt-ac);background: #e8f0f8;}
.pt-multi-btn.selected{border-color:var(--pt-ac);background: #e8f0f8;color:var(--pt-ac);font-weight:600}
.pt-text-input{width:100%;padding: .8em 1em;border:1px solid var(--pt-bd);line-height: 1.6;font-weight: 300;}
.pt-text-input:focus{border-color:var(--pt-ac)}
.pt-text-input::placeholder{color: #cacaca;}
.pt-actions{display:flex;justify-content:flex-end;margin-top:18px;gap:10px}
.pt-actions.has-back{justify-content:space-between}
.pt-btn-back{padding:11px 18px;background:transparent;color:var(--pt-sb);border:1px solid var(--pt-bd);border-radius:10px;font-size:13px;cursor:pointer;transition:all .15s}
.pt-btn-back:hover{border-color:var(--pt-sb);color:var(--pt-tx)}
.pt-btn-next{padding:13px 28px;border:none;border-radius:10px;font-size:14px;font-weight:700;letter-spacing:.03em;transition:all .15s}
.pt-btn-next.enabled{background:var(--pt-ac);color:#fff;cursor:pointer}
.pt-btn-next.enabled:hover{background:var(--pt-ah)}
.pt-btn-next.disabled{background:var(--pt-tk);color:var(--pt-sb);cursor:not-allowed}
.pt-privacy{text-align:center;color:var(--pt-sb);margin-top:12px;line-height:1.6}
.pt-generating{text-align:center;padding:80px 0}
.pt-spinner{width:44px;height:44px;border:3px solid var(--pt-tk);border-top-color:var(--pt-ac);border-radius:50%;animation:pt-spin .8s linear infinite;margin:0 auto 18px}
@keyframes pt-spin{to{transform:rotate(360deg)}}
.pt-gen-text{font-size:14px;font-weight:500;animation:pt-pulse 1.5s ease infinite}
@keyframes pt-pulse{0%,100%{opacity:.6}50%{opacity:1}}
.pt-result-label{font-family: din-2014, sans-serif;font-weight:600;letter-spacing:.15em;color: #FFF;text-transform:uppercase;padding: .5em 1.5em;background: var(--pt-ac);}
.pt-profile{display:flex;align-items:center;gap: 1.5em;padding: 1.5em 1.5em;border-bottom:1px solid var(--pt-bd);}
.pt-avatar{width: 5em;height: 5em;border-radius:50%;background:var(--pt-tg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--pt-sb)}
.pt-profile h3{font-size: 140%;font-weight:700;margin-bottom: .1em;}
.pt-profile p{color: var(--pt-sb);}
.pt-profile .pt-sub{}
.pt-res-section{padding: 1.5em;}
.pt-res-section + .pt-res-section {padding-top:0;}
.pt-grid2 .pt-res-section {padding-top:0;}
.pt-res-title{font-weight:700;color:var(--pt-ac);letter-spacing:.08em;font-size: 120%;margin-bottom: .8em;padding-bottom: .5em;border-bottom:1px solid var(--pt-bd)}
.pt-res-text{line-height:2;color: var(--pt-sb);}
.pt-res-quote{padding:10px 14px;background:var(--pt-al);border-left:3px solid var(--pt-ac);border-radius:0 8px 8px 0;}
.pt-grid2{display:grid;grid-template-columns:1fr 1fr;gap: 1.5em;margin-bottom: 0;}
.pt-res-tag{display:inline-block;padding: .5em 1em;background:var(--pt-tg);border-radius: 999px;line-height:1.4;font-size: 80%;}
.pt-tags{display:flex;flex-wrap:wrap;gap:5px}
.pt-no-data{font-size:12px;color:var(--pt-sb)}
.pt-advice{padding: 1.5em;margin: 1.5em 0;border:1px solid rgba(196,93,62,.18)}
.pt-advice h3{font-size: 132%;font-weight:700;margin-bottom: .5em;color:var(--pt-ac)}
.pt-advice p{line-height: 1.8;}
.pt-advice p + p {margin-top:.5em;}
.pt-action-row{display:flex;gap: 1em;margin-bottom: .5em;flex-wrap:wrap}
.pt-btn-pdf,.pt-btn-contact{flex:1;min-width:160px;padding: .9em .5em;border-radius: .5em;font-size: 110%;cursor:pointer;transition:all .15s;text-align:center}
.pt-btn-pdf{background:var(--pt-card);border:1px solid var(--pt-bd);font-weight:600;color:var(--pt-tx)}
.pt-btn-pdf:hover{border-color:var(--pt-ac)}
.pt-btn-contact{background: var(--pt-ah);border:none;font-weight:700;color:#fff;letter-spacing:.03em}
.pt-btn-contact:hover{background: #fb4f4f;}
.pt-reset-btn{display:block;margin: 0 auto 2em;padding:6px 14px;background:transparent;border: none;color:var(--pt-sb);cursor:pointer;text-decoration:underline}
.pt-card.pt-contact-card{margin-bottom:24px;border: none;box-shadow: none;border-radius: 0;overflow: initial;}
.pt-contact-card h3{font-weight:700;text-align: center;font-size: 180%;line-height: 1.8;}
.pt-contact-desc{color:var(--pt-sb);margin-bottom:18px;text-align: center;line-height: 1.8;}
.pt-form-field{margin-bottom:13px}
.pt-form-label{display:block;margin-bottom: .2em;font-weight: 600;}
.pt-form-input{width:100%;padding: 1em 1em;background: #efefef;}
.pt-contact-card textarea.pt-form-input {min-height:9em;}
.pt-contact-card textarea.pt-form-input::placeholder,.pt-contact-card input.pt-form-input::placeholder {color: #a7a1a1;font-weight: 300;}
.pt-form-input:focus{border-color:var(--pt-ac)}
.pt-form-input::placeholder{color:var(--pt-sb);}
.pt-btn-send{width:100%;padding: .8em;border:none;border-radius: .5em;font-size: 130%;font-weight:700;transition:all .15s}
.pt-btn-send.enabled{background:var(--pt-ac);color:#fff;cursor:pointer}
.pt-btn-send.enabled:hover{background:var(--pt-ah)}
.pt-btn-send.disabled{background:var(--pt-tk);color:var(--pt-sb);cursor:not-allowed}
.pt-form-note{text-align:center;font-size: 90%;color:var(--pt-sb);margin-top:8px}
.pt-sent{padding:36px 22px;text-align:center;margin-bottom:24px}
.pt-sent h3{font-size:16px;font-weight:700;margin-bottom:6px}
.pt-sent p{font-size:12px;color:var(--pt-sb);line-height:1.8}
.pt-error-msg{color:#d63638;font-size:12px;text-align:center;margin-top:8px;line-height:1.6}
