.event-support-page {
    min-height: 100vh;
    padding: 72px 20px 100px;
    background: #f6f7f9;
    color: #111;
}

.event-support-shell {
    width: min(1380px, 100%);
    margin: 0 auto;
}

.event-support-head {
    max-width: 760px;
    margin-bottom: 38px;
}

.event-support-head .breadcrumbs {
    margin: 0 0 24px;
    color: #8a9099;
    font-size: 12px;
}

.event-support-eyebrow,
.event-support-card-head span,
.event-support-payment-method > span,
.event-download-info > div > span,
.event-download-expiry span {
    display: block;
    margin-bottom: 8px;
    color: #7b8490;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.event-support-head h1 {
    margin: 0 0 18px;
    font-size: clamp(42px, 7vw, 86px);
    font-weight: 300;
    line-height: .96;
    letter-spacing: -.05em;
}

.event-support-head p {
    margin: 0;
    color: #626a75;
    font-size: 16px;
    line-height: 1.75;
}

.event-support-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(360px, .65fr);
    gap: 26px;
    align-items: start;
}

.event-support-main,
.event-support-form {
    display: grid;
    gap: 26px;
}

.event-support-side {
    position: sticky;
    top: 110px;
}

.event-support-card,
.event-support-empty {
    border: 1px solid #e7e9ed;
    background: #fff;
    padding: 30px;
}

.event-support-card-head {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-start;
    margin-bottom: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid #edf0f2;
}

.event-support-card-head.simple {
    display: block;
}

.event-support-card-head h2,
.event-support-empty h2,
.event-download-info h2 {
    margin: 0;
    font-size: 25px;
    font-weight: 500;
    letter-spacing: -.025em;
}

.event-support-card-head > strong {
    font-size: 24px;
    font-weight: 650;
    white-space: nowrap;
}

.event-support-photo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.event-support-photo {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    position: relative;
    min-width: 0;
    border: 1px solid #eceef1;
    padding: 10px;
}

.event-support-photo img {
    width: 94px;
    height: 94px;
    object-fit: cover;
    background: #f0f1f3;
}

.event-support-photo > div {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.event-support-photo strong {
    font-size: 13px;
}

.event-support-photo span {
    overflow: hidden;
    color: #737b86;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-support-photo em {
    color: #111;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
}

.event-support-remove-form {
    grid-column: 1 / -1;
    margin: 0;
}

.event-support-remove-form button {
    border: 0;
    background: transparent;
    padding: 2px 0;
    color: #a33;
    font: inherit;
    font-size: 11px;
    cursor: pointer;
}

.event-support-copy {
    color: #636b76;
    line-height: 1.7;
}

.event-support-payment-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 22px;
}

.event-support-payment-method {
    min-width: 0;
    border: 1px solid #e8ebef;
    background: #f8f9fa;
    padding: 22px;
}

.event-support-payment-method h3 {
    margin: 0 0 8px;
    font-size: 18px;
}

.event-support-payment-method p {
    margin: 0;
    overflow-wrap: anywhere;
    color: #343a42;
    font-size: 14px;
    line-height: 1.6;
}

.event-support-field {
    display: grid;
    gap: 8px;
    margin-bottom: 16px;
}

.event-support-field > span {
    color: #6f7883;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.event-support-field input,
.event-support-field textarea {
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #dfe3e8;
    border-radius: 0;
    background: #fff;
    padding: 14px 15px;
    color: #111;
    font: inherit;
}

.event-support-field input:focus,
.event-support-field textarea:focus {
    border-color: #111;
    outline: 0;
}

.event-support-terms {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #e7e9ed;
    background: #fafafa;
    padding: 18px;
    color: #555e69;
    font-size: 13px;
    line-height: 1.7;
}

.event-support-terms p {
    margin-top: 0;
}

.event-support-terms ul {
    margin: 12px 0 0;
    padding-left: 20px;
}

.event-support-terms li + li {
    margin-top: 8px;
}

.event-support-check {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-top: 17px;
    color: #3f4650;
    font-size: 13px;
    line-height: 1.55;
    cursor: pointer;
}

.event-support-check input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: #111;
}

.event-support-summary {
    display: grid;
    gap: 6px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #e7e9ed;
}

.event-support-summary span {
    color: #747d88;
    font-size: 12px;
}

.event-support-summary strong {
    font-size: 18px;
}

.event-support-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    border: 1px solid #111;
    background: #111;
    padding: 0 22px;
    color: #fff;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .14em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
}

.event-support-primary:hover {
    background: #fff;
    color: #111;
}

.event-support-submit {
    width: 100%;
    margin-top: 20px;
}

.event-support-empty {
    max-width: 660px;
    text-align: center;
}

.event-support-empty p {
    margin: 12px 0 26px;
    color: #6b737e;
}

.event-download-shell {
    max-width: 1180px;
}

.event-download-info {
    display: flex;
    justify-content: space-between;
    gap: 30px;
    align-items: center;
    margin-bottom: 28px;
}

