
.vl-map-top-filters{position:static!important;width:100%;margin:0 0 12px;padding:12px!important}.vl-map-top-filters .explore-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.vl-map-top-filters select{width:100%;min-height:44px;font-size:16px}.explore-workspace{display:block!important}@media(max-width:700px){.vl-map-top-filters .explore-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vl-home-contact{padding:28px 0!important;scroll-margin-top:90px}.vl-home-contact h2{font-size:clamp(25px,3vw,38px);line-height:1.15}.vl-home-contact .split{gap:28px}.vl-home-contact p{font-size:15px;line-height:1.5}.vl-home-enquiry-details>summary{cursor:pointer;font-weight:700;min-height:44px;padding:10px 0}.vl-home-enquiry-details>summary span{float:right}.vl-home-contact .form{padding:22px}.vl-home-contact .form-grid{gap:12px}.vl-home-contact .field input,.vl-home-contact .field select{min-height:44px;font-size:16px}@media(min-width:701px){.vl-home-enquiry-details>summary{display:none}}@media(max-width:700px){.vl-home-contact .split{display:grid;grid-template-columns:1fr;gap:12px}.vl-home-contact .form{padding:14px}.vl-home-contact .vl-contact-address{display:none}.vl-home-contact p{font-size:13px}.vl-home-contact .vl-contact-button{min-height:44px;padding:10px}.vl-home-contact .form-grid{grid-template-columns:1fr}.vl-home-contact .consent{font-size:12px}}
.page-id-324 .vl-guide-related{background:#f5f8f1;border:1px solid #d4e1ca;border-radius:20px;padding:24px;margin:24px 0}
.page-id-324 .vl-guide-related h2{margin:0 0 18px}
.page-id-324 .vl-guide-related a{display:inline-flex;align-items:center;min-height:46px;padding:10px 16px;margin:5px 8px 5px 0;background:#fff;border:1px solid #cbdad6;border-radius:12px;font-size:14px;font-weight:600;text-decoration:none}
.page-id-324 .vl-guide-related a:first-of-type{background:#dcf58b;border-color:#c5dc79}
@media(max-width:700px){.page-id-324 .vl-guide-related{padding:18px}.page-id-324 .vl-guide-related a{display:flex;margin:9px 0;justify-content:center}}
/* Fitzrovia guide: approachable costs and clear onward links. */
.page-id-324 .seo-article>h1,.page-id-324 .seo-article h1{font-size:clamp(32px,4vw,52px);line-height:1.15}
.page-id-324 .seo-article h2{font-size:clamp(24px,3vw,32px);line-height:1.2;letter-spacing:-.02em}
.page-id-324 .vl-area-costs{background:#f1f6eb;border:1px solid #d4e1ca;border-radius:20px;padding:24px;margin:28px 0}
.page-id-324 .vl-area-costs h2{margin:12px 0 16px}
.page-id-324 .vl-area-costs p:last-child{margin-bottom:0}
.page-id-324 .vl-guide-links{display:flex;flex-wrap:wrap;gap:10px}
.page-id-324 .vl-guide-links a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #cbdad6;border-radius:12px;background:#fff;padding:10px 16px;text-decoration:none;font-size:14px;font-weight:600}
.page-id-324 .vl-guide-facts>div{border-radius:16px;background:#f5f8f1}
@media(max-width:700px){.page-id-324 .vl-area-costs{padding:18px}.page-id-324 .vl-guide-links a{flex:1 1 45%}.page-id-324 .seo-article p{font-size:15px;line-height:1.65}}
/* Student document guide: clear steps and fresh lime accents. */
.rental-guide{max-width:960px;margin:auto;counter-reset:guide-step}
.rental-guide h1{font-size:clamp(32px,5vw,52px);line-height:1.1;letter-spacing:-.025em;max-width:760px}
.rental-guide .eyebrow{color:#375736;font-size:12px}
.rental-guide .seo-lead{font-size:clamp(17px,2vw,20px);max-width:760px;line-height:1.6}
.rental-guide .guide-tools{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.rental-guide .guide-tools a{display:inline-flex;align-items:center;min-height:46px;padding:10px 18px;background:#dcf58b;border:1px solid #c5dc79;border-radius:14px;color:#153746;font-weight:700;text-decoration:none}
.rental-guide>nav{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:18px!important;border:1px solid #d4e1dc!important;border-left:0!important;background:#f0f5eb!important;border-radius:18px;margin:24px 0!important;font-size:0}
.rental-guide>nav strong{width:100%;font-size:13px;color:#3b574d}
.rental-guide>nav a{font-size:14px;background:white;border:1px solid #d4e1dc;border-radius:12px;padding:11px 14px;min-height:44px;text-decoration:none}
.rental-guide>section{border:1px solid #cededc;border-radius:22px;background:#fff;padding:28px!important;margin:20px 0!important;box-shadow:0 8px 26px #17394b08;scroll-margin-top:100px}
.rental-guide>section[id]{counter-increment:guide-step}
.rental-guide>section[id]::before{content:"0" counter(guide-step);display:flex;width:42px;height:42px;align-items:center;justify-content:center;background:#dcf58b;border-radius:14px;font:700 14px Arial;color:#153746;margin-bottom:14px}
.rental-guide h2{font-family:Arial,sans-serif;font-size:clamp(23px,3vw,30px);line-height:1.2;margin:0 0 16px!important}
.rental-guide p,.rental-guide li{font-size:16px;line-height:1.65;overflow-wrap:anywhere}
.rental-guide #prepare>ul{list-style:none;padding:0;margin:20px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rental-guide #prepare>ul>li{padding:18px;border-radius:16px;background:#f5f8f1;border:1px solid #e0e9d9;margin:0}
.rental-guide #prepare>ul>li>strong{display:block;margin-bottom:7px;color:#153746}
.rental-guide #prepare>ul>li:nth-child(5){grid-column:1/-1}
.rental-guide #rules li,.rental-guide #next li{padding:10px 0;margin:0;border-bottom:1px solid #e3eae7}
.rental-guide .button{border-radius:12px;min-height:46px;margin:5px 7px 5px 0}
.rental-guide a:focus-visible{outline:3px solid #214de9;outline-offset:3px}
@media(max-width:700px){.rental-guide>section{padding:20px!important;border-radius:18px}.rental-guide #prepare>ul{grid-template-columns:1fr}.rental-guide #prepare>ul>li:nth-child(5){grid-column:auto}.rental-guide>nav a{flex:1 1 42%;text-align:center}.rental-guide p,.rental-guide li{font-size:15px}.rental-guide .guide-tools a{width:100%;justify-content:center}.rental-guide .button{display:flex;justify-content:center;width:100%;margin:9px 0}.navlinks{gap:13px}}
/* Immediate contact, with an optional form in the same panel. */
.vl-contact-dialog{overflow-y:auto}
.vl-inline-enquiry{border:1px solid #d8e1e5;border-radius:8px;margin:16px 0 12px}
.vl-inline-enquiry summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:14px;font:600 14px Arial;min-height:48px;color:#214de9}
.vl-inline-enquiry>p{padding:0 14px;font-size:13px}
.vl-inline-enquiry .form{border:0;padding:14px;background:#f6f8fa}
.vl-inline-enquiry .field{min-width:0}
.vl-inline-enquiry .field input,.vl-inline-enquiry .field select,.vl-inline-enquiry .field textarea{font-size:16px;width:100%;box-sizing:border-box}
.vl-inline-enquiry .field label{font-size:13px}
.vl-inline-enquiry .consent{font-size:12px}
.vl-inline-enquiry .button{width:100%;min-height:44px}
@media(max-width:680px){.vl-inline-enquiry .form-grid{grid-template-columns:1fr}.vl-inline-enquiry .field{grid-column:1}.vl-contact-dialog{padding:18px}}
/* Google Maps takes priority on every screen size. */
.vl-map-price{background:#214de9;color:white;border:2px solid white;border-radius:22px;padding:8px 12px;font:bold 13px Arial;min-height:40px;box-shadow:0 2px 8px #183a4b44;cursor:pointer}
.vl-map-campus{background:white;color:#17394b;border:1px solid #17394b;border-radius:15px;padding:5px 8px;font:bold 11px Arial;cursor:pointer}
#vl-google-map .vl-map-popup{box-sizing:border-box;font:13px/1.4 Arial!important;color:#17394b;max-height:240px;overflow-y:auto;overflow-x:hidden;width:min(240px,calc(100vw - 100px));white-space:normal!important}
#vl-google-map .vl-map-popup>div{padding:0 0 10px!important;margin:0 0 10px!important}
#vl-google-map .vl-map-popup>div:last-child{border:0;margin-bottom:0!important;padding-bottom:0!important}
#vl-google-map .vl-map-popup img{display:block!important;width:100%!important;height:85px!important;max-width:100%!important;object-fit:cover!important;margin:0 0 6px!important}
#vl-google-map .vl-map-popup strong{display:block!important;font:700 13px/1.35 Arial!important;white-space:normal!important;overflow-wrap:anywhere!important;margin:0!important}
#vl-google-map .vl-map-popup p{font:13px/1.4 Arial!important;margin:5px 0!important}
#vl-google-map .vl-map-popup a,#vl-google-map .vl-map-popup button{box-sizing:border-box!important;font:600 12px/1.2 Arial!important;min-height:44px!important;margin:2px!important;padding:6px 8px!important;white-space:normal!important}
#vl-google-map .gm-style-iw-d{overflow-x:hidden!important}
@media(max-width:680px){#vl-google-map .vl-map-price{font-size:12px;padding:6px 9px;min-height:36px}.vl-google-map-frame{height:clamp(320px,48dvh,380px)!important}}
.vl-map-popup>div{padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid #ddd}
.vl-map-popup img{width:100%;height:110px;object-fit:cover;border-radius:6px;margin-bottom:8px}
.vl-map-popup strong{display:block;font-size:14px}
.vl-map-popup p{margin:6px 0}
.vl-map-popup a,.vl-map-popup button{display:inline-flex;align-items:center;min-height:44px;padding:7px 10px;margin:3px;border:1px solid #214de9;border-radius:5px;color:#214de9;background:white;font-size:12px;text-decoration:none;cursor:pointer}
#vl-google-map .vl-map-popup a.vl-map-photo-link,#vl-google-map .vl-map-popup a.vl-map-title-link{display:block;min-height:0!important;margin:0!important;padding:0!important;border:0;background:transparent;color:inherit}#vl-google-map .vl-map-popup a.vl-map-title-link:hover{text-decoration:underline}#vl-google-map .vl-map-popup a.vl-map-photo-link:focus-visible,#vl-google-map .vl-map-popup a.vl-map-title-link:focus-visible{outline:2px solid #2451ed;outline-offset:2px}
.vl-google-map-section{padding-top:20px;padding-bottom:16px}
.vl-google-map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.vl-google-map-heading h1{font-size:32px;margin:0}
.vl-google-map-heading a{font-size:13px;color:var(--blue);font-weight:700}
.vl-map-select-label{display:block;font-size:12px;font-weight:700;margin-bottom:5px}
#vl-map-location{width:100%;min-height:46px;font-size:14px;margin-bottom:12px}
.vl-google-map-frame{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#e8eef1;height:480px}
.vl-google-map-frame iframe{display:block;width:100%;height:100%;border:0}
.vl-google-map-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-top:9px}
.vl-google-map-foot p{margin:0;color:var(--muted)}
.vl-google-map-foot a{flex-shrink:0;color:var(--blue);min-height:44px;display:flex;align-items:center}
#vl-map-selected-home[hidden]{display:none!important}
.explore-main .explore-hero{display:none}
@media(max-width:680px){.vl-google-map-section{padding-top:12px}.vl-google-map-heading h1{font-size:26px}.vl-google-map-frame{height:clamp(280px,44dvh,380px)}.vl-google-map-foot{align-items:start;flex-direction:column;gap:0}.explore-workspace{padding-top:0!important}}
/* Compact phone navigation and clear first actions. */
.vl-mobile-lang,.vl-hero-mobile-actions,.explore-mobile-map-link{display:none}
.vl-photo-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:linear-gradient(135deg,#e8eff1,#f5f7f8);color:#17394b;text-align:center;padding:20px;text-decoration:none}
.vl-photo-pending span{font:400 clamp(20px,3vw,27px)/1.15 Georgia,"Songti SC",serif}
.vl-photo-pending small{font-size:12px;color:#526674}
@media(max-width:680px){
  html{scroll-padding-top:70px}
  .wrap{width:calc(100% - 32px)}
  .header .nav{min-height:58px;gap:8px;justify-content:space-between}
  .header .brand{min-width:0;flex:1;gap:8px}
  .header .mark{width:34px;height:34px;flex:0 0 34px;font-size:17px}
  .header .brand strong{font-size:12px;letter-spacing:0;line-height:1.15}
  .header .brand small{font-size:9px;letter-spacing:.09em;line-height:1.15}
  .header .navlinks{display:none}
  .vl-mobile-lang{display:grid;place-items:center;flex:0 0 44px;min-height:40px;border:1px solid var(--line);font-size:12px;font-weight:700}
  .vl-mobile-menu{display:block;flex:0 0 44px}
  .vl-mobile-menu summary{min-height:40px;padding:9px;justify-content:center}
  .header .vl-mobile-menu-links{top:58px;max-height:calc(100dvh - 58px);padding:8px 16px 20px}
  .header .vl-mobile-menu-links a{min-height:44px}
  .page-summary{display:none}
  :is(body.home,body.page-id-137) .hero{min-height:0;display:block}
  :is(body.home,body.page-id-137) .hero-copy{padding:18px 0 16px}
  .vl-home-page .hero .vl-no-fees{padding:10px 12px;gap:10px;margin:12px 0}
  .vl-home-page .hero .vl-no-fees strong{font-size:14px}
  .vl-home-page .hero .vl-no-fees p{display:none}
  .vl-home-page .hero .vl-no-fees small{font-size:11px;line-height:1.4}
  .vl-home-page .hero .vl-no-fees-mark{font-size:16px;padding:9px 7px}
  .vl-home-page .hero .vl-area-hero{display:block!important}
  .vl-home-page #homes .section-head{display:block}
  .vl-home-page #homes .section-head>p{display:none}
  .vl-home-page .vl-hero-mobile-actions .button{font-size:14px;min-height:46px}
  :is(body.home,body.page-id-137) .hero .eyebrow{font-size:10px;margin-bottom:9px}
  :is(body.home,body.page-id-137) .hero h1{font-size:clamp(30px,9vw,39px);line-height:1.08;margin-bottom:10px}
  :is(body.home,body.page-id-137) .hero .intro{font-size:14px;line-height:1.45;margin:0 0 14px}
  :is(body.home,body.page-id-137) .hero .actions,:is(body.home,body.page-id-137) .hero .micro,:is(body.home,body.page-id-137) .hero-media,:is(body.home,body.page-id-137) .trustbar{display:none}
  .vl-hero-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .vl-hero-mobile-actions .button{min-height:44px;padding:9px;font-size:13px;text-align:center}
  .vl-quick-search{display:none}
  :is(body.home,body.page-id-137) #homes.section{padding:20px 0 30px}
  :is(body.home,body.page-id-137) #homes .section-head{margin-bottom:12px}
  :is(body.home,body.page-id-137) #homes .section-head h2{font-size:26px;margin-bottom:4px}
  :is(body.home,body.page-id-137) #homes .section-head p{font-size:12px;line-height:1.4;margin:4px 0 0}
  :is(body.home,body.page-id-137) .home-property-grid{gap:14px}
  :is(body.home,body.page-id-137) .home-property-card .vl-card-gallery{aspect-ratio:1.85/1}
  :is(body.home,body.page-id-137) .home-property-card .property-copy{padding:13px 15px}
  :is(body.home,body.page-id-137) .home-property-card h3{font-size:17px;line-height:1.25}
  :is(body.home,body.page-id-137) .home-property-card .price{font-size:21px;margin:5px 0}
  :is(body.home,body.page-id-137) .home-property-card .facts{padding:7px 0;gap:5px 12px;font-size:12px}
  :is(body.home,body.page-id-137) .home-property-card .micro{display:none}
  :is(body.home,body.page-id-137) .home-property-card .actions{gap:7px;margin:10px 0 0}
  :is(body.home,body.page-id-137) .home-property-card .actions .button{min-height:40px;padding:7px 8px;font-size:12px}
  .explore-hero{padding:20px 0 16px}
  .explore-hero-grid{gap:8px}
  .explore-hero h2{font-size:33px;line-height:1.04}
  .explore-intro>p{font-size:13px;line-height:1.4;margin:8px 0}
  .explore-key{font-size:11px;gap:12px}
  .explore-mobile-map-link{display:inline-block;margin:0 0 9px;color:var(--blue);font-size:13px;font-weight:700;text-decoration:underline}
  .explore-workspace{gap:13px;padding-top:13px}
  .explore-filter-panel{order:1;padding:12px;gap:7px}
  .explore-filter-heading .eyebrow{font-size:11px}
  .explore-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .explore-filters select{font-size:12px;min-height:42px}
  .explore-filter-note{display:none}
  .explore-results{order:2}
  .explore-results-head{padding:15px}
  .explore-results-head h2{font-size:24px}
  .explore-property-list{gap:12px;margin-top:12px}
  .explore-property-card .vl-card-gallery{aspect-ratio:1.85/1}
  .explore-card-copy{padding:13px 15px}
  .explore-card-copy h3{font-size:18px}
  .explore-card-actions{grid-template-columns:1fr 1fr}
  .explore-card-actions .button{font-size:12px}
  .explore-map-viewport{order:3;max-width:100%;height:300px;overflow:auto;border:1px solid #c8d6d5}
  .explore-map-shell{min-height:460px}
  .map-pan-hint{order:4}
  .vl-card-gallery,.property-list .vl-card-gallery{aspect-ratio:1.85/1}
  .property-list .actions{grid-template-columns:1fr 1fr}
  .property-list .actions .button:last-child{grid-column:1/-1}
  .vl-mobile-contact-bar{gap:7px;padding:7px 12px calc(7px + env(safe-area-inset-bottom))}
  .vl-mobile-contact-bar button,.vl-mobile-contact-bar a{min-height:44px;font-size:13px}
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .back-to-top{bottom:calc(78px + env(safe-area-inset-bottom))}
}
