.registration-hero{padding:95px 7vw 85px;background:linear-gradient(118deg,#073d5b 0%,#0c557d 58%,#528e96 100%);color:#fff;position:relative;overflow:hidden}
.registration-hero:after{content:"";position:absolute;width:520px;height:520px;border:1px solid #ffffff2b;border-radius:50%;right:-120px;top:-250px}
.registration-hero>div{max-width:1100px;margin:auto;position:relative;z-index:1}
.registration-hero .eyebrow{color:#b8dde0}
.registration-hero h1{font:500 clamp(54px,7vw,94px)/.92 'Cormorant Garamond';max-width:900px;margin:16px 0 24px}
.registration-hero p{font-size:18px;max-width:760px;color:#eaf4f5}
.registration-hero ul{display:flex;gap:28px;flex-wrap:wrap;padding:24px 0 0;margin:0;list-style:none}
.registration-hero li{font-size:12px;padding-left:19px;position:relative}
.registration-hero li:before{content:"✓";position:absolute;left:0;color:#b8dde0;font-weight:700}
.registration-section{padding:7vw 6vw;background:var(--cream)}
.registration-shell{max-width:1180px;margin:auto;display:grid;grid-template-columns:.78fr 1.22fr;gap:6vw;align-items:start}
.registration-context{padding-top:35px}
.registration-context .eyebrow{color:var(--aqua)}
.registration-context h2,.registration-success h2{font:500 clamp(42px,5vw,63px)/1 'Cormorant Garamond';color:var(--blue);margin:12px 0 22px}
.registration-context .text-link{display:inline-block;margin-top:18px;color:var(--blue);font-weight:600}
.registration-card{background:#fff;border:1px solid var(--line);padding:clamp(28px,4vw,52px);box-shadow:0 20px 55px #12384d12}
.registration-progress{display:grid;grid-template-columns:1fr 1fr;margin-bottom:38px;position:relative}
.registration-progress:before{content:"";position:absolute;height:1px;background:var(--line);left:24px;right:24px;top:18px}
.registration-progress span{display:flex;align-items:center;gap:10px;position:relative;color:#829097}
.registration-progress span:last-child{justify-content:flex-end}
.registration-progress b{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-size:12px;font-style:normal;z-index:1}
.registration-progress i{font-size:11px;font-style:normal;font-weight:600;text-transform:uppercase;letter-spacing:.08em;background:#fff;z-index:1;padding:0 5px}
.registration-progress span.active{color:var(--blue)}
.registration-progress span.active b{background:var(--blue);border-color:var(--blue);color:#fff}
.registration-step{border:0;padding:0;margin:0;display:none}
.registration-step.active{display:block}
.registration-step legend{font:500 34px/1.1 'Cormorant Garamond';color:var(--blue);padding:0;margin-bottom:10px}
.step-copy{font-size:12px;margin:0 0 25px}
.registration-card .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.registration-card .field.full{grid-column:1/-1}
.registration-card .field label{display:block;color:var(--ink);font-size:11px;font-weight:600;margin-bottom:7px}
.registration-card input,.registration-card select,.registration-card textarea{width:100%;min-height:48px;border:1px solid #cbd8d5;background:#fff;padding:11px 13px;color:var(--ink);font:14px Montserrat,sans-serif;border-radius:0}
.registration-card textarea{min-height:100px;resize:vertical}
.registration-card input:focus,.registration-card select:focus,.registration-card textarea:focus{outline:2px solid var(--aqua);outline-offset:1px;border-color:var(--aqua)}
.registration-card input.invalid,.registration-card select.invalid{border-color:#a13c35;background:#fff8f7}
.registration-card .choice label{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.55}
.registration-card .choice input{width:18px;min-height:18px;margin-top:2px;flex:0 0 auto}
.registration-card .next-step{margin-top:26px;width:100%}
.step-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.step-actions .button{flex:1;text-align:center}
.selected-property{background:var(--mist);border-left:3px solid var(--aqua);padding:12px 15px;color:var(--blue);font-size:12px;margin:0 0 24px}
.form-message{font-size:12px;margin:16px 0 0;min-height:20px}
.form-message.error{color:#a13c35}
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.registration-success{text-align:center;padding:24px 0}
.success-mark{display:grid;place-items:center;margin:auto;width:58px;height:58px;border-radius:50%;background:var(--green);color:#fff;font-size:28px}
.registration-success p{max-width:560px;margin:0 auto}
.registration-privacy{font-size:10px;color:#748188;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.registration-privacy a{color:var(--blue);text-decoration:underline}
@media(max-width:980px){.registration-shell{grid-template-columns:1fr}.registration-context{padding-top:0}.registration-hero{padding:75px 7vw}.registration-hero h1{font-size:clamp(52px,12vw,76px)}}
@media(max-width:620px){.registration-section{padding:60px 5vw}.registration-card{padding:28px 20px}.registration-card .form-grid{grid-template-columns:1fr}.registration-card .field.full{grid-column:auto}.registration-progress i{font-size:9px}.registration-hero ul{display:block}.registration-hero li{margin:8px 0}.step-actions{display:grid}.step-actions .button{width:100%}}
