.publisher-cta { color: var(--public-ink); overflow: hidden; }
.publisher-cta .pct-wrap { margin-inline: auto; max-width: 1220px; padding-inline: 28px; }

.publisher-cta .pct-hero-shell { border-bottom: 1px solid var(--public-ink); position: relative; }
.publisher-cta .pct-hero-shell::after {
    background-image: radial-gradient(rgba(20,22,26,.25) .6px, transparent .6px);
    background-size: 5px 5px;
    bottom: 0;
    content: "";
    opacity: .3;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: max(22px, calc((100vw - 1220px) / 2));
}
.publisher-cta .pct-hero { display: grid; gap: clamp(54px, 7vw, 102px); grid-template-columns: minmax(0, 1.2fr) minmax(340px, .72fr); padding-block: 54px 50px; }
.publisher-cta .pct-hero-copy { min-width: 0; }
.publisher-cta .pct-eyebrow { align-items: center; display: flex; font-family: var(--font-mono); font-size: 10px; gap: 10px; letter-spacing: .055em; text-transform: uppercase; }
.publisher-cta .pct-eyebrow::before { background: var(--public-signal); border: 1px solid var(--public-ink); content: ""; flex: 0 0 8px; height: 8px; width: 8px; }
.publisher-cta .pct-hero h1 { font-family: var(--font-display); font-size: clamp(68px, 7.1vw, 98px); font-weight: 600; letter-spacing: -.045em; line-height: .82; margin: 31px 0 26px; max-width: 720px; }
.publisher-cta .pct-hero-lede { border-top: 1px solid var(--public-ink); color: var(--public-ink-2); font-size: 15px; line-height: 1.62; margin: 0; max-width: 650px; padding-top: 17px; }
.publisher-cta .pct-hero-lede strong { color: var(--public-ink); font-weight: 600; }
.publisher-cta .pct-proof-line { display: grid; grid-template-columns: repeat(3, auto); justify-content: start; margin-top: 27px; }
.publisher-cta .pct-proof-line span { align-items: center; display: flex; font-family: var(--font-mono); font-size: 9.5px; gap: 7px; padding-right: 18px; text-transform: uppercase; }
.publisher-cta .pct-proof-line span + span { border-left: 1px solid var(--public-line); padding-left: 18px; }
.publisher-cta .pct-proof-line i { background: var(--public-signal); border: 1px solid var(--public-ink); border-radius: 50%; height: 11px; width: 11px; }

