.landing{background:var(--color-paper);background-image:repeating-linear-gradient(to bottom, transparent 0, transparent 35px, var(--color-graphite-hairline) 35px, var(--color-graphite-hairline) 36px);flex-direction:column;min-height:100vh;display:flex}.landing-header{padding:var(--space-5) var(--space-8);background:var(--color-paper-raised);border-bottom:1px solid var(--color-graphite-hairline);z-index:10;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.landing-brand{align-items:baseline;gap:var(--space-2);text-decoration:none;display:flex}.landing-brand .mark{font-family:var(--font-hand);font-style:italic;font-size:var(--text-2xl);color:var(--color-margin-red);line-height:1}.landing-brand h1{font-size:var(--text-xl);letter-spacing:-.01em;color:var(--color-ink)}.landing-header-cta{font-family:var(--font-body);font-weight:500;font-size:var(--text-sm);color:var(--color-rule-blue);padding:var(--space-2) var(--space-4);border:1px solid var(--color-rule-blue);border-radius:var(--radius-sm);text-decoration:none;transition:background .15s,color .15s}.landing-header-cta:hover{background:var(--color-rule-blue);color:#fff}.landing-hero{padding:var(--space-10) var(--space-8) var(--space-8);text-align:center;width:100%;max-width:820px;margin:0 auto}.landing-hero h2{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--color-ink);margin-bottom:var(--space-4);font-weight:700;line-height:1.2}.landing-hero h2 em{color:var(--color-margin-red);font-style:normal;position:relative}.landing-hero h2 em:after{content:"";background:var(--color-margin-red);opacity:.5;border-radius:2px;height:3px;position:absolute;bottom:-3px;left:0;right:0}.landing-hero-sub{font-size:var(--text-lg);color:var(--color-ink-soft);max-width:540px;margin:0 auto var(--space-6);line-height:1.6}.school-selector{max-width:460px;margin:0 auto var(--space-8);background:var(--color-paper-raised);border:1px solid var(--color-graphite-hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5);text-align:left}.school-selector label{font-size:var(--text-sm);color:var(--color-ink-soft);margin-bottom:var(--space-2);font-weight:500;display:block}.school-selector input{width:100%;font-family:var(--font-body);font-size:var(--text-base);border:1px solid var(--color-graphite-hairline);border-radius:var(--radius-sm);background:var(--color-paper);color:var(--color-ink);padding:.65rem .75rem;transition:border-color .15s,box-shadow .15s}.school-selector input:focus{border-color:var(--color-rule-blue);outline:none;box-shadow:0 0 0 3px #3f5d8226}.school-selector-hint{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-graphite)}.role-grid-section{max-width:900px;margin:0 auto var(--space-10);padding:0 var(--space-8);width:100%}.role-grid-section h3{font-size:var(--text-sm);color:var(--color-graphite);text-transform:uppercase;letter-spacing:.06em;text-align:center;margin-bottom:var(--space-5);font-weight:500}.role-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.role-card{background:var(--color-paper-raised);border:1px solid var(--color-graphite-hairline);border-radius:var(--radius-md);padding:var(--space-5);cursor:pointer;gap:var(--space-2);box-shadow:var(--shadow-card);flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex;position:relative;overflow:hidden}.role-card:before{content:"";background:var(--color-margin-red);opacity:0;height:3px;transition:opacity .15s;position:absolute;top:0;left:0;right:0}.role-card:hover{border-color:var(--color-rule-blue);box-shadow:var(--shadow-raised);transform:translateY(-2px)}.role-card:hover:before{opacity:1}.role-card.coming-soon{opacity:.55;cursor:not-allowed;pointer-events:none}.role-card.coming-soon:after{content:"Coming soon";top:var(--space-2);right:var(--space-2);font-family:var(--font-mono);background:var(--color-graphite-hairline);color:var(--color-graphite);text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:.15rem .4rem;font-size:.65rem;position:absolute}.role-card-icon{font-size:1.75rem;line-height:1}.role-card-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-ink);font-weight:600}.role-card-desc{font-size:var(--text-sm);color:var(--color-ink-soft);line-height:1.45}.role-card-action{padding-top:var(--space-3);font-size:var(--text-sm);color:var(--color-rule-blue);align-items:center;gap:var(--space-1);margin-top:auto;font-weight:600;display:flex}.landing-features{background:var(--color-paper-raised);border-top:1px solid var(--color-graphite-hairline);border-bottom:1px solid var(--color-graphite-hairline);padding:var(--space-8) var(--space-8)}.landing-features-inner{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-width:900px;margin:0 auto;display:grid}.feature-item h4{font-family:var(--font-display);font-size:var(--text-base);color:var(--color-ink);margin-bottom:var(--space-2);font-weight:600}.feature-item p{font-size:var(--text-sm);color:var(--color-ink-soft);margin:0;line-height:1.5}.feature-dot{background:var(--color-margin-red);width:10px;height:10px;margin-right:var(--space-2);opacity:.75;border-radius:50%;display:inline-block}.landing-footer{padding:var(--space-6) var(--space-8);border-top:1px solid var(--color-graphite-hairline);font-size:var(--text-xs);color:var(--color-graphite);justify-content:space-between;align-items:center;margin-top:auto;display:flex}.landing-footer a{color:var(--color-graphite);text-decoration:none}.landing-footer a:hover{color:var(--color-rule-blue)}
