.ptu-affiliate-wrap{--ptu-green:#163f31;--ptu-green-2:#245b46;--ptu-deep:#0f2f25;--ptu-gold:#c69b45;--ptu-gold-soft:#f3e8ca;--ptu-cream:#f7f4ec;--ptu-bg:#f4f6f3;--ptu-border:#dbe3de;--ptu-text:#1d2823;--ptu-muted:#68746e;max-width:1040px;margin:0 auto;padding:18px 14px;font-family:inherit;color:var(--ptu-text);box-sizing:border-box}.ptu-affiliate-wrap *{box-sizing:border-box}
.ptu-notice{margin:0 0 22px;padding:15px 17px;border-radius:12px;font-weight:700;line-height:1.45}.ptu-notice-success{background:#ecf8f0;color:#17633a;border:1px solid #b9e3c7}.ptu-notice-error{background:#fff1f1;color:#8b1e1e;border:1px solid #f0caca}.ptu-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.ptu-agent-card{position:relative;display:grid;grid-template-columns:148px 1fr;gap:26px;align-items:center;margin:0 0 24px;padding:24px;background:#fff;border:1px solid var(--ptu-border);border-radius:20px;box-shadow:0 12px 36px rgba(18,54,40,.08);overflow:hidden}.ptu-agent-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--ptu-gold)}.ptu-agent-media{position:relative}.ptu-agent-photo,.ptu-agent-placeholder{display:block;width:148px;height:148px;border-radius:16px;object-fit:cover}.ptu-agent-photo{border:4px solid #fff;box-shadow:0 8px 22px rgba(18,54,40,.16)}.ptu-agent-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--ptu-green-2),var(--ptu-deep));color:#fff;font-size:52px;font-weight:800}.ptu-agent-label{display:block;margin:0 0 7px;color:var(--ptu-gold);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.ptu-agent-content h2{margin:0 0 10px;color:var(--ptu-deep);font-size:28px;line-height:1.15}.ptu-agent-content p{max-width:690px;margin:0 0 14px;color:var(--ptu-muted);font-size:15px;line-height:1.7}.ptu-agent-code{display:flex;align-items:center;gap:9px;color:var(--ptu-muted);font-size:13px}.ptu-agent-code strong{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border:1px solid #e4d3a8;border-radius:8px;background:#fff9e9;color:var(--ptu-deep);letter-spacing:.08em;font-size:13px}
.ptu-request-form{margin:0;background:#fff;border:1px solid var(--ptu-border);border-radius:24px;overflow:hidden;box-shadow:0 18px 55px rgba(18,54,40,.10)}.ptu-form-hero{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:30px;align-items:center;padding:38px 42px;background:linear-gradient(135deg,#0f3025 0%,#184936 70%,#245c46 100%);color:#fff;position:relative;overflow:hidden}.ptu-form-hero:after{content:"";position:absolute;width:250px;height:250px;right:-90px;top:-110px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 68px rgba(255,255,255,.025)}.ptu-form-hero-copy{position:relative;z-index:1}.ptu-eyebrow{display:block;margin:0 0 8px;color:#e7bf68;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.ptu-form-hero h2{max-width:650px;margin:0 0 12px;color:#fff;font-size:34px;line-height:1.15;letter-spacing:-.02em}.ptu-form-hero p{max-width:690px;margin:0;color:rgba(255,255,255,.82);font-size:15px;line-height:1.7}.ptu-form-hero-points{position:relative;z-index:1;display:grid;gap:10px}.ptu-form-hero-points span{position:relative;display:block;padding:10px 12px 10px 34px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.06);font-size:13px;font-weight:700}.ptu-form-hero-points span:before{content:"✓";position:absolute;left:12px;top:9px;color:#e7bf68;font-weight:900}
.ptu-form-body{padding:36px 42px 40px}.ptu-form-section{padding:0 0 32px;margin:0 0 32px;border-bottom:1px solid #e9eeeb}.ptu-form-section-last{padding-bottom:0;margin-bottom:30px;border-bottom:0}.ptu-section-heading{display:flex;align-items:flex-start;gap:14px;margin:0 0 21px}.ptu-section-number{display:flex;flex:0 0 40px;width:40px;height:40px;align-items:center;justify-content:center;border-radius:11px;background:var(--ptu-cream);border:1px solid #eadcb8;color:var(--ptu-green);font-size:12px;font-weight:900;letter-spacing:.04em}.ptu-section-heading h3{margin:0 0 4px;color:var(--ptu-deep);font-size:19px;line-height:1.3}.ptu-section-heading p{margin:0;color:var(--ptu-muted);font-size:13px;line-height:1.55}.ptu-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 20px}.ptu-span-2{grid-column:span 2}.ptu-form-field label{display:flex;align-items:center;gap:6px;margin:0 0 8px;color:#26342e;font-size:13px;font-weight:800;line-height:1.4}.ptu-form-field label>span{color:#a91e2c}.ptu-form-field label small{margin-left:auto;padding:3px 7px;border-radius:999px;background:#f2f4f2;color:#7a8580;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.ptu-form-field input,.ptu-form-field select,.ptu-form-field textarea{display:block;width:100%!important;max-width:none!important;margin:0!important;border:1px solid #cfd9d3!important;border-radius:11px!important;background:#fff!important;color:var(--ptu-text)!important;font:inherit!important;font-size:14px!important;line-height:1.4!important;outline:none!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s,background .2s}.ptu-form-field input,.ptu-form-field select{height:50px!important;min-height:50px!important;padding:0 14px!important}.ptu-form-field textarea{min-height:150px!important;padding:14px!important;resize:vertical}.ptu-form-field input::placeholder,.ptu-form-field textarea::placeholder{color:#9aa49f;opacity:1}.ptu-form-field input:focus,.ptu-form-field select:focus,.ptu-form-field textarea:focus{border-color:var(--ptu-green-2)!important;box-shadow:0 0 0 4px rgba(36,91,70,.10)!important}.ptu-form-field input[readonly]{border-color:#e3d6b4!important;background:#fffaf0!important;color:#5b4a21!important;font-weight:800!important;letter-spacing:.06em}.ptu-help{display:block;margin-top:6px;color:#7b8580;font-size:11px;line-height:1.45}
.ptu-form-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px;border:1px solid #e3e9e5;border-radius:15px;background:#f7f9f7}.ptu-privacy-note{max-width:580px}.ptu-privacy-note strong,.ptu-privacy-note span{display:block}.ptu-privacy-note strong{margin-bottom:4px;color:var(--ptu-deep);font-size:13px}.ptu-privacy-note span{color:var(--ptu-muted);font-size:11px;line-height:1.55}.ptu-submit{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;min-height:50px!important;margin:0!important;padding:13px 18px!important;border:0!important;border-radius:11px!important;background:var(--ptu-green)!important;color:#fff!important;font:inherit!important;font-size:13px!important;font-weight:800!important;line-height:1.2!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:0 8px 20px rgba(22,63,49,.18)!important;transition:transform .2s,background .2s,box-shadow .2s!important}.ptu-submit b{font-size:18px;line-height:1;font-weight:400}.ptu-submit:hover{background:var(--ptu-deep)!important;transform:translateY(-1px);box-shadow:0 10px 24px rgba(22,63,49,.24)!important}.ptu-submit:disabled{opacity:.65!important;cursor:not-allowed!important;transform:none!important}
@media(max-width:820px){.ptu-form-hero{grid-template-columns:1fr;padding:32px 28px}.ptu-form-hero-points{grid-template-columns:repeat(3,minmax(0,1fr))}.ptu-form-hero-points span{padding:10px;text-align:center}.ptu-form-hero-points span:before{position:static;margin-right:5px}.ptu-form-body{padding:30px 28px}.ptu-form-footer{align-items:flex-start;flex-direction:column}.ptu-submit{width:100%!important}}
@media(max-width:680px){.ptu-affiliate-wrap{padding:8px}.ptu-agent-card{grid-template-columns:86px 1fr;gap:15px;padding:17px;border-radius:16px}.ptu-agent-photo,.ptu-agent-placeholder{width:86px;height:86px;border-radius:12px}.ptu-agent-placeholder{font-size:32px}.ptu-agent-content h2{font-size:21px}.ptu-agent-content p{font-size:13px;line-height:1.55}.ptu-agent-code{align-items:flex-start;flex-direction:column;gap:5px}.ptu-request-form{border-radius:17px}.ptu-form-hero{padding:27px 20px}.ptu-form-hero h2{font-size:27px}.ptu-form-hero-points{grid-template-columns:1fr}.ptu-form-hero-points span{text-align:left;padding-left:34px}.ptu-form-hero-points span:before{position:absolute;margin:0}.ptu-form-body{padding:24px 18px 26px}.ptu-form-section{padding-bottom:26px;margin-bottom:26px}.ptu-section-heading{gap:11px}.ptu-section-number{flex-basis:36px;width:36px;height:36px}.ptu-section-heading h3{font-size:17px}.ptu-form-grid{grid-template-columns:1fr;gap:16px}.ptu-span-2{grid-column:span 1}.ptu-form-field input,.ptu-form-field select{height:52px!important;min-height:52px!important;font-size:16px!important}.ptu-form-field textarea{font-size:16px!important}.ptu-form-footer{padding:17px}.ptu-submit{min-height:52px!important;font-size:14px!important}}
@media(max-width:430px){.ptu-agent-card{grid-template-columns:1fr;text-align:center}.ptu-agent-media{display:flex;justify-content:center}.ptu-agent-code{align-items:center}.ptu-form-hero h2{font-size:24px}.ptu-form-hero p{font-size:14px}.ptu-section-heading p{font-size:12px}}

/* v1.3.1: The form adapts to the shortcode container, not only viewport width. */
.ptu-affiliate-wrap{
    container-type:inline-size;
    container-name:ptuform;
}
.ptu-hp,
.ptu-hp[hidden],
.ptu-request-form .ptu-hp{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
}

@container ptuform (max-width: 620px){
    .ptu-agent-card{
        grid-template-columns:82px minmax(0,1fr);
        gap:14px;
        padding:16px;
        border-radius:15px;
        box-shadow:0 7px 22px rgba(18,54,40,.08);
    }
    .ptu-agent-photo,
    .ptu-agent-placeholder{
        width:82px;
        height:82px;
        border-radius:11px;
    }
    .ptu-agent-placeholder{font-size:30px}
    .ptu-agent-content h2{font-size:20px;margin-bottom:6px}
    .ptu-agent-content p{font-size:12px;line-height:1.5;margin-bottom:9px}
    .ptu-agent-label{font-size:10px;margin-bottom:5px}
    .ptu-agent-code{font-size:11px;gap:6px;flex-wrap:wrap}
    .ptu-agent-code strong{min-height:28px;padding:4px 8px;font-size:11px}

    .ptu-request-form{
        border-radius:0px;
        box-shadow:0 8px 28px rgba(18,54,40,.09);
    }
    .ptu-form-hero{
        grid-template-columns:1fr;
        gap:14px;
        padding:24px 18px;
    }
    .ptu-form-hero:after{width:180px;height:180px;right:-85px;top:-95px}
    .ptu-eyebrow{font-size:10px;margin-bottom:6px}
    .ptu-form-hero h2{font-size:25px;line-height:1.18;margin-bottom:8px}
    .ptu-form-hero p{font-size:13px;line-height:1.55}
    .ptu-form-hero-points{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:6px;
    }
    .ptu-form-hero-points span{
        padding:8px 6px;
        text-align:center;
        font-size:10px;
        line-height:1.25;
    }
    .ptu-form-hero-points span:before{
        position:static;
        margin-right:3px;
    }
    .ptu-form-body{padding:18px 16px 20px}
    .ptu-form-grid{
        grid-template-columns:1fr;
        gap:15px;
    }
    .ptu-span-2{grid-column:span 1}
    .ptu-form-field label{font-size:12px;margin-bottom:6px}
    .ptu-form-field label small{font-size:9px;padding:2px 6px}
    .ptu-form-field input,
    .ptu-form-field select{
        height:46px!important;
        min-height:46px!important;
        font-size:14px!important;
        border-radius:9px!important;
    }
    .ptu-form-field textarea{
        min-height:130px!important;
        font-size:14px!important;
        border-radius:9px!important;
    }
    .ptu-help{font-size:10px}
    .ptu-form-footer{
        flex-direction:column;
        align-items:stretch;
        gap:14px;
        padding:14px;
        border-radius:11px;
    }
    .ptu-privacy-note{max-width:none}
    .ptu-privacy-note strong{font-size:12px}
    .ptu-privacy-note span{font-size:10px}
    .ptu-submit{
        width:100%!important;
        min-height:48px!important;
        font-size:13px!important;
    }
}

@container ptuform (max-width: 500px){
    .ptu-affiliate-wrap{padding:4px}
    .ptu-form-hero{padding:21px 16px}
    .ptu-form-hero h2{font-size:23px}
    .ptu-form-hero-points{display:none}
    .ptu-form-body{padding:16px 13px 17px}
    .ptu-form-grid{gap:14px}
}

@container ptuform (max-width: 360px){
    .ptu-agent-card{
        grid-template-columns:1fr;
        text-align:center;
    }
    .ptu-agent-media{display:flex;justify-content:center}
    .ptu-agent-code{justify-content:center}
    .ptu-form-hero h2{font-size:21px}
    .ptu-form-hero p{font-size:12px}
}
