@font-face{font-family:"JM Montserrat";font-style:normal;font-weight:300;font-display:swap;src:url("/DESIGN_SYSTEMS/jolie-maison/assets/jolie-maison/fonts/montserrat-v24-latin-300.woff2") format("woff2")}
@font-face{font-family:"JM Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("/DESIGN_SYSTEMS/jolie-maison/assets/jolie-maison/fonts/montserrat-v24-latin-500.woff2") format("woff2")}
@font-face{font-family:"JM Montserrat";font-style:normal;font-weight:700;font-display:swap;src:url("/DESIGN_SYSTEMS/jolie-maison/assets/jolie-maison/fonts/montserrat-v24-latin-700.woff2") format("woff2")}
@font-face{font-family:"JM Asap Condensed";font-style:normal;font-weight:400;font-display:swap;src:url("/DESIGN_SYSTEMS/jolie-maison/assets/jolie-maison/fonts/asap-condensed-v15-latin-regular.woff2") format("woff2")}
:root{
  --bg:#f8f5ef;
  --surface:#fff;
  --soft:#f2eadc;
  --text:#1d1812;
  --muted:#66594c;
  --accent:#9b6d1d;
  --accent-hover:#7b5415;
  --ambient:rgba(201,154,46,.12);
  --focus-ring:rgba(201,154,46,.28);
  --border:rgba(24,34,46,.16);
  --danger:#a63d40;
  --success:#286344;
  --shadow:0 16px 42px rgba(23,32,42,.1);
  --radius:10px;
  --body-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --heading-font:var(--body-font);
}
html[data-jmos-domain="jolie-maison"]{
  --bg:#f0f1f6;
  --surface:#fff;
  --soft:#eaebef;
  --text:#545861;
  --muted:#606774;
  --accent:#283477;
  --accent-hover:#2a327a;
  --ambient:rgba(40,52,119,.08);
  --focus-ring:rgba(40,52,119,.25);
  --border:#eaebef;
  --danger:#ad0203;
  --success:#476d58;
  --shadow:0 0 4px rgba(0,0,0,.24);
  --radius:2px;
  --body-font:"JM Montserrat",sans-serif;
  --heading-font:"JM Asap Condensed",sans-serif;
}
*{box-sizing:border-box}
html{overflow-x:hidden}
body{min-height:100vh;margin:0;color:var(--text);background:linear-gradient(135deg,var(--ambient),transparent 38%),var(--bg);font:1rem/1.5 var(--body-font)}
.shell{width:min(920px,calc(100% - 32px));margin:0 auto;padding:24px 0 56px}
.public-context-brand{display:inline-flex;align-items:center;gap:12px;margin:0 0 20px;color:var(--text);text-decoration:none}
.public-context-brand__mark{display:grid;width:54px;height:54px;flex:0 0 54px;place-items:center;border-radius:8px;color:#fff;background:var(--accent) url("/DESIGN_SYSTEMS/bierkult/logos/bierkult-logo-gold.svg") center/contain no-repeat;overflow:hidden;font-size:0}
.public-context-brand__copy{display:grid;gap:2px;line-height:1.05}
.public-context-brand__copy strong{color:var(--accent);font-family:var(--heading-font);font-size:1.35rem}
.public-context-brand__copy small{color:var(--muted);font-size:.78rem}
html[data-jmos-domain="jolie-maison"] .public-context-brand__mark{border-radius:0;background:transparent url("/DESIGN_SYSTEMS/jolie-maison/assets/jolie-maison/jolie-maison-logo.png") center/contain no-repeat}
html[data-jmos-domain="jolie-maison"] .public-context-brand__copy strong{font-weight:400}
.public-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:36px}
.public-nav a{min-height:42px;display:inline-flex;align-items:center;padding:8px 12px;border-radius:7px;color:var(--text);font-weight:750;text-decoration:none}
.public-nav a:hover,.public-nav a:focus-visible{background:var(--soft);outline:3px solid var(--focus-ring);outline-offset:2px}
.public-nav .primary{color:#fff;background:var(--accent)}
.public-nav .primary:hover,.public-nav .primary:focus-visible{background:var(--accent-hover)}
.eyebrow{margin:0 0 8px;color:var(--accent);font-weight:850}
.intro{max-width:720px;margin-bottom:26px}
.intro h1{margin:0;font-family:var(--heading-font);font-size:clamp(2rem,7vw,3.6rem);font-weight:700;line-height:1.05}
html[data-jmos-domain="jolie-maison"] .intro h1{font-weight:400}
.intro p{color:var(--muted);font-size:1.08rem}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.card{padding:24px;border:1px solid var(--border);border-radius:var(--radius);background:rgba(255,255,255,.96);box-shadow:var(--shadow)}
.card h2{margin-top:0;font-family:var(--heading-font)}
.stack{display:grid;gap:14px}
label{display:grid;gap:6px;font-weight:750}
input,select{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text);font:inherit}
input:focus-visible,select:focus-visible,button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-color:var(--accent)}
button,.button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border:0;border-radius:7px;color:#fff;background:var(--accent);cursor:pointer;font:inherit;font-weight:850;text-decoration:none}
button:hover,.button:hover{background:var(--accent-hover)}
.button.secondary{border:1px solid var(--accent);color:var(--text);background:#fff}
.hint{color:var(--muted);font-size:.94rem}
.notice{min-height:24px;margin:4px 0 0;font-weight:750}
.notice.error{color:var(--danger)}
.notice.success{color:var(--success)}
[hidden]{display:none!important}
@media(max-width:700px){
  .shell{width:min(100% - 24px,920px);padding-top:16px}
  .public-nav{align-items:stretch}
  .public-nav a{flex:1 1 auto;justify-content:center}
  .grid{grid-template-columns:1fr}
  .card{padding:19px}
  .intro h1{font-size:2.15rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
