/* StudentHubHelp city hub premium refresh — layout polish only */
:root{--city-ink:#0c1f3b;--city-muted:#62728b;--city-teal:#0c8278;--city-gold:#e4ad36;--city-line:#e2e9f2}
body{background:#f4f7fb;color:var(--city-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}
.nav{background:#0b1d36!important;border-bottom:1px solid #ffffff18!important;box-shadow:0 8px 28px #0b1d3618}
.navin{width:min(1240px,calc(100% - 36px))!important;min-height:82px!important}
.brand img{border-radius:14px!important;box-shadow:0 5px 16px #0002}
.brand b{color:#fff!important;font-size:20px!important;letter-spacing:-.03em}
.brand small{color:#b9c8dc!important;letter-spacing:1.8px!important}
.back{border-radius:999px!important;border:1px solid #e4ad3670!important;color:#ffd36b!important;padding:12px 18px!important;transition:background .2s ease,transform .2s ease}
.back:hover{background:#ffffff10!important;transform:translateY(-1px)}
.hero{position:relative!important;isolation:isolate;overflow:hidden!important;padding:0 0 48px!important;background:radial-gradient(ellipse at 82% 22%,#d2f0e8 0,transparent 30%),radial-gradient(ellipse at 95% 0,#fff1ce 0,transparent 25%),linear-gradient(180deg,#edf5fb 0%,#f8fafc 100%)!important}
.hero:before{content:"";position:absolute;z-index:-1;right:6%;top:72px;width:clamp(180px,25vw,350px);aspect-ratio:1;border-radius:38% 62% 59% 41%/43% 40% 60% 57%;background:linear-gradient(145deg,#0d8178,#123d63);opacity:.08;transform:rotate(-14deg)}
.hero .wrap{width:min(1240px,calc(100% - 36px))!important;padding-top:32px!important}
.crumb{font-size:13px!important;color:#8593a8!important;margin-bottom:28px!important}
.crumb a{color:#8a6416!important;font-weight:800;text-decoration:none}
.kicker{display:inline-flex!important;align-items:center;gap:8px;padding:7px 12px!important;margin-bottom:16px!important;border:1px solid #f2dba6!important;border-radius:999px!important;background:#fff9e9!important;color:#986b12!important;font-size:11px!important;letter-spacing:1.7px!important;font-weight:900!important}
.hero h1{max-width:800px!important;font-size:clamp(38px,5.2vw,66px)!important;line-height:1.04!important;letter-spacing:-.055em!important;margin:0 0 18px!important;color:#0b1d36!important}
.hero h1 span{color:#0d8178!important}
.hero p{max-width:690px!important;font-size:clamp(16px,1.6vw,19px)!important;line-height:1.8!important;color:#5c6c83!important;margin:0 0 26px!important}
.actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important;margin-top:26px!important}
.btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;padding:12px 17px!important;border-radius:13px!important;font-size:14px!important;line-height:1.3!important;font-weight:800!important;text-decoration:none!important;white-space:normal!important;box-sizing:border-box!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important}
.btn.primary{background:linear-gradient(135deg,#eab43f,#d99b22)!important;color:#142640!important;border:1px solid #dba02c!important;box-shadow:0 8px 18px #dba02c30!important}
.btn.ghost{background:#fff!important;color:#183754!important;border:1px solid #d3deeb!important;box-shadow:0 3px 10px #12314a08!important}
.btn:hover{transform:translateY(-2px)!important;box-shadow:0 9px 22px #122b4517!important}
.stats.wrap{position:relative!important;z-index:2;width:min(1240px,calc(100% - 36px))!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:-10px auto 34px!important}
.stat{min-width:0!important;padding:20px 22px!important;border:1px solid #e0e8f1!important;border-radius:19px!important;background:#fff!important;box-shadow:0 12px 30px #0c24420b!important}
.stat b{display:block!important;font-size:clamp(25px,3vw,34px)!important;line-height:1.1!important;letter-spacing:-.04em!important;color:#0b2746!important}
.stat span{display:block!important;margin-top:8px!important;color:#71819a!important;font-size:13px!important}
.section{padding:32px 0!important;background:transparent!important}
.section .wrap{width:min(1240px,calc(100% - 36px))!important}
.head{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:22px!important;margin-bottom:20px!important}
.head small{color:#0c8278!important;font-size:11px!important;letter-spacing:1.8px!important;font-weight:900!important}
.head h2,.guide h2{color:#102541!important;font-size:clamp(23px,3vw,32px)!important;line-height:1.2!important;letter-spacing:-.035em!important;margin:5px 0 0!important}
.head p{max-width:490px!important;color:#68788e!important;margin:0!important;font-size:14px!important}
.areas,.services #liveCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:16px}
.areas>* ,.services #liveCards>*{min-width:0;border-radius:18px!important}
.guide{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)!important;gap:18px!important;align-items:stretch!important}
.guide-card{border-radius:24px!important;padding:clamp(24px,4vw,38px)!important;background:radial-gradient(circle at 100% 0,#ffffff18,transparent 36%),linear-gradient(135deg,#0a203b,#105b65)!important;box-shadow:0 18px 42px #0b29431c!important}
.guide-card h2{color:#fff!important;margin:12px 0!important}
.guide-card p{color:#d6e5ec!important;line-height:1.8!important}
.quick{display:flex!important;flex-wrap:wrap!important;gap:9px!important;margin-top:20px!important}
.quick a{display:inline-flex!important;align-items:center!important;min-height:40px!important;padding:9px 12px!important;border-radius:999px!important;background:#ffffff12!important;border:1px solid #ffffff2a!important;color:#fff!important;font-size:13px!important;font-weight:750!important;text-decoration:none!important}
.faq{border:1px solid var(--city-line)!important;border-radius:22px!important;background:#fff!important;padding:clamp(20px,3vw,30px)!important}
.faq h2{margin-bottom:18px!important}
.faq details{border-top:1px solid #e8edf3!important;padding:13px 0!important}
.faq summary{cursor:pointer;color:#203951!important;font-weight:750!important}
.faq details p{color:#66778c!important;font-size:14px!important}
a:focus-visible,summary:focus-visible{outline:3px solid #e4ad36!important;outline-offset:3px!important}
@media(max-width:760px){.navin{min-height:72px!important}.brand small{font-size:9px!important;letter-spacing:1px!important}.brand b{font-size:17px!important}.hero{padding-bottom:30px!important}.hero .wrap{padding-top:22px!important}.crumb{margin-bottom:20px!important}.hero h1{font-size:clamp(36px,9vw,52px)!important}.hero:before{right:-60px;top:150px;width:190px}.actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.btn{min-width:0!important;padding:11px 10px!important;font-size:12px!important;text-align:center!important}.btn.primary{grid-column:1/-1}.stats.wrap{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-bottom:20px!important}.stat{padding:16px!important;border-radius:16px!important}.head{display:block!important}.head p{margin-top:8px!important}.section{padding:22px 0!important}.guide{grid-template-columns:1fr!important}.areas,.services #liveCards{grid-template-columns:1fr!important}}
@media(max-width:420px){.navin{width:calc(100% - 22px)!important}.brand img{width:42px!important;height:42px!important}.back{padding:9px 11px!important;font-size:12px!important}.hero .wrap,.section .wrap,.stats.wrap{width:calc(100% - 22px)!important}.actions{grid-template-columns:1fr!important}.btn.primary{grid-column:auto}.stats.wrap{gap:8px!important}.stat span{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Shared logo header for generated city directory URLs */
.shh-city-brandbar{width:100%;box-sizing:border-box;min-height:76px;padding:12px max(20px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px;background:#0b1d36;border-bottom:1px solid #ffffff18;box-shadow:0 8px 24px #0b1d3614}
.shh-city-brandbar>a:first-child{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:#fff;min-width:0}
.shh-city-brandbar img{display:block;width:52px;height:52px;object-fit:contain;border-radius:13px;background:#fff;padding:3px;box-sizing:border-box}
.shh-city-brandbar span{display:flex;flex-direction:column;gap:2px}
.shh-city-brandbar strong{font-size:19px;letter-spacing:-.03em;color:#fff}
.shh-city-brandbar small{font-size:10px;letter-spacing:1.5px;color:#bac9dc}
.shh-city-brandbar .shh-city-home{border:1px solid #d7a63d88;border-radius:999px;padding:10px 15px;color:#ffd36b;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap}
@media(max-width:600px){.shh-city-brandbar{min-height:66px;padding:10px 12px;gap:10px}.shh-city-brandbar img{width:43px;height:43px}.shh-city-brandbar strong{font-size:16px}.shh-city-brandbar small{font-size:8px;letter-spacing:.9px}.shh-city-brandbar .shh-city-home{padding:8px 10px;font-size:11px}}


/* Dribbble-inspired live listing cards for Jaipur and Sikar city hubs */
.services #liveCards{display:block!important}
.service-block{padding:clamp(16px,2.2vw,26px)!important;border:1px solid #e5eaf1!important;border-radius:26px!important;background:linear-gradient(180deg,#fff,#fcfdff)!important;box-shadow:0 18px 50px #1025410b!important;margin:0 0 22px!important}
.service-head{margin-bottom:18px!important}
.service-head h2{font-size:clamp(20px,2.2vw,25px)!important;color:#102541!important}
.service-head>a{border:1px solid #dce5ef!important;border-radius:999px!important;padding:10px 14px!important;background:#fff!important;color:#0c8278!important;white-space:nowrap}
.listing-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.listing{display:flex!important;flex-direction:column!important;min-width:0!important;overflow:hidden!important;padding:0!important;border:1px solid #e5eaf1!important;border-radius:21px!important;background:#fff!important;color:#12243d!important;text-decoration:none!important;box-shadow:0 5px 18px #10254108!important;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important}
.listing:hover{transform:translateY(-5px)!important;border-color:#c7d8e4!important;box-shadow:0 18px 38px #10254118!important}
.listing-media{position:relative;display:block;width:100%;aspect-ratio:1.55/1;overflow:hidden;background:linear-gradient(135deg,#e8f3f3,#f7f0df 55%,#eaf0f8)}
.listing-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.listing:hover .listing-media img{transform:scale(1.045)}
.listing-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:radial-gradient(circle at 75% 20%,#fff8 0 2%,transparent 28%),linear-gradient(135deg,#e2f2ee,#f9f0d9 58%,#e6eef7);color:#0d8178;font-size:38px}
.listing-badges{position:absolute;left:12px;top:12px;display:flex;flex-wrap:wrap;gap:6px}
.listing-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid #ffffffb8;border-radius:999px;background:#ffffffed;color:#145c50;font-size:10px;font-weight:850;box-shadow:0 3px 10px #10254112;backdrop-filter:blur(8px)}
.listing-body{display:flex;flex:1;flex-direction:column;padding:16px 16px 15px}
.listing-title{display:block!important;min-height:0!important;margin:0!important}
.listing-title strong{display:-webkit-box!important;overflow:hidden!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:16px!important;line-height:1.35!important;font-weight:850!important;letter-spacing:-.025em!important;color:#12243d!important}
.listing-location{display:flex;align-items:flex-start;gap:6px;margin-top:8px;color:#718096;font-size:12px;line-height:1.5}
.listing-location span:first-child{flex:none}
.listing-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:14px}
.listing-price{font-size:17px;font-weight:900;letter-spacing:-.035em;color:#102541}
.listing-price small{font-size:11px;font-weight:600;letter-spacing:0;color:#718096}
.listing-rating{font-size:11px;font-weight:800;color:#8b6416;white-space:nowrap}
.listing-facilities{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.listing-facility{display:inline-flex;align-items:center;max-width:100%;padding:6px 8px;border:1px solid #e5edf2;border-radius:8px;background:#f7fafc;color:#52657b;font-size:10px;font-weight:750}
.listing-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-top:auto!important;padding-top:14px!important;border-top:1px solid #edf0f4!important;font-size:12px!important}
.listing-bottom b{color:#0c8278!important;font-size:12px!important;font-weight:850!important}
.listing-arrow{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eaf6f3;color:#0c8278;font-size:16px;transition:transform .2s ease}
.listing:hover .listing-arrow{transform:translateX(3px)}
@media(max-width:900px){.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}}
@media(max-width:560px){.service-block{padding:13px!important;border-radius:20px!important}.service-head{align-items:flex-start!important}.service-head>div{min-width:0}.service-head h2{font-size:19px!important}.service-head>a{font-size:11px!important;padding:8px 10px!important}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.listing{border-radius:16px!important}.listing-media{aspect-ratio:1.08/1}.listing-body{padding:11px!important}.listing-title strong{font-size:13px!important}.listing-location{font-size:10px!important;line-height:1.4}.listing-price-row{display:block;margin-top:10px}.listing-price{font-size:14px}.listing-rating{display:block;margin-top:5px;font-size:10px}.listing-facility{font-size:9px;padding:5px 6px}.listing-bottom{padding-top:10px!important;font-size:10px!important}.listing-bottom b{font-size:10px!important}.listing-arrow{width:25px;height:25px}}
@media(max-width:360px){.listing-grid{grid-template-columns:1fr!important}.listing-media{aspect-ratio:1.65/1}.listing-body{padding:14px!important}.listing-title strong{font-size:15px!important}}
@media(prefers-reduced-motion:reduce){.listing,.listing-media img,.listing-arrow{transition:none!important}}

/* Category-specific photo banners used when a listing has no uploaded image */
.listing-placeholder.category-banner{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;color:#fff!important;text-shadow:0 2px 12px #10254199;font-size:42px!important}
.listing-badge.category-badge{color:#20324a;background:#ffffffed;letter-spacing:.035em}
