/* ALCANCE Professional Sign Up — approved 1140px borderless visual lock, 2026-10-02. */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700&display=swap');

.mp-prof-signup-shell {
    --ps-orange: #F47F22;
    --ps-green: #82BD41;
    --ps-blue: #49B5E7;
    --ps-text: #202021;
    --ps-muted: #667085;
    --ps-line: #D8E2ED;
    position: relative;
    isolation: isolate;
    width: 100%;
    margin: 0;
    padding: 24px 0 34px;
    overflow: hidden;
    background: linear-gradient(145deg, #F8FBFF 0%, #F2F7FC 100%);
    color: var(--ps-text);
    font-family: 'Rubik', Arial, sans-serif;
}
.mp-prof-signup-shell::before {
    content: "✈";
    position: absolute;
    z-index: 0;
    top: 34px;
    right: 9%;
    transform: rotate(-12deg);
    color: var(--ps-blue);
    font: 400 112px/1 Arial, sans-serif;
    opacity: .075;
    pointer-events: none;
}
.mp-prof-signup-shell *, .mp-prof-signup-shell *::before, .mp-prof-signup-shell *::after { box-sizing: border-box; }
.mp-prof-signup-shell.is-elementor-component { padding: 0; background: transparent; }
.mp-prof-signup-shell.is-elementor-component::before { display: none; }
.mp-prof-signup {
    position: relative;
    z-index: 1;
    width: min(1140px, calc(100% - 36px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(350px, 34%) minmax(0, 66%);
    gap: 10px;
    align-items: stretch;
}
.mp-ps-intro, .mp-ps-main { min-width: 0; min-height: 675px; border-radius: 5px; box-shadow: none; }
.mp-ps-intro {
    position: relative;
    overflow: hidden;
    padding: 30px 32px 26px;
    display: flex;
    flex-direction: column;
    color: #fff;
    background-image:
        linear-gradient(90deg, rgba(5,16,30,.80) 0%, rgba(5,16,30,.58) 58%, rgba(5,16,30,.34) 100%),
        linear-gradient(180deg, rgba(5,16,30,.08) 0%, rgba(5,16,30,.16) 52%, rgba(4,12,24,.70) 100%),
        url('/wp-content/uploads/2026/08/alcance-accommodation-v25-01.webp');
    background-position: center center;
    background-size: cover;
}
.mp-ps-intro::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 22% 30%, rgba(244,127,34,.13), transparent 30%); pointer-events:none; }
.mp-ps-intro > * { position: relative; z-index: 1; }
.mp-ps-brand {
    width: 240px;
    max-width: 72%;
    height: 80px;
    margin: 0 0 22px;
    padding: 0 0 18px;
    background:
        linear-gradient(var(--ps-orange),var(--ps-orange)) left bottom/44px 3px no-repeat,
        url('https://alcancetours.com/wp-content/uploads/2026/06/Alcance-new-logo-01-1-scaled-e1789687783170.png') no-repeat left center/contain;
}
.mp-ps-kicker { display:block; margin:0 0 8px; color:var(--ps-orange); font-size:11px; line-height:1.25; font-weight:700; letter-spacing:.06em; }
.mp-ps-intro h2, .mp-ps-head h1, .mp-ps-success h2 { margin:0; font-size:28px; line-height:1.08; font-weight:700; letter-spacing:-.025em; }
.mp-ps-intro h2 { max-width: 350px; color:#fff; }
.mp-ps-intro > p, .mp-ps-head p, .mp-ps-section-title p, .mp-ps-success > p { margin:10px 0 0; font-size:12px; line-height:1.5; }
.mp-ps-intro > p { max-width:380px; color:rgba(255,255,255,.90); }
.mp-ps-benefits { display:grid; gap:9px; margin:20px 0 18px; }
.mp-ps-benefits > div { min-height:56px; display:grid; grid-template-columns:38px minmax(0,1fr); gap:10px; align-items:center; padding:9px 11px; border:1px solid rgba(255,255,255,.14); border-radius:5px; background:rgba(10,22,36,.50); }
.mp-ps-benefits > div > span { width:36px; height:36px; display:grid; place-items:center; border:1px solid rgba(244,127,34,.82); border-radius:100%; background:rgba(244,127,34,.14); color:var(--ps-orange); }
.mp-ps-benefits svg, .mp-ps-section-title svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.mp-ps-benefits p { margin:0; display:grid; gap:3px; }
.mp-ps-benefits strong { color:#fff; font-size:12px; font-weight:600; }
.mp-ps-benefits small { color:rgba(255,255,255,.82); font-size:12px; line-height:1.35; }
.mp-ps-switch { margin-top:auto; display:grid; gap:6px; padding-top:14px; }
.mp-ps-switch label, .mp-ps-switch select { font:inherit; font-size:12px; }
.mp-ps-switch label { color:#fff; font-weight:600; }
.mp-ps-switch select { width:100%; height:40px; padding:0 10px; border:1px solid rgba(255,255,255,.28); border-radius:5px; background:rgba(9,20,33,.82); color:#fff; outline:none; }
.mp-ps-switch small { color:rgba(255,255,255,.76); font-size:10px; line-height:1.35; }

.mp-ps-main { position:relative; padding:30px 32px 24px; border:0; background:transparent; overflow:hidden; box-shadow:none; }
.mp-ps-main::before { content:""; position:absolute; z-index:0; right:-32px; top:18px; width:210px; height:320px; opacity:.085; background:radial-gradient(ellipse at 50% 12%, var(--ps-blue) 0 8%, transparent 9%),linear-gradient(82deg, transparent 48%, var(--ps-blue) 49% 51%, transparent 52%) center/100% 100% no-repeat; pointer-events:none; }
.mp-ps-main > * { position:relative; z-index:1; }
.mp-ps-head { display:flex; justify-content:space-between; gap:24px; margin-bottom:20px; }
.mp-ps-head > div { min-width:0; }
.mp-ps-head > div > span, .mp-ps-head > a { font-size:11px; }
.mp-ps-head > div > span { display:block; margin-bottom:7px; color:var(--ps-orange); font-weight:700; letter-spacing:.04em; }
.mp-ps-head h1 { color:#111827; }
.mp-ps-head p { color:var(--ps-muted); }
.mp-ps-head > a { flex:0 0 auto; color:#7b8799; text-decoration:none; }
.mp-ps-head > a strong, .mp-ps-check a { color:var(--ps-blue); }

.mp-ps-stepper { position:relative; display:grid; grid-template-columns:repeat(4,1fr); margin-bottom:18px; padding:0 20px 16px; }
.mp-ps-stepper::before { content:""; position:absolute; left:12%; right:12%; top:18px; height:1px; background:var(--ps-line); }
.mp-ps-step { position:relative; display:grid; justify-items:center; gap:5px; color:#8491a4; }
.mp-ps-step > span { width:36px; height:36px; display:grid; place-items:center; border:1px solid var(--ps-line); border-radius:100%; background:#fff; font-size:11px; font-weight:600; }
.mp-ps-step small { font-size:10px; }
.mp-ps-step.is-current > span, .mp-ps-step.is-complete > span { border-color:var(--ps-orange); background:var(--ps-orange); color:#fff; }
.mp-ps-step.is-current small { color:var(--ps-orange); font-weight:600; }
.mp-ps-panel { display:none; }
.mp-ps-panel.is-active { display:block; }
.mp-ps-section-title { display:grid; grid-template-columns:40px minmax(0,1fr); gap:10px; align-items:center; margin-bottom:14px; padding-top:12px; border-top:1px solid #e8edf3; }
.mp-ps-section-title > span { width:40px; height:40px; display:grid; place-items:center; border-radius:100%; background:#fff2e8; color:var(--ps-orange); }
.mp-ps-section-title h3, .mp-ps-review h3, .mp-ps-docs h3 { margin:0; font-size:16px; line-height:1.2; font-weight:600; }
.mp-ps-section-title p, .mp-ps-docs p { margin:3px 0 0; color:var(--ps-muted); }
.mp-ps-grid { display:grid; gap:9px 10px; }
.mp-ps-grid.is-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mp-ps-field { display:grid; gap:5px; min-width:0; }
.mp-ps-field.is-wide { grid-column:1/-1; }
.mp-ps-field > span, .mp-ps-check, .mp-ps-notice { font-size:11px; }
.mp-ps-field > span { font-weight:600; color:#25324a; }
.mp-ps-field b, .mp-ps-check b { color:#e11d48; }
.mp-ps-field input, .mp-ps-field select, .mp-ps-field textarea, .mp-ps-code input { width:100%; height:40px; min-height:40px; padding:0 10px; border:1px solid var(--ps-line); border-radius:5px; background:#fff; color:var(--ps-text); font:inherit; font-size:12px; outline:none; box-shadow:none; }
.mp-ps-field textarea { height:auto; min-height:82px; padding:10px; resize:vertical; }
.mp-ps-field input:focus, .mp-ps-field select:focus, .mp-ps-field textarea:focus, .mp-ps-code input:focus { border-color:var(--ps-orange); }
.mp-ps-field.is-invalid input, .mp-ps-field.is-invalid select, .mp-ps-field.is-invalid textarea, .mp-ps-check.is-invalid { border-color:#dc2626; }
.mp-ps-divider { height:1px; margin:12px 0; background:#edf1f5; }
.mp-ps-check { display:flex; align-items:flex-start; gap:8px; margin-top:10px; color:#5f6d82; line-height:1.4; }
.mp-ps-check input { margin-top:2px; }
.mp-ps-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; }
.mp-ps-btn { min-height:40px; height:40px; display:inline-flex; align-items:center; justify-content:center; padding:0 14px; border:1px solid var(--ps-line); border-radius:5px; background:#fff; color:#202021; font:inherit; font-size:11px; font-weight:600; text-decoration:none; cursor:pointer; box-shadow:none; }
.mp-ps-btn.is-primary { min-width:200px; border-color:var(--ps-orange); background:var(--ps-orange); color:#fff; }
.mp-ps-btn:disabled { opacity:.55; cursor:not-allowed; }
.mp-ps-notice { margin:0 0 12px; padding:10px 12px; border:1px solid #fecaca; border-radius:5px; background:#fff1f2; color:#991b1b; }
.mp-ps-notice.is-success { border-color:#bbf7d0; background:#f0fdf4; color:#166534; }
.mp-ps-verify { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; padding:14px; border:1px solid var(--ps-line); border-radius:5px; }
.mp-ps-verify > div:first-child { display:grid; gap:3px; }
.mp-ps-verify strong { font-size:12px; }
.mp-ps-verify small { color:var(--ps-muted); font-size:10px; }
.mp-ps-code { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr) 92px; gap:8px; }
.mp-ps-code button { border:0; border-radius:5px; background:var(--ps-blue); color:#fff; font:inherit; font-size:11px; font-weight:600; }
.mp-ps-review { margin-top:14px; padding:14px; border:1px solid var(--ps-line); border-radius:5px; }
.mp-ps-review dl, .mp-ps-success dl { display:grid; grid-template-columns:150px minmax(0,1fr); gap:7px 12px; margin:10px 0 0; font-size:11px; }
.mp-ps-review dt, .mp-ps-success dt { color:var(--ps-muted); }
.mp-ps-review dd, .mp-ps-success dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.mp-ps-docs { display:grid; grid-template-columns:minmax(0,1fr) minmax(210px,.7fr); gap:10px; margin-top:14px; padding-top:14px; border-top:1px solid #edf1f5; }
.mp-ps-docs > div:first-child { grid-column:1/-1; }
.mp-ps-docs h3 small { color:var(--ps-muted); font-size:10px; font-weight:400; }
.mp-ps-upload, .mp-ps-doc-hints { min-height:112px; padding:12px; border:1px dashed var(--ps-line); border-radius:5px; background:#fbfcfe; }
.mp-ps-upload { display:grid; gap:5px; font-size:11px; cursor:pointer; }
.mp-ps-upload input { margin-top:4px; font-size:10px; }
.mp-ps-upload em { color:var(--ps-muted); font-style:normal; }
.mp-ps-doc-hints { display:grid; align-content:start; gap:6px; font-size:11px; }
.mp-ps-doc-hints span { color:#5d6c80; }
.mp-ps-success { text-align:left; padding-top:28px; }
.mp-ps-success-mark { width:48px; height:48px; display:grid; place-items:center; margin-bottom:12px; border-radius:100%; background:#e8f8ee; color:#17934a; font-size:24px; font-weight:700; }
.mp-ps-success > p { color:var(--ps-muted); }
.mp-ps-hp { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; opacity:0!important; pointer-events:none!important; }

@media (max-width:1180px) {
    .mp-prof-signup { width:min(1140px, calc(100% - 24px)); grid-template-columns:minmax(310px,36%) minmax(0,64%); }
}
@media (max-width:960px) {
    .mp-prof-signup { grid-template-columns:1fr; }
    .mp-ps-intro, .mp-ps-main { min-height:0; }
    .mp-ps-switch { margin-top:16px; }
}
@media (max-width:680px) {
    .mp-prof-signup-shell { padding:10px 0 18px; }
    .mp-prof-signup { width:min(100% - 18px,1140px); }
    .mp-ps-intro, .mp-ps-main { padding:20px 16px; }
    .mp-ps-intro h2, .mp-ps-head h1, .mp-ps-success h2 { font-size:28px; }
    .mp-ps-intro > p, .mp-ps-head p, .mp-ps-section-title p, .mp-ps-benefits strong, .mp-ps-benefits small, .mp-ps-field > span, .mp-ps-field input, .mp-ps-field select, .mp-ps-field textarea, .mp-ps-check, .mp-ps-btn { font-size:11px; }
    .mp-ps-grid.is-two { grid-template-columns:1fr; }
    .mp-ps-grid.is-two > div:empty { display:none; }
    .mp-ps-head { display:grid; }
    .mp-ps-head > a { justify-self:start; }
    .mp-ps-stepper { padding-left:0; padding-right:0; }
    .mp-ps-docs { grid-template-columns:1fr; }
    .mp-ps-review dl, .mp-ps-success dl { grid-template-columns:1fr; }
    .mp-ps-actions { flex-wrap:wrap; }
    .mp-ps-btn.is-primary { min-width:150px; }
}
