/* Approved river-blue artwork stays in place; real controls and data share its rhythm. */
:root{--rf-blue:#216cd6;--rf-deep:#153b64;--rf-muted:#738399;--rf-line:#e7edf5;--rf-paper:#f5f8fc;--rf-ease:cubic-bezier(.2,.8,.2,1)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rf-section{padding:28px 24px}.rf-section+.rf-section{border-top:1px solid var(--rf-line)}.rf-section h2{font:700 24px/1.55 var(--display);color:var(--rf-deep);margin:0 0 18px}.rf-section h3{font-size:16px;line-height:1.6;font-weight:500}.rf-paper{background:linear-gradient(150deg,#f4f8fe,#fff 75%)}.rf-section-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.rf-section-head>svg{width:32px;height:32px;color:#80a6d4}.rf-section-head .eyebrow{margin:0 0 8px}.rf-caption{font-size:12px;line-height:1.8;color:var(--rf-muted);margin:12px 0}.rf-caption.center{text-align:center}.rf-provenance{font-size:11px;color:var(--rf-muted);padding:0 24px;line-height:1.8;margin:0 0 18px}.rf-body-copy{font-size:14px;line-height:2.1;color:#56667a;white-space:pre-line}.rf-inline-hint{font-size:13px!important;line-height:1.85!important;padding:15px 17px;background:#edf5ff;border-left:2px solid #88b7f4;border-radius:0 12px 12px 0;color:#4c6c91!important;margin:14px 0 24px}.rf-loading{display:flex;align-items:center;gap:10px;min-height:90px;justify-content:center;color:var(--rf-muted);font-size:13px}.rf-empty{padding:32px 12px;text-align:center}.rf-empty>svg{height:30px;width:30px;color:#80a6d4;display:block;margin:0 auto 12px}.rf-empty h3{font:600 20px/1.6 var(--display);color:var(--rf-deep);margin:0 0 10px}.rf-empty p{font-size:13px;line-height:1.9;color:var(--rf-muted);margin:0 auto 20px;max-width:340px}.rf-empty .secondary{display:inline-flex}
.teacher-story[data-teacher-link]{cursor:pointer}.teacher-story .story-photo{display:block;min-width:0;overflow:hidden}.teacher-story .story-photo img{width:100%;height:100%;min-height:280px;object-fit:cover;transition:transform .5s var(--rf-ease)}.teacher-story .story-copy h2 a{color:inherit}.teacher-story:active .story-photo img{transform:scale(1.025)}.rf-teacher-hero{align-items:stretch}.rf-teacher-hero>img{object-fit:cover;min-height:340px}.rf-teacher-hero .story-copy{padding:24px 16px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.rf-teacher-hero h1{font-size:32px;overflow-wrap:anywhere}.rf-teacher-hero blockquote{font-size:18px;margin:20px 0}.rf-profile-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:24px 16px 18px;gap:4px}.rf-profile-facts>div{text-align:center;border-right:1px solid var(--rf-line)}.rf-profile-facts>div:last-child{border:0}.rf-profile-facts strong{display:block;font-size:27px;line-height:1.4;letter-spacing:-1px;color:var(--rf-deep);font-weight:500;font-variant-numeric:tabular-nums}.rf-profile-facts strong small{font-size:12px;letter-spacing:0}.rf-profile-facts span{display:block;font-size:10px;color:var(--rf-muted);margin-top:6px}.rf-profile-facts.rf-three{grid-template-columns:repeat(3,minmax(0,1fr));padding:5px 0 30px}.rf-radar>svg{width:100%;height:auto;max-height:300px;display:block;overflow:visible;fill:var(--rf-blue);stroke:none}.rf-radar-grid{fill:none;stroke:#d8e6f6;stroke-width:1}.rf-radar>svg text{font:12px 'Microsoft YaHei',sans-serif;fill:#547295;stroke:none}.rf-radar-area{fill:#2d7bde24;stroke:#357ed8;stroke-width:1.8;stroke-linejoin:round;animation:rf-radar-reveal .45s var(--rf-ease)}.rf-radar dl{display:flex;gap:4px;justify-content:space-between;text-align:center;margin:0}.rf-radar dl>div{flex:1}.rf-radar dt{font-size:10px;color:var(--rf-muted)}.rf-radar dd{margin:7px 0;font-size:18px;color:var(--rf-deep)}.rf-radar dd small{font-size:10px;color:var(--rf-muted)}.rf-score-notes{display:flex;gap:10px;justify-content:space-between;border-top:1px solid var(--rf-line);padding-top:17px}.rf-score-notes>span{font-size:11px;color:var(--rf-muted)}.rf-score-notes b{display:block;margin-top:8px;font-size:17px;font-weight:500;color:var(--rf-deep)}.rf-score-notes b small{font-size:11px;color:var(--rf-muted)}.rf-case{padding:14px 0;border-bottom:1px solid var(--rf-line)}.rf-case p{font-size:13px;line-height:1.8;color:var(--rf-muted)}.rf-case-scores{display:flex;align-items:center;gap:20px;color:var(--rf-blue)}.rf-case-scores>span{font-size:32px}.rf-case-scores small{display:block;font-size:11px;color:var(--rf-muted)}.rf-photo-caption{position:relative;margin-top:20px;overflow:hidden;border-radius:12px}.rf-photo-caption img{width:100%;height:210px;object-fit:cover}.rf-photo-caption>span{display:block;font-size:10px;color:var(--rf-muted);padding:9px 0;background:white}.rf-detail-list{margin:0}.rf-detail-list>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--rf-line);font-size:13px;line-height:1.9}.rf-detail-list dt{color:var(--rf-muted)}.rf-detail-list dd{margin:0;color:#365370;overflow-wrap:anywhere;white-space:pre-line}.rf-video{margin:15px 0}.rf-video video{width:100%;border-radius:12px}.rf-video figcaption{font-size:12px;color:var(--rf-muted);padding:8px 0}.rf-review{margin:10px 0;padding:16px;border-left:2px solid #a9c8ef;font-size:14px;line-height:1.9;background:#f7faff}.rf-review small{display:block;font-size:11px;color:var(--rf-muted);margin-top:10px}.rf-availability{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:16px;margin-bottom:24px}.rf-availability img{height:170px;object-fit:cover;border-radius:12px}.rf-availability p{font-size:12px;color:var(--rf-muted);line-height:1.9}.rf-match-invite{display:flex;justify-content:center;align-items:center;gap:8px;padding:20px 0 0;font-size:12px;color:#4f79a7}
.rf-search-assist{display:flex;align-items:center;gap:12px;margin:14px 0 5px;padding:16px 0;color:var(--rf-deep);border-top:1px solid var(--rf-line)}.rf-search-assist>span{width:40px;height:40px;flex-shrink:0;border:1px solid #dbe9fa;border-radius:50%;display:grid;place-items:center;background:#f4f8ff;color:var(--rf-blue)}.rf-search-assist>div{flex:1}.rf-search-assist strong{font-size:13px;font-weight:500}.rf-search-assist small{display:block;font-size:11px;line-height:1.7;color:var(--rf-muted);margin-top:5px}.rf-search-assist>svg{width:17px;flex-shrink:0}.rf-button-arrow{margin-left:auto;font-size:23px;font-weight:400}.home-finder .primary{border-radius:16px;padding:14px 20px;background:linear-gradient(120deg,#2979e5,#135fc5);box-shadow:0 5px 15px #246ad320;font-weight:500}.home-finder .primary>svg{width:23px;height:23px;stroke-width:1.5}.rf-match-form .question{margin-bottom:32px}.rf-match-form legend{font-size:17px;line-height:1.7}.rf-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.rf-field{display:block;min-width:0;margin:12px 0}.rf-field>span{display:block;font-size:12px;color:#5e7188;margin:0 0 9px}.rf-field input,.rf-field select,.rf-field textarea{display:block;width:100%;min-width:0;min-height:46px;border:1px solid #dfe7f1;border-radius:12px;padding:12px;background:#fff;color:#24435f;font-size:14px;transition:border-color .2s,box-shadow .2s}.rf-field input:focus,.rf-field select:focus,.rf-field textarea:focus{outline:none;border-color:#80aef0;box-shadow:0 0 0 3px #2d7cdf12}.rf-field input::placeholder,.rf-field textarea::placeholder{color:#96a4b6;font-size:12px}.rf-field textarea{resize:vertical;line-height:1.8}.rf-fields>.rf-field{margin:0}.rf-purpose{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rf-purpose label{position:relative;cursor:pointer}.rf-purpose input{position:absolute;opacity:0}.rf-purpose label>span{border:1px solid #dfe7f1;border-radius:14px;padding:16px 12px;display:block;background:#fff;transition:background .2s,border-color .2s,transform .2s}.rf-purpose strong{font-size:14px;font-weight:500;display:block}.rf-purpose small{font-size:10px;color:var(--rf-muted);display:block;margin-top:6px}.rf-purpose input:checked+span{border-color:#7facf0;background:#f1f7ff;color:var(--rf-blue);box-shadow:inset 0 0 0 .5px #7facf0}.rf-purpose input:focus-visible+span{outline:2px solid var(--rf-blue);outline-offset:3px}.rf-purpose label:active>span{transform:scale(.98)}.rf-service-chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 15px}.rf-service-chips button{padding:9px 12px;border-radius:20px;background:#ffffffd9;border:1px solid #dce7f4;font-size:12px;color:#456485;transition:background .2s,color .2s}.rf-service-chips button[aria-pressed=true]{color:#fff;background:#226ccd;border-color:#226ccd}.live-map-stage:has(.rf-service-chips) .map-content{padding-bottom:15px}.rf-tool-hero{min-height:250px}.rf-tool-hero h1{font-size:32px;max-width:100%;line-height:1.65}.rf-tool-hero>p{font-size:13px;max-width:92%;line-height:1.9}.rf-tool-hero>.hero-art{opacity:.47}.rf-learning-tools{margin:0 24px 30px}.rf-action-row{display:flex;align-items:center;gap:15px;padding:20px 0;border-bottom:1px solid var(--rf-line);text-align:left;min-width:0}.rf-action-row>span:nth-child(2){flex:1;min-width:0}.rf-action-row strong{display:block;font-size:15px;font-weight:500;color:var(--rf-deep);line-height:1.6}.rf-action-row small{display:block;font-size:11px;color:var(--rf-muted);line-height:1.8;margin-top:4px}.rf-action-row>svg{width:17px;height:17px;color:#83a0bd;flex-shrink:0}.rf-glyph{width:40px;height:40px;display:grid;place-items:center;flex-shrink:0;color:#447bbd;border:1px solid #e2ecf8;border-radius:12px;background:#f7faff}.rf-glyph svg{width:22px;height:22px;stroke-width:1.5}.rf-action-row:hover .rf-glyph{background:#edf5ff}.rf-action-row:active{transform:translateX(2px)}.rf-upload{position:relative;display:flex;align-items:center;flex-direction:column;padding:35px 16px;margin:25px 0 10px;border:1px dashed #abc9ef;border-radius:16px;background:#f6faff;text-align:center;cursor:pointer;overflow:hidden}.rf-upload>svg{height:30px;width:30px;color:#5b95d8}.rf-upload>strong{font-size:16px;font-weight:500;margin:13px 0 7px;color:var(--rf-deep)}.rf-upload>span{font-size:11px;color:var(--rf-muted)}.rf-upload input{display:block;font-size:12px;width:100%;margin-top:18px;color:var(--rf-muted)}.rf-file-summary{font-size:11px;color:var(--rf-muted);overflow-wrap:anywhere;line-height:1.8}.rf-form-status{font-size:13px;line-height:1.8;margin:12px 0;white-space:pre-line}.rf-tabs{display:flex;gap:5px;padding:5px;border-radius:14px;background:#edf3fa;margin:0 0 23px}.rf-tabs button,.rf-tabs a{flex:1;padding:9px 3px;font-size:12px;border-radius:10px;text-align:center;color:#718398;transition:all .2s var(--rf-ease)}.rf-tabs [aria-pressed=true],.rf-tabs [aria-current=page]{background:#fff;color:var(--rf-blue);box-shadow:0 2px 5px #263f6510}.rf-record{padding:22px 0;border-bottom:1px solid var(--rf-line);display:block}.rf-record h2{font-size:22px;margin:14px 0 8px}.rf-record p{font-size:13px;line-height:1.9;color:var(--rf-muted)}.rf-record-top,.rf-record-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.rf-record-bottom{padding-top:12px;font-size:13px;color:var(--rf-blue)}.rf-record-bottom>span:last-child{display:flex;align-items:center;gap:8px}.rf-record-bottom svg{width:16px;height:16px}.rf-status{display:inline-block;font-size:11px;padding:5px 10px;border-radius:20px;background:#edf5ff;color:#4477b1}.rf-clickable-record{transition:background .2s}.rf-clickable-record:active{background:#f7faff}.rf-history-row{display:flex;gap:14px;padding:22px 0;width:100%;align-items:center;text-align:left;border-bottom:1px solid var(--rf-line)}.rf-history-row>span:nth-child(2){flex:1;min-width:0}.rf-history-row strong{display:block;font-size:14px;color:var(--rf-deep);font-weight:500;overflow-wrap:anywhere}.rf-history-row small{display:block;font-size:11px;color:var(--rf-muted);margin-top:8px}.rf-history-row>svg{width:16px;color:#8aa8c7;flex-shrink:0}.rf-history-dot{width:7px;height:7px;border-radius:50%;background:#80aaf0;box-shadow:0 0 0 5px #f1f6ff}.rf-advice{padding-left:24px;color:#486783;font-size:14px;line-height:2}.rf-advice li{margin:13px 0}.rf-progress-copy{display:flex;align-items:center;gap:20px;padding-bottom:25px;border-bottom:1px solid var(--rf-line);margin-bottom:10px}.rf-progress-copy strong{font-size:36px;font-weight:500;color:var(--rf-blue)}.rf-progress-copy small{font-size:18px;color:#8daccd}.rf-progress-copy>span{font-size:12px;color:var(--rf-muted)}.rf-code-row{display:flex;align-items:end;gap:10px}.rf-code-row>.rf-field{flex:1;min-width:0}.rf-code-row>button{margin-bottom:12px;white-space:nowrap;min-height:46px;font-size:12px;padding:8px 12px}.rf-status-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#f2f7ff;padding:18px;border-radius:12px;margin:0 0 16px}.rf-status-banner>span{display:flex;align-items:center;gap:9px;font-size:12px;color:#6785a5}.rf-status-banner strong{font-size:14px;font-weight:500;color:var(--rf-blue)}
.rf-service-heading{padding:24px 24px 18px;border-bottom:1px solid var(--rf-line)}.rf-service-heading h1{font:700 28px/1.5 var(--display);color:var(--rf-deep);margin:9px 0}.rf-service-heading p:not(.eyebrow){font-size:12px;line-height:1.8;color:var(--rf-muted);margin:8px 0}.rf-engine-wrap{position:relative;min-height:570px}.rf-engine{display:block;width:100%;height:max(620px,calc(100dvh - 165px));border:0;background:#fff;opacity:0;transition:opacity .22s var(--rf-ease)}.rf-engine.ready{opacity:1}.rf-engine-loading{position:absolute;top:50px;left:24px;right:24px;text-align:center;font-size:13px;color:var(--rf-muted)}.rf-service-mode .page-footer{display:none}.rf-admin-mode .app-shell{max-width:1200px}.rf-admin-mode .bottom-nav{display:none}.rf-admin-mode{padding-bottom:0!important}.rf-admin-mode .rf-engine{height:calc(100dvh - 208px);min-height:650px}.rf-admin-mode .topbar{max-width:none}.rf-professional-links{margin-top:22px;border-top:1px solid var(--rf-line)}
@keyframes rf-radar-reveal{from{opacity:0}to{opacity:1}}
@media(min-width:700px){.rf-section{padding:32px}.rf-teacher-hero>img{min-height:390px}.rf-radar{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:15px}.rf-radar dl{display:block;text-align:left}.rf-radar dl>div{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--rf-line)}.rf-radar dt{font-size:12px}.rf-radar dd{font-size:20px}.rf-radar dd small{font-size:11px}}
@media(max-width:380px){.rf-section{padding:25px 20px}.rf-profile-facts strong{font-size:23px}.rf-teacher-hero h1{font-size:27px}.rf-teacher-hero .story-copy{padding:18px 12px}.rf-teacher-hero>img{min-height:300px}.rf-teacher-hero blockquote{font-size:16px}.rf-fields{gap:14px 10px}.rf-purpose small{font-size:9px}.rf-service-chips{gap:5px}.rf-service-chips button{padding:8px 10px;font-size:11px}.rf-tool-hero h1{font-size:29px}.rf-availability{grid-template-columns:1.2fr .8fr;gap:10px}.rf-availability h2{font-size:21px}.rf-score-notes{gap:6px}.rf-detail-list>div{grid-template-columns:80px minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.rf-radar-area{animation:none}.rf-engine,.rf-purpose label>span,.teacher-story .story-photo img{transition:none}}

.app-shell{view-transition-name:none}#app{view-transition-name:page-surface}.route-moving #app{pointer-events:none}::view-transition-group(page-surface){animation:none}.teacher-story.reverse>.story-photo{order:2}

html{scroll-behavior:auto} /* Route animations stay smooth; focusing a control must not move the hit target. */
.rf-match-form>.primary,.form-body:has(.rf-form-status)>.primary{position:sticky;bottom:106px;z-index:5;box-shadow:0 6px 20px #1a59932b,0 0 0 7px #fffffff2}
.form-body:has(.rf-form-status){padding-bottom:30px}
/* Mobile density: more useful information per screen, with reachable controls. */
.home-hero .home-copy h1{font-size:29px;line-height:1.4}.services{margin:8px 20px 0;padding:0 0 12px;gap:4px}.services .service{min-height:80px;padding:8px 2px;gap:3px}.services .service>svg:first-child{width:24px;height:24px;padding:3px}.services .service>svg:last-child{display:none}.services .service strong{font-size:12px;margin-top:3px;white-space:nowrap}.services .service small{font-size:9px;white-space:nowrap}
@media(max-width:600px){
  body{font-size:13px;line-height:1.6}.topbar{height:54px;padding:0 16px;gap:9px}.brand{font-size:26px}.topbar .icon-button{width:30px;height:36px}.top-caption{font-size:10px}.top-actions svg{width:19px;height:19px}
  .section,.rf-section{padding:20px 17px}.section.compact{padding-top:12px;padding-bottom:13px}.section-title,.rf-section h2{font-size:21px;line-height:1.45;margin-bottom:13px}.rf-section h3{font-size:14px}.section-copy,.rf-body-copy{font-size:12px;line-height:1.85}.eyebrow{font-size:10px;letter-spacing:.1em}.rf-section-head .eyebrow{margin-bottom:5px}
  .hero{padding:24px 18px 22px;min-height:210px}.hero.short{padding-top:24px;padding-bottom:17px;min-height:170px}.hero h1,.rf-tool-hero h1{font-size:27px;line-height:1.5;margin-bottom:12px}.hero p,.rf-tool-hero>p{font-size:12px;line-height:1.75;margin-top:8px}.hero .eyebrow{margin-bottom:10px}.rf-tool-hero{min-height:195px}.home-hero{min-height:253px}.home-copy{padding:24px 18px 22px;max-width:78%}.home-copy h1{font-size:29px;line-height:1.35;margin-bottom:13px}.home-copy p{font-size:10px}.home-finder{margin:0 16px 18px;padding:15px}.home-finder .primary{min-height:43px;padding:10px 14px;font-size:13px;border-radius:13px}.home-finder .mt{margin-top:12px}.services{margin:0 16px 18px;gap:8px}.services .service{padding:14px 9px;min-height:114px}.services strong{font-size:13px;white-space:nowrap}.services small{font-size:10px}.services .service>svg:first-child{width:27px;height:27px}.home-teaching{gap:11px}.home-teaching h3{font-size:14px}.home-teaching p{font-size:10px}
  .search{min-height:43px}.search input{font-size:12px;min-width:0}.search button{font-size:12px;padding-left:12px;padding-right:12px;white-space:nowrap}.filter label{font-size:10px}.filter select{min-height:40px;font-size:12px;padding:9px 20px 9px 10px}.filters{gap:8px}.live-toolbar{gap:8px;flex-wrap:wrap;margin:10px 0}.live-toolbar button{font-size:11px;padding:7px 9px;white-space:nowrap}.filter-summary{font-size:10px;margin:10px 0}.rf-search-assist{gap:10px;padding:11px 0;margin:9px 0}.rf-search-assist>span{height:33px;width:33px}.rf-search-assist strong{font-size:12px}.rf-search-assist small{font-size:10px;line-height:1.6}
  .teacher-story{margin-bottom:14px}.teacher-story .story-photo img{min-height:242px}.story-copy{padding:17px 13px}.story-copy h2{font-size:25px;margin:8px 0 12px}.story-copy .quote{font-size:14px;line-height:1.7;margin:12px 0}.teacher-meta{font-size:11px;gap:6px;margin:7px 0}.story-copy .text-link{font-size:12px;margin-top:8px}.sample{font-size:9px;padding:3px 7px}.rf-teacher-hero>img{min-height:285px}.rf-teacher-hero .story-copy{padding:17px 13px}.rf-teacher-hero h1{font-size:27px;line-height:1.45}.rf-teacher-hero blockquote{font-size:15px;line-height:1.8;margin:13px 0}.rf-teacher-hero .text-link{font-size:11px}.rf-profile-facts{padding:19px 12px 12px}.rf-profile-facts strong{font-size:24px}.rf-profile-facts span{font-size:9px;margin-top:4px}.rf-provenance{padding:0 17px;font-size:10px;margin-bottom:12px}.rf-radar>svg{max-height:238px}.rf-radar dd{font-size:16px}.rf-radar dt{font-size:9px}.rf-score-notes{padding-top:12px}.rf-score-notes b{font-size:15px;margin-top:5px}.rf-photo-caption{margin-top:15px}.rf-photo-caption img{height:180px}.rf-detail-list>div{padding:11px 0;font-size:12px;grid-template-columns:80px minmax(0,1fr)}.rf-caption{font-size:11px;line-height:1.7;margin:9px 0}.rf-empty{padding:23px 10px}.rf-empty h3{font-size:18px;margin-bottom:8px}.rf-empty p{font-size:12px;line-height:1.8;margin-bottom:15px}
  .form-body{padding:18px 17px 24px}.question,.rf-match-form .question{margin-bottom:22px}.question legend,.rf-match-form legend{font-size:15px;line-height:1.65;margin-bottom:13px}.question .step{font-size:12px;min-width:24px;height:26px;margin-right:8px}.choices{gap:8px}.choice span{padding:9px 13px;font-size:12px;min-height:40px;white-space:nowrap}.rf-fields{gap:13px 10px}.rf-field{margin:10px 0}.rf-field>span{font-size:11px;margin-bottom:6px}.rf-field input,.rf-field select,.rf-field textarea{font-size:12px;padding:10px 11px;min-height:42px;border-radius:10px}.rf-field input::placeholder,.rf-field textarea::placeholder{font-size:11px}.rf-purpose{gap:9px}.rf-purpose label>span{padding:12px 11px;border-radius:11px}.rf-purpose strong{font-size:13px}.rf-purpose small{font-size:10px;margin-top:4px;line-height:1.5}.rf-inline-hint{font-size:11px!important;line-height:1.7!important;padding:11px 13px;margin:9px 0 18px}.primary,.secondary{font-size:13px;min-height:43px;padding:10px 14px;white-space:nowrap}.actions{gap:10px}.rf-match-form>.primary,.form-body:has(.rf-form-status)>.primary{bottom:91px}.rf-upload{padding:24px 13px;margin-top:19px}.rf-upload>strong{font-size:14px}.rf-upload input{font-size:11px}.rf-code-row>.secondary{font-size:11px;min-height:42px;padding:8px 10px}
  .profile-hero{padding:25px 18px 28px;gap:15px}.profile-hero .avatar{width:68px;height:68px}.profile-hero h1{font-size:27px;margin-bottom:7px}.profile-hero p{font-size:12px;margin-bottom:7px}.student-profile{margin:0 18px}.student-profile summary{font-size:19px;padding:13px 0}.student-profile .list-row{padding:12px 0}.student-profile .grow strong{font-size:15px}.profile-menu{padding:0 18px}.profile-menu .list-row{font-size:14px;min-height:53px;padding:12px 0;gap:13px}.profile-menu .list-row>svg:first-child{width:21px;height:21px}.join-banner{margin:17px 17px 0;min-height:159px;padding:20px}.join-banner h2{font-size:23px;margin-bottom:8px}.join-banner p{font-size:11px}.rf-professional-links{margin-top:18px}.rf-action-row{padding:15px 0;gap:12px}.rf-action-row strong{font-size:13px}.rf-action-row small{font-size:10px;line-height:1.7;margin-top:3px}.rf-glyph{width:34px;height:34px;border-radius:10px}.rf-glyph svg{width:19px;height:19px}.rf-learning-tools{margin:0 18px 20px}.quick-links{margin:0 17px 18px;padding:9px 3px;border-radius:13px}.quick-link{font-size:11px;min-height:57px;gap:4px}.quick-link svg{width:23px;height:23px}.timeline{padding:7px 18px 0}.timeline-item{padding-left:20px;padding-bottom:22px}.timeline-item h2{font-size:19px;margin-bottom:10px}.list-row{font-size:12px;padding:11px 0;min-height:46px}.learning-promo{margin:0 17px 17px}.learning-promo>div{padding:16px 13px}.learning-promo h2{font-size:20px}.rf-record{padding:18px 0}.rf-record h2{font-size:20px;margin:11px 0 7px}.rf-record p{font-size:12px}.rf-history-row{padding:17px 0;gap:12px}.rf-history-row strong{font-size:13px}.rf-history-row small{font-size:10px}.rf-tabs{margin-bottom:17px;padding:4px;gap:3px}.rf-tabs button,.rf-tabs a{padding:9px 3px;font-size:11px;white-space:nowrap}.rf-advice{font-size:12px;line-height:1.9}.rf-advice li{margin:10px 0}
  .map-content{padding:21px 17px!important}.map-content h1{font-size:25px!important}.rf-service-chips{gap:6px;margin:10px 0}.rf-service-chips button{padding:8px 10px;font-size:11px}.space-card{margin:14px 14px 20px}.space-card>img{height:184px}.space-copy{padding:16px}.space-copy h2{font-size:20px}.space-copy p{font-size:11px}.tags{gap:6px;margin:10px 0}.tags span{padding:4px 7px;font-size:10px}.space-card.alternate h2{font-size:19px}.space-card.alternate .space-copy{padding:15px 11px}.school-story{padding:16px 17px 24px}.school-story img{height:204px}.school-story h2{font-size:25px;margin-top:17px}.rf-service-heading{padding:19px 17px 15px}.rf-service-heading h1{font-size:25px}.rf-service-heading p:not(.eyebrow){font-size:11px}.rf-engine{height:max(580px,calc(100dvh - 150px))}
  .bottom-nav{bottom:12px;min-height:65px;padding:5px;gap:0;border-radius:29px}.nav-item{min-height:53px;padding:5px 2px;font-size:10px;gap:4px;white-space:nowrap}.nav-item svg{height:23px;width:23px}.bottom-nav:before{height:53px;top:6px;border-radius:23px}.page-footer{padding-bottom:102px;margin-top:25px}
}
@media(max-width:600px){
  .home-finder .rf-button-arrow{font-size:21px;line-height:1}.home-finder .primary{height:44px}.home-finder .live-toolbar{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;padding:5px 0 0;margin:10px 0 0}.home-finder .live-toolbar button{justify-content:center;gap:4px;padding:5px 0;font-size:10px;min-height:38px;white-space:nowrap}.home-finder .live-toolbar svg{width:15px;height:15px}
  .services{padding:8px 0 14px;margin-bottom:0}.services .service{padding:9px 2px;min-height:100px;gap:4px}.services strong{font-size:12px;margin-top:4px}.services .service>svg:last-child{height:15px;width:15px;padding:0;background:none}.services small{font-size:9px;white-space:nowrap}
  .teacher-story{min-height:240px}.teacher-meta{line-height:1.7}.hero.short h1{font-size:27px}.live-native-map{height:260px}.live-map-stage{min-height:0}.live-extra{margin:14px 17px 0}.live-extra summary{font-size:19px;padding:13px 0}.live-extra .list-row{padding:12px 0}
  .bottom-nav{height:65px;bottom:max(12px,env(safe-area-inset-bottom));width:min(calc(100% - 20px),528px)}.nav-item{height:53px}.rf-match-form>.primary,.form-body:has(.rf-form-status)>.primary{bottom:calc(79px + max(12px,env(safe-area-inset-bottom)))}
  .services{margin:8px 20px 0;padding:0 0 12px;gap:4px}.services .service{min-height:80px;padding:8px 2px;gap:3px}.services .service>svg:first-child{width:24px;height:24px}.services .service strong{margin-top:3px}
}

/* Nearby uses the approved mobile surface and the same river / paper tokens. */
.space-result-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 4px;color:var(--ink)}
.space-result-summary strong{font-size:14px;font-weight:600}
.space-result-summary p{margin:4px 0 0;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.space-result-summary button{min-height:44px;flex-shrink:0}
.live-map-stage .live-note{margin:8px 0;font-size:12px;color:var(--muted)}
.live-map-list .empty{padding:24px 22px}
.live-map-list .empty p{color:var(--muted);line-height:1.7}
#space-filters select:focus-visible{outline:3px solid var(--river-mist);outline-offset:2px}
@media(max-width:375px){.space-result-summary{padding-right:16px;padding-left:16px;gap:8px}.space-result-summary strong{font-size:13px}}

/* Keep the new booking identity compact on small phones. */
#app[data-motion-page=booking] .rf-trial-offer{gap:14px}
#app[data-motion-page=booking] .rf-trial-offer h2{font-size:26px;white-space:nowrap}
#app[data-motion-page=booking] .rf-trial-offer h2 small{display:inline;font-size:12px}
#app[data-motion-page=booking] .motion-booking-identity{flex-shrink:0}
@media(max-width:375px){.motion-booking-identity{gap:8px}.motion-booking-identity img{width:46px;height:58px}.motion-booking-identity p{font-size:12px}.motion-booking-identity small{font-size:9px}}
