.plan-shell{flex-direction:column;gap:36px;width:100%;max-width:1200px;margin:0 auto;padding:64px 20px 96px;display:flex}.plan-header h1{margin:8px 0 16px;font-size:clamp(2.2rem,5vw,3.6rem)}.plan-header p{max-width:70ch;color:var(--muted);margin:0}.plan-header p+p{margin-top:12px}.plan-grid{grid-template-columns:minmax(0,2.5fr) minmax(320px,1fr);align-items:start;gap:32px;display:grid}.plan-main{flex-direction:column;gap:32px;display:flex}.plan-media{border:1px dashed var(--border);background:#ffffff80;border-radius:28px;flex-direction:column;display:flex;overflow:hidden}.plan-media-primary{min-height:420px;color:var(--muted);font-size:1rem;position:relative;overflow:hidden}.plan-media-primary span{text-align:center;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.plan-media-primary img{-o-object-fit:cover;object-fit:cover;position:absolute;inset:0}.plan-media-secondary{border-top:1px dashed var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.plan-media-thumb{border-right:1px dashed var(--border);background:#fff6;min-height:200px;position:relative;overflow:hidden}.plan-media-thumb:last-child{border-right:none}.plan-media-thumb img{-o-object-fit:cover;object-fit:cover;position:absolute;inset:0}.plan-media-thumb span{text-align:center;color:var(--muted);justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.plan-options-card{position:sticky;top:110px}.plan-options-card-body{border:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f7f0e2e6;border-radius:22px;flex-direction:column;gap:18px;padding:22px;display:flex;box-shadow:0 25px 60px #3e3e3e1f}.plan-option-group{border-top:1px solid var(--border);padding-top:16px}.plan-option-group:first-of-type{border-top:none;padding-top:0}.plan-option-label{text-transform:uppercase;letter-spacing:.2em;color:var(--muted);margin:0 0 8px;font-size:.75rem}.plan-option-copy{margin:0}.plan-radio-group{flex-direction:column;gap:8px;margin-top:10px;display:flex}.plan-radio-option{color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:2px 0;transition:color .2s;display:flex}.plan-radio-option.is-selected{background:0 0}.plan-radio-circle{border:2px solid var(--muted);box-sizing:border-box;background:0 0;border-radius:50%;flex:0 0 14px;width:14px;height:14px;transition:border-color .2s,background-color .2s}.plan-radio-option.is-selected .plan-radio-circle{box-shadow:none;background:#000;border-color:#000}.plan-options-totals{flex-direction:column;gap:16px;margin-top:12px;display:flex}.plan-price{margin:4px 0 0;font-size:1.25rem;font-weight:600}.plan-cta-helper{color:var(--muted);margin:-4px 0 0;font-size:.85rem}.plan-info-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.plan-info-card{border:1px solid var(--border);background:#ffffffa6;border-radius:22px;padding:24px}.plan-info-card:first-child,.plan-info-card.is-full-width{grid-column:1/-1}.plan-floorplan-stack{border:1px dashed var(--border);background:#ffffff80;border-radius:22px;flex-direction:column;grid-column:1/-1;display:flex;overflow:hidden}.plan-floorplan-frame{min-height:360px;position:relative;overflow:hidden}.plan-floorplan-frame+.plan-floorplan-frame{border-top:1px dashed var(--border)}.plan-floorplan-frame span{text-align:center;color:var(--muted);justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.plan-info-card h3{margin:0 0 12px}.plan-info-card p{color:var(--text);margin:0}.plan-spec-table{border-collapse:collapse;border:1px solid var(--border);width:100%;margin-top:4px}.plan-spec-table th,.plan-spec-table td{border:1px solid var(--border);text-align:left;padding:10px 14px}.plan-spec-table th{width:52%;font-weight:600}.plan-spec-table tbody tr:nth-child(odd){background:#fffc}.plan-spec-table tbody tr:nth-child(2n){background:#f5eee18c}.plan-info-card ul{color:var(--text);margin:0;padding-left:18px}.plan-info-card li+li{margin-top:6px}@media (max-width:960px){.plan-grid{grid-template-columns:1fr}.plan-options-card{position:static}}
