/* Reference-inspired navy / purple palette; CoveredCampus content and branding. */
body:not(.admin-page) .site-header{background:#080808!important;border-bottom-color:#202020!important;box-shadow:none}
body:not(.admin-page) .site-header .brand{color:#fff!important}
body:not(.admin-page) .brand-mark b{box-shadow:0 0 0 3px #080808;background:#fff3c4}
body:not(.admin-page) .brand-mark:before{background:#8b54ff}
body:not(.admin-page) .utility-bar{background:#031636}
body:not(.admin-page) .utility-inner,body:not(.admin-page) .utility-contact a,body:not(.admin-page) .utility-message{color:#e6e2f0}
body:not(.admin-page) .main-nav a{color:#f3efff}
body:not(.admin-page) .main-nav a:not(.nav-post):hover{color:#fff;background:#26202e}
body:not(.admin-page) .header-location{background:#1b1b1b;border-color:#333}
body:not(.admin-page) .header-location label,body:not(.admin-page) .header-location select{color:#fff}
body:not(.admin-page) .header-location select option{background:#fff;color:#031636}
body:not(.admin-page) .header-location button{background:#5c19ee}
body:not(.admin-page) .button,body:not(.admin-page) .main-nav .nav-post{background:#5c19ee;color:#fff;box-shadow:none}
body:not(.admin-page) .button:hover,body:not(.admin-page) .main-nav .nav-post:hover{background:#4611c3}
body:not(.admin-page) .home-hero:before{background:linear-gradient(110deg,#031636e8,#031636a8)}
body:not(.admin-page) .home-hero h1 em,body:not(.admin-page) .hero-live-stats strong{color:#ffe595}
body:not(.admin-page) .home-hero .home-kicker{color:#e4d5ff}
body:not(.admin-page) .home-search{border-color:#e6deef}
body:not(.admin-page) .homepage-main .home-search{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px}
body:not(.admin-page) .homepage-main .home-search>label{margin:0;min-width:0;font-size:11px;letter-spacing:.04em;line-height:1.4}
body:not(.admin-page) .homepage-main .home-search>label input,body:not(.admin-page) .homepage-main .home-search>label select{margin:6px 0 0;padding:10px 12px;border:1px solid #dce0e9;border-radius:9px;min-height:46px;font-size:15px;line-height:1.4;background:#fff}
body:not(.admin-page) .homepage-main .home-search>.button{grid-column:1/-1;justify-self:end;min-width:200px;min-height:46px}
body:not(.admin-page) .homepage-main .home-search>a{display:none}
body:not(.admin-page) .hero-search-tabs{align-items:center;grid-column:1/-1}
body:not(.admin-page) .header-location.location-enhanced button{display:none}
body:not(.admin-page) :is(a,button,input,select,textarea):focus-visible{outline:3px solid #9e79ff;outline-offset:3px}
body:not(.admin-page) .home-search>.button{background:#5c19ee}
body:not(.admin-page) .home-section-heading h2{color:#031636}
body:not(.admin-page) .home-section-heading:after{background:#5c19ee}
body:not(.admin-page) .property-intent-actions{background:#efebf8;border-color:#e1d9f1}
body:not(.admin-page) .property-intent-actions a{color:#4b22a4;border-color:#e1d9f1}
body:not(.admin-page) .property-intent-actions a:hover{background:#5c19ee;color:#fff}
body:not(.admin-page) .badge{background:#efebf8;color:#4b22a4}
body:not(.admin-page) .price{color:#031636!important}
body:not(.admin-page) .requirement-card{border-top-color:#aa86f8}
body:not(.admin-page) .home-contact{background:#efebf8;border-color:#dfd4f1}
body:not(.admin-page) .site-footer{background:#031636!important}
body:not(.admin-page) .footer-actions .footer-whatsapp{background:#5c19ee;border-color:#8e5cf6}
body:not(.admin-page) .property-contact{border-top-color:#5c19ee!important}
body:not(.admin-page) .property-contact-actions .contact-secondary{background:#efebf8!important;color:#4b22a4!important;border-color:#ded2f3}
@media(max-width:720px){
 body:not(.admin-page) .site-header .header-post-button{display:none}
 body:not(.admin-page) .site-header .nav-toggle{background:#1b1b1b;border-color:#333}
 body:not(.admin-page) .nav-toggle .ui-icon{filter:grayscale(1) brightness(0) invert(1)}
 body:not(.admin-page) .site-header .main-nav a{background:#f5f1fc;color:#34224e;border-color:#e6deef}
 body:not(.admin-page) .site-header .main-nav a:not(.nav-post):hover{background:#ebe2fc;color:#4611c3}
 body:not(.admin-page) .site-header .main-nav .nav-post{background:#5c19ee;border-color:#5c19ee;color:#fff}
 body:not(.admin-page) .site-header .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;align-items:center;width:calc(100% - 24px);min-height:64px;padding:10px 0;gap:8px}
 body:not(.admin-page) .site-header .header-inner>.brand{grid-column:1;grid-row:1;order:0;min-width:0;font-size:14px!important;gap:4px;white-space:nowrap}
 body:not(.admin-page) .site-header .header-inner>.header-location{grid-column:2;grid-row:1;order:1;display:flex;width:auto;min-width:0;max-width:none;flex-basis:auto;margin:0;padding:2px;gap:2px}
 body:not(.admin-page) .site-header .header-location label{display:none}
 body:not(.admin-page) .site-header .header-location select{flex:none;width:94px;min-width:0;min-height:44px;padding:5px;font-size:14px!important;color:#fff}
 body:not(.admin-page) .site-header .header-location button{min-height:40px;padding:4px 6px;font-size:11px}
 body:not(.admin-page) .site-header .header-inner>.nav-toggle{grid-column:3;grid-row:1;order:2;margin:0;width:44px;height:44px}
 body:not(.admin-page) .homepage-main>.home-hero{padding-top:32px}
}
@media(max-width:360px){
 body:not(.admin-page) .site-header .header-inner{gap:5px;width:calc(100% - 16px)}
 body:not(.admin-page) .site-header .header-inner>.brand{font-size:12px!important;gap:0}
 body:not(.admin-page) .site-header .header-location select{width:75px}
}
@media(max-width:640px){
 body:not(.admin-page) .homepage-main .home-hero h1{font-size:28px;font-weight:800;line-height:1.2}
 body:not(.admin-page) .homepage-main .home-hero-copy .home-kicker{display:none}
 body:not(.admin-page) .homepage-main .home-search>label{grid-column:auto}
 body:not(.admin-page) .homepage-main .home-search>label:nth-of-type(-n+2){grid-column:1/-1}
 body:not(.admin-page) .homepage-main .home-search{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;border-radius:16px;gap:12px;margin-top:18px}
 body:not(.admin-page) .homepage-main .home-search>label input,body:not(.admin-page) .homepage-main .home-search>label select{font-size:16px!important;padding:10px;min-height:46px}
 body:not(.admin-page) .homepage-main .home-search>.button{width:100%;min-width:0;justify-self:stretch}
 body:not(.admin-page) .homepage-main .home-hero-copy p{font-size:14px;line-height:1.55}
 body:not(.admin-page) .homepage-main .hero-live-stats{margin-top:14px}
 body:not(.admin-page) .hero-search-tabs{gap:0;margin:-4px 0 5px}
 body:not(.admin-page) .hero-search-tabs span{border-radius:0}
 body:not(.admin-page) .hero-search-tabs input:checked+span{background:#fff;color:#031636}
 body:not(.admin-page) .site-header .main-nav .nav-post{background:#5c19ee;border-color:#5c19ee}
 body:not(.admin-page) .home-hero-copy{padding-top:10px}
}
@media(min-width:641px) and (max-width:1000px){body:not(.admin-page) .homepage-main .home-search{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Homepage composition: centered discovery hero, compact search panel and a
   separate metrics strip. The selectors are scoped so listing and admin forms
   retain their own layouts. */
body:not(.admin-page)>main.container.homepage-main{width:100%;max-width:none;padding:0}
html:has(body:not(.admin-page)),body:not(.admin-page){overflow-x:clip}
/* Form conditional fields: existing .form-row grid rules must not override
   the HTML hidden attribute when Plot or Shop is selected. */
body:not(.admin-page) #residential-details[hidden]{display:none!important}
@media(min-width:721px){
 body:not(.admin-page) .utility-bar{display:none}
 body:not(.admin-page) .site-header{background:#050505!important}
 body:not(.admin-page) .site-header .header-inner{width:calc(100% - 40px);max-width:none;min-height:70px;gap:10px}
 body:not(.admin-page) .site-header .header-inner>.brand{order:0;font-size:20px!important}
 body:not(.admin-page) .site-header .header-inner>.main-nav{order:1;margin-left:26px;gap:10px}
 body:not(.admin-page) .site-header .main-nav a{padding:9px 11px;font-size:15px}
 body:not(.admin-page) .site-header .main-nav .nav-post{display:none}
 body:not(.admin-page) .site-header .main-nav .nav-assist{display:none!important}
 body:not(.admin-page) .site-header .header-inner>.header-location{order:2;margin-left:auto}
 body:not(.admin-page) .site-header .header-post-button{order:3;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:10px;background:#5c19ee;color:#fff!important;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap}
 body:not(.admin-page) .site-header .header-post-button:hover{background:#4611c3}
 body:not(.admin-page) .site-header .header-inner>.nav-toggle{order:4;display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin-left:0;border:1px solid #363636;border-radius:10px;background:#181818}
 body:not(.admin-page) .site-header .nav-toggle .ui-icon{filter:grayscale(1) brightness(0) invert(1)}
}
body:not(.admin-page) .homepage-main>.home-hero{width:100%;max-width:none;min-height:625px;margin:0;padding:94px max(28px,calc((100% - 1100px)/2)) 70px;border-radius:0;box-shadow:none;display:flex;flex-direction:column;align-items:center;text-align:center}
body:not(.admin-page) .home-hero:before{background:linear-gradient(180deg,#031636cc 0%,#03163688 46%,#031636d9 100%)}
body:not(.admin-page) .home-hero-copy{max-width:900px;color:#fff}
body:not(.admin-page) .home-hero-copy h1{margin:0;color:#fff;font-size:clamp(40px,4vw,58px);line-height:1.08;letter-spacing:-2px}
body:not(.admin-page) .home-hero-copy h1 em{display:inline-block;color:#ffe595}
body:not(.admin-page) .home-hero-copy p{max-width:800px;margin:20px auto 26px;color:#f3f0f9;font-size:18px;line-height:1.5}
body:not(.admin-page) .home-hero .home-actions,body:not(.admin-page) .home-hero .hero-live-stats{display:none}
body:not(.admin-page) .homepage-main .home-search{width:min(100%,1075px);grid-template-columns:1fr 1.35fr 1.2fr auto;gap:0;align-items:end;margin:0;padding:0 18px 18px;border:0;border-radius:20px;background:#fff;box-shadow:0 18px 42px #00000036;text-align:left}
body:not(.admin-page) .homepage-main .hero-search-tabs{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);width:100%;height:62px;margin:0;border-bottom:1px solid #e8e5ed;gap:0}
body:not(.admin-page) .hero-search-tabs label,body:not(.admin-page) .hero-search-tabs>a{display:flex;align-items:center;justify-content:center;position:relative;margin:0;padding:0;color:#0f2542;font-size:16px;font-weight:750;text-decoration:none;cursor:pointer}
body:not(.admin-page) .hero-search-tabs label:after{content:none}
body:not(.admin-page) .hero-search-tabs label:has(input:checked):after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:4px;border-radius:4px 4px 0 0;background:#5c19ee}
body:not(.admin-page) .hero-search-tabs input{position:absolute;opacity:0;pointer-events:none}
body:not(.admin-page) .hero-search-tabs input:checked+span,body:not(.admin-page) .hero-search-tabs label:hover span{background:transparent!important;box-shadow:none!important;color:#5c19ee!important}
body:not(.admin-page) .homepage-main .home-search>label{min-width:0;margin:18px 0 0;padding:0 16px;border-right:1px solid #e3e0e8;color:#334d6a;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
body:not(.admin-page) .homepage-main .home-search>label:first-of-type{padding-left:6px}
body:not(.admin-page) .homepage-main .home-search>label input,body:not(.admin-page) .homepage-main .home-search>label select{width:100%;margin:7px 0 0;padding:3px 22px 3px 0;min-height:30px;border:0;border-radius:0;color:#0f2542;font-size:16px!important;font-weight:650;background:transparent}
body:not(.admin-page) .homepage-main .home-search>.button{grid-column:auto;align-self:end;justify-self:stretch;min-width:150px;min-height:55px;margin:18px 0 0;border-radius:16px;background:#5c19ee;font-size:16px}
body:not(.admin-page) .hero-popular{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:25px;color:#fff;font-size:14px}
body:not(.admin-page) .hero-popular strong{margin-right:2px}
body:not(.admin-page) .hero-popular a{padding:7px 14px;border:1px solid #ffffffa3;border-radius:999px;color:#fff;text-decoration:none;font-weight:650;line-height:1}
body:not(.admin-page) .hero-popular a:hover{background:#fff;color:#171025}
body:not(.admin-page) .homepage-main>.home-stat-strip{width:100vw!important;max-width:none;box-sizing:border-box;min-height:132px;margin:0 calc(50% - 50vw)!important;padding:25px max(28px,calc((100% - 1200px)/2));display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:24px;background:#1d035c;color:#fff}
body:not(.admin-page) .home-stat-strip div{display:grid;justify-items:center;gap:3px;text-align:center}
body:not(.admin-page) .home-stat-strip strong{font-size:38px;line-height:1;font-weight:850;letter-spacing:-1px}
body:not(.admin-page) .home-stat-strip span{font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#cfc3ff}
body:not(.admin-page) .homepage-main>section:not(.home-hero):not(.home-stat-strip){width:min(1200px,calc(100% - 40px));margin-inline:auto}
body:not(.admin-page) .floating-whatsapp{position:fixed;right:24px;bottom:24px;z-index:75;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;padding:0;border:1px solid #7c4cff;border-radius:50%;background:#5c19ee;color:#fff!important;box-shadow:0 14px 30px #260a7680;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}
body:not(.admin-page) .floating-whatsapp:hover{transform:translateY(-3px);box-shadow:0 18px 36px #260a76a3}
body:not(.admin-page) .floating-whatsapp .ui-icon{width:36px!important;height:36px!important;flex-basis:36px;background:#fff;border-radius:50%;padding:2px}
body:not(.admin-page) .floating-whatsapp span{display:none}

@media(max-width:900px){
 body:not(.admin-page) .homepage-main>.home-hero{min-height:560px;padding-top:72px}
 body:not(.admin-page) .homepage-main .home-search{grid-template-columns:1fr 1fr 1fr auto}
 body:not(.admin-page) .homepage-main .home-search>label:nth-of-type(2){border-right:0}
}
@media(max-width:640px){
 /* Mobile type scale: one compact, readable hierarchy across the homepage. */
 body:not(.admin-page){font-size:15px;line-height:1.5}
 body:not(.admin-page) .site-header .header-inner>.brand{font-size:15px!important;font-weight:800}
 body:not(.admin-page) .site-header .header-location select{font-size:14px!important;font-weight:700}
 body:not(.admin-page) .homepage-main>.home-hero{min-height:0;padding:48px 14px 36px}
 body:not(.admin-page) .home-hero-copy h1{font-size:30px;line-height:1.15;letter-spacing:-.9px;font-weight:800}
 body:not(.admin-page) .home-hero-copy p{margin:14px auto 18px;font-size:14px;line-height:1.55}
 body:not(.admin-page) .homepage-main .home-search{width:100%;display:grid;grid-template-columns:1fr;padding:0 14px 14px;border-radius:17px;gap:0;text-align:left}
 body:not(.admin-page) .homepage-main .hero-search-tabs{height:48px;grid-template-columns:repeat(4,1fr)}
 body:not(.admin-page) .hero-search-tabs label,body:not(.admin-page) .hero-search-tabs>a{font-size:13px;font-weight:800}
 body:not(.admin-page) .hero-search-tabs label:has(input:checked):after{height:3px}
 body:not(.admin-page) .homepage-main .home-search>label{grid-column:1!important;margin:10px 0 0;padding:0;border:0;font-size:10px;letter-spacing:.07em}
 body:not(.admin-page) .homepage-main .home-search>label input,body:not(.admin-page) .homepage-main .home-search>label select{min-height:42px;margin-top:4px;padding:7px 10px;border:1px solid #e4e0ea;border-radius:10px;background:#fff;font-size:16px!important}
 body:not(.admin-page) .homepage-main .home-search>.button{grid-column:1/-1;min-height:46px;margin-top:13px;border-radius:11px;font-size:14px}
 body:not(.admin-page) .hero-popular{gap:7px;margin-top:16px;font-size:11px}
 body:not(.admin-page) .hero-popular a{padding:6px 9px;font-size:11px}
 body:not(.admin-page) .homepage-main>.home-stat-strip{min-height:86px;gap:8px;padding:14px 12px}
 body:not(.admin-page) .home-stat-strip strong{font-size:23px}
 body:not(.admin-page) .home-stat-strip span{font-size:9px;letter-spacing:.035em}
 body:not(.admin-page) .home-section-heading h2{font-size:24px;line-height:1.2}
 body:not(.admin-page) .home-section-heading p{font-size:14px}
 body:not(.admin-page) .homepage-main>section:not(.home-hero):not(.home-stat-strip){width:calc(100% - 28px)}
 body:not(.admin-page) .floating-whatsapp{right:16px;bottom:16px;width:52px;height:52px;padding:0}
 body:not(.admin-page) .floating-whatsapp .ui-icon{width:32px!important;height:32px!important;flex-basis:32px}
}
