/* Server Line partnerpanel */
.utanrendelesi-oldal,
.utanrendelesi-oldal * { box-sizing: border-box; }

.utanrendelesi-oldal {
    padding: 64px 24px 80px;
    background: radial-gradient(circle at 8% 4%, rgba(120, 188, 48, .12), transparent 28%), linear-gradient(180deg, #f7faf5 0%, #fff 74%);
    color: #243022;
}

.utanrendelesi-panel {
    width: 100%;
    max-width: 1240px;
    margin: auto;
    padding: 56px 64px 60px;
    border: 1px solid #dce8d5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(43, 72, 30, .10);
}

.utanrendelesi-siker {
    margin: 0 0 28px;
    padding: 15px 18px;
    border: 1px solid #efb4b4;
    border-radius: 9px;
    background: #fff5f5;
    color: #c71920;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.35;
}

.utanrendelesi-fejlec { max-width: 860px; margin-bottom: 44px; }
.utanrendelesi-felirat {
    display: inline-block;
    margin-bottom: 13px;
    color: #649f28;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.utanrendelesi-fejlec h1 {
    margin: 0 0 18px;
    color: #1d291b;
    font-size: clamp(34px, 4.2vw, 58px);
    font-weight: 700;
    line-height: 1.04;
}
.utanrendelesi-fejlec p { color: #52604e; font-size: 20px; line-height: 1.55; }

.utanrendelesi-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.utanrendelesi-form legend,
.utanrendelesi-mezo > label {
    display: block;
    color: #263424;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;
}
.utanrendelesi-termekek > legend,
.utanrendelesi-adatok > legend { margin-bottom: 20px; }

.utanrendelesi-termekracs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px 18px;
}
.utanrendelesi-termek {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 58px;
    padding: 13px 18px;
    border: 1px solid #d6e2d0;
    border-radius: 10px;
    background: #fbfdfa;
    color: #364533;
    cursor: pointer;
    font-size: 18px;
    line-height: 1.25;
    transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}
.utanrendelesi-termek:hover { border-color: #8abd5b; background: #f5faef; transform: translateY(-1px); }
.utanrendelesi-termek input {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
}
.utanrendelesi-pipa {
    position: relative;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    margin-right: 13px;
    border: 2px solid #a9bea0;
    border-radius: 6px;
    background: #fff;
}
.utanrendelesi-termek input:checked + .utanrendelesi-pipa { border-color: #70b130; background: #70b130; }
.utanrendelesi-termek input:checked + .utanrendelesi-pipa::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 7px;
    width: 6px;
    height: 11px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.utanrendelesi-termek:has(input:checked) { border-color: #70b130; background: #f2f9ea; }
.utanrendelesi-termek input:focus-visible + .utanrendelesi-pipa { outline: 3px solid rgba(112, 177, 48, .28); outline-offset: 3px; }

.utanrendelesi-megjegyzes { margin-top: 34px; }
.utanrendelesi-mezo > label { margin-bottom: 9px; }
.utanrendelesi-mezo input,
.utanrendelesi-mezo textarea {
    display: block;
    width: 100%;
    border: 1px solid #cbd9c5;
    border-radius: 9px;
    background: #fbfcfa;
    color: #1f2b1d;
    font: inherit;
    font-size: 17px;
    line-height: 1.45;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.utanrendelesi-mezo input { min-height: 51px; padding: 11px 14px; }
.utanrendelesi-mezo textarea { min-height: 180px; padding: 14px; resize: vertical; }
.utanrendelesi-mezo input:focus,
.utanrendelesi-mezo textarea:focus {
    outline: none;
    border-color: #70b130;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(112, 177, 48, .14);
}
.utanrendelesi-mezo input[aria-invalid="true"] { border-color: #d64545; }

.utanrendelesi-adatok {
    margin-top: 38px !important;
    padding-top: 32px !important;
    border-top: 1px solid #e1e9dd !important;
}
.utanrendelesi-adatracs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.utanrendelesi-mezohiba { margin: 8px 0 0; color: #c71920; font-size: 15px; line-height: 1.35; }
.utanrendelesi-hibaosszegzes {
    margin: -16px 0 28px;
    padding: 14px 17px;
    border-left: 4px solid #c71920;
    background: #fff3f3;
    color: #a6151b;
}
.utanrendelesi-hibaosszegzes p + p { margin-top: 5px; }

.utanrendelesi-kuldes { display: flex; align-items: center; gap: 22px; margin-top: 36px; }
.utanrendelesi-kuldes button {
    flex: 0 0 auto;
    min-width: 176px;
    min-height: 52px;
    padding: 12px 30px;
    border: 0;
    border-radius: 8px;
    background: #70b130;
    box-shadow: 0 8px 20px rgba(86, 143, 35, .22);
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 18px;
    font-weight: 700;
    transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.utanrendelesi-kuldes button:hover { background: #5e9b26; box-shadow: 0 10px 24px rgba(86, 143, 35, .28); transform: translateY(-1px); }
.utanrendelesi-kuldes button:focus-visible { outline: 3px solid rgba(112, 177, 48, .35); outline-offset: 3px; }
.utanrendelesi-kuldes p { max-width: 590px; color: #71806d; font-size: 14px; line-height: 1.45; }

.utanrendelesi-robotcsapda {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

@media (max-width: 900px) {
    .utanrendelesi-oldal { padding: 42px 18px 60px; }
    .utanrendelesi-panel { padding: 42px 34px 46px; }
    .utanrendelesi-adatracs { grid-template-columns: 1fr; gap: 18px; }
}

@media (max-width: 620px) {
    .utanrendelesi-oldal { padding: 24px 12px 44px; }
    .utanrendelesi-panel { padding: 30px 20px 34px; border-radius: 12px; }
    .utanrendelesi-fejlec { margin-bottom: 32px; }
    .utanrendelesi-fejlec h1 { font-size: 35px; }
    .utanrendelesi-fejlec p { font-size: 18px; }
    .utanrendelesi-termekracs { grid-template-columns: 1fr; gap: 10px; }
    .utanrendelesi-kuldes { align-items: stretch; flex-direction: column; }
    .utanrendelesi-kuldes button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .utanrendelesi-oldal * { scroll-behavior: auto !important; transition: none !important; }
}
