/* One look across the whole portal: Montserrat, rounded cards, pill buttons.
   Loaded last on every page, so it evens out each page's own styles. */
/* Montserrat is served from this site rather than Google Fonts, so opening a
   page never sends a visitor's IP address to Google. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/montserrat-latin-ext-wght-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{--ink:#231F1E;--line:#DCD5BF;--muted:#6B6360;--burgundy:#8C3B38;--burgundy-dark:#6E2D2B;--radius:18px}
body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
h1,h2,h3{letter-spacing:-.015em}
h1{font-size:30px;line-height:1.15;font-weight:700}
@media (max-width:380px){h1{font-size:26px}}
.kicker,.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:700}
.lede,.lead{color:var(--muted)}

/* Cards and boxes: soft, rounded, same border everywhere */
.wrap .card{border-radius:var(--radius);border-color:var(--line);box-shadow:0 1px 2px rgba(35,31,30,.04)}
.wrap :is(.err,.ok,.msg,.bk,.brandrow,.subrow,.dmrow,.stile,.next,.prefix,.key,.payout,.terms,.opt-box,.decl,.st,.mb,.thumb,.shoppick label,.slots button,fieldset,.head .pic,.example img,.labels img){border-radius:14px}
.wrap :is(.choice,.tile){border-radius:var(--radius)}
.wrap .tag{border-radius:999px}
.wrap .next{transition:border-color .15s ease,box-shadow .15s ease}
.wrap .next:hover{border-color:var(--burgundy);box-shadow:0 8px 20px rgba(35,31,30,.06)}

/* Form fields */
.wrap input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]),.wrap select,.wrap textarea{border-radius:12px}

/* Buttons: pills, like Home. Buttons styled by their own group
   (tabs, time slots, colour pickers, photo thumbnails) keep their look. */
.wrap :is(button:not([class]),button[class=""],button.alt,button.sm,button.ghost,button.go,.btn):not(:is(.tabs,.lights,.slots,.thumb,.ph,.picks) *){
  border-radius:999px;font-weight:700;transition:background .15s ease,color .15s ease,transform .1s ease}
.wrap :is(button:not([class]),button[class=""]):not(:is(.tabs,.lights,.slots,.thumb,.ph,.picks) *):hover:not([disabled]){background:var(--burgundy-dark)}
.wrap :is(button.alt,button.ghost):hover:not([disabled]){background:rgba(140,59,56,.07)}
.wrap :is(button:not([class]),button[class=""],button.alt,button.sm,button.ghost,button.go,.btn):not(:is(.tabs,.lights,.slots,.thumb,.ph,.picks) *):active:not([disabled]){transform:scale(.98)}
.wrap .lights button{border-radius:14px}

/* Footer: links on one line, business details underneath */
.wrap footer{text-align:center;margin-top:40px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted)}
.foot-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;margin:0 0 8px;font-size:14px;font-weight:600}
.foot-links a{color:var(--burgundy);text-decoration:none}
.foot-links a:hover{text-decoration:underline}
.foot-small{margin:0;font-size:13px;color:var(--muted)}
.foot-small a{color:inherit}

@media print{.wrap footer{display:none}}
