/* Readable, touch-friendly public experience. Keep the established forest palette. */
:root{--muted:#52675d;--line:#d8e1d7;--paper:#f7f8f3;--rust:#95502f}

html[lang=fa] .catalog-site :is(h1,h2,h3){letter-spacing:0}

.catalog-site{font-size:16px}
.catalog-site h1{font-weight:750}
.catalog-site h2{font-weight:700}
.catalog-site h3{font-weight:650}

.site-topline{font-size:12px}
.site-navigation{font-size:14px;gap:20px}
.site-language{font-size:13px}
.site-header{position:relative;gap:20px}
.site-header-actions{gap:8px}
.site-button.small{font-size:13px}
.site-wordmark{font-size:23px}
.nav-universities a{min-height:64px}
.nav-popover.compact{inset-inline-end:12%;inset-inline-start:auto}
.nav-popover a:hover{background:#eaf0df}
.nav-drop summary:focus-visible{outline:2px solid var(--rust);outline-offset:3px;border-radius:6px}

.search-toggle{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:44px;height:44px;background:white;color:var(--ink);flex-shrink:0}
.catalog-site dialog{border:1px solid var(--line);border-radius:20px;color:var(--ink);box-shadow:0 25px 100px #102d3860}
.catalog-site dialog::backdrop{background:#102d38b0;backdrop-filter:blur(5px)}
body:has(dialog[open]){overflow:hidden}

.search-dialog{width:min(720px,calc(100% - 32px));max-height:85dvh;padding:28px;overflow:auto}
.search-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.search-dialog h2{font-size:24px;margin:0}
.search-close{border:0;background:#edf2e7;border-radius:50%;font-size:27px;width:44px;height:44px;color:var(--ink)}
.search-dialog form{display:flex;gap:10px;margin-block:22px}
.search-dialog input{min-width:0;width:100%;border:1px solid var(--line);border-radius:10px;padding:14px;background:#f8faf5;color:var(--ink);font-size:16px}
.search-status{font-size:14px;color:var(--muted)}
.search-results{display:grid;gap:10px}
.search-results a{padding:16px;border:1px solid var(--line);border-radius:12px;display:grid;gap:7px}
.search-results a:hover{background:#edf2e5}
.search-results small{color:var(--rust);font-size:12px}
.search-results strong{font-size:18px}
.search-results span{font-size:14px;line-height:1.8;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.hero-copy>p{font-size:18px;line-height:2}
.editorial-hero{gap:52px;min-height:590px;padding-block:48px}
.hero-visual{padding-bottom:58px}
.hero-slider-controls{position:absolute;inset-inline-end:14px;bottom:0;display:flex;gap:6px;direction:ltr;padding:8px;background:white;border:1px solid var(--line);border-radius:30px}
.hero-slider-controls button{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--ink);font-size:13px}
.hero-slider-controls button[aria-pressed=true]{background:var(--ink);color:white}
.hero-photo-label small{font-size:12px;max-width:230px}
.hero-photo-label b{font-size:14px}
.floating-campus{bottom:20px}
.hero-small-proof,.section-kicker{font-size:12px}
.quick-search>form{padding:22px 26px}
.quick-search label{font-size:14px}
.quick-search input,.quick-search select{font-size:16px}
.quick-search input::placeholder{color:var(--muted)}

.section-block{padding-top:64px}
.section-heading p{font-size:16px}
.card-location{font-size:13px}
.university-card-body>p,.guide-card p,.mall-card p{font-size:15px;line-height:1.95}
.university-card-body>p{min-height:88px}
.card-footer,.arrow-link{font-size:14px}
.university-card,.mall-card,.guide-card{border-radius:18px}
.university-card-image>img{height:230px}
.guide-card .arrow-link,.mall-card .arrow-link{font-size:14px}
.guide-card{gap:20px}
.map-feature p{font-size:16px}
.application-cta p{font-size:16px}
.application-cta{background:#e7efdb;border:1px solid #d7e2c8}
.site-footer-brand p,.site-footer-main>div>a:not(.site-brand){font-size:14px}
.site-footer-main h3{font-size:16px}
.site-footer-bottom{font-size:12px}
.footer-email{font-size:14px!important}
.floating-contact{position:fixed;inset-inline-end:22px;bottom:22px;z-index:180;background:var(--ink);color:#fff!important;border:1px solid #ffffff60;border-radius:40px;padding:13px 20px;box-shadow:0 8px 24px #173f3630;display:flex;align-items:center;gap:14px;font-size:14px}
.floating-contact span{color:var(--accent);font-size:24px}
.public-footer{padding-bottom:70px}

.page-intro{font-size:18px}
.breadcrumbs,.review-stamp{font-size:13px}
.map-controls label,.catalog-filters label{font-size:14px}
.map-controls select,.catalog-filters input,.catalog-filters select{font-size:15px;min-height:48px}
.interactive-map{height:480px}
.map-start p{font-size:15px}
.map-start h2{font-size:32px}
.small-note{font-size:14px!important}
.locations-grid{gap:24px}
.location-card{overflow:hidden;padding:22px;background:white;border-radius:16px;min-width:0}
.catalog-site .location-cover{width:calc(100% + 44px);max-width:none;height:160px;object-fit:cover;margin:-22px -22px 20px}
.location-icon{background:white;border:1px solid var(--line);border-radius:9px;padding:5px;position:relative;margin-top:-45px;margin-bottom:15px;width:86px;min-height:48px;display:grid;place-items:center}
.location-card h3{font-size:21px}
.location-card>p{font-size:14px}
.address{font-size:12px!important}
.inline-links,.text-button{font-size:14px}
.text-button{min-height:44px}
.location-list-actions{text-align:center;margin-block:25px 10px}
.location-list-actions p{font-size:14px;color:var(--muted)}
.district-links small{font-size:12px}
.rental-sample .card-location{font-size:14px}
.rental-sample p{font-size:15px}
.listing-links{font-size:14px}
.university-content p,.feature-list{font-size:16px}
.section-tabs{font-size:14px}
.photo-gallery{gap:20px}
.photo-gallery figure{min-width:0}
.photo-gallery a{display:block;overflow:hidden;border-radius:14px}
.photo-gallery img{transition:transform .25s}
.photo-gallery a:hover img{transform:scale(1.035)}
.photo-gallery figcaption{font-size:12px;line-height:1.9}
.gallery-dialog{width:min(1100px,calc(100% - 24px));padding:60px 20px 16px;max-height:94dvh}
.gallery-dialog>img{width:100%;height:65dvh;object-fit:contain}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px}
.gallery-toolbar button{border:1px solid #adc0af;background:#edf2e7;color:var(--ink);padding:10px 16px;border-radius:9px;min-height:44px;font-size:14px}
.gallery-toolbar button:disabled{opacity:.4}
.gallery-toolbar p{font-size:13px;margin:0;text-align:center}
.gallery-close{width:44px;height:44px;top:8px;inset-inline-end:12px}
.filter-count{font-size:14px}

@media(min-width:961px) and (max-width:1180px){.site-navigation{gap:12px;font-size:12px}
.site-wordmark{font-size:20px}
.site-header-actions .site-button{font-size:12px}
.site-header{gap:12px}
.container{padding-inline:28px}
}

@media(max-width:960px){.site-navigation{padding:16px 24px;max-height:calc(100dvh - 115px);overscroll-behavior:contain;font-size:16px}
.site-navigation>a,.nav-drop>summary{padding-block:16px;min-height:52px}
.nav-popover,.nav-popover.compact,html[dir=rtl] .nav-popover{position:static;transform:none;width:100%;padding:16px;box-shadow:none;border-radius:12px;margin-bottom:12px}
.nav-universities{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.nav-universities a{font-size:13px;padding:9px;gap:8px}
.site-header-actions .site-button{font-size:12px;min-height:44px}
.site-language{font-size:13px}
.mobile-menu{min-width:44px;min-height:44px}
.site-header{gap:10px}
.locations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:600px){.container{padding-inline:20px}
.site-topline{font-size:10px}
.site-topline .container>span{max-width:53%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.site-header{min-height:78px;gap:4px}
.site-brand{gap:7px}
.site-emblem{width:32px;height:38px;font-size:33px}
.site-wordmark{font-size:18px}
.site-wordmark>small{font-size:5px;letter-spacing:1.8px}
.site-header-actions{gap:2px}
.site-language{width:49px;padding-inline:0;font-size:12px}
.site-header-actions .site-button{display:none}
.search-toggle{width:40px;height:40px}
.mobile-menu{padding:10px}
.editorial-hero{padding-top:32px;padding-bottom:32px;gap:28px}
.hero-copy h1{font-size:36px;line-height:1.55;letter-spacing:0}
.hero-copy>p{font-size:16px;line-height:2}
.hero-small-proof{font-size:12px;gap:12px;margin-top:24px}
.hero-small-proof>span+span{padding-inline-start:12px}
.section-kicker{font-size:11px;letter-spacing:.3px}
.hero-visual{padding-inline-start:0;padding-bottom:58px}
.catalog-site .hero-campus-photo{height:300px;border-radius:70px 14px 14px 14px}
.hero-photo-label{inset-inline-end:10px;bottom:70px;padding:10px;max-width:90%;gap:10px}
.hero-photo-label img{width:68px;height:38px}
.hero-photo-label b{font-size:12px}
.hero-photo-label small{font-size:11px}
.floating-campus{display:none}
.hero-slider-controls{inset-inline-end:0;inset-inline-start:0;width:fit-content;margin-inline:auto}
.quick-search>form{padding:18px;gap:16px;display:grid;grid-template-columns:1fr}
.quick-search label{font-size:13px}
.quick-search label+label{border:0;padding:0}
.quick-search input,.quick-search select{border:1px solid var(--line);border-radius:8px;padding:10px;min-height:46px;font-size:16px}
.section-block{padding-top:44px}
.section-heading{align-items:start;gap:14px;flex-wrap:wrap}
.section-heading h2{font-size:28px}
.section-heading p{font-size:15px}
.universities-grid,.malls-grid,.guides-grid,.locations-grid{grid-template-columns:1fr;gap:20px}
.university-card-body{padding:28px 20px 0}
.university-card h3{font-size:24px}
.university-card-body>p{font-size:15px;min-height:0;-webkit-line-clamp:3}
.card-footer{font-size:14px}
.card-location{font-size:12px}
.guide-card p,.mall-card p{font-size:15px}
.guide-card h3{font-size:23px}
.map-feature{margin-top:44px;padding-block:40px}
.map-feature-grid{gap:30px}
.map-feature p{font-size:16px}
.feature-numbers span{font-size:12px}
.application-cta{padding:26px;gap:22px;margin-block:45px}
.application-cta h2{font-size:27px}
.application-cta p{font-size:15px}
.site-footer-main{grid-template-columns:1fr 1fr;gap:28px}
.site-footer-brand{grid-column:1/-1}
.site-footer-main>div>a:not(.site-brand){font-size:14px;line-height:1.9}
.site-footer-main h3{font-size:15px}
.site-footer-bottom{font-size:12px}
.floating-contact{bottom:14px;inset-inline-end:14px;font-size:13px;padding:10px 16px}
.page-heading h1{font-size:36px}
.page-intro{font-size:16px}
.breadcrumbs,.review-stamp{font-size:12px}
.map-controls{padding:18px}
.map-controls label{font-size:13px;min-width:100%;flex-basis:100%}
.map-type-filters{gap:14px;flex-wrap:wrap}
.map-type-filters label{min-width:0;flex-basis:auto;font-size:13px}
.map-controls select{font-size:16px;min-height:48px}
.interactive-map{height:370px}
.map-start p{font-size:14px}
.map-start h2{font-size:25px}
.map-start .site-button{font-size:14px}
.small-note{font-size:13px!important}
.location-card h3{font-size:22px}
.location-card>p{font-size:15px}
.catalog-site .location-cover{height:185px}
.district-links{grid-template-columns:1fr 1fr;gap:10px}
.district-links>a{padding:15px;font-size:14px}
.district-links small{font-size:11px}
.inline-links,.text-button{font-size:14px}
.catalog-filters label{font-size:13px}
.catalog-filters input,.catalog-filters select{font-size:16px}
.photo-gallery figcaption{font-size:12px}
.gallery-dialog{padding:56px 12px 16px}
.gallery-dialog>img{height:52dvh}
.gallery-toolbar{flex-wrap:wrap;gap:8px}
.gallery-toolbar p{order:3;flex-basis:100%;font-size:12px}
.gallery-toolbar button{font-size:13px}
.search-dialog{padding:20px}
.search-dialog h2{font-size:22px}
.search-dialog form{gap:8px}
.search-dialog .site-button{padding:10px}
.university-content p,.feature-list{font-size:16px}
.section-tabs{font-size:14px}
.application-aside .site-button{font-size:14px}
}

@media(prefers-reduced-motion:reduce){.photo-gallery img{transition:none}
}

@media(min-width:601px){.floating-campus{bottom:95px}
.hero-copy h1{font-size:clamp(38px,3.9vw,58px)}
}

@media(min-width:961px){.hero-visual{padding-inline-start:18px}
}


.mobile-portal-link{display:none}
@media(max-width:960px){.mobile-portal-link{display:block}}
.site-brand-mark{width:48px;height:48px;object-fit:contain;flex-shrink:0}.gallery-heading{padding-block:10px 24px}.gallery-heading h1{margin-bottom:18px}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-block:10px 30px}.gallery-filters button{font:inherit;border:1px solid var(--line);border-radius:30px;min-height:46px;padding:10px 20px;background:white;color:var(--ink)}.gallery-filters button[aria-pressed=true]{color:white;background:var(--ink);border-color:var(--ink)}.gallery-albums{display:grid;gap:20px;padding-bottom:70px}.album-panel{border:1px solid var(--line);border-radius:18px;background:white;overflow:hidden;scroll-margin-top:120px}.album-panel>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:24px;padding:18px}.album-panel>summary::-webkit-details-marker{display:none}.album-panel>summary>img{width:165px;height:105px;object-fit:cover;border-radius:12px}.album-panel>summary>span{display:grid;gap:8px}.album-panel summary strong{font-size:23px;font-weight:700}.album-panel summary small,.album-panel summary span>span{font-size:13px;color:var(--muted)}.album-panel .album-expand{font-size:25px;margin-inline-start:auto;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--paper);flex-shrink:0}.album-panel[open] .album-expand{transform:rotate(45deg)}.album-body{padding:12px 24px 28px}.album-body>.arrow-link{margin-bottom:20px}.album-body .photo-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.album-body .photo-gallery>figure:first-child{grid-column:auto}.album-body .photo-gallery img,.album-body .photo-gallery>figure:first-child img{height:215px}.photo-gallery a{position:relative}.photo-enlarge{position:absolute;bottom:12px;inset-inline-end:12px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--ink);box-shadow:0 2px 12px #0002;font-size:20px}.photo-gallery figcaption{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.photo-gallery figcaption>span{flex-basis:100%;font-size:14px;color:var(--ink)}.photo-gallery figcaption>a{font-size:12px}.gallery-source{font-size:12px;display:block;text-align:center;margin-block:12px;text-decoration:underline!important;text-underline-offset:4px}.gallery-thumbnails{display:flex;gap:8px;overflow-x:auto;direction:ltr;padding:4px;max-width:100%;overscroll-behavior:contain}.gallery-thumbnails button{padding:3px;background:transparent;border:2px solid transparent;border-radius:9px;flex:0 0 76px;height:58px}.gallery-thumbnails button[aria-pressed=true]{border-color:var(--ink);background:var(--accent)}.gallery-thumbnails img{width:100%;height:100%;object-fit:cover;border-radius:5px}.gallery-dialog>img{height:55dvh}.gallery-dialog{max-height:94dvh;overflow:auto}.gallery-toolbar p{max-width:65%;line-height:1.8}.site-navigation{gap:14px;font-size:13px}.gallery-albums [hidden]{display:none!important}
@media(max-width:1180px) and (min-width:961px){.site-navigation{gap:10px;font-size:11px}.site-header{gap:10px}.site-wordmark{font-size:20px}}
@media(max-width:960px){.site-navigation{font-size:16px}.album-body .photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.site-brand-mark{width:36px;height:40px}.gallery-heading h1{font-size:34px}.gallery-filters{gap:8px}.gallery-filters button{font-size:13px;padding:9px 14px}.album-panel>summary{gap:13px;padding:14px}.album-panel>summary>img{width:82px;height:84px}.album-panel summary strong{font-size:18px;line-height:1.7}.album-panel summary small,.album-panel summary span>span{font-size:11px}.album-panel .album-expand{width:32px;height:32px;font-size:20px}.album-body{padding:10px 16px 20px}.album-body .photo-gallery{grid-template-columns:1fr}.album-body .photo-gallery img,.album-body .photo-gallery>figure:first-child img{height:230px}.gallery-dialog>img{height:43dvh;touch-action:pan-y}.gallery-toolbar p{max-width:none}.gallery-thumbnails button{flex-basis:64px;height:50px}.gallery-source{font-size:11px}}
.floating-contact{inset-inline-start:22px;inset-inline-end:auto}
@media(max-width:600px){.floating-contact{inset-inline-start:14px;inset-inline-end:auto}}
@media(max-width:360px){.site-wordmark{font-size:16px}.site-wordmark>small{font-size:4.5px;letter-spacing:1.4px}.site-brand-mark{width:32px}.site-language{width:45px}.site-header{gap:2px}}
@media(min-width:961px) and (max-width:1100px){.mobile-menu{display:block;margin-inline-start:auto;min-width:44px;min-height:44px}.site-navigation{display:none;position:absolute;top:100%;inset-inline:0;background:var(--paper);border-bottom:1px solid var(--line);padding:16px 24px;box-shadow:0 20px 30px #173f3610;max-height:calc(100dvh - 115px);overflow:auto;overscroll-behavior:contain;font-size:16px}.site-navigation.open{display:block}.site-navigation>a,.nav-drop>summary{display:flex;padding-block:16px;min-height:52px}.nav-popover,.nav-popover.compact,html[dir=rtl] .nav-popover{position:static;transform:none;width:100%;padding:16px;box-shadow:none;border-radius:12px;margin-bottom:12px}.nav-universities{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-portal-link{display:block}}
@media(max-width:360px){.site-header{display:grid;grid-template-columns:minmax(0,1fr) 40px auto;gap:4px}.site-brand{min-width:0;gap:5px}.site-wordmark{font-size:14px}.site-wordmark>small{display:none}.site-brand-mark{width:28px;height:34px}.site-header-actions .site-language{width:40px}.mobile-menu{margin:0;min-width:40px;width:40px}}
.guide-card{min-width:0;overflow-wrap:anywhere;hyphens:auto}
