
/* AMC 2027 registration V14: isolated responsive cards; overrides legacy nth-child styles */
#registration .cms-packages-legacy-v14[hidden] {display:none !important;}
#registration .section-heading > p {max-width: 540px;}
#registration .reg14-deadlines {
 display:flex; align-items:stretch; gap:26px; background:#fff; border:1px solid #dce6f4;
 border-radius:18px; margin:14px 0 30px; padding:20px 26px; box-shadow:0 8px 28px rgba(20,40,85,.04);
}
#registration .reg14-deadlines > div {display:flex; flex:1; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:6px 16px; min-width:0;}
#registration .reg14-deadline-type {font-size:13px; font-weight:650; color:#455a7c;}
#registration .reg14-deadlines time {font-size:16px; color:#1b2f59; white-space:nowrap;}
#registration .reg14-deadline-divider {width:1px; flex:none; background:#dce6f4;}
#registration .registration-v14 {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin:0;}
#registration .registration-v14 .reg14-card {
 --reg-accent:#2f66c7; --reg-tint:#eef5ff; --reg-text:#142c58;
 display:flex; flex-direction:column; min-width:0; margin:0; padding:30px;
 border:1px solid #e4eaf2; border-top:6px solid var(--reg-accent); border-radius:22px;
 background:#fff !important; color:#213552 !important;
 box-shadow:0 12px 40px rgba(20,40,85,.055);
 transition:transform .22s ease, box-shadow .22s ease;
}
#registration .registration-v14 .reg14-card:hover {transform:translateY(-4px); box-shadow:0 18px 48px rgba(20,40,85,.11);}
#registration .registration-v14 .reg14-teal {--reg-accent:#008e88; --reg-tint:#e7f8f5; --reg-text:#0c5b54;}
#registration .registration-v14 .reg14-violet {--reg-accent:#7b55c5; --reg-tint:#f3edff; --reg-text:#51388e;}
#registration .registration-v14 .reg14-coral {--reg-accent:#e56a46; --reg-tint:#fff2ec; --reg-text:#9f3b21;}
#registration .reg14-top {display:flex; align-items:center; justify-content:space-between; gap:12px; border:0; padding:0; margin:0;}
#registration .registration-v14 .reg14-eyebrow {font-size:11px; letter-spacing:.105em; color:var(--reg-accent) !important; font-weight:800;}
#registration .reg14-circle {display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:none; color:var(--reg-accent); border-radius:50%; background:var(--reg-tint); font-size:18px;}
#registration .registration-v14 h3 {margin:10px 0 2px; font-size:clamp(22px,2.4vw,29px); line-height:1.2; color:#182b4b !important;}
#registration .registration-v14 p.reg14-subtitle {margin:0 0 24px; font-size:14px; line-height:1.6; color:#5c6b84 !important;}
#registration .reg14-prices {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; padding:0; border:0;}
#registration .reg14-price {min-width:0; padding:15px 18px; border-radius:14px; display:flex; flex-direction:column; gap:4px; background:#f6f8fc; border:1px solid #e9ecf4;}
#registration .reg14-price.reg14-early {background:var(--reg-tint); border-color:transparent;}
#registration .reg14-price-label {color:#52627a; font-weight:650; font-size:12px; line-height:1.3; letter-spacing:0;}
#registration .reg14-price strong {color:#1e2f4c; font-size:clamp(26px,2.8vw,35px); line-height:1.2; letter-spacing:-.035em; font-variant-numeric:tabular-nums;}
#registration .reg14-price.reg14-early strong {color:var(--reg-text);}
#registration .registration-v14 ul.reg14-features {list-style:none; margin:26px 0 0; padding:0; display:grid; gap:12px; font-size:14px; line-height:1.5;}
#registration .reg14-features li {display:flex; align-items:flex-start; gap:10px; padding:0; color:#465771;}
#registration .reg14-features li svg {display:block; flex:none; width:17px; height:17px; margin-top:2px; color:var(--reg-accent);}
#registration .reg14-extras {margin-top:22px; padding:24px 28px; display:flex; align-items:center; gap:18px; border-radius:18px; background:#132f52; color:#fff;}
#registration .reg14-extras-icon {flex:none; width:42px; height:42px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:#ffffff1f; color:#fff; font-size:29px;}
#registration .reg14-extras-content {min-width:0; display:flex; flex-direction:column; gap:5px; flex:1;}
#registration .reg14-extras-content strong {font-size:19px; font-weight:750; color:white;}
#registration .reg14-extras-content span {font-size:13px; color:#d8e5f4;}
#registration .reg14-extras-price {display:flex; flex-direction:column; align-items:end; gap:2px; flex:none;}
#registration .reg14-extras-price strong {font-size:35px; line-height:1.15; color:#fff;}
#registration .reg14-extras-price span {font-size:12px; color:#d7e7f2;}
#registration .reg14-after-note {max-width:880px; font-size:13px; line-height:1.6; margin:16px 0 0; color:#52627a;}
#dates .reg14-date-hint {font-size:14px; line-height:1.6; padding:12px 16px; border-radius:12px; background:rgba(255,255,255,.11); border:1px solid rgba(255,255,255,.18); margin-top:14px;}
#dates .reg14-date-hint strong {font-weight:750;}
@media(max-width:850px){
 #registration .registration-v14 {grid-template-columns:1fr;}
 #registration .reg14-deadlines {gap:18px; padding:18px 20px;}
 #registration .reg14-deadlines > div {flex-direction:column; align-items:flex-start; gap:5px;}
}
@media(max-width:600px){
 #registration .reg14-deadlines {flex-direction:column; gap:14px; margin-bottom:22px;}
 #registration .reg14-deadline-divider {height:1px; width:100%;}
 #registration .registration-v14 .reg14-card {padding:22px; border-radius:18px;}
 #registration .reg14-prices {gap:8px;}
 #registration .reg14-price {padding:12px;}
 #registration .reg14-price strong {font-size:clamp(23px,7vw,32px);}
 #registration .reg14-extras {padding:20px; gap:12px; flex-wrap:wrap;}
 #registration .reg14-extras-price {align-items:flex-start; margin-left:54px; width:calc(100% - 54px); border-top:1px solid rgba(255,255,255,.18); padding-top:10px;}
}
@media(max-width:360px){
 #registration .reg14-extras-price {margin-left:0; width:100%;}
}
@media(prefers-reduced-motion:reduce){#registration .registration-v14 .reg14-card{transition:none;}#registration .registration-v14 .reg14-card:hover{transform:none;}}