.publisher-cta .pct-signup { align-self: center; background: rgba(255,255,255,.76); border: 1px solid var(--public-ink); position: relative; z-index: 1; }
.publisher-cta .pct-signup-head, .publisher-cta .pct-signup-foot { align-items: center; display: flex; font-family: var(--font-mono); font-size: 9px; justify-content: space-between; padding: 11px 14px; text-transform: uppercase; }
.publisher-cta .pct-signup-head { border-bottom: 1px solid var(--public-ink); }
.publisher-cta .pct-signup-foot { border-top: 1px solid var(--public-ink); }
.publisher-cta .pct-status { background: var(--public-signal); border: 1px solid var(--public-ink); border-radius: 50%; height: 10px; width: 10px; }
.publisher-cta .pct-signup-body { padding: 24px 21px 20px; }
.publisher-cta .pct-signup h2 { font-family: var(--font-display); font-size: 36px; font-weight: 600; letter-spacing: -.015em; line-height: 1; margin: 0 0 8px; }
.publisher-cta .pct-signup-intro { color: var(--public-muted); font-size: 12px; line-height: 1.5; margin: 0 0 17px; }
.publisher-cta .pct-form-error { background: #fff1ef; border: 1px solid #aa2e1f; color: #7d2117; font-size: 11px; line-height: 1.45; margin-bottom: 12px; padding: 9px 10px; }
.publisher-cta .pct-field + .pct-field { margin-top: 12px; }
.publisher-cta .pct-field label { display: block; font-size: 11px; font-weight: 600; margin-bottom: 6px; }
.publisher-cta .pct-field input:not([type="checkbox"]) { background: #fff; border: 1px solid #93979e; border-radius: 0; color: var(--public-ink); min-height: 43px; padding: 10px 12px; width: 100%; }
.publisher-cta .pct-field input:focus { border-color: var(--public-ink); box-shadow: 0 0 0 3px rgba(174,233,0,.38); outline: 0; }
.publisher-cta .pct-field-error { color: #9d281a; font-size: 10px; line-height: 1.4; margin: 5px 0 0; }
.publisher-cta .pct-terms { align-items: flex-start; display: grid; gap: 9px; grid-template-columns: 16px 1fr; margin-top: 14px; }
.publisher-cta .pct-terms input { accent-color: var(--public-signal-dark); height: 15px; margin: 2px 0 0; width: 15px; }
.publisher-cta .pct-terms span { color: var(--public-muted); font-size: 10.5px; line-height: 1.45; }
.publisher-cta .pct-primary { align-items: center; background: var(--public-signal); border: 1px solid var(--public-ink); color: var(--public-ink); cursor: pointer; display: inline-flex; font-size: 13px; font-weight: 600; gap: 20px; justify-content: center; min-height: 48px; padding: 12px 18px; text-decoration: none; }
.publisher-cta .pct-primary:hover { background: var(--public-ink); color: #fff; }
.publisher-cta .pct-signup .pct-primary { margin-top: 17px; width: 100%; }
.publisher-cta .pct-form-note { font-family: var(--font-mono); font-size: 8.5px; line-height: 1.5; margin: 11px 0 0; text-align: center; text-transform: uppercase; }

.publisher-cta .pct-steps { border-bottom: 1px solid var(--public-ink); }
.publisher-cta .pct-steps-head { align-items: center; border-bottom: 1px solid var(--public-line); display: flex; font-family: var(--font-mono); font-size: 9px; justify-content: space-between; padding-block: 13px; text-transform: uppercase; }
.publisher-cta .pct-steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.publisher-cta .pct-step { display: grid; gap: 14px 18px; grid-template-columns: auto 1fr 76px; min-height: 205px; padding: 25px 24px 23px; }
.publisher-cta .pct-step:first-child { padding-left: 0; }
.publisher-cta .pct-step:last-child { padding-right: 0; }
.publisher-cta .pct-step + .pct-step { border-left: 1px solid var(--public-ink); }
.publisher-cta .pct-step-num { color: var(--public-signal); font-family: var(--font-display); font-size: 54px; font-weight: 700; letter-spacing: -.06em; line-height: .8; -webkit-text-stroke: 1px var(--public-ink); }
.publisher-cta .pct-step h3 { font-family: var(--font-display); font-size: 28px; font-weight: 600; letter-spacing: -.02em; line-height: .92; margin: 0; }
.publisher-cta .pct-step p { color: var(--public-muted); font-family: var(--font-mono); font-size: 10.5px; grid-column: 2 / 4; line-height: 1.55; margin: 1px 0 0; max-width: 300px; }
.publisher-cta .pct-step-art { align-self: start; height: 58px; justify-self: end; position: relative; width: 72px; }
.publisher-cta .pct-art-campaign { border: 1px solid var(--public-ink); padding: 15px 8px 7px; }
.publisher-cta .pct-art-campaign::before { border-bottom: 1px solid var(--public-ink); content: ""; left: 0; position: absolute; right: 0; top: 10px; }
.publisher-cta .pct-art-campaign i { border-top: 2px solid var(--public-ink); display: block; margin: 6px 0; width: 100%; }
.publisher-cta .pct-art-campaign i:nth-child(2) { background: var(--public-signal); border: 1px solid var(--public-ink); height: 9px; margin-left: 8px; width: calc(100% - 8px); }
.publisher-cta .pct-art-link::before, .publisher-cta .pct-art-link::after { border: 2px solid var(--public-ink); border-radius: 14px; content: ""; height: 19px; position: absolute; top: 17px; transform: rotate(-42deg); width: 38px; }
.publisher-cta .pct-art-link::before { left: 1px; }
.publisher-cta .pct-art-link::after { background: rgba(174,233,0,.5); right: 1px; }
.publisher-cta .pct-art-earn { border: 1px solid var(--public-ink); bottom: 2px; height: 39px; left: 0; position: absolute; width: 55px; }
.publisher-cta .pct-art-earn::before { background: var(--public-signal); border: 1px solid var(--public-ink); border-radius: 50%; content: "HK$"; font-family: var(--font-mono); font-size: 8px; height: 30px; line-height: 28px; position: absolute; right: -16px; text-align: center; top: -13px; width: 30px; }
.publisher-cta .pct-art-earn::after { border-bottom: 1px solid var(--public-ink); border-top: 1px solid var(--public-ink); bottom: 8px; content: ""; height: 8px; left: 8px; position: absolute; width: 26px; }

.publisher-cta .pct-content { display: grid; grid-template-columns: 1.08fr .92fr; padding-block: 47px; }
.publisher-cta .pct-benefits { border-right: 1px solid var(--public-ink); padding-right: 40px; }
.publisher-cta .pct-section-label { font-family: var(--font-mono); font-size: 9.5px; letter-spacing: .07em; text-transform: uppercase; }
.publisher-cta .pct-content h2 { font-family: var(--font-display); font-size: 48px; font-weight: 600; letter-spacing: -.025em; line-height: .9; margin: 15px 0 28px; }
.publisher-cta .pct-benefit-list { border-top: 1px solid var(--public-ink); list-style: none; margin: 0; padding: 0; }
.publisher-cta .pct-benefit-list li { align-items: baseline; border-bottom: 1px solid var(--public-ink); display: grid; gap: 15px; grid-template-columns: 32px 165px 1fr; padding: 13px 0; }
.publisher-cta .pct-benefit-list b { color: var(--public-signal-dark); font-family: var(--font-mono); font-size: 10px; }
.publisher-cta .pct-benefit-list strong { font-family: var(--font-mono); font-size: 10.5px; text-transform: uppercase; }
.publisher-cta .pct-benefit-list span { color: var(--public-muted); font-size: 12px; line-height: 1.5; }
.publisher-cta .pct-statement { align-items: center; background-color: var(--public-paper-2); background-image: radial-gradient(rgba(20,22,26,.22) .6px, transparent .6px); background-size: 5px 5px; border: 1px solid var(--public-ink); display: flex; justify-content: space-between; margin-top: 25px; min-height: 102px; padding: 20px 22px; }
.publisher-cta .pct-statement strong { font-family: var(--font-display); font-size: 32px; line-height: .86; }
.publisher-cta .pct-roundel { align-items: center; background: var(--public-signal); border: 1px solid var(--public-ink); border-radius: 50%; display: flex; font-family: var(--font-mono); font-size: 8.5px; height: 68px; justify-content: center; line-height: 1.4; text-align: center; width: 68px; }
.publisher-cta .pct-faq { padding-left: 40px; }
.publisher-cta .pct-faq-list { border-top: 1px solid var(--public-ink); }
.publisher-cta .pct-faq-item { border-bottom: 1px solid var(--public-ink); display: grid; gap: 14px; grid-template-columns: 25px 1fr; padding: 13px 0 14px; }
.publisher-cta .pct-faq-index { color: var(--public-signal-dark); font-family: var(--font-mono); font-size: 9px; padding-top: 3px; }
.publisher-cta .pct-faq-item h3 { font-size: 12.5px; font-weight: 600; margin: 0 0 6px; }
.publisher-cta .pct-faq-item p { color: var(--public-muted); font-size: 11.5px; line-height: 1.58; margin: 0; max-width: 500px; }

.publisher-cta .pct-final { background: var(--public-signal); border-bottom: 1px solid var(--public-ink); border-top: 1px solid var(--public-ink); }
.publisher-cta .pct-final-grid { align-items: center; display: grid; gap: 32px; grid-template-columns: 1fr .9fr auto; min-height: 142px; }
.publisher-cta .pct-final h2 { font-family: var(--font-display); font-size: 42px; font-weight: 600; line-height: .92; margin: 0; }
.publisher-cta .pct-final p { font-size: 13px; line-height: 1.5; margin: 0; }
.publisher-cta .pct-final .pct-primary { background: var(--public-ink); color: #fff; min-width: 220px; }
.publisher-cta .pct-final .pct-primary:hover { background: #fff; color: var(--public-ink); }

@media (max-width: 980px) {
    .publisher-cta .pct-hero { gap: 42px; grid-template-columns: 1fr; }
    .publisher-cta .pct-hero-copy { max-width: 790px; }
    .publisher-cta .pct-signup { justify-self: end; max-width: 560px; width: calc(100% - 80px); }
    .publisher-cta .pct-content { grid-template-columns: 1fr; }
    .publisher-cta .pct-benefits { border-bottom: 1px solid var(--public-ink); border-right: 0; padding: 0 0 42px; }
    .publisher-cta .pct-faq { padding: 42px 0 0; }
    .publisher-cta .pct-final-grid { grid-template-columns: 1fr 1fr; padding-block: 27px; }
    .publisher-cta .pct-final .pct-primary { grid-column: 2; }
}

@media (max-width: 760px) {
    .publisher-cta .pct-steps-grid { grid-template-columns: 1fr; }
    .publisher-cta .pct-step { min-height: 172px; padding: 22px 0; }
    .publisher-cta .pct-step + .pct-step { border-left: 0; border-top: 1px solid var(--public-ink); }
    .publisher-cta .pct-step p { max-width: 430px; }
}

@media (max-width: 620px) {
    .publisher-cta .pct-wrap { padding-inline: 18px; }
    .publisher-cta .pct-hero-shell::after { display: none; }
    .publisher-cta .pct-hero { padding-block: 37px 31px; }
    .publisher-cta .pct-hero h1 { font-size: clamp(61px, 19vw, 80px); margin-block: 25px 22px; }
    .publisher-cta .pct-hero-lede { font-size: 14px; }
    .publisher-cta .pct-proof-line { gap: 9px; grid-template-columns: 1fr; }
    .publisher-cta .pct-proof-line span, .publisher-cta .pct-proof-line span + span { border: 0; padding: 0; }
    .publisher-cta .pct-signup { justify-self: stretch; width: 100%; }
    .publisher-cta .pct-signup h2 { font-size: 33px; }
    .publisher-cta .pct-steps-head span:last-child { display: none; }
    .publisher-cta .pct-step { grid-template-columns: auto 1fr 66px; }
    .publisher-cta .pct-step-num { font-size: 50px; }
    .publisher-cta .pct-step h3 { font-size: 27px; }
    .publisher-cta .pct-step-art { transform: scale(.9); transform-origin: top right; }
    .publisher-cta .pct-content { padding-block: 40px; }
    .publisher-cta .pct-content h2 { font-size: 43px; }
    .publisher-cta .pct-benefit-list li { gap: 9px; grid-template-columns: 27px 1fr; }
    .publisher-cta .pct-benefit-list span { grid-column: 2; }
    .publisher-cta .pct-final-grid { display: flex; flex-direction: column; gap: 18px; padding-block: 30px; text-align: center; }
}