.event-download-info p {
    max-width: 700px;
    margin: 12px 0 0;
    color: #68717c;
    line-height: 1.7;
}

.event-download-expiry {
    flex: 0 0 auto;
    min-width: 180px;
    border-left: 1px solid #e7e9ed;
    padding-left: 28px;
}

.event-download-expiry strong {
    font-size: 18px;
}

.event-download-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.event-download-card {
    border: 1px solid #e5e8ec;
    background: #fff;
}

.event-download-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    background: #eef0f2;
}

.event-download-card > div {
    display: grid;
    gap: 10px;
    padding: 18px;
}

.event-download-card > div > span {
    color: #7b8490;
    font-size: 11px;
}

.event-download-card > div > strong {
    overflow: hidden;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1040px) {
    .event-support-layout {
        grid-template-columns: 1fr;
    }

    .event-support-side {
        position: static;
    }
}

@media (max-width: 760px) {
    .event-support-page {
        padding: 44px 14px 76px;
    }

    .event-support-card,
    .event-support-empty {
        padding: 20px;
    }

    .event-support-photo-grid,
    .event-support-payment-grid,
    .event-download-grid {
        grid-template-columns: 1fr;
    }

    .event-support-photo {
        grid-template-columns: 84px minmax(0, 1fr);
    }

    .event-support-photo img {
        width: 84px;
        height: 84px;
    }

    .event-support-card-head,
    .event-download-info {
        align-items: flex-start;
        flex-direction: column;
    }

    .event-support-card-head > strong {
        font-size: 20px;
    }

    .event-download-expiry {
        width: 100%;
        box-sizing: border-box;
        border-top: 1px solid #e7e9ed;
        border-left: 0;
        padding-top: 20px;
        padding-left: 0;
    }

    .event-support-primary {
        min-height: 54px;
    }
}

/* ===== Támogatási emlékeztető és letöltési korlát ===== */
.event-download-limit-note {
    margin-top: 16px !important;
    border-left: 3px solid #c58b2a;
    background: #fff8ea;
    padding: 12px 14px;
    color: #6e5425 !important;
    font-size: 13px;
}

.event-download-limit-note.supported {
    border-left-color: #16845b;
    background: #eefaf5;
    color: #116447 !important;
}

.event-download-card small {
    display: block;
    margin: 7px 0 11px;
    color: #7b8490;
    font-size: 11px;
    line-height: 1.45;
}

.event-support-reminder[hidden] {
    display: none !important;
}

.event-support-reminder {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    place-items: center;
    padding: 18px;
}

.event-support-reminder-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 14, 20, .72);
    backdrop-filter: blur(4px);
}

.event-support-reminder-dialog {
    position: relative;
    z-index: 1;
    width: min(620px, 100%);
    max-height: calc(100dvh - 36px);
    overflow-y: auto;
    border: 1px solid #e5e7eb;
    background: #fff;
    padding: clamp(24px, 5vw, 42px);
    box-shadow: 0 30px 90px rgba(0, 0, 0, .28);
}

.event-support-reminder-dialog h2 {
    margin: 0 0 14px;
    font-size: clamp(28px, 6vw, 44px);
    font-weight: 450;
    line-height: 1.04;
    letter-spacing: -.035em;
}

.event-support-reminder-dialog > p {
    color: #5f6873;
    line-height: 1.7;
}

.event-support-reminder-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 42px;
    height: 42px;
    border: 0;
    background: transparent;
    color: #111;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
}

.event-support-reminder-methods {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 24px 0;
}

.event-support-reminder-methods > div {
    min-width: 0;
    border: 1px solid #e7e9ed;
    background: #f8f9fa;
    padding: 18px;
}

.event-support-reminder-methods span {
    display: block;
    margin-bottom: 7px;
    color: #7b8490;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .18em;
}

.event-support-reminder-methods strong {
    display: block;
    margin-bottom: 6px;
}

.event-support-reminder-methods p {
    margin: 0;
    overflow-wrap: anywhere;
    color: #434b55;
    font-size: 13px;
    line-height: 1.5;
}

.event-support-reminder-code {
    margin: 0 0 22px;
    border-top: 1px solid #e7e9ed;
    padding-top: 18px;
}

.event-support-reminder-open {
    overflow: hidden;
}

@media (max-width: 620px) {
    .event-support-reminder {
        align-items: end;
        padding: 0;
    }

    .event-support-reminder-dialog {
        width: 100%;
        max-height: 90dvh;
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        padding: 28px 20px 22px;
    }

    .event-support-reminder-methods {
        grid-template-columns: 1fr;
    }
}


