:root{--t24-ink:#18343c;--t24-muted:#6c8086;--t24-line:#dfe9eb;--t24-blue:#19799a;--t24-blue-dark:#12627d;--t24-soft:#f4f9fa;--t24-white:#fff}
.t24q-shell{box-sizing:border-box;display:grid;grid-template-columns:minmax(220px,280px) minmax(0,900px);gap:28px;max-width:1240px;margin:32px auto;padding:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--t24-ink)}
.t24q-shell *{box-sizing:border-box}.t24q-intro{padding:34px 10px 24px;align-self:start;position:sticky;top:28px}.t24q-kicker,.t24q-eyebrow{display:inline-block;font-size:10px;line-height:1.4;letter-spacing:.13em;text-transform:uppercase;color:var(--t24-blue);font-weight:600}.t24q-intro h1{margin:14px 0 14px;font-size:clamp(27px,2.7vw,38px);line-height:1.08;letter-spacing:-.035em;font-weight:450}.t24q-intro h1 em{font-style:normal;color:var(--t24-blue);font-weight:520}.t24q-intro p{max-width:280px;margin:0;font-size:15px;line-height:1.58;color:var(--t24-muted)}.t24q-trust{display:grid;gap:10px;margin-top:22px;font-size:13px;color:#466269}.t24q-trust b{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:50%;background:#e8f5f7;color:var(--t24-blue);font-weight:600}
.t24q-card{width:100%;background:rgba(255,255,255,.98);border:1px solid var(--t24-line);border-radius:24px;box-shadow:0 18px 55px rgba(22,60,70,.1);overflow:hidden}.t24q-topbar{display:flex;justify-content:space-between;gap:16px;padding:22px 30px 15px}.t24q-topbar>div{display:flex;align-items:center;gap:10px}.t24q-topbar span{font-size:12px;color:var(--t24-muted)}.t24q-topbar strong{font-size:13px;font-weight:500}.t24q-close-details{border:0;background:transparent;color:var(--t24-blue);font-size:13px;cursor:pointer}.t24q-progress-track{height:3px;background:#edf3f4}.t24q-progress-track span{display:block;width:25%;height:100%;background:linear-gradient(90deg,var(--t24-blue),#58b1c8);transition:width .3s ease}.t24q-form{margin:0}.t24q-step{display:none;padding:34px 38px 34px;animation:t24qIn .25s ease}.t24q-step.is-active{display:block}@keyframes t24qIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.t24q-step-head{margin-bottom:27px}.t24q-eyebrow small,.t24q-fields label>span small{font-size:.84em;text-transform:none;letter-spacing:0;color:#91a1a5;font-weight:400}.t24q-step-head h2{margin:8px 0 7px;font-size:clamp(25px,3.2vw,34px);line-height:1.18;letter-spacing:-.028em;font-weight:470}.t24q-step-head p{margin:0;color:var(--t24-muted);font-size:15px}
.t24q-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.t24q-service{position:relative;display:flex;align-items:center;gap:12px;min-height:64px;padding:14px 42px 14px 15px;border:1px solid var(--t24-line);border-radius:15px;background:#fff;cursor:pointer;transition:.18s ease}.t24q-service:hover{border-color:#a9cbd4;transform:translateY(-1px)}.t24q-service input{position:absolute;opacity:0;pointer-events:none}.t24q-service-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:10px;background:var(--t24-soft);font-size:11px;color:var(--t24-blue)}.t24q-service strong{font-size:14px;line-height:1.28;font-weight:480}.t24q-sparkle{position:absolute;right:16px;top:50%;transform:translateY(-50%) scale(.65) rotate(-8deg);display:block;width:auto;height:auto;color:var(--t24-blue);font-size:15px;line-height:1;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.t24q-service:has(input:checked),.t24q-service.is-selected{border-color:var(--t24-blue);background:#f3fafc;box-shadow:0 0 0 2px rgba(25,121,154,.07)}.t24q-service:has(input:checked) .t24q-sparkle,.t24q-service.is-selected .t24q-sparkle{opacity:1;transform:translateY(-50%) scale(1) rotate(0)}
.t24q-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.t24q-fields label{display:grid;gap:8px}.t24q-fields label.wide{grid-column:1/-1}.t24q-fields label>span{font-size:13px;color:#405c63;font-weight:500}.t24q-fields input,.t24q-fields select,.t24q-fields textarea{width:100%;border:1px solid var(--t24-line);border-radius:13px;background:#fff;padding:14px 15px;color:var(--t24-ink);font:inherit;font-size:16px;outline:none;transition:.18s ease}.t24q-fields input,.t24q-fields select{min-height:52px}.t24q-fields textarea{resize:vertical}.t24q-fields input:focus,.t24q-fields select:focus,.t24q-fields textarea:focus{border-color:var(--t24-blue);box-shadow:0 0 0 3px rgba(25,121,154,.1)}
.t24q-upload{display:flex;align-items:center;gap:16px;padding:20px;border:1px dashed #aacbd3;border-radius:17px;background:var(--t24-soft);cursor:pointer}.t24q-upload input{display:none}.t24q-camera{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff;color:var(--t24-blue);font-size:24px}.t24q-upload strong{display:block;font-size:15px;font-weight:500}.t24q-upload small{display:block;margin-top:4px;color:var(--t24-muted)}.t24q-previews{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.t24q-preview{width:74px;height:74px;border-radius:12px;object-fit:cover}.t24q-skip-note{font-size:13px;color:var(--t24-muted)}.t24q-consent{display:flex;align-items:flex-start;gap:10px;margin:22px 0;font-size:12px;line-height:1.5;color:#5d7278}.t24q-consent input{margin-top:3px;accent-color:var(--t24-blue)}.t24q-actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px}.t24q-actions-single{justify-content:flex-end}.t24q-actions button,.t24q-success a{min-height:50px;padding:13px 22px;border-radius:13px;font:inherit;font-size:14px;font-weight:520;cursor:pointer;text-decoration:none;transition:.18s ease}.t24q-prev{border:1px solid var(--t24-line);background:#fff;color:var(--t24-ink)}.t24q-next,.t24q-submit,.t24q-success a{border:0;background:var(--t24-blue);color:#fff;box-shadow:0 9px 22px rgba(25,121,154,.18)}.t24q-next:hover,.t24q-submit:hover,.t24q-success a:hover{background:var(--t24-blue-dark);transform:translateY(-1px)}.t24q-alert{margin:20px 24px 0;padding:13px 16px;border-radius:12px;background:#fff4f1;color:#9c3e2d;font-size:14px}.t24q-hp{position:absolute!important;left:-9999px!important}.t24q-success{padding:70px 34px;text-align:center}.t24q-success-icon{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border-radius:50%;background:#e8f7f1;color:#13845f;font-size:28px}.t24q-success-label{font-size:11px;letter-spacing:.14em;color:#13845f}.t24q-success h2{font-size:38px;font-weight:500;margin:10px 0}.t24q-success p{color:var(--t24-muted);margin-bottom:26px}
@media(max-width:900px){.t24q-shell{display:block;margin:0 auto;padding:12px;max-width:760px}.t24q-intro{position:static;padding:18px 8px 20px}.t24q-intro h1{font-size:30px;max-width:none;margin-bottom:10px}.t24q-intro p{font-size:14px;max-width:620px}.t24q-trust{grid-template-columns:repeat(3,1fr);margin-top:16px}.t24q-card{border-radius:21px}.t24q-step{padding:28px 22px 20px}.t24q-topbar{padding:18px 22px 14px}.t24q-service-grid{grid-template-columns:1fr}.t24q-fields{grid-template-columns:1fr}.t24q-fields label.wide{grid-column:auto}.t24q-mobile-spacer{height:76px}.t24q-actions{position:sticky;bottom:0;z-index:5;margin:0 -22px -20px;padding:12px 22px calc(12px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-top:1px solid #edf2f3}.t24q-actions button{min-height:52px}.t24q-next,.t24q-submit{flex:1}.t24q-actions-single .t24q-next{width:100%}}
@media(max-width:520px){.t24q-shell{padding:7px}.t24q-intro{padding:14px 5px 16px}.t24q-kicker{font-size:9px}.t24q-intro h1{font-size:25px;line-height:1.13}.t24q-intro p{font-size:13.5px}.t24q-trust{grid-template-columns:1fr;gap:7px;font-size:12px}.t24q-card{border-radius:18px}.t24q-step{padding:24px 16px 16px}.t24q-topbar{padding:16px 16px 12px}.t24q-step-head h2{font-size:25px}.t24q-service{min-height:60px;padding-right:40px}.t24q-sparkle{right:14px;font-size:14px}.t24q-prev{padding-inline:14px}.t24q-submit{font-size:13px}}

/* v1.7.2 – kompakt laptopos elrendezés */
@media (min-width:901px){
  .t24q-shell{grid-template-columns:minmax(190px,245px) minmax(0,930px);gap:20px;max-width:1210px;margin:12px auto;padding:8px 14px}
  .t24q-intro{padding:18px 6px 12px;top:14px}
  .t24q-intro h1{margin:9px 0 9px;font-size:clamp(24px,2.2vw,32px);line-height:1.07}
  .t24q-intro p{font-size:13.5px;line-height:1.45;max-width:245px}
  .t24q-trust{gap:6px;margin-top:14px;font-size:12px}
  .t24q-trust b{width:17px;height:17px;margin-right:5px;font-size:10px}
  .t24q-card{border-radius:19px;box-shadow:0 10px 34px rgba(22,60,70,.09)}
  .t24q-topbar{padding:14px 22px 9px}
  .t24q-step{padding:18px 24px 18px}
  .t24q-step-head{margin-bottom:14px}
  .t24q-step-head h2{margin:4px 0 4px;font-size:clamp(21px,2.2vw,27px);line-height:1.12}
  .t24q-step-head p{font-size:13px;line-height:1.35}
  .t24q-service-grid{gap:7px 9px}
  .t24q-service{gap:9px;min-height:45px;padding:8px 34px 8px 10px;border-radius:11px}
  .t24q-service-icon{flex-basis:27px;height:27px;border-radius:8px;font-size:9px}
  .t24q-service strong{font-size:12.5px;line-height:1.18}
  .t24q-sparkle{right:12px;font-size:12px}
  .t24q-actions{margin-top:16px}
  .t24q-actions button,.t24q-success a{min-height:42px;padding:9px 18px;border-radius:11px;font-size:13px}
  .t24q-fields{gap:12px 14px}
  .t24q-fields label{gap:5px}
  .t24q-fields input,.t24q-fields select,.t24q-fields textarea{padding:10px 12px;border-radius:10px;font-size:14px}
  .t24q-fields input,.t24q-fields select{min-height:43px}
  .t24q-upload{padding:14px;border-radius:13px}
  .t24q-camera{width:38px;height:38px;border-radius:11px;font-size:19px}
  .t24q-consent{margin:14px 0 10px}
}


/* T24 Árlista gomb és felugró ablak */
.t24q-price-button {
    margin-top: 14px;
    min-height: 40px;
    padding: 9px 18px;
    border: 1px solid rgba(61, 111, 119, .28);
    border-radius: 12px;
    background: rgba(255, 255, 255, .76);
    color: #315f66;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}

.t24q-price-button:hover {
    transform: translateY(-1px);
    background: #fff;
    border-color: rgba(61, 111, 119, .5);
}

.t24q-price-modal[hidden] {
    display: none !important;
}

.t24q-price-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: grid;
    place-items: center;
    padding: 20px;
}

.t24q-price-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(18, 33, 38, .48);
    backdrop-filter: blur(4px);
}

.t24q-price-dialog {
    position: relative;
    z-index: 1;
    width: min(560px, 100%);
    max-height: min(78vh, 720px);
    overflow: hidden;
    border: 1px solid rgba(61, 111, 119, .18);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 26px 70px rgba(18, 33, 38, .22);
    display: flex;
    flex-direction: column;
}

.t24q-price-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(255,255,255,.94);
    color: #315f66;
    font-size: 25px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 5px 18px rgba(18, 33, 38, .12);
}

.t24q-price-header {
    padding: 24px 54px 18px 24px;
    border-bottom: 1px solid #e6eeee;
}

.t24q-price-header span {
    display: block;
    margin-bottom: 5px;
    color: #789095;
    font-size: 10px;
    letter-spacing: .16em;
}

.t24q-price-header h2 {
    margin: 0;
    color: #274b51;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2;
}

.t24q-price-header p {
    margin: 7px 0 0;
    color: #6d8185;
    font-size: 13px;
}

.t24q-price-list {
    overflow-y: auto;
    padding: 8px 20px;
    overscroll-behavior: contain;
}

.t24q-price-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 13px 2px;
    border-bottom: 1px solid #edf2f2;
}

.t24q-price-row:last-child {
    border-bottom: 0;
}

.t24q-price-row span {
    color: #35575d;
    font-size: 14px;
    line-height: 1.35;
}

.t24q-price-row strong {
    color: #274b51;
    font-size: 14px;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

.t24q-price-footer {
    padding: 14px 20px 17px;
    border-top: 1px solid #e6eeee;
    background: #f7faf9;
    color: #77898d;
    font-size: 11px;
    line-height: 1.45;
}

body.t24q-price-open {
    overflow: hidden;
}

@media (max-width: 768px) {
    .t24q-price-modal {
        padding: 12px;
    }

    .t24q-price-dialog {
        max-height: 84vh;
        border-radius: 17px;
    }

    .t24q-price-header {
        padding: 20px 48px 15px 18px;
    }

    .t24q-price-header h2 {
        font-size: 21px;
    }

    .t24q-price-list {
        padding: 6px 16px;
    }

    .t24q-price-row {
        gap: 12px;
        padding: 12px 0;
    }

    .t24q-price-row span,
    .t24q-price-row strong {
        font-size: 13px;
    }

    .t24q-price-footer {
        padding: 12px 16px 14px;
    }
}


/* Adatkezelési hozzájárulás helyben megjelenő figyelmeztetése */
.t24q-consent.has-error {
    border-color: #c62828;
}

.t24q-consent-alert {
    margin-top: 8px;
    padding: 10px 12px;
    border: 1px solid #efb0b0;
    border-radius: 10px;
    background: #fff5f5;
    color: #a71919;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}
