@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400&family=IBM+Plex+Mono:wght@300;400;500&display=swap";:root{--bg:#f5f0e8;--paper:#faf7f2;--ink:#1a1612;--muted:#8a7f72;--border:#d4c9b8;--accent:#c0392b;--accent2:#2980b9;--accent3:#27ae60;--reach:#c0392b;--moderate:#e67e22;--safe:#27ae60}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--ink);background-image:radial-gradient(at 20%,#c0392b0a 0%,#0000 60%),radial-gradient(at 80% 20%,#2980b90a 0%,#0000 60%);min-height:100vh;font-family:IBM Plex Mono,monospace}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border)}.modal-overlay{z-index:1000;background:#1a1612ad;justify-content:center;align-items:center;padding:24px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.modal-box{background:var(--paper);border:1px solid var(--border);border-top:3px solid var(--ink);width:100%;max-width:740px;max-height:90vh;animation:.2s slideUp;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 28px 16px;display:flex}.modal-college-name{letter-spacing:-.5px;font-family:Playfair Display,serif;font-size:22px;font-weight:700;line-height:1.2}.modal-college-location{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:10px}.modal-close{border:1px solid var(--border);color:var(--muted);cursor:pointer;letter-spacing:.06em;background:0 0;flex-shrink:0;padding:6px 14px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:all .12s}.modal-close:hover{border-color:var(--ink);color:var(--ink)}.modal-body{padding:24px 28px}.preview-area{border:1px solid var(--border);background:var(--bg);height:420px;position:relative;overflow:hidden}.preview-area iframe{border:none;width:100%;height:100%}.blur-overlay{background:linear-gradient(transparent, var(--bg));pointer-events:none;height:140px;position:absolute;bottom:0;left:0;right:0}.modal-actions{align-items:center;gap:10px;margin-top:20px;display:flex}.btn-unlock{background:var(--ink);color:var(--bg);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;padding:12px 28px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:500;transition:background .15s}.btn-unlock:hover{background:var(--accent)}.btn-unlock:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--border);cursor:pointer;background:0 0;padding:12px 20px;font-family:IBM Plex Mono,monospace;font-size:11px;transition:all .12s}.btn-secondary:hover{border-color:var(--ink);color:var(--ink)}.unlock-note{color:var(--muted);letter-spacing:.04em;margin-top:10px;font-size:10px}.unlocked-badge{color:var(--accent3);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--accent3);align-items:center;gap:6px;padding:4px 12px;font-size:10px;display:inline-flex}.paywall-box{background:var(--paper);border:1px solid var(--border);border-top:3px solid var(--accent);width:100%;max-width:480px;animation:.2s slideUp}.paywall-header{border-bottom:1px solid var(--border);padding:24px 28px 16px}.paywall-title{letter-spacing:-.4px;font-family:Playfair Display,serif;font-size:20px;font-weight:700}.paywall-subtitle{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:10px}.paywall-body{padding:24px 28px}.paywall-footer{gap:10px;padding:0 28px 24px;display:flex}.paywall-price{letter-spacing:-1px;margin-bottom:4px;font-family:Playfair Display,serif;font-size:38px;font-weight:900}.paywall-price span{color:var(--muted);font-size:14px;font-weight:400}.paywall-includes{margin:16px 0 24px}.paywall-includes li{color:var(--muted);border-bottom:1px solid var(--border);letter-spacing:.03em;align-items:center;gap:10px;padding:7px 0;font-size:11px;list-style:none;display:flex}.paywall-includes li:before{content:"\11 92";color:var(--accent3)}.stripe-note{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;text-align:center;padding-bottom:20px;font-size:9px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