/* ===== v1.4.2 — rendelési adatlap ===== */
.checkout-v2{background:#f3f4f6;padding-top:54px}
.checkout-header{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:34px;padding-bottom:30px;border-bottom:1px solid #dfe3e8}
.checkout-header>div:first-child{max-width:760px}
.checkout-header .breadcrumbs{margin:0 0 20px;color:#7c8591;font-size:12px}
.checkout-header h1{margin:0 0 15px;font-size:clamp(42px,5vw,70px);font-weight:300;line-height:.98;letter-spacing:-.045em}
.checkout-header p{margin:0;color:#626b76;font-size:15px;line-height:1.7}
.checkout-header-total{flex:0 0 auto;text-align:right}
.checkout-header-total small{display:block;margin-bottom:6px;color:#7b8490;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.checkout-header-total strong{font-size:30px;font-weight:500;letter-spacing:-.03em}

.checkout-v2-form{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:28px;align-items:start}
.checkout-v2-main{display:grid;gap:18px}
.checkout-section{display:grid;grid-template-columns:54px minmax(0,1fr);border:1px solid #e2e5e9;background:#fff}
.checkout-section-number{display:flex;justify-content:center;padding-top:28px;border-right:1px solid #eceef1;color:#a1a8b2;font-size:11px;font-weight:600;letter-spacing:.16em}
.checkout-section-body{padding:28px 30px 32px}
.checkout-section-head{margin-bottom:24px}
.checkout-section-head>span{display:block;margin-bottom:7px;color:#8b94a0;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.checkout-section-head h2{margin:0 0 8px;font-size:24px;font-weight:500;letter-spacing:-.025em}
.checkout-section-head p{max-width:720px;margin:0;color:#6d7681;font-size:13px;line-height:1.65}

.checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.checkout-field{display:grid;gap:7px;margin:0}
.checkout-field.full{grid-column:1/-1}
.checkout-field>span{color:#6e7782;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.checkout-field input,.checkout-field textarea{width:100%;box-sizing:border-box;border:1px solid #dce1e7;border-radius:0;background:#fff;padding:13px 14px;color:#111;font:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}
.checkout-field input:focus,.checkout-field textarea:focus{border-color:#111;outline:0;box-shadow:0 0 0 1px #111}
.checkout-field textarea{resize:vertical;min-height:94px}

.payment-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.payment-choice{position:relative;display:flex;gap:12px;align-items:center;border:1px solid #dfe3e8;background:#fff;padding:16px 17px;cursor:pointer;transition:.15s}
.payment-choice:hover{border-color:#aeb5bf}
.payment-choice.active{border-color:#111;background:#fafafa}
.payment-choice input{position:absolute;opacity:0;pointer-events:none}
.payment-choice-mark{width:18px;height:18px;flex:0 0 auto;border:1px solid #aeb5bf;border-radius:50%;background:#fff;position:relative}
.payment-choice.active .payment-choice-mark{border-color:#111}
.payment-choice.active .payment-choice-mark:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#111}
.payment-choice-copy{display:grid;gap:3px}
.payment-choice-copy strong{font-size:14px;font-weight:500}
.payment-choice-copy small{color:#78818d;font-size:11px;line-height:1.4}

.payment-detail{border:1px solid #dfe3e8;background:#f8f9fa;padding:22px}
.payment-detail[hidden]{display:none!important}
.payment-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid #e1e5e9}
.payment-detail-head span{color:#7b8490;font-size:10px;font-weight:600;letter-spacing:.16em}
.payment-detail-head strong{font-size:20px;font-weight:500}
.payment-detail dl{display:grid;gap:0;margin:0}
.payment-detail dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:10px 0;border-bottom:1px solid #e8eaed}
.payment-detail dt{color:#7a838f;font-size:12px}
.payment-detail dd{margin:0;color:#111;font-size:13px;font-weight:500;overflow-wrap:anywhere}
.payment-action{display:inline-flex;margin-top:18px;border:1px solid #111;background:#111;padding:12px 17px;color:#fff!important;font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.payment-note{margin:16px 0 0;color:#68717d;font-size:12px;line-height:1.6}

.checkout-contract{max-height:360px;overflow:auto;border:1px solid #e0e4e8;background:#fafafa;padding:22px;color:#4f5864;font-size:13px;line-height:1.75;white-space:normal}
.checkout-contract-accept{display:flex;gap:13px;align-items:flex-start;margin-top:17px;border:1px solid #dfe3e8;background:#fff;padding:16px;cursor:pointer}
.checkout-contract-accept input{width:19px;height:19px;margin:1px 0 0;accent-color:#111;flex:0 0 auto}
.checkout-contract-accept span{display:grid;gap:3px}
.checkout-contract-accept strong{font-size:13px;font-weight:600}
.checkout-contract-accept small{color:#777f89;font-size:11px}

.checkout-v2-summary{position:sticky;top:108px}
.checkout-summary-card{border:1px solid #dfe3e8;background:#fff;padding:26px}
.summary-kicker{display:block;margin-bottom:7px;color:#7d8691;font-size:10px;font-weight:600;letter-spacing:.18em}
.checkout-summary-card h2{margin:0 0 22px;font-size:22px;font-weight:500;letter-spacing:-.02em}
.summary-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid #eceef1;color:#626b75;font-size:13px}
.summary-row strong{color:#111;font-weight:500}
.summary-row.total{margin-top:4px;padding:16px 0;color:#111}
.summary-row.total strong{font-size:21px}
.summary-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:15px 0}
.summary-thumbs img,.summary-thumbs span{width:100%;aspect-ratio:1/1;object-fit:cover;background:#eef0f2}
.summary-thumbs span{display:grid;place-items:center;color:#606975;font-size:12px}
.summary-edit{display:block;margin:14px 0 0;color:#5f6873!important;font-size:11px;text-decoration:underline!important}
.checkout-submit{width:100%;min-height:52px;margin-top:22px;border:1px solid #111;background:#111;color:#fff;font:inherit;font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;cursor:pointer}
.checkout-submit:hover{background:#fff;color:#111}
.summary-fine{margin:13px 0 0;color:#8a929c;font-size:10px;line-height:1.55}

@media(max-width:980px){
  .checkout-v2-form{grid-template-columns:1fr}
  .checkout-v2-summary{position:static}
}
@media(max-width:680px){
  .checkout-v2{padding-top:34px}
  .checkout-header{align-items:flex-start;flex-direction:column}
  .checkout-header-total{text-align:left}
  .checkout-section{grid-template-columns:38px minmax(0,1fr)}
  .checkout-section-number{padding-top:22px}
  .checkout-section-body{padding:22px 18px 24px}
  .checkout-fields,.payment-choice-grid{grid-template-columns:1fr}
  .checkout-field.full{grid-column:auto}
  .payment-detail dl>div{grid-template-columns:1fr;gap:4px}
}


/* v1.4.5 — lineáris rendelési folyamat */
.checkout-flow-page{background:#f5f6f7;padding-top:48px}
.checkout-flow-head{max-width:820px;margin-bottom:34px}
.checkout-flow-head h1{margin:0 0 16px;font-size:clamp(44px,5vw,72px);font-weight:300;line-height:.96;letter-spacing:-.045em}
.checkout-flow-head p{margin:0;color:#66707b;font-size:15px;line-height:1.7}
.checkout-flow-form{display:grid;gap:18px}
.checkout-flow-section{border:1px solid #e0e4e8;background:#fff;padding:28px}
.flow-label{display:flex;gap:16px;align-items:flex-start;margin-bottom:24px;padding-bottom:19px;border-bottom:1px solid #eceff2}
.flow-label>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d9dee4;color:#89919c;font-size:10px;font-weight:600;letter-spacing:.08em}
.flow-label>div{display:grid;gap:3px}
.flow-label strong{font-size:20px;font-weight:500;letter-spacing:-.02em}
.flow-label small{color:#7c8590;font-size:12px}

.checkout-selected-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.checkout-selected-card{position:relative;border:1px solid #e3e6ea;background:#fff}
.checkout-selected-card img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eef0f2}
.checkout-selected-card>div{display:grid;gap:4px;padding:10px 10px 4px}
.checkout-selected-card strong{overflow:hidden;font-size:11px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.checkout-selected-card small{color:#8a929c;font-size:9px}
.checkout-remove{border:0;background:transparent;padding:6px 10px 10px;color:#b3515d;font:inherit;font-size:10px;cursor:pointer}

.checkout-fields.wide{max-width:980px}
.checkout-contract.large{max-height:500px;min-height:220px}
.payment-choice-grid.wide{max-width:760px}
.checkout-flow-section .payment-detail{max-width:760px;margin-top:16px}

.checkout-flow-submit{display:flex;justify-content:space-between;gap:28px;align-items:center;border:1px solid #d9dde2;background:#fff;padding:24px 28px}
.checkout-flow-submit>div{display:grid;gap:3px}
.checkout-flow-submit span{color:#808994;font-size:9px;font-weight:600;letter-spacing:.16em}
.checkout-flow-submit strong{font-size:28px;font-weight:500;letter-spacing:-.03em}
.checkout-flow-submit small{color:#7f8893;font-size:11px}
.checkout-flow-submit button{min-width:280px;min-height:54px;border:1px solid #111;background:#111;color:#fff;font:inherit;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.checkout-flow-submit button:hover{background:#fff;color:#111}

@media(max-width:1100px){.checkout-selected-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){
 .checkout-flow-page{padding-top:30px}
 .checkout-flow-section{padding:20px}
 .checkout-selected-grid{grid-template-columns:repeat(2,1fr)}
 .checkout-flow-submit{align-items:stretch;flex-direction:column}
 .checkout-flow-submit button{width:100%;min-width:0}
}


/* v1.4.6 — 1.4.5 checkout kinézet + jobb oldali folyamatsegéd */
.checkout-flow-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:22px;
    align-items:start;
}
.checkout-flow-main{
    display:grid;
    gap:18px;
    min-width:0;
}
.checkout-process-side{
    position:sticky;
    top:108px;
}
.checkout-process-card{
    border:1px solid #dfe3e8;
    background:#fff;
    padding:26px;
}
.checkout-process-kicker{
    display:block;
    margin-bottom:10px;
    color:#808994;
    font-size:9px;
    font-weight:600;
    letter-spacing:.17em;
    text-transform:uppercase;
}
.checkout-process-card h2{
    margin:0 0 18px;
    font-size:22px;
    font-weight:500;
    line-height:1.18;
    letter-spacing:-.025em;
}
.support-optional-badge{
    margin:0 0 18px;
    border-left:3px solid #b88935;
    background:#fff8e8;
    padding:11px 13px;
    color:#6b5428;
    font-size:12px;
    font-weight:600;
}
.checkout-process-text{
    color:#59636e;
    font-size:12px;
    line-height:1.75;
}
.checkout-process-summary{
    display:grid;
    gap:0;
    margin-top:22px;
    border-top:1px solid #e7eaee;
}
.checkout-process-summary>div{
    display:flex;
    justify-content:space-between;
    gap:18px;
    padding:12px 0;
    border-bottom:1px solid #edf0f2;
}
.checkout-process-summary span{
    color:#7d8691;
    font-size:11px;
}
.checkout-process-summary strong{
    font-size:13px;
    font-weight:600;
}
@media(max-width:1050px){
    .checkout-flow-layout{grid-template-columns:1fr}
    .checkout-process-side{position:static;order:-1}
}


/* v1.4.7 — Facebook follow CTA */
.checkout-facebook-cta{
    margin-top:22px;
    border-top:1px solid #e7eaee;
    padding-top:20px;
}
.checkout-facebook-cta>span,
.success-facebook-cta>span{
    display:block;
    margin-bottom:7px;
    color:#7e8792;
    font-size:9px;
    font-weight:600;
    letter-spacing:.17em;
}
.checkout-facebook-cta>strong{
    display:block;
    margin-bottom:8px;
    font-size:16px;
    font-weight:500;
}
.checkout-facebook-cta p,
.success-facebook-cta p{
    margin:0 0 14px;
    color:#626c77;
    font-size:12px;
    line-height:1.65;
}
.checkout-facebook-cta a,
.success-facebook-cta a{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    border:1px solid #111;
    background:#fff;
    padding:0 14px;
    color:#111!important;
    font-size:9px;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
    text-decoration:none!important;
}
.checkout-facebook-cta a:hover,
.success-facebook-cta a:hover{
    background:#111;
    color:#fff!important;
}
.success-facebook-cta{
    margin-top:28px;
    border:1px solid #e1e5e9;
    background:#fff;
    padding:24px;
}
.success-facebook-cta h2{
    margin:0 0 10px;
    font-size:22px;
    font-weight:500;
    letter-spacing:-.02em;
}


/* v1.4.21 — support confirmation + fixed download page */
.order-success-v3{padding-top:54px}
.order-success-head{max-width:900px}
.order-success-photos{margin-bottom:20px}
.order-success-photo-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
}
.order-success-photo{
    min-width:0;
    border:1px solid #e6e9ed;
    background:#fff;
}
.order-success-photo img{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    background:#eef0f2;
}
.order-success-photo>div{
    display:grid;
    gap:3px;
    padding:9px 10px;
}
.order-success-photo strong{
    overflow:hidden;
    font-size:11px;
    font-weight:500;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.order-success-photo small{color:#8a929c;font-size:9px}

.order-support-offer{margin-bottom:20px}
.order-support-intro{max-width:820px;margin-bottom:24px}
.order-support-intro>span{
    display:block;
    margin-bottom:8px;
    color:#8a6b2c;
    font-size:10px;
    font-weight:700;
    letter-spacing:.18em;
}
.order-support-intro h2{
    margin:0 0 10px;
    font-size:28px;
    font-weight:500;
    letter-spacing:-.025em;
}
.order-support-intro p{
    margin:0;
    color:#616b76;
    font-size:14px;
    line-height:1.7;
}
.order-support-methods{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
.order-support-methods article{
    border:1px solid #e4e7eb;
    background:#fafafa;
    padding:20px;
}
.order-support-methods article>span{
    display:block;
    margin-bottom:8px;
    color:#818a95;
    font-size:9px;
    font-weight:700;
    letter-spacing:.16em;
}
.order-support-methods h3{margin:0 0 8px;font-size:17px;font-weight:500}
.order-support-methods p{margin:4px 0;color:#4f5964;font-size:13px}
.order-support-methods small{display:block;margin-top:10px;color:#7e8792;font-size:11px;line-height:1.55}
.order-support-methods a{display:inline-block;margin-top:13px;color:#111;font-size:11px}

.order-support-download{
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:center;
    margin-top:22px;
    border-top:1px solid #e7eaee;
    padding-top:20px;
}
.order-support-download>div{display:grid;gap:3px}
.order-support-download span{
    color:#838c97;
    font-size:9px;
    font-weight:700;
    letter-spacing:.16em;
}
.order-support-download strong{font-size:15px;font-weight:500}
.order-support-download small{color:#7d8690;font-size:11px}
.order-success-facebook{margin-top:20px}

.event-download-support-note{
    margin-bottom:18px;
}
.event-download-support-note>div>span{
    display:block;
    margin-bottom:7px;
    color:#8a6b2c;
    font-size:9px;
    font-weight:700;
    letter-spacing:.16em;
}
.event-download-support-note h2{margin:0 0 8px;font-size:22px;font-weight:500}
.event-download-support-note p{margin:0;color:#66707a;font-size:13px;line-height:1.65}
.download-facebook-cta{margin-top:24px}

@media(max-width:1000px){
    .order-success-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
    .order-success-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .order-support-methods{grid-template-columns:1fr}
    .order-support-download{align-items:stretch;flex-direction:column}
    .order-support-download .event-support-primary{width:100%;box-sizing:border-box}
}


/* v1.4.22 — clean order confirmation */
.order-confirm-page{
    min-height:100vh;
    background:#f5f6f7;
    padding:54px 22px 90px;
    color:#111;
}
.order-confirm-shell{
    width:min(1280px,100%);
    margin:0 auto;
}
.order-confirm-hero{
    max-width:860px;
    padding:18px 0 42px;
}
.order-confirm-kicker,
.order-confirm-section-head span,
.order-confirm-support-copy>span,
.order-confirm-support-methods span,
.order-confirm-payment>span,
.order-confirm-facebook span,
.order-confirm-final span{
    display:block;
    margin-bottom:8px;
    color:#858e98;
    font-size:9px;
    font-weight:600;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.order-confirm-hero h1{
    margin:0 0 18px;
    font-size:clamp(54px,6vw,92px);
    font-weight:300;
    line-height:.94;
    letter-spacing:-.055em;
}
.order-confirm-hero p{
    margin:0;
    color:#626b75;
    font-size:14px;
    line-height:1.7;
}
.order-confirm-section{
    border-top:1px solid #dfe3e7;
    padding:28px 0 34px;
}
.order-confirm-section-head{
    display:flex;
    justify-content:space-between;
    gap:28px;
    align-items:end;
    margin-bottom:18px;
}
.order-confirm-section-head h2{
    margin:0;
    font-size:27px;
    font-weight:400;
    letter-spacing:-.03em;
}
.order-confirm-section-head>strong{
    font-size:15px;
    font-weight:500;
}
.order-confirm-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
}
.order-confirm-photo{
    min-width:0;
    background:#fff;
    border:1px solid #e1e5e9;
}
.order-confirm-photo img{
    display:block;
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
}
.order-confirm-photo>div{
    display:grid;
    gap:3px;
    padding:9px 10px;
}
.order-confirm-photo strong{
    overflow:hidden;
    font-size:11px;
    font-weight:500;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.order-confirm-photo small{
    color:#9198a1;
    font-size:9px;
}
.order-confirm-support,
.order-confirm-payment,
.order-confirm-facebook,
.order-confirm-final{
    margin-top:18px;
    border:1px solid #dfe3e7;
    background:#fff;
    padding:28px;
}
.order-confirm-support{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);
    gap:38px;
    align-items:start;
}
.order-confirm-support-copy{
    max-width:650px;
}
.order-confirm-support-copy>span{
    color:#8e6f2f;
}
.order-confirm-support-copy h2,
.order-confirm-payment h2,
.order-confirm-facebook h2,
.order-confirm-final h2{
    margin:0 0 11px;
    font-size:28px;
    font-weight:400;
    letter-spacing:-.03em;
}
.order-confirm-support-copy p,
.order-confirm-payment p,
.order-confirm-facebook p,
.order-confirm-final p{
    margin:0;
    color:#626c76;
    font-size:13px;
    line-height:1.7;
}
.order-confirm-support-methods{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.order-confirm-support-methods article{
    border:1px solid #e5e8eb;
    background:#fafafa;
    padding:18px;
}
.order-confirm-support-methods strong{
    display:block;
    margin-bottom:6px;
    font-size:14px;
    font-weight:500;
}
.order-confirm-support-methods p{
    margin:0;
    overflow-wrap:anywhere;
    color:#5d6670;
    font-size:11px;
    line-height:1.55;
}
.order-confirm-support-methods a,
.order-confirm-payment a{
    display:inline-block;
    margin-top:12px;
    color:#111;
    font-size:10px;
}
.order-confirm-facebook,
.order-confirm-final{
    display:flex;
    justify-content:space-between;
    gap:34px;
    align-items:center;
}
.order-confirm-facebook>div,
.order-confirm-final>div{
    max-width:720px;
}
.order-confirm-facebook>a{
    flex:0 0 auto;
    border-bottom:1px solid #111;
    padding-bottom:4px;
    color:#111;
    font-size:10px;
    font-weight:500;
    letter-spacing:.12em;
    text-decoration:none;
    text-transform:uppercase;
}
.order-confirm-final{
    margin-top:22px;
    border-color:#111;
}
.order-confirm-primary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:250px;
    min-height:52px;
    background:#111;
    border:1px solid #111;
    padding:0 22px;
    color:#fff!important;
    font-size:10px;
    font-weight:600;
    letter-spacing:.15em;
    text-decoration:none!important;
    text-transform:uppercase;
}
.order-confirm-primary:hover{
    background:#fff;
    color:#111!important;
}
@media(max-width:1000px){
    .order-confirm-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
    .order-confirm-support{grid-template-columns:1fr}
}
@media(max-width:760px){
    .order-confirm-page{padding:34px 14px 70px}
    .order-confirm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .order-confirm-section-head{align-items:flex-start;flex-direction:column}
    .order-confirm-support-methods{grid-template-columns:1fr}
    .order-confirm-facebook,.order-confirm-final{align-items:stretch;flex-direction:column}
    .order-confirm-primary{width:100%;box-sizing:border-box}
}


/* v1.4.23 — order confirmation hardening */
.order-confirm-page,
.order-confirm-page *,
.order-confirm-shell,
.order-confirm-shell *{
    box-sizing:border-box;
}
.order-confirm-page{
    display:block;
    width:100%;
}
.order-confirm-shell{
    display:block;
}
.order-confirm-grid img{
    max-width:100%;
}


/* v1.4.24 — order lookup + spam warning */
.order-spam-warning{
    display:flex;
    gap:14px;
    align-items:center;
    margin:0 0 24px;
    border:2px solid #c90018;
    background:#fff3f4;
    padding:15px 18px;
    color:#a40014;
}
.order-spam-warning strong{
    flex:0 0 auto;
    font-size:13px;
    font-weight:800;
    letter-spacing:.08em;
}
.order-spam-warning span{
    font-size:13px;
    font-weight:600;
    line-height:1.5;
}
.order-confirm-later-download{
    display:flex;
    justify-content:space-between;
    gap:28px;
    align-items:center;
    margin-top:18px;
    border:1px solid #dfe3e7;
    background:#fff;
    padding:26px 28px;
}
.order-confirm-later-download>div{max-width:760px}
.order-confirm-later-download span{
    display:block;
    margin-bottom:8px;
    color:#858e98;
    font-size:9px;
    font-weight:600;
    letter-spacing:.18em;
}
.order-confirm-later-download h2{
    margin:0 0 9px;
    font-size:23px;
    font-weight:400;
    letter-spacing:-.025em;
}
.order-confirm-later-download p{
    margin:0;
    color:#626b75;
    font-size:12px;
    line-height:1.65;
}
.order-confirm-later-download>a{
    flex:0 0 auto;
    border:1px solid #111;
    background:#111;
    padding:12px 17px;
    color:#fff!important;
    font-size:9px;
    font-weight:600;
    letter-spacing:.12em;
    text-decoration:none!important;
    text-transform:uppercase;
}

.order-lookup-page{
    min-height:100vh;
    background:#f5f6f7;
    padding:70px 20px 100px;
}
.order-lookup-shell{
    width:min(920px,100%);
    margin:0 auto;
}
.order-lookup-head{
    max-width:800px;
    margin-bottom:28px;
}
.order-lookup-head>span{
    display:block;
    margin-bottom:10px;
    color:#858e98;
    font-size:9px;
    font-weight:600;
    letter-spacing:.18em;
}
.order-lookup-head h1{
    margin:0 0 16px;
    font-size:clamp(46px,6vw,76px);
    font-weight:300;
    line-height:.96;
    letter-spacing:-.05em;
}
.order-lookup-head p{
    margin:0;
    color:#626b75;
    font-size:14px;
    line-height:1.7;
}
.order-lookup-card,
.order-lookup-help{
    border:1px solid #dfe3e7;
    background:#fff;
    padding:28px;
}
.order-lookup-form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:end;
}
.order-lookup-form label{
    display:grid;
    gap:7px;
}
.order-lookup-form label>span{
    color:#7f8892;
    font-size:9px;
    font-weight:600;
    letter-spacing:.14em;
}
.order-lookup-form input{
    width:100%;
    min-height:48px;
    box-sizing:border-box;
    border:1px solid #d9dee4;
    border-radius:0;
    background:#fff;
    padding:0 14px;
    font:inherit;
    font-size:14px;
    text-transform:uppercase;
}
.order-lookup-form button{
    min-height:48px;
    border:1px solid #111;
    background:#111;
    padding:0 20px;
    color:#fff;
    font:inherit;
    font-size:9px;
    font-weight:600;
    letter-spacing:.13em;
    text-transform:uppercase;
    cursor:pointer;
}
.order-lookup-result{
    margin-top:18px;
    border-left:3px solid #c90018;
    background:#fff4f4;
    padding:14px 16px;
}
.order-lookup-result.pending{
    border-left-color:#b8842d;
    background:#fff9ec;
}
.order-lookup-result strong{font-size:12px}
.order-lookup-result p{
    margin:5px 0 0;
    color:#5d6670;
    font-size:12px;
    line-height:1.6;
}
.order-lookup-meta{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin-top:10px;
}
.order-lookup-meta span{
    background:#fff;
    border:1px solid #e4e7eb;
    padding:5px 7px;
    color:#6e7780;
    font-size:10px;
}
.order-lookup-help{
    margin-top:16px;
}
.order-lookup-help h2{
    margin:0 0 8px;
    font-size:18px;
    font-weight:500;
}
.order-lookup-help p{
    margin:0;
    color:#626b75;
    font-size:12px;
    line-height:1.65;
}
@media(max-width:700px){
    .order-spam-warning{align-items:flex-start;flex-direction:column}
    .order-confirm-later-download{align-items:stretch;flex-direction:column}
    .order-confirm-later-download>a{text-align:center}
    .order-lookup-form{grid-template-columns:1fr}
}


/* v1.4.25 — simplified order confirmation */
.order-simple-page{min-height:100vh;background:#f5f6f7;padding:52px 20px 90px}
.order-simple-shell{width:min(1160px,100%);margin:0 auto}
.order-simple-head{max-width:760px;margin-bottom:24px}
.order-simple-head>span,.order-simple-card-head span,.order-simple-payment-copy>span,.order-simple-methods span,.order-simple-action span{display:block;margin-bottom:7px;color:#858e98;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.order-simple-head h1{margin:0 0 12px;font-size:clamp(46px,5vw,72px);font-weight:300;line-height:.96;letter-spacing:-.05em}
.order-simple-head p{margin:0;color:#626b75;font-size:14px}
.order-simple-spam{display:flex;gap:12px;align-items:center;margin-bottom:18px;border:2px solid #c90018;background:#fff3f4;padding:13px 16px;color:#a40014}
.order-simple-spam strong{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.08em}
.order-simple-spam span{font-size:12px;font-weight:600}
.order-simple-card{margin-bottom:16px;border:1px solid #dde2e7;background:#fff;padding:22px}
.order-simple-card-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px}
.order-simple-card-head h2{margin:0;font-size:23px;font-weight:400}
.order-simple-card-head>strong{font-size:17px;font-weight:500}
.order-simple-photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.order-simple-photo-grid article{min-width:0;border:1px solid #e5e8eb}
.order-simple-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.order-simple-photo-grid article>div{display:grid;gap:2px;padding:8px 9px}
.order-simple-photo-grid article strong{overflow:hidden;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.order-simple-photo-grid article small{color:#9299a2;font-size:9px}
.order-simple-payment{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);gap:28px;align-items:start}
.order-simple-payment-copy h2{margin:0 0 9px;font-size:24px;font-weight:400;letter-spacing:-.025em}
.order-simple-payment-copy p{margin:0;color:#626b75;font-size:12px;line-height:1.65}
.order-simple-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.order-simple-methods.one{grid-template-columns:1fr}
.order-simple-methods>div{border:1px solid #e5e8eb;background:#fafafa;padding:15px}
.order-simple-methods strong{display:block;margin-bottom:4px;font-size:12px;font-weight:500}
.order-simple-methods small{display:block;overflow-wrap:anywhere;color:#737c86;font-size:10px}
.order-simple-methods a{display:inline-block;margin-top:9px;color:#111;font-size:9px}
.order-simple-action{display:flex;justify-content:space-between;gap:28px;align-items:center;border:1px solid #111;background:#fff;padding:20px 22px}
.order-simple-action>div{display:grid;gap:3px}
.order-simple-action strong{font-size:15px;font-weight:500}
.order-simple-action small{max-width:680px;color:#777f89;font-size:10px;line-height:1.5}
.order-simple-action>a{flex:0 0 auto;min-width:220px;background:#111;border:1px solid #111;padding:13px 16px;color:#fff!important;font-size:9px;font-weight:600;letter-spacing:.12em;text-align:center;text-decoration:none!important;text-transform:uppercase}
.order-simple-facebook{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:14px;border-top:1px solid #dde2e7;padding:16px 2px 0}
.order-simple-facebook>div{display:grid;gap:3px}
.order-simple-facebook strong{font-size:12px;font-weight:500}
.order-simple-facebook span{color:#818a94;font-size:10px}
.order-simple-facebook>a{flex:0 0 auto;color:#111;font-size:9px;font-weight:600;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}
@media(max-width:900px){.order-simple-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.order-simple-payment{grid-template-columns:1fr}}
@media(max-width:650px){.order-simple-page{padding:34px 14px 70px}.order-simple-spam{align-items:flex-start;flex-direction:column}.order-simple-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.order-simple-card-head{align-items:flex-start;flex-direction:column}.order-simple-methods{grid-template-columns:1fr}.order-simple-action{align-items:stretch;flex-direction:column}.order-simple-action>a{width:100%;box-sizing:border-box}.order-simple-facebook{align-items:flex-start;flex-direction:column}}
