/* Public Partner Program presentation, scoped to program pages. */
.mst-partner-page .marsea-generic-inner{max-width:1120px}
.mst-partner-program,.mst-partner-intro{color:#152f46;font-size:20px;line-height:1.65}
.mst-partner-program p,.mst-partner-intro p{font-size:20px;line-height:1.65;color:#566a7d}
.mst-partner-program h2{font-size:clamp(28px,3vw,38px);line-height:1.25;letter-spacing:-.025em;color:#152f46}
.mst-partner-program h3{font-size:23px;line-height:1.35;color:#152f46}
.mst-partner-program a,.mst-partner-intro a{color:#245f82;font-weight:700;text-underline-offset:4px}
.mst-partner-kicker{color:#245f82!important;font-size:14px!important;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.mst-partner-hero{padding:40px;border:1px solid #cadbe6;border-radius:22px;background:linear-gradient(135deg,#edf8fc,#f7fafc)}
.mst-partner-hero h2{font-size:clamp(34px,4vw,48px);margin-top:14px}
.mst-partner-section{margin-top:42px}.mst-partner-section>p{margin-top:16px}
.mst-partner-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:26px}
.mst-partner-program .mst-partner-button{display:inline-flex;align-items:center;justify-content:center;background:#245f82;color:white!important;min-height:50px;padding:12px 24px;border-radius:12px;text-decoration:none;font-size:20px;font-weight:750}
.mst-partner-program .mst-partner-button:hover{background:#1a4966}
.mst-partner-program a:focus-visible,.mst-partner-intro a:focus-visible{outline:3px solid #11b8d0;outline-offset:4px}
.mst-partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}
.mst-partner-grid article{padding:26px;border:1px solid #cadbe6;border-radius:16px;background:#fff}
.mst-partner-grid h3{margin-top:0}.mst-partner-grid p{margin-bottom:0}
.mst-partner-note{border-left:4px solid #245f82;padding:18px 22px;background:#f4f8fb;border-radius:0 12px 12px 0}
.mst-partner-steps{padding-left:26px}.mst-partner-steps li{padding:10px 0}
.mst-partner-callout{padding:30px;border:1px solid #cadbe6;border-radius:18px;background:#f4f8fb}
.mst-partner-intro{max-width:850px;margin-bottom:32px}
.mst-partner-page #affwp-register-form,.mst-partner-page #affwp-login-form{max-width:850px}
.mst-partner-page #affwp-register-form label,.mst-partner-page #affwp-login-form label{font-size:20px;font-weight:700}
.mst-partner-page #affwp-register-form input:not([type=hidden]):not([type=checkbox]),.mst-partner-page #affwp-register-form textarea,.mst-partner-page #affwp-login-form input:not([type=hidden]):not([type=checkbox]){font-size:20px;min-height:48px;border-radius:10px}
@media(max-width:760px){.mst-partner-grid{grid-template-columns:1fr}.mst-partner-hero{padding:28px 24px}.mst-partner-callout{padding:24px}.mst-partner-actions{align-items:stretch;flex-direction:column}.mst-partner-section{margin-top:32px}}

/* Native forms use unique IDs; stable classes keep every render consistent. */
.mst-partner-page.page-id-354 .marsea-generic-inner{max-width:1000px!important}
.mst-partner-page.page-id-354 .entry-content>.mst-partner-intro,
.mst-partner-page.page-id-354 .entry-content>.mst-partner-program,
.mst-partner-page.page-id-354 .entry-content>form.affwp-register-form{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box}
.mst-partner-intro h2{font-size:32px;line-height:1.3;color:#152f46}
.mst-partner-intro h3{font-size:22px;line-height:1.35;color:#152f46}
.mst-partner-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
.mst-partner-benefits article{padding:24px}.mst-partner-benefits p{margin-bottom:0}
.mst-partner-alliance{margin-top:24px;padding:28px;background:#eef7fb;border:1px solid #cadbe6;border-radius:16px}
.mst-partner-alliance h3{margin-top:0}.mst-partner-alliance p:last-child{margin-bottom:0}
.mst-partner-inspection{margin-top:24px;padding-left:22px;border-left:3px solid #13b4ca}
.mst-partner-inspection h3{margin-top:0}.mst-partner-inspection p{margin-bottom:0}
.mst-partner-policy{padding:20px 24px;margin-top:24px;background:#f4f8fb;border:1px solid #cadbe6;border-radius:14px}
.mst-partner-policy strong,.mst-partner-policy span{display:block}.mst-partner-policy span{margin-top:8px;color:#245f82;font-size:18px}.mst-partner-policy p{margin:10px 0 0;font-size:18px}
.mst-partner-apply{margin-top:40px;padding-top:28px;border-top:1px solid #cadbe6}
.mst-partner-page form.affwp-register-form,.mst-partner-page form.affwp-login-form{box-sizing:border-box;padding:32px;border:1px solid #cadbe6;border-radius:20px;background:#fff;box-shadow:0 12px 32px rgba(21,47,70,.05)}
.mst-partner-page form.affwp-register-form fieldset,.mst-partner-page form.affwp-login-form fieldset{border:0;padding:0;margin:0;min-width:0}
.mst-partner-page form.affwp-register-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.mst-partner-page form.affwp-register-form legend,.mst-partner-page form.affwp-login-form legend{font-size:26px;line-height:1.35;font-weight:750;color:#152f46;padding:0;margin:0 0 28px;width:100%}
.mst-partner-page form.affwp-register-form fieldset>p{margin:0;min-width:0}
.mst-partner-page form.affwp-register-form fieldset>p:has(textarea),.mst-partner-page form.affwp-register-form fieldset>p:has(input[type=url]),.mst-partner-page form.affwp-register-form fieldset>input[type=submit]{grid-column:1/-1}
.mst-partner-page .affwp-form .affwp-field-label{display:block;font-size:20px!important;font-weight:700;color:#152f46;margin-bottom:10px}
.mst-partner-page .affwp-form .affwp-field-label .required{font-size:16px;font-weight:400;color:#566a7d}
.mst-partner-page .affwp-form input.affwp-field:not([type=hidden]):not([type=checkbox]):not([type=radio]),.mst-partner-page .affwp-form textarea.affwp-field{box-sizing:border-box;width:100%!important;max-width:none!important;min-height:56px!important;height:auto!important;padding:12px 16px!important;border:1px solid #aebfce!important;border-radius:10px!important;background:#fff;color:#152f46;font-family:inherit;font-size:20px!important;line-height:1.5!important;box-shadow:none}
.mst-partner-page .affwp-form textarea.affwp-field{min-height:160px!important;resize:vertical}
.mst-partner-page .affwp-form input.affwp-field:focus,.mst-partner-page .affwp-form textarea.affwp-field:focus{outline:2px solid #245f82;outline-offset:2px;border-color:#245f82!important}
.mst-partner-page .affwp-form input[type=submit]{min-height:56px!important;padding:14px 24px!important;border:0!important;border-radius:12px!important;background:#245f82!important;color:#fff!important;font-family:inherit;font-size:20px!important;font-weight:750;cursor:pointer;margin-top:6px}
.mst-partner-page .affwp-form input[type=submit]:hover{background:#1a4966!important}
.mst-partner-page .affwp-form input[type=submit]:focus-visible{outline:3px solid #13b4ca;outline-offset:4px}
@media(max-width:760px){.mst-partner-benefits,.mst-partner-page form.affwp-register-form fieldset{grid-template-columns:1fr}.mst-partner-page form.affwp-register-form,.mst-partner-page form.affwp-login-form{padding:24px 20px}.mst-partner-alliance{padding:24px 20px}.mst-partner-intro h2{font-size:28px}}

/* Compact typography and balanced spacing throughout the Partner Program. */
.mst-partner-page .marsea-generic-main{padding-top:32px!important;padding-bottom:48px!important}
.mst-partner-page .wp-block-post-title{font-size:clamp(30px,3.3vw,42px)!important;line-height:1.2!important;margin:0 0 22px!important}
.mst-partner-page .mst-partner-program h2,.mst-partner-page .mst-partner-intro h2{font-size:clamp(26px,2.4vw,30px);line-height:1.3;margin:0 0 12px}
.mst-partner-page .mst-partner-program h3,.mst-partner-page .mst-partner-intro h3{font-size:22px;line-height:1.35;margin:0 0 10px}
.mst-partner-page .mst-partner-hero h2{font-size:clamp(30px,3vw,38px);margin:12px 0}
.mst-partner-page .mst-partner-section{margin-top:28px}
.mst-partner-page .mst-partner-section>p{margin:12px 0 0}
.mst-partner-page .mst-partner-grid{margin-top:18px;gap:18px}
.mst-partner-page .mst-partner-grid article{padding:22px;display:flex;flex-direction:column;justify-content:center}
.mst-partner-page .mst-partner-grid article h3{margin:0 0 10px}
.mst-partner-page .mst-partner-grid article p{margin:0}
.mst-partner-page .mst-partner-alliance{margin-top:20px;padding:22px}
.mst-partner-page .mst-partner-inspection{margin-top:20px}
@media(max-width:760px){.mst-partner-page .marsea-generic-main{padding-top:24px!important}.mst-partner-page .wp-block-post-title{margin-bottom:18px!important}.mst-partner-page .mst-partner-section{margin-top:24px}.mst-partner-page .mst-partner-grid article{padding:20px}}
/* Partner dashboard: comfortable fields without changing native tracking or field names. */
.mst-partner-page #affwp-affiliate-dashboard input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),
.mst-partner-page #affwp-affiliate-dashboard select,.mst-partner-page #affwp-affiliate-dashboard textarea{box-sizing:border-box;min-height:56px;height:auto!important;width:100%;max-width:100%;padding:14px 16px!important;font:inherit;font-size:20px!important;line-height:1.4!important;border:1px solid #bfd5e1;border-radius:10px;background:#fff;color:#10283a;margin:8px 0 12px}
.mst-partner-page #affwp-affiliate-dashboard textarea{min-height:120px}.mst-partner-page #affwp-affiliate-dashboard label{display:block;font-weight:700;margin:16px 0 4px}.mst-partner-page #affwp-affiliate-dashboard input[type=checkbox]+label{display:inline}.mst-partner-page #affwp-affiliate-dashboard .affwp-wrap{margin:18px 0 24px}.mst-partner-page #affwp-affiliate-dashboard input[type=submit],.mst-qr-actions button{min-height:52px;padding:12px 20px;border:0;border-radius:10px;background:#246482;color:#fff;font:inherit;font-weight:700;font-size:18px;cursor:pointer}.mst-partner-page #affwp-affiliate-dashboard input:focus-visible,.mst-qr-actions button:focus-visible{outline:3px solid #13b4cf;outline-offset:3px}
.mst-qr-card,.mst-payment-help,.mst-partner-bookings{border:1px solid #c8dce7;border-radius:18px;background:#f4f9fb;padding:28px;margin:28px 0}.mst-qr-card h3,.mst-partner-bookings h3{font-size:28px!important;margin:6px 0 16px!important}.mst-qr-card p,.mst-payment-help p,.mst-partner-bookings p{font-size:20px;line-height:1.6}.mst-partner-eyebrow{color:#246482;font-size:14px!important;font-weight:800;letter-spacing:.1em}.mst-qr-preview{max-width:320px;margin:20px auto}.mst-qr-preview canvas{display:block;width:100%;height:auto;background:white;border:1px solid #d6e4eb;border-radius:12px}.mst-qr-actions{display:flex;gap:12px;flex-wrap:wrap}.mst-qr-actions button:disabled{opacity:.55;cursor:wait}.mst-qr-status{font-weight:700;color:#246482}.mst-qr-link{overflow-wrap:anywhere;font-size:16px!important}.mst-referral-row{display:grid;gap:8px;padding:18px 0;border-top:1px solid #ccdde6}.mst-partner-help{line-height:1.6;margin:18px 0 24px}.mst-partner-page #affwp-affiliate-dashboard-tabs{display:flex;flex-wrap:wrap;gap:10px;padding:0!important}.mst-partner-page #affwp-affiliate-dashboard-tabs li{margin:0!important}.mst-partner-page #affwp-affiliate-dashboard-tabs a{display:block;padding:10px 12px;border:1px solid #d4e2e9;border-radius:9px}
@media(max-width:600px){.mst-qr-card,.mst-payment-help,.mst-partner-bookings{padding:20px 16px}.mst-qr-actions button{width:100%}.mst-qr-card p,.mst-payment-help p,.mst-partner-bookings p{font-size:18px}}

/* Clear registration sequence: names together, then username and phone. */
.mst-partner-page form.affwp-register-form .mst-registration-username,
.mst-partner-page form.affwp-register-form .mst-registration-phone{grid-column:1/-1}
.mst-partner-page form.affwp-register-form .mst-registration-hint{display:block;margin:10px 0 0;font-size:16px;line-height:1.5;font-weight:400;color:#506579;max-width:76ch}
.mst-partner-page form.affwp-register-form .mst-registration-field label{display:block;margin-bottom:10px}
.mst-partner-page form.affwp-register-form input[type=tel]{min-height:56px!important;font-size:20px!important}
#partner-qr{scroll-margin-top:32px}

.mst-partner-page form.affwp-register-form fieldset>p:has(.affwp-tos),.mst-partner-page form.affwp-register-form fieldset>.mst-partner-help,.mst-partner-page form.affwp-register-form fieldset>p:has(input[type=submit]){grid-column:1/-1}
.mst-partner-page form.affwp-register-form .affwp-tos{display:flex;align-items:flex-start;gap:12px;font-size:18px!important;line-height:1.5}
.mst-partner-page form.affwp-register-form input[type=checkbox]{width:22px;height:22px;min-height:22px;margin:3px 0 0;flex-shrink:0}

/* Partner onboarding stays compact until a partner opens the guide. */
.mst-partner-page .mst-partner-guide{margin:20px 0 28px;border:1px solid #cbdfe8;border-radius:16px;background:#f4f9fb;color:#16354b;overflow:hidden}
.mst-partner-page .mst-partner-guide>summary{cursor:pointer;padding:20px 24px;font-size:20px;font-weight:700;line-height:1.5}
.mst-partner-page .mst-partner-guide>div{padding:0 24px 24px}
.mst-partner-page .mst-partner-guide section{padding:16px 0;border-top:1px solid #d9e7ee}
.mst-partner-page .mst-partner-guide h3{font-size:22px!important;margin:0 0 8px!important;line-height:1.35}
.mst-partner-page .mst-partner-guide p{font-size:20px;line-height:1.6;margin:0 0 14px}
.mst-partner-page .mst-partner-guide summary:focus-visible{outline:3px solid #246c8a;outline-offset:-4px}
