@font-face{font-family:'Balerno Serif';src:url('/assets/balerno-serif-regular.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Krub;src:url('/assets/krub-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Krub;src:url('/assets/krub-bold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:'Gosha Sans';src:url('/assets/gosha-sans-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Office Code Pro';src:url('/assets/office-code-pro-light.otf') format('opentype');font-style:normal;font-weight:300;font-display:swap}

/* Share brand tokens between business routes and their cards; group chrome stays neutral. */
:is(body,.business-card)[data-brand]{font-family:var(--body-font);--accent-text:#fff;--surface:#fff;--button-radius:10px;--heading-font:var(--body-font);--heading-weight:700;--hero-radius:22px}
:is(body,.business-card)[data-brand='bistro-magdalene']{--ink:#1f1521;--muted:#66566b;--line:#ded0df;--paper:#fcf6f2;--wash:#eee6ef;--accent:#7c5586;--accent-hover:#5d4065;--contact:#1f1521;--focus:#5d4065;--body-font:Krub,Arial,sans-serif;--heading-font:'Balerno Serif',Georgia,serif;--heading-weight:400;--button-radius:999px;--hero-radius:28px;--radius:24px}
:is(body,.business-card)[data-brand='prazi-cafe']{--ink:#000;--muted:#505050;--line:#d8d8d8;--paper:#fff;--wash:#f5f5f5;--accent:#000;--accent-text:#fff;--accent-hover:#303030;--contact:#000;--focus:#000;--body-font:'Office Code Pro','Courier New',monospace;--heading-font:'Gosha Sans',Arial,sans-serif;--heading-weight:400;--button-radius:0px;--hero-radius:0px;--radius:0px;font-weight:300;font-synthesis:none}
/* Cambria is a system font: do not redistribute the supplied desktop fonts. */
:is(body,.business-card)[data-brand='esence-cafe']{--ink:#41291b;--muted:#66574e;--line:#dfd8d3;--paper:#fff;--wash:#f8f6f4;--accent:#41291b;--accent-hover:#2b1b12;--contact:#41291b;--focus:#41291b;--body-font:Cambria,Georgia,'Times New Roman',serif;--heading-weight:400;--button-radius:8px;--hero-radius:6px;--radius:12px}
:is(body,.business-card)[data-brand='cukrarna-magdalene']{--ink:#1b1c10;--muted:#474c25;--line:#c0b4ae;--paper:#fcf6f2;--wash:#e8eadb;--accent:#474c25;--accent-hover:#1b1c10;--contact:#1b1c10;--focus:#474c25;--body-font:Krub,Arial,sans-serif;--heading-font:'Balerno Serif',Georgia,serif;--heading-weight:400;--button-radius:999px;--hero-radius:24px;--radius:20px}

[data-brand] h1,[data-brand] h2,[data-brand] h3{font-family:var(--heading-font);font-weight:var(--heading-weight);letter-spacing:-.035em}
/* Each hub card previews the same identity as its linked business profile. */
.business-card[data-brand]{display:flex;flex-direction:column;color:var(--ink);background:var(--paper);border-color:var(--line);border-radius:var(--radius)}
.business-card[data-brand]>img{flex-shrink:0}
.business-card[data-brand]>.business-card-content{display:flex;flex:1;flex-direction:column;align-items:flex-start;position:relative;isolation:isolate;border-top:4px solid var(--accent);padding:22px 19px 20px}
.business-card[data-brand] .card-type{color:var(--accent);font-size:12px;letter-spacing:.04em;text-transform:uppercase;line-height:1.5;min-height:3em}
.business-card[data-brand] h3{font-family:var(--heading-font);font-weight:var(--heading-weight);font-size:28px;line-height:1.15;min-height:2.3em;margin-bottom:14px;letter-spacing:-.025em}
.business-card[data-brand] p{font-family:var(--body-font);font-size:14px;line-height:1.6;color:var(--muted);min-height:4.8em;margin-bottom:22px}
.business-card[data-brand] .business-count{margin-top:auto;font-family:var(--body-font);font-size:14px;line-height:1.5;font-weight:600;background:var(--accent);color:var(--accent-text);border-radius:var(--button-radius);padding:7px 12px}
.business-card[data-brand] .business-count.no-openings{background:var(--wash);color:var(--accent)}
.business-card[data-brand]:hover{border-color:var(--accent);box-shadow:0 8px 25px #0000000a}
.business-card[data-brand]:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.business-card[data-brand='prazi-cafe']>.business-card-content::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#fffffff0,#ffffffe0),url('/assets/prazi-art-5.jpg') center 43% / cover no-repeat}
.business-card[data-brand='esence-cafe']>.business-card-content::before{content:"";position:absolute;inset:12px 8px 12px 0;z-index:-1;pointer-events:none;background:url('/assets/esence-wine-lady.svg') right center / auto 100% no-repeat;opacity:.16}
.business-card[data-brand='prazi-cafe'] .business-count,.business-card[data-brand='prazi-cafe'] .card-type{font-family:var(--heading-font);font-weight:400}
.business-card[data-brand='esence-cafe'] .business-count{font-weight:400}
@media(max-width:680px){
  .business-card[data-brand]>.business-card-content{padding:17px 13px 18px}
  .business-card[data-brand] h3{font-size:25px;min-height:2.3em}
  .business-card[data-brand] .card-type{min-height:4.5em}
  .business-card[data-brand] p{min-height:6.4em}
  .business-card[data-brand] .business-count{padding:7px 9px}
}
@media(max-width:360px){.business-grid{grid-template-columns:1fr}.business-card[data-brand]>img{height:180px}.business-card[data-brand] h3,.business-card[data-brand] p{min-height:0}}
[data-brand] .header{background:var(--paper)}
[data-brand] .navigation{height:100px}
[data-brand] .business-brand{gap:22px;letter-spacing:0;flex-shrink:0}
[data-brand] .business-logo{background:transparent;border-radius:0;width:108px;height:82px;object-fit:contain}
[data-brand] .brand-caption{font-family:var(--body-font);font-size:15px;font-weight:600;line-height:1.4;border-left:1px solid var(--line);padding-left:20px}
[data-brand] .brand-caption small{font-size:10px;font-weight:400;letter-spacing:.07em;text-transform:none;margin-top:3px;white-space:nowrap}
[data-brand] .nav-links a{font-family:var(--body-font)}
[data-brand] .business-intro{padding-block:32px 60px}
[data-brand] .back-link{font-weight:400;color:var(--muted);font-size:13px}
[data-brand] .business-hero{gap:65px}
[data-brand] .business-hero h1{font-size:clamp(40px,4.7vw,66px);line-height:1.08}
[data-brand] .business-hero figure{height:325px;border-radius:var(--hero-radius)}
[data-brand] .business-lead{max-width:34ch}
[data-brand] .button{background:var(--accent);border-color:var(--accent);color:var(--accent-text);border-radius:var(--button-radius);font-family:var(--body-font)}
[data-brand] .button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
[data-brand] .business-tabs a{border-color:var(--line);border-radius:var(--button-radius);background:var(--surface)}
[data-brand] .business-tabs a[aria-current]{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}
[data-brand] .business-tabs a:hover:not([aria-current]){border-color:var(--ink)}
[data-brand] .job-detail{border-radius:var(--radius);background:var(--surface)}
[data-brand] .job-detail h4{letter-spacing:0}
[data-brand] .application-section{background:var(--paper)}
[data-brand] .application-form{border-radius:var(--radius)}
[data-brand] .application-form input,[data-brand] .application-form select,[data-brand] .application-form textarea{font-family:var(--body-font);border-color:var(--line);border-radius:min(var(--button-radius),8px)}
[data-brand] .contact{background:var(--contact)}
[data-brand] .contact .eyebrow,[data-brand] .contact p:not(.eyebrow),[data-brand] .contact-links a>span{color:#e0dcd8}
[data-brand] .contact-links a{border-color:#ffffff40}
[data-brand] :focus-visible,[data-brand] .application-form :focus-visible{outline-color:var(--focus)}
[data-brand] .contact :focus-visible{outline-color:#fff}
[data-brand] .footer .business-logo{height:65px}

[data-brand='bistro-magdalene'] .business-logo{width:164px;height:60px}
[data-brand='bistro-magdalene'] .business-hero h1,[data-brand='cukrarna-magdalene'] .business-hero h1{font-size:clamp(46px,5.5vw,76px)}
[data-brand='bistro-magdalene'] .business-hero .eyebrow{color:#7c5586}
[data-brand='bistro-magdalene'] .job-detail-head h3{font-size:40px}
[data-brand='bistro-magdalene'] .salary strong{color:#5d4065}
[data-brand='prazi-cafe'] .header{border-bottom:2px solid #000}
/* The manual's original asset includes transparent padding. Show its unchanged wordmark
   at the same visible scale as Bistro, without enlarging the navigation row. */
[data-brand='prazi-cafe'] .brand-logo-frame{display:block;position:relative;overflow:hidden;width:180px;height:82px;flex-shrink:0}
[data-brand='prazi-cafe'] .brand-logo-frame .business-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:215px;height:215px;max-width:none;object-fit:contain}
[data-brand='prazi-cafe'] .business-hero .eyebrow{color:#000;border-left:4px solid #000;padding-left:12px}
[data-brand='prazi-cafe'] .job-detail{border-top:3px solid #000}
[data-brand='prazi-cafe'] .contact .eyebrow{color:#fff}
[data-brand='prazi-cafe'] .button,[data-brand='prazi-cafe'] .nav-links a,[data-brand='prazi-cafe'] .brand-caption,[data-brand='prazi-cafe'] .business-tabs a,[data-brand='prazi-cafe'] h4,[data-brand='prazi-cafe'] .application-form legend,[data-brand='prazi-cafe'] .form-grid label,[data-brand='prazi-cafe'] strong,[data-brand='prazi-cafe'] .text-link{font-family:var(--heading-font);font-weight:400}
[data-brand='prazi-cafe'] .form-grid .optional{font-family:var(--body-font);font-weight:300}
/* The cafe's original paintings form a decorative underlay, not a gallery.
   Artwork stays in separate layers; text, controls and the logo remain solid. */
[data-brand='prazi-cafe'] .business-intro{width:100%;padding-inline:max(32px,calc((100% - 1200px)/2));position:relative;isolation:isolate;background:#fff}
[data-brand='prazi-cafe'] .business-intro::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#ffffffd9 0%,#ffffffe6 62%,#fff 100%),url('/assets/prazi-art-5.jpg') left 43% / min(900px,85vw) auto no-repeat}
[data-brand='prazi-cafe'] .jobs-section{position:relative;isolation:isolate;background:#faf8f5}
[data-brand='prazi-cafe'] .jobs-section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#faf8f5f5 0%,#faf8f5dc 60%,#faf8f5c9 100%),url('/assets/prazi-art-6.jpg') right 44% / min(950px,90vw) auto no-repeat}
[data-brand='prazi-cafe'] .job-detail{background:#fffffff5}
[data-brand='prazi-cafe'] .application-section{position:relative;isolation:isolate;background:#f8fbff}
[data-brand='prazi-cafe'] .application-section::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#f8fbffdf 0%,#f8fbffe8 48%,#f8fbff 85%),url('/assets/prazi-art-3.jpg') left 55% / min(760px,75vw) auto no-repeat}
[data-brand='prazi-cafe'] .application-form{background:#fff}
[data-brand='prazi-cafe'] .address,[data-brand='prazi-cafe'] .application-intro>p:not(.eyebrow){color:#383838}
[data-brand='esence-cafe'] .business-hero .eyebrow{color:#41291b}
[data-brand='esence-cafe'] .business-hero h1{font-weight:400;letter-spacing:-.025em}
[data-brand='esence-cafe'] .contact h2{font-weight:400}
/* Higher-resolution original; frame removes only empty page margins. */
body[data-brand='esence-cafe'] .navigation{height:124px}
body[data-brand='esence-cafe'] .brand-logo-frame{display:block;position:relative;overflow:hidden;width:180px;height:110px;flex-shrink:0}
body[data-brand='esence-cafe'] .brand-logo-frame .business-logo{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:226px;height:auto;max-width:none}
/* Original vector artwork extracted from the supplied Esence drinks menu.
   Decorative layers keep the foreground text, photograph and controls solid. */
body[data-brand='esence-cafe'] .business-intro{position:relative;isolation:isolate}
body[data-brand='esence-cafe'] .business-intro::before{content:"";position:absolute;inset:54px 0 22px;z-index:-1;pointer-events:none;background:url('/assets/esence-wine-lady.svg') 43% center / auto 100% no-repeat;opacity:.18}
body[data-brand='esence-cafe'] .empty-state{position:relative;isolation:isolate;overflow:hidden}
body[data-brand='esence-cafe'] .empty-state::before{content:"";position:absolute;inset:18px 28px 18px 0;z-index:-1;pointer-events:none;background:url('/assets/esence-wine-lady.svg') right center / auto 100% no-repeat;opacity:.22}
@media(max-width:680px){
  body[data-brand='esence-cafe'] .business-intro::before{inset:48px 0 auto;height:350px;background-position:right top;background-size:auto 100%;opacity:.14}
  body[data-brand='esence-cafe'] .empty-state::before{inset:20px 8px 20px 0;opacity:.12}
}
[data-brand='cukrarna-magdalene'] .header{border-bottom:2px solid #8e9749}
/* User-requested compact wordmark in the same navigation layout as Bistro. */
[data-brand='cukrarna-magdalene'] .business-logo{width:164px;height:60px}
[data-brand='cukrarna-magdalene'] .business-hero .eyebrow{color:#474c25}
[data-brand='cukrarna-magdalene'] .business-hero figure{height:325px}
[data-brand='cukrarna-magdalene'] .business-hero .text-link{text-decoration-color:#888255;text-decoration-thickness:2px}
[data-brand='cukrarna-magdalene'] .contact{border-top:3px solid #8e9749}
[data-brand='cukrarna-magdalene'] .contact .eyebrow{color:#d2d5b6}

@media(max-width:1000px){[data-brand] .business-brand{gap:14px}[data-brand] .brand-caption{padding-left:14px}[data-brand] .brand-caption small{display:none}[data-brand] .business-hero{gap:35px}[data-brand] .nav-links{gap:18px}}
@media(max-width:680px){
  [data-brand] .navigation{height:88px;gap:12px}
  [data-brand] .business-brand{gap:12px;flex-shrink:1;min-width:0}
  [data-brand] .business-logo{width:90px;height:72px;flex-shrink:0}
  [data-brand] .brand-caption{font-size:12px;padding-left:12px}
  [data-brand] .navigation>.button{font-size:12px;padding-inline:14px;flex-shrink:0}
  [data-brand='bistro-magdalene'] .business-logo{width:124px;height:48px}
  [data-brand='cukrarna-magdalene'] .business-logo{width:124px;height:48px}
  [data-brand='prazi-cafe'] .brand-logo-frame{width:132px;height:64px}
  [data-brand='prazi-cafe'] .brand-logo-frame .business-logo{width:160px;height:160px}
  body[data-brand='esence-cafe'] .navigation{height:96px}
  body[data-brand='esence-cafe'] .brand-logo-frame{width:132px;height:82px}
  body[data-brand='esence-cafe'] .brand-logo-frame .business-logo{width:172px;height:auto}
  [data-brand='prazi-cafe'] .business-intro{padding-inline:18px}
  [data-brand='prazi-cafe'] .business-intro::before{background:linear-gradient(#ffffffde,#ffffffea 55%,#fff 90%),url('/assets/prazi-art-5.jpg') center 35% / 100% auto no-repeat}
  [data-brand='prazi-cafe'] .jobs-section::before{background-size:auto,auto 100%;background-position:center,right top}
  [data-brand='prazi-cafe'] .application-section::before{background:linear-gradient(#f8fbffdf,#f8fbfff5 500px,#f8fbff 750px),url('/assets/prazi-art-3.jpg') center top / 100% auto no-repeat}
  [data-brand] .business-intro{padding-block:24px 36px}
  [data-brand] .business-hero{gap:25px}
  [data-brand] .business-hero figure{height:225px}
  [data-brand] .business-hero h1{font-size:44px}
  [data-brand='bistro-magdalene'] .business-hero h1,[data-brand='cukrarna-magdalene'] .business-hero h1{font-size:53px}
  [data-brand='cukrarna-magdalene'] .business-hero figure{height:225px}
  [data-brand='bistro-magdalene'] .job-detail-head h3{font-size:35px}
  [data-brand] .business-lead{font-size:17px}
}
@media(max-width:380px){[data-brand] .navigation .brand-caption{display:none}}

/* Original business marks accompany every vacancy; do not recolor or distort. */
.job-card{gap:28px;align-items:center}
.job-main{flex:1;min-width:0}
.job-brand-logo{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;flex:0 0 152px;width:152px;height:72px;padding-right:20px;border-right:1px solid var(--line)}
.job-brand-logo img{display:block;width:132px;height:60px;max-width:none;object-fit:contain;flex-shrink:0}
.job-brand-logo-padded img{width:172px;height:172px}
@media(min-width:681px) and (max-width:1000px){
  .job-card{flex-wrap:wrap;gap:20px}
  .job-card .job-main{flex-basis:calc(100% - 180px)}
  .job-card .job-aside{width:100%;flex-direction:row;align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid var(--line)}
}
@media(max-width:680px){
  .job-card{align-items:stretch;gap:18px}
  .job-brand-logo{align-self:flex-start;flex-basis:auto;width:132px;height:56px;padding:0;border:0}
  .job-brand-logo img{width:132px;height:56px}
  .job-brand-logo-padded img{width:172px;height:172px}
}
