/* Soligorsk Online · Manrope typography system v1.0 */
:root{
 --font-ui:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif;
 --text-primary:#0075D4;--text-secondary:#5C5C5C;--text-tertiary:#737373;
 --text-link:#005EB5;--text-positive:#227447;--text-critical:#B8302C;
 --text-inverse:#FFFFFF;--text-inverse-secondary:#EFEFEF;--text-disabled:#999999;
 --type-display:clamp(2.25rem,1.5rem + 2.4vw,3rem);
 --type-h1:clamp(2rem,1.55rem + 1.5vw,2.5rem);
 --type-h2:clamp(1.5rem,1.25rem + .8vw,2rem);
 --type-h3:1.25rem;--type-h4:1.125rem;
 --type-lead:1.125rem;--type-body:1rem;--type-ui:.875rem;--type-caption:.75rem;
 --weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;
 --tracking-display:-.035em;--tracking-heading:-.025em;--tracking-body:0;
 --measure-reading:66ch;
}
html{font-size:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--font-ui);font-size:var(--type-body);line-height:1.6;font-weight:400;color:var(--text-primary);font-synthesis:none}
button,input,select,textarea{font-family:var(--font-ui);font-size:var(--type-ui);line-height:1.45;letter-spacing:0}
h1,h2,h3,h4{font-family:var(--font-ui);color:var(--text-primary);text-wrap:balance;overflow-wrap:break-word}
h1{font-size:var(--type-h1);line-height:1.15;letter-spacing:var(--tracking-heading);font-weight:700}
h2{font-size:var(--type-h2);line-height:1.25;letter-spacing:var(--tracking-heading);font-weight:700}
h3{font-size:var(--type-h3);line-height:1.35;letter-spacing:-.015em;font-weight:600}
h4{font-size:var(--type-h4);line-height:1.4;letter-spacing:-.01em;font-weight:600}
p{overflow-wrap:break-word}input::placeholder,textarea::placeholder{color:var(--text-tertiary);opacity:1}
button:disabled,input:disabled,select:disabled{color:var(--text-disabled)}
.type-display{font:700 var(--type-display)/1.1 var(--font-ui);letter-spacing:var(--tracking-display)}
.type-h1{font:700 var(--type-h1)/1.15 var(--font-ui);letter-spacing:var(--tracking-heading)}
.type-h2{font:700 var(--type-h2)/1.25 var(--font-ui);letter-spacing:var(--tracking-heading)}
.type-h3{font:600 var(--type-h3)/1.35 var(--font-ui);letter-spacing:-.015em}
.type-h4{font:600 var(--type-h4)/1.4 var(--font-ui);letter-spacing:-.01em}
.type-lead{font:400 var(--type-lead)/1.6 var(--font-ui)}
.type-body{font:400 var(--type-body)/1.65 var(--font-ui)}
.type-ui{font:500 var(--type-ui)/1.45 var(--font-ui)}
.type-caption{font:500 var(--type-caption)/1.5 var(--font-ui)}
.type-label{font:700 var(--type-caption)/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase}
.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-link{color:var(--text-link)}
/* Applied page and component roles. This file is loaded after component layout CSS. */
.page h1,.category-controls h1{font-size:var(--type-h1);line-height:1.15;font-weight:700;letter-spacing:var(--tracking-heading)}
.article-layout h1{font-size:var(--type-display);line-height:1.1;letter-spacing:var(--tracking-display)}
.ref-heading h2,.section-head h2{font-size:var(--type-h2);line-height:1.25;font-weight:700;letter-spacing:var(--tracking-heading)}
.place-block h2,.detailcard h2,.modal h2{font-size:1.5rem;line-height:1.3;letter-spacing:-.02em;font-weight:700}
.place-intro h1{font-size:var(--type-h1);line-height:1.15;color:var(--text-inverse);letter-spacing:var(--tracking-heading)}
.place-intro>p{font-size:var(--type-body);line-height:1.6;color:var(--text-inverse-secondary)}
.lead,.pageintro{font-size:var(--type-lead);line-height:1.6;color:var(--text-secondary)}
.article-body,.article-body p,.place-about p{font-size:var(--type-body);line-height:1.75;color:var(--text-secondary);max-width:var(--measure-reading)}
.article-body p+p{margin-top:1em}
.digest h3,.poster-copy h3{font-size:var(--type-h3);line-height:1.35;font-weight:600;letter-spacing:-.015em;color:var(--text-inverse)}
.place-tile h3,.similar-card h3,.row-copy h3,.result h3,.place-story h3{font-size:var(--type-h4);line-height:1.4;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}
.utility strong,.place-details h3,.place-offer h3{font-size:var(--type-h4);line-height:1.4;font-weight:600;letter-spacing:-.01em}
.jobs-intro h3{font-size:1.5rem;line-height:1.4;font-weight:500;letter-spacing:-.02em}
.refined-header .desktop-nav a,.header-search span,.header-account,.header-drawer nav>a{font-size:var(--type-ui);line-height:1.45;font-weight:600;letter-spacing:0}
.refined-header .desktop-nav a{padding:10px 9px;color:var(--text-secondary)}
.refined-header .desktop-nav a.active{color:var(--text-primary)}
.header-search span{color:var(--text-secondary)}.header-search{min-width:0}.header-search kbd{font-size:var(--type-caption);line-height:1.3}
.primary,.ghost,.pill,.all-link,.place-book,.all-photos,.place-map-open,.review-submit button,.place-offer button,.jobs-intro a,.category-selects select,.category-search,.catalogbar input,.catalogbar select{font-size:var(--type-ui);line-height:1.45;font-weight:600}
.ref-filters .pill{font-weight:500}.category-selects select{max-width:145px}
.category-controls h1{font-size:1.75rem}.category-count{font-size:var(--type-ui)}
.row-copy p,.place-tile p,.similar-card p,.result p,.utility small,.place-story p,.place-offer p,.place-faq details p,.review-card p,.place-details dd,.modal p,.menu-item p,.booking-form label,.review-form>label{font-size:var(--type-ui);line-height:1.6;color:var(--text-secondary)}
.place-details dt,.place-label,.article-label,.command-hint{font-size:var(--type-caption);line-height:1.4;font-weight:700;letter-spacing:.06em}
.place-details dt{color:var(--text-tertiary)}
.crumb,.place-tile small,.similar-card small,.job-category small,.poster-copy p,.poster-copy small,.meta,.article-meta,.place-section-head span,.review-card-head small,.review-submit small,.place-score small,.command-result small,.command-footer,.booking-note,.footer-brand-caption{font-size:var(--type-caption);line-height:1.5;color:var(--text-tertiary)}
.job-category strong,.menu-item strong,.review-card-head strong,.place-faq summary,.command-result strong,.command-shortcuts a{font-size:var(--type-ui);line-height:1.45;font-weight:600;color:var(--text-primary)}
.job-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.job-category{display:grid;grid-template-columns:45px 1fr;align-content:center;column-gap:10px}.job-category img{width:45px;height:45px;grid-row:span 2;margin:0}.job-category small{margin-top:3px}
.place-tabs a,.local-links,.footer-columns a,.textlink,.row-detail,.place-details button,.category-count button,.place-section-head a,.map-popover a{font-size:var(--type-ui);line-height:1.5;color:var(--text-link)}
.place-tabs a{color:var(--text-secondary)}.place-tabs a:first-child{color:var(--text-critical)}
.place-score strong,.poster-copy span,.rating,.row-photo .rating,.menu-item span{font-size:var(--type-ui);font-weight:600;line-height:1.4;font-variant-numeric:tabular-nums}
.row-copy .row-open{color:var(--text-positive)}
.poster-copy p,.poster-copy small,.place-score small{color:var(--text-inverse-secondary)}
.place-collection strong{font-size:var(--type-h4);line-height:1.4;color:white}
.refined-footer .footer-columns a,.refined-footer .footer-columns button{font-size:var(--type-ui);line-height:1.55;color:var(--text-secondary)}
.footer-columns h2{font-size:var(--type-caption);line-height:1.4;letter-spacing:.05em;color:var(--text-primary)}
.refined-footer .footer-bottom small,.refined-footer .footer-bottom button,.footer-bottom>span{font-size:var(--type-caption);line-height:1.5;color:var(--text-tertiary)}
.footer-top p{font-size:var(--type-h3);line-height:1.4}.footer-top p span{color:var(--text-tertiary)}
.footer-bottom{flex-wrap:wrap}.footer-columns{column-gap:24px}.refined-footer .footer-grid{grid-template-columns:210px minmax(0,1fr)}
.place-intro{padding:28px}.category-row{grid-template-columns:104px 1fr}.category-row .row-photo{height:120px}.category-shell{grid-template-columns:420px 1fr}.category-flags .pill{font-size:var(--type-ui)}
.review-form textarea{font-size:var(--type-body);line-height:1.65}.modal input,.modal textarea,.modal select,.detailcard input{font-size:var(--type-body)}
.command-head input{font-family:var(--font-ui)}.command-empty{font-size:var(--type-ui);color:var(--text-secondary)}
.map-refresh,.map-popover p{font-size:var(--type-ui);line-height:1.5}.map-attribution,.map-demo-label{font-size:var(--type-caption);color:var(--text-secondary)}
.map-popover h3{font-size:var(--type-ui);line-height:1.4}.map-popover{width:335px}.map-popover>div{padding-right:10px}
@media(max-width:1100px){.refined-header .brand-wordmark{font-size:14px}.refined-header .desktop-nav a{font-size:13px;padding:10px 7px}.refined-header .headrow{gap:10px}.refined-header .header-search{min-width:42px}.category-shell{grid-template-columns:380px 1fr}}
@media(max-width:760px){.pageintro{font-size:var(--type-body)}.digest h3{font-size:var(--type-h4)}.poster-copy h3{font-size:var(--type-h4)}.poster-copy span{font-size:var(--type-caption)}.poster{height:360px}.utility{flex-wrap:wrap}.utility strong{font-size:var(--type-ui)}.utility small{font-size:var(--type-caption)}.utility-icon{font-size:32px;width:34px}.job-category{display:block;flex-basis:155px}.job-category img{width:68px;height:68px;margin-bottom:12px}.category-shell{display:block}.category-row{grid-template-columns:104px 1fr}.place-about p{font-size:var(--type-body)}.place-details dl{grid-template-columns:90px 1fr}.refined-footer .footer-grid{grid-template-columns:1fr}.refined-footer .footer-brand{border-right:0;border-bottom:1px solid #F7F7F7}.footer-columns{gap:25px 18px}.place-story{align-items:flex-start}.place-story img{width:80px}.place-cover{min-height:250px}.place-intro h1{font-size:var(--type-h1)}}
