/* ConnectHere, the Tel Aviv theme ("lavan", Hebrew for white): THE WHITE CITY. Loaded after inca.css on Tel Aviv pages only.
   The material is the render of the Bauhaus houses: lime plaster over concrete, bleached by the sun and streaked by the rain, painted white or
   a tired cream, with a handful of faded tints (rose stucco, sand, sage). The page is one of those facades, seen in the hard Mediterranean light:
   every stone is a floor of the house. A floor ends in the edge of its concrete slab (a lit lip), and the slab throws a hard shadow on the
   floor below; the rain leaves streaks under the sills. The header is the long strip window of the top floor (graphite glass, white mullions);
   the day signs and the partners' stone are rolling shutters (ribbed steel slats); the doors' icons are the round portholes of the ship-style
   houses; the footer emblem is the tall "thermometer" stairwell window; the Firgun block is a curved balcony slab, laid with terrazzo and a
   brass strip, the way the entrance halls and stair landings are. The picture is a drawn detail of such a corner building (/img/lavan-facade-*.svg).
   Everything is CSS and SVG: no photograph, no raster file. Type: Outfit (geometric, the Bauhaus alphabet), Rubik for Hebrew; no new font.
   Colour: warm whites and sand, graphite glass, shutter green, terracotta, ochre. No sky blue and no white-and-blue pairing, no emblem and no symbol: the look says a city, never a country.
   Every selector hangs on html[data-theme="lavan"]. Body text is >= 7:1 on its sheet (light and night). */

/* ================================================================ tokens */
html[data-theme="lavan"] {
  /* the plaster, day */
  --plaster: #f4f0e6; --bone: #ece4d3; --rose: #eee0d0; --sand: #e7dcc5; --sage: #e4e8da; --concrete: #d9d6ce; --ivory: #fdfbf5;
  --t1: #f5f1e7; --t2: #eddfcf; --t3: #f8f5ed; --t4: #e8dfca; --t5: #e4e8da;
  --graphite: #1b2226; --glass: #24343a; --glass-2: #31464d; --shutter: #3d5647; --sea: #2f5a55; --ochre: #e2a93c; --terra: #a8472a; --terra-t: #85381f; --brass: #b98a2c;
  /* the inca machinery off: no tilt, no ring, no slant, no joint */
  --J: 0px; --ring: 0px; --Sx: 0px; --jt: 0px;
  --py: 28px; --padx: 22px; --curve: 22px;
  --joint: #8d836f;
  --face: var(--t1); --ink: var(--graphite); --mute: #29343a; --em: var(--terra-t); --focus: var(--graphite); --line: var(--graphite);
  --sun: var(--ochre); --accent: var(--sea); --teal: var(--sea); --deep: var(--glass); --wa: #0f7a43; --wa-hover: #0b6638;
  --lulu: #0d5058; --display: "Outfit", "Rubik", -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  /* light on the slabs: the lit lip, the hard cast shadow, the rain streaks, the grain of the render */
  --lip-hi: #fffdf8; --lip-lo: rgba(84, 68, 44, .32);
  --cast-1: rgba(84, 68, 44, .32); --cast-2: rgba(84, 68, 44, .16); --cast-3: rgba(84, 68, 44, .06);
  --streak: rgba(112, 94, 66, .08);
  --sheen: rgba(255, 251, 238, .6);
  --seam: rgba(84, 68, 44, .3);
  --grain: url(/img/lavan-plaster-4.svg);
  --terrazzo: url(/img/lavan-terrazzo-1.svg);
  --facade: url(/img/lavan-facade-1.svg);
  /* the pieces every stone is built from (they are layers of one background; see .stone::before) */
  --lip: linear-gradient(180deg, var(--lip-hi) 0 8px, var(--lip-lo) 8px 12px) 0 100% / 100% 12px no-repeat;
  --cast: linear-gradient(180deg, var(--cast-1) 0 3px, var(--cast-2) 3px 11px, var(--cast-3) 11px 20px, transparent 30px) 0 0 / 100% 30px no-repeat;
  --streaks:
    radial-gradient(ellipse 5px 62% at calc(13% + var(--sx, 0%)) 0, var(--streak), transparent),
    radial-gradient(ellipse 3px 46% at calc(36% + var(--sx, 0%)) 0, var(--streak), transparent),
    radial-gradient(ellipse 6px 72% at calc(61% + var(--sx, 0%)) 0, var(--streak), transparent),
    radial-gradient(ellipse 4px 54% at calc(86% + var(--sx, 0%)) 0, var(--streak), transparent);
  --slats: repeating-linear-gradient(180deg, rgba(255, 255, 255, .11) 0 2px, rgba(255, 255, 255, 0) 2px 6px, rgba(0, 0, 0, .3) 6px 8px, rgba(0, 0, 0, 0) 8px 11px);
  /* painted boards (buttons) and the paper of the menus */
  --btn-bg: var(--glass); --btn-ink: #fff; --btn-h: #34494f; --btn-shadow: rgba(27, 34, 38, .3);
  --chip-bg: var(--ivory); --paper: #f8f5ed; --label-bg: rgba(255, 253, 248, .6);
  --pop: 0 14px 26px -12px rgba(52, 40, 24, .5);
  scrollbar-color: #a49a85 #ece4d3;
}
@media (min-width: 900px) { html[data-theme="lavan"] { --py: 34px; --padx: 36px; --curve: 30px; } }

html[data-theme="lavan"], html[data-theme="lavan"] body {
  background: var(--grain) 0 0 / 256px 256px, var(--plaster);
}
html[data-theme="lavan"] ::selection { background: var(--ochre); color: var(--graphite); }
html[data-theme="lavan"] .wall { overflow-x: clip; background: var(--grain) 0 0 / 256px 256px, var(--plaster); }

/* ================================================================ the floors (stones) */
html[data-theme="lavan"] .stone,
html[data-theme="lavan"] .stone::before,
html[data-theme="lavan"] .stone.free::after { clip-path: none; }
html[data-theme="lavan"] .stone { background: none; --pt: calc(var(--py) + 8px); --pb: calc(var(--py) + 12px); }
html[data-theme="lavan"] .course > .stone { --lpad: 0px; --rpad: 0px; }
html[data-theme="lavan"] .wall > main { margin-top: 0; }
html[data-theme="lavan"] .wall > main > .course + .course, html[data-theme="lavan"] .wall > footer.course, html[data-theme="lavan"] .course > .stone + .stone { margin-top: 0; }
/* the face: lip of the slab, shadow of the slab above, rain streaks, a lit corner, the grain, the paint */
html[data-theme="lavan"] .stone::before {
  inset: 0; filter: none;
  background:
    var(--lip),
    var(--cast),
    var(--streaks),
    linear-gradient(118deg, var(--sheen), rgba(255, 251, 238, 0) 46%),
    var(--grain) 0 0 / 256px 256px,
    var(--face);
}
/* the rain falls from other places on every floor */
html[data-theme="lavan"] main > .course:nth-child(3n+1) > .stone { --sx: 0%; }
html[data-theme="lavan"] main > .course:nth-child(3n+2) > .stone { --sx: 7%; }
html[data-theme="lavan"] main > .course:nth-child(3n) > .stone { --sx: -5%; }
/* side by side (desktop): a joint of the render, a hair of shade and a hair of light */
@media (min-width: 900px) {
  html[data-theme="lavan"] .course > .stone + .stone::after {
    content: ""; position: absolute; z-index: -1; pointer-events: none; display: block; clip-path: none; inset: 0 auto 0 0; width: 4px; height: auto;
    background: linear-gradient(90deg, var(--seam) 0 1.5px, rgba(255, 253, 248, .7) 1.5px 3px, transparent 4px);
  }
  html[data-theme="lavan"][dir="rtl"] .course > .stone + .stone::after { inset: 0 0 0 auto; background: linear-gradient(270deg, var(--seam) 0 1.5px, rgba(255, 253, 248, .7) 1.5px 3px, transparent 4px); }
}

/* the tints: faded paint on the same render */
html[data-theme="lavan"] .stone { --face: var(--t1); }
html[data-theme="lavan"] .t1 { --face: var(--t1); }
html[data-theme="lavan"] .t2 { --face: var(--t2); }
html[data-theme="lavan"] .t3 { --face: var(--t3); }
html[data-theme="lavan"] .t4 { --face: var(--t4); }
html[data-theme="lavan"] .t5 { --face: var(--t5); }
html[data-theme="lavan"] .stone.terr { --face: var(--t4); }
html[data-theme="lavan"] .nl { --face: var(--sage); }
/* dark floors: glass, rolling shutters, sea-green glass */
html[data-theme="lavan"] .stone.wa, html[data-theme="lavan"] .stone.blue, html[data-theme="lavan"] .stone.teal, html[data-theme="lavan"] .stone.deep,
html[data-theme="lavan"] .hi-strip {
  --ink: #fff; --mute: #f4f6f2; --em: #f4cf7c; --focus: #fff; --line: #fff;
}
html[data-theme="lavan"] .stone.wa, html[data-theme="lavan"] .stone.teal, html[data-theme="lavan"] .stone.blue, html[data-theme="lavan"] .doors .door.quiet, html[data-theme="lavan"] #tail .door.quiet { --sheen: rgba(255, 255, 255, .07); }
html[data-theme="lavan"] .stone.wa { --face: var(--glass); }
html[data-theme="lavan"] .stone.teal, html[data-theme="lavan"] .stone.blue { --face: var(--sea); }
html[data-theme="lavan"] .stone.deep { --face: var(--shutter); }
html[data-theme="lavan"] .stone.deep::before { background: var(--lip), var(--cast), var(--slats), var(--face); }
/* the sun: ochre */
html[data-theme="lavan"] .stone.sun, html[data-theme="lavan"] .partner-cta, html[data-theme="lavan"] .todayc > .stone:first-child {
  --face: var(--ochre); --ink: var(--graphite); --mute: var(--graphite); --em: var(--graphite); --focus: var(--graphite);
}
html[data-theme="lavan"] .stone.sun::before, html[data-theme="lavan"] .partner-cta::before, html[data-theme="lavan"] .todayc > .stone:first-child::before {
  background: var(--lip), var(--cast), linear-gradient(118deg, rgba(255, 244, 205, .55), rgba(255, 244, 205, 0) 52%), var(--grain) 0 0 / 256px 256px, var(--face);
}
html[data-theme="lavan"] .todayc > .stone:last-child { --face: var(--t3); }
html[data-theme="lavan"] a.stone:hover::before { filter: brightness(1.04) saturate(1.04); }
html[data-theme="lavan"] a.stone:focus-visible { background: none; outline: 3px solid var(--focus); outline-offset: -10px; }
html[data-theme="lavan"] a.stone:focus-visible > .c { outline: none; }
html[data-theme="lavan"] .hi-strip { background: var(--glass) !important; color: #fff !important; }

/* ================================================================ the strip window: the header is the long ribbon window of the top floor */
html[data-theme="lavan"] .wall > header.course { z-index: 6; }
html[data-theme="lavan"] .wall > header.course > .stone { --pt: 12px; --pb: 22px; --ink: #f6f1e4; --mute: #f6f1e4; --em: #f4cf7c; --focus: #fff; color: var(--ink); }
html[data-theme="lavan"] .stone.free::before {
  inset: 0;
  background:
    var(--lip),
    linear-gradient(#fffdf8 0 0) 0 6px / 100% 3px no-repeat,
    repeating-linear-gradient(90deg, transparent 0 calc(var(--pane, 184px) - 4px), rgba(253, 251, 245, .78) calc(var(--pane, 184px) - 4px) var(--pane, 184px)) 20px 9px / 100% calc(100% - 21px) no-repeat,
    linear-gradient(108deg, transparent 0 36%, rgba(255, 255, 255, .075) 36% 51%, transparent 51% 100%),
    linear-gradient(180deg, #2c3f46, #1e2d33);
}
@media (min-width: 900px) { html[data-theme="lavan"] .stone.free::before { --pane: 232px; } }
html[data-theme="lavan"] .stone.free::after { content: none; }
html[data-theme="lavan"] .hdr .c { padding-inline: 16px; row-gap: 8px; }
@media (min-width: 900px) { html[data-theme="lavan"] .hdr .c { padding-inline: 34px; } html[data-theme="lavan"] .wall > header.course > .stone { --pt: 14px; --pb: 24px; } }
/* the name, in the geometric alphabet of the houses */
html[data-theme="lavan"] .bn { font: 700 27px/1 var(--display); letter-spacing: -.02em; color: #f6f1e4; }
html[data-theme="lavan"] .bn span { color: #f4cf7c; }
html[data-theme="lavan"] .brand img { border-radius: 50%; background: #fdfbf5; box-shadow: 0 0 0 2px #fdfbf5; }
@media (min-width: 900px) { html[data-theme="lavan"] .bn { font-size: 31px; } }
@media (max-width: 420px) { html[data-theme="lavan"] .bn { font-size: 23px; } }
/* the two controls on the glass: ivory pills */
html[data-theme="lavan"] .ld-btn, html[data-theme="lavan"] .plb {
  clip-path: none !important; border-radius: 999px; background: #f6f1e4; color: #1b2226; box-shadow: 0 2px 0 rgba(0, 0, 0, .35);
}
html[data-theme="lavan"] .ld-btn:hover, html[data-theme="lavan"] .ld.open .ld-btn, html[data-theme="lavan"] .plb:hover { background: #fff; }
html[data-theme="lavan"] .ld-btn:focus-visible, html[data-theme="lavan"] .plb:focus-visible { outline: 3px solid #f4cf7c; outline-offset: 3px; }
html[data-theme="lavan"] .plb .ico-svg:first-child { color: var(--terra); }
/* menus and popups: sheets of plaster with one rounded corner, like a balcony slab */
html[data-theme="lavan"] .ld-menu, html[data-theme="lavan"] .plpop, html[data-theme="lavan"] .fab-menu {
  background: var(--grain) 0 0 / 256px 256px, var(--paper); color: var(--graphite);
  border: 0; border-radius: 6px; border-start-end-radius: var(--curve); box-shadow: var(--pop), 0 0 0 1.5px var(--seam);
}
html[data-theme="lavan"] .ld-i, html[data-theme="lavan"] .pli, html[data-theme="lavan"] .fab-i { color: var(--graphite); border-radius: 999px; }
html[data-theme="lavan"] .ld-i:hover, html[data-theme="lavan"] .ld-i:focus-visible, html[data-theme="lavan"] .pli:hover, html[data-theme="lavan"] .pli:focus-visible,
html[data-theme="lavan"] .fab-i:hover, html[data-theme="lavan"] .fab-i:focus-visible, html[data-theme="lavan"] .fab-save:hover { background: var(--ochre); color: var(--graphite); }
html[data-theme="lavan"] .pli[aria-current], html[data-theme="lavan"] .ld-i[aria-checked="true"], html[data-theme="lavan"] .pli .ico-svg { color: var(--terra-t); }
html[data-theme="lavan"] .fab-intro, html[data-theme="lavan"] .fab-save, html[data-theme="lavan"] .plall { color: var(--graphite); }
html[data-theme="lavan"]:not(.js) .ld-menu { background: var(--glass-2); }
html[data-theme="lavan"]:not(.js) .ld-i { color: #f6f1e4; }
html[data-theme="lavan"]:not(.js) .ld-i[aria-current] { background: var(--ivory); color: var(--graphite); }

/* ================================================================ the picture: a detail of a corner house, drawn (SVG) */
html[data-theme="lavan"] .stone.photo { --face: #e9dfc9; }
html[data-theme="lavan"] .stone.photo::before { background: var(--lip), var(--cast), var(--ph) var(--phpos, 50% 50%) / var(--phsize, cover) no-repeat, var(--face); }
html[data-theme="lavan"] .photo-valley { --ph: var(--facade); --phpos: 50% 30%; --phsize: cover; }
html[data-theme="lavan"] .photo-textile { --ph: var(--facade); --phpos: 12% 62%; --phsize: auto 230%; }
html[data-theme="lavan"] .photo-plaza { --ph: var(--facade); --phpos: 96% 46%; --phsize: auto 200%; }
@media (max-width: 899.98px) { html[data-theme="lavan"] .hero-course .photo-valley { min-height: 170px; } html[data-theme="lavan"] .photo-textile { min-height: 190px; } }

/* ================================================================ type: Outfit, tight and geometric */
html[data-theme="lavan"] h1, html[data-theme="lavan"] h2, html[data-theme="lavan"] .dnum, html[data-theme="lavan"] .dname, html[data-theme="lavan"] .aw {
  font-family: var(--display); font-weight: 700; text-transform: none;
}
html[data-theme="lavan"] h1 { font-size: clamp(38px, 10.8vw, 54px); line-height: 1.02; letter-spacing: -.04em; }
html[data-theme="lavan"] h2 { font-size: clamp(28px, 7.6vw, 36px); line-height: 1.08; letter-spacing: -.03em; }
html[data-theme="lavan"] h3 { font-family: var(--sans); font-weight: 700; letter-spacing: 0; }
@media (min-width: 900px) {
  html[data-theme="lavan"] h1 { font-size: clamp(52px, 4.9vw, 84px); line-height: 1; }
  html[data-theme="lavan"] h2 { font-size: clamp(34px, 2.8vw, 46px); }
}
html[data-theme="lavan"] h1 em { color: var(--em); }
html[data-theme="lavan"] .eyebrow-date { font: 600 15px/1.3 var(--display); letter-spacing: .12em; color: var(--ink); }
html[data-theme="lavan"] .lead { font-size: 19px; font-weight: 450; }
html[data-theme="lavan"] .fine { max-width: 62ch; }
@media (max-width: 899.98px) { html[data-theme="lavan"] .lead { font-size: 18px; } }
html[data-theme="lavan"][lang="he"] h1, html[data-theme="lavan"][lang="he"] h2, html[data-theme="lavan"][lang="he"] .dname, html[data-theme="lavan"][lang="he"] .aw { font-weight: 700; line-height: 1.14; letter-spacing: 0; }
html[data-theme="lavan"][lang="he"] .eyebrow-date { letter-spacing: 0; }
html[data-theme="lavan"] .hero { --face: var(--t1); }
/* the shadow of the house across the street falls on the hero, hard-edged */
html[data-theme="lavan"] .hero::after {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; clip-path: none;
  background: linear-gradient(112deg, rgba(92, 72, 42, .1) 0 34%, rgba(92, 72, 42, 0) 34%), linear-gradient(112deg, rgba(92, 72, 42, .07) 0 21%, rgba(92, 72, 42, 0) 21%);
}
html[data-theme="lavan"][dir="rtl"] .hero::after {
  background: linear-gradient(248deg, rgba(92, 72, 42, .1) 0 34%, rgba(92, 72, 42, 0) 34%), linear-gradient(248deg, rgba(92, 72, 42, .07) 0 21%, rgba(92, 72, 42, 0) 21%);
}

/* the page title of /events is a second ribbon window: dark glass, white mullions (inca gives it white lettering) */
html[data-theme="lavan"] .evhead { --face: var(--glass); --ink: #f6f1e4; --mute: #f6f1e4; --em: #f4cf7c; --focus: #fff; }
html[data-theme="lavan"] .evhead::before {
  background:
    var(--lip),
    var(--cast),
    linear-gradient(#fffdf8 0 0) 0 30px / 100% 3px no-repeat,
    repeating-linear-gradient(90deg, transparent 0 calc(var(--pane, 232px) - 4px), rgba(253, 251, 245, .5) calc(var(--pane, 232px) - 4px) var(--pane, 232px)) 20px 33px / 100% calc(100% - 45px) no-repeat,
    linear-gradient(108deg, transparent 0 36%, rgba(255, 255, 255, .07) 36% 51%, transparent 51% 100%),
    linear-gradient(180deg, #2c3f46, #1e2d33);
}
html[data-theme="lavan"] .evhead .sub, html[data-theme="lavan"] .evhead .fcount { color: #f6f1e4; }
html[data-theme="lavan"] .evhead .linkbtn, html[data-theme="lavan"] .evhead .plain-link { color: #fff; }
/* inca's stair notch on phones is a cut in a joint that does not exist here */
html[data-theme="lavan"] .todayc > .stone:first-child::after, html[data-theme="lavan"] .steps-head::after, html[data-theme="lavan"] .evhead::after { content: none; }
/* Lulu's quiet doors are the one place her teal is the paint: sea glass */
html[data-theme="lavan"] .doors .door.quiet, html[data-theme="lavan"] #tail .door.quiet { --face: var(--lulu); --ink: #fff; --mute: #f4f6f2; --em: #f4cf7c; --focus: #fff; }
html[data-theme="lavan"] .doors .door.quiet .niche, html[data-theme="lavan"] #tail .door.quiet .niche { background: #fff; color: var(--lulu); box-shadow: 0 0 0 3px rgba(255, 255, 255, .55), 0 0 0 4.5px rgba(0, 0, 0, .25); }
html[data-theme="lavan"] .card.quiet .cgo { background: #fff; color: var(--lulu); box-shadow: none; }
/* ================================================================ parts: pills, portholes */
html[data-theme="lavan"] .btn, html[data-theme="lavan"] .nl-submit, html[data-theme="lavan"] .fbtn, html[data-theme="lavan"] .gjoin {
  --bb: var(--btn-bg); --bc: var(--btn-ink);
  clip-path: none !important; border: 0; border-radius: 999px; background: var(--bb); color: var(--bc); filter: none; text-transform: none;
  box-shadow: 0 3px 0 var(--btn-shadow);
  transition: transform .12s ease-out, box-shadow .12s ease-out, background-color .12s ease-out;
}
html[data-theme="lavan"] .btn, html[data-theme="lavan"] .nl-submit { font: 700 17px/1.2 var(--sans); }
html[data-theme="lavan"] .btn:hover, html[data-theme="lavan"] .nl-submit:hover { --bb: var(--btn-h); filter: none; }
html[data-theme="lavan"] .btn:active, html[data-theme="lavan"] .nl-submit:active, html[data-theme="lavan"] .fbtn:active, html[data-theme="lavan"] .gjoin:active { transform: translateY(2px); box-shadow: 0 1px 0 var(--btn-shadow); }
html[data-theme="lavan"] .btn:focus-visible, html[data-theme="lavan"] .nl-submit:focus-visible, html[data-theme="lavan"] .fbtn:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; box-shadow: 0 3px 0 var(--btn-shadow); }
html[data-theme="lavan"] .btn-sun, html[data-theme="lavan"] .fbtn { --bb: var(--ochre); --bc: var(--graphite); }
html[data-theme="lavan"] .btn-sun:hover, html[data-theme="lavan"] .fbtn:hover { --bb: #ecb958; }
html[data-theme="lavan"] .gjoin { --bb: #25d366; --bc: #062d16; }
html[data-theme="lavan"] .gjoin:hover { --bb: #1fbd5b; }
html[data-theme="lavan"] .partner-cta .btn:not(.btn-line) { --bb: var(--graphite); --bc: #fff; }
html[data-theme="lavan"] .partner-cta .btn:not(.btn-line):hover { --bb: #2f3b41; }
html[data-theme="lavan"] .btn-line, html[data-theme="lavan"] .btn-line:hover, html[data-theme="lavan"] .btn-line:active { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 2.5px currentColor; }
html[data-theme="lavan"] .btn-line:hover { background: color-mix(in srgb, var(--ink) 10%, transparent); }
html[data-theme="lavan"] .cgo, html[data-theme="lavan"] .ev .evgo, html[data-theme="lavan"] .chip, html[data-theme="lavan"] .kt,
html[data-theme="lavan"] .dir .card .go, html[data-theme="lavan"] .seg { clip-path: none !important; }
html[data-theme="lavan"] .cgo, html[data-theme="lavan"] .card.quiet .cgo, html[data-theme="lavan"] .card.grpcard .cgo { background: var(--ink); color: var(--face); border-radius: 999px; padding-inline: 15px 11px; font-weight: 700; }
html[data-theme="lavan"] .card.grpcard .cgo { background: #25d366; color: #062d16; }
/* the icon: a porthole, a white frame round a dark glass disc */
html[data-theme="lavan"] .niche {
  clip-path: none; padding-top: 0; border-radius: 50%; color: #f6f1e4; background: radial-gradient(circle at 34% 28%, #476169, #1d2c32 72%);
  box-shadow: 0 0 0 3px var(--ivory), 0 0 0 4.5px rgba(27, 34, 38, .4), 0 3px 5px rgba(27, 34, 38, .25);
}
html[data-theme="lavan"] .card.grpcard .niche { background: #fff; color: #0f7a43; box-shadow: 0 0 0 3px #fff, 0 0 0 4.5px #0f7a43; }
html[data-theme="lavan"] .step .n { clip-path: none; border-radius: 50%; background: var(--ink); color: var(--face); font-family: var(--display); }
html[data-theme="lavan"] .tx b { font-weight: 700; text-wrap: balance; }
html[data-theme="lavan"] .go { border-radius: 50%; }

/* ================================================================ Firgun: a curved balcony slab laid with terrazzo and a brass strip */
html[data-theme="lavan"] .ayni-course { padding-block: 10px 6px; }
html[data-theme="lavan"] .ayni-course > .stone {
  --pt: 44px; --pb: 48px; --face: var(--bone); --ink: var(--graphite); --mute: var(--graphite); --em: var(--terra-t); --focus: var(--graphite);
  margin-inline-end: 24px; border-start-end-radius: 0; border-end-end-radius: 130px; border-start-end-radius: 130px;
}
html[data-theme="lavan"] .ayni-course > .stone::before {
  border-radius: inherit; background: linear-gradient(180deg, rgba(251, 247, 236, .5), rgba(251, 247, 236, .5)), var(--terrazzo) 0 0 / 360px 360px, var(--face);
  box-shadow: 0 9px 0 -1px rgba(84, 68, 44, .3), 0 18px 26px -14px rgba(52, 40, 24, .55);
}
/* the lip of the slab, then the brass strip let into the floor */
html[data-theme="lavan"] .ayni-course > .stone::after {
  content: ""; position: absolute; inset: 14px; z-index: -1; pointer-events: none; display: block; clip-path: none; width: auto; height: auto;
  border: 3px solid var(--brass); border-radius: 18px; border-start-end-radius: 116px; border-end-end-radius: 116px; background: none; opacity: .85;
}
html[data-theme="lavan"] .ayni-course > .stone.stone { margin-inline-end: 12px; }
html[data-theme="lavan"][dir="rtl"] .ayni-course > .stone { border-radius: 0; border-start-start-radius: 130px; border-end-start-radius: 130px; }
html[data-theme="lavan"][dir="rtl"] .ayni-course > .stone::after { border-radius: 18px; border-start-start-radius: 116px; border-end-start-radius: 116px; border-start-end-radius: 18px; border-end-end-radius: 18px; }
html[data-theme="lavan"] .ayni-course > .stone { border-radius: 0; border-start-end-radius: 130px; border-end-end-radius: 130px; }
html[data-theme="lavan"] .ayni-course .c { padding-inline: calc(var(--padx) + 14px) calc(var(--padx) + 54px); }
html[data-theme="lavan"] .aw { font-size: clamp(54px, 15vw, 84px); line-height: 1; letter-spacing: -.045em; color: var(--ink); }
html[data-theme="lavan"][lang="he"] .aw, html[data-theme="lavan"] .aw[lang="he"] { letter-spacing: 0; }
html[data-theme="lavan"] .ayni span { color: var(--ink); font-weight: 500; font-size: 17px; max-width: 46em; }
@media (min-width: 900px) { html[data-theme="lavan"] .ayni { flex-direction: row; align-items: center; gap: 44px; } html[data-theme="lavan"] .aw { font-size: clamp(76px, 6.4vw, 108px); } html[data-theme="lavan"] .ayni-course > .stone { margin-inline-end: 80px; } }
@media (max-width: 899.98px) { html[data-theme="lavan"] .ayni-course > .stone { border-end-end-radius: 76px; border-start-end-radius: 76px; margin-inline-end: 10px; } html[data-theme="lavan"][dir="rtl"] .ayni-course > .stone { border-start-start-radius: 76px; border-end-start-radius: 76px; border-start-end-radius: 0; border-end-end-radius: 0; } html[data-theme="lavan"] .ayni-course .c { padding-inline-end: calc(var(--padx) + 34px); } }

/* ================================================================ the footer: the ground floor; the emblem is the stairwell window */
html[data-theme="lavan"] .ft .stone { --py: 22px; }
html[data-theme="lavan"] .ft .t3 { --face: var(--concrete); }
html[data-theme="lavan"] .ft .t5 { --face: var(--t4); }
html[data-theme="lavan"] .ft .emblem { --face: var(--glass); --ink: #f6f1e4; --mute: #f6f1e4; --em: #f4cf7c; --focus: #fff; }
html[data-theme="lavan"] .ft .emblem::before { background: var(--lip), var(--cast), linear-gradient(108deg, transparent 0 40%, rgba(255, 255, 255, .06) 40% 54%, transparent 54% 100%), var(--face); }
html[data-theme="lavan"] .ft .emblem .chakana { width: 30px; height: 66px; flex: none; fill: none; border-radius: 3px; border: 3px solid #fdfbf5; background:
    repeating-linear-gradient(180deg, transparent 0 9px, #fdfbf5 9px 11.5px),
    linear-gradient(90deg, rgba(255, 255, 255, .1) 50%, transparent 50%) 0 0 / 100% 22px,
    linear-gradient(180deg, #365157, #26393f); }
html[data-theme="lavan"] .ft .emblem .chakana path { display: none; }
html[data-theme="lavan"] .ft .safe .ico-svg { color: #8ee0a7; }
html[data-theme="lavan"] .wall > footer.course > .stone:last-child { --pb: 22px; }
html[data-theme="lavan"] body.has-fab .wall > footer.course > .stone:last-child { --pb: calc(22px + 70px + env(safe-area-inset-bottom, 0px)); }

/* ================================================================ the floating Lulu button: a round-ended glass pane with a white frame */
html[data-theme="lavan"] .fab, html[data-theme="lavan"][dir="rtl"] .fab { clip-path: none; border-radius: 999px; background: var(--glass); box-shadow: inset 0 0 0 3px var(--glass), inset 0 0 0 4.5px rgba(253, 251, 245, .85); padding-inline-end: 22px; }
html[data-theme="lavan"] .fab:hover { background: #2d4249; }
html[data-theme="lavan"] .fab-t small { color: #e9f1f1; }
html[data-theme="lavan"] .fabw { filter: drop-shadow(0 4px 5px rgba(40, 30, 18, .4)); }
@media (max-width: 420px) { html[data-theme="lavan"] .fab-t small { display: none; } html[data-theme="lavan"] .fab { padding-inline-end: 18px; } }

/* ================================================================ the events board */
html[data-theme="lavan"] .evs li, html[data-theme="lavan"] #tlist > ul > li { border-bottom: 1.5px solid var(--seam); }
html[data-theme="lavan"] .evs li:last-child, html[data-theme="lavan"] #tlist > ul > li:last-child { border-bottom: 0; }
html[data-theme="lavan"] .ev .t, html[data-theme="lavan"] #tlist > ul > li .t { font: 700 19px/1.2 var(--display); font-variant-numeric: tabular-nums; }
html[data-theme="lavan"] .ev .t small { font: 500 14px/1.3 var(--sans); color: var(--mute); }
html[data-theme="lavan"] .ev .ti { font-weight: 700; }
html[data-theme="lavan"] .ev .by, html[data-theme="lavan"] .ev .vn { color: var(--mute); }
html[data-theme="lavan"] .tlist h3 { font: 600 14px/1.2 var(--display); letter-spacing: .12em; color: var(--ink); }
html[data-theme="lavan"][lang="he"] .tlist h3 { letter-spacing: 0; font-family: var(--sans); font-weight: 700; }
html[data-theme="lavan"] .tlist .grp.now h3, html[data-theme="lavan"] .tag.now { background: var(--ink); color: var(--face); border-radius: 999px; padding-inline: 10px; }
html[data-theme="lavan"] .tag { border-radius: 999px; color: var(--ink); font-size: 14px; }
html[data-theme="lavan"] .tag.now { font-weight: 700; }
html[data-theme="lavan"] .tag.free { background: var(--label-bg); }
/* the thumbnail: a small pane with one rounded corner */
html[data-theme="lavan"] .ev .th { clip-path: none; border-radius: 4px; border-start-end-radius: 18px; background: color-mix(in srgb, var(--face) 70%, #000); box-shadow: 0 0 0 2.5px var(--ivory), 0 0 0 4px var(--seam); }
html[data-theme="lavan"] .ev .evgo, html[data-theme="lavan"] a.ev:hover .evgo, html[data-theme="lavan"] a.ev:active .evgo { background: var(--ink); color: var(--face); border-radius: 999px; padding-inline: 12px 8px; }
html[data-theme="lavan"] a.ev:hover { background: color-mix(in srgb, var(--ivory) 40%, transparent); }
html[data-theme="lavan"] a.ev:hover .evgo-i { transform: none; }
html[data-theme="lavan"] a.ev:active { background: color-mix(in srgb, var(--ink) 10%, transparent); }
html[data-theme="lavan"] .ev[data-k] { padding-inline-start: 8px; }
html[data-theme="lavan"] .ev[data-k]::before { content: none; }
html[data-theme="lavan"] .kt { --kt-edge: 1.5px; border-radius: 999px; font-weight: 650; }
html[data-theme="lavan"] .kt:not(.kb) { font-size: 14px; }
html[data-theme="lavan"] .ev .kt, html[data-theme="lavan"] #tlist .kt, html[data-theme="lavan"] .evmain .kt { --kb: var(--ivory); --kf: var(--graphite); --ke: rgba(27, 34, 38, .5); }
html[data-theme="lavan"] .kt.kb { border-radius: 999px; box-shadow: inset 0 0 0 2px var(--kf); color: color-mix(in srgb, var(--kf) 72%, #000); }
html[data-theme="lavan"] .kt.kb:hover { box-shadow: inset 0 0 0 3px var(--kf); }
html[data-theme="lavan"] .kt.kb[aria-pressed="true"] { color: var(--kb); box-shadow: inset 0 0 0 2px var(--kf), 0 0 0 2.5px var(--ivory); }
html[data-theme="lavan"] .kt.kb .kn { opacity: 1; font-size: 14px; }
html[data-theme="lavan"] .kt.kb:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
html[data-theme="lavan"] .town { background: var(--label-bg); border-radius: 999px; color: var(--ink); font-size: 14px; }
/* the controls */
html[data-theme="lavan"] .seg { background: var(--ivory); padding: 3px; border-radius: 999px; box-shadow: 0 2px 0 var(--btn-shadow); }
html[data-theme="lavan"] .seg button { color: var(--graphite); border-radius: 999px; }
html[data-theme="lavan"] .seg button[aria-pressed="true"] { background: var(--glass); color: #fff; }
html[data-theme="lavan"] .seg button:focus-visible { outline: 3px solid var(--graphite); outline-offset: -3px; }
html[data-theme="lavan"] .seg button[aria-pressed="true"]:focus-visible { outline-color: var(--ochre); }
html[data-theme="lavan"] .daybar .fbtn:focus-visible { outline-color: var(--graphite); }
html[data-theme="lavan"] .badge { background: var(--glass); color: #fff; border-radius: 999px; }
html[data-theme="lavan"] .evhead .linkbtn, html[data-theme="lavan"] .evhead .plain-link { color: var(--em); }
html[data-theme="lavan"] .chip { background: var(--chip-bg); color: var(--graphite); border-radius: 999px; box-shadow: inset 0 0 0 2px rgba(27, 34, 38, .5); }
html[data-theme="lavan"] .chip:hover { box-shadow: inset 0 0 0 2px var(--graphite); }
html[data-theme="lavan"] .chip[aria-pressed="true"], html[data-theme="lavan"] .dayrow .chip[aria-current="true"] { background: var(--glass); color: #fff; box-shadow: none; }
html[data-theme="lavan"] .chip:focus-visible { outline: 3px solid var(--graphite); outline-offset: 2px; }
/* a day: the date is a rolling shutter, its number big like a house number; the shutter colour changes every day */
html[data-theme="lavan"] .day > .stone.daylabel.daylabel { --face: var(--shutter); --ink: #fff; --mute: #fff; --em: #f4cf7c; --focus: #fff; }
html[data-theme="lavan"] .day > .stone.daylabel::before { background: var(--lip), var(--cast), var(--slats), var(--face); }
html[data-theme="lavan"] main > .day:nth-child(5n+2) > .daylabel.daylabel { --face: var(--glass); }
html[data-theme="lavan"] main > .day:nth-child(5n+3) > .daylabel.daylabel { --face: #8a3d24; }
html[data-theme="lavan"] main > .day:nth-child(5n+4) > .daylabel.daylabel { --face: var(--sea); }
html[data-theme="lavan"] main > .day:nth-child(5n) > .daylabel.daylabel { --face: #5a5446; }
html[data-theme="lavan"] .day > .stone:last-child { --face: var(--t3); }
html[data-theme="lavan"] main > .day:nth-child(5n+2) > .stone:last-child { --face: var(--t1); }
html[data-theme="lavan"] main > .day:nth-child(5n+3) > .stone:last-child { --face: var(--t2); }
html[data-theme="lavan"] main > .day:nth-child(5n+4) > .stone:last-child { --face: var(--t5); }
html[data-theme="lavan"] main > .day:nth-child(5n) > .stone:last-child { --face: var(--t4); }
@media (min-width: 900px) {
  html[data-theme="lavan"] .course.todayc { --w1: .27 !important; }
  html[data-theme="lavan"] .course.day { --w1: .2 !important; }
  html[data-theme="lavan"] .todayc > .stone:last-child, html[data-theme="lavan"] .day > .stone:last-child { --padx: 30px; }
  html[data-theme="lavan"] .day > .daylabel > .c { position: sticky; top: 96px; }
  html[data-theme="lavan"] .todayc > .stone:first-child > .c { position: sticky; top: 24px; }
  html[data-theme="lavan"] .day > .daylabel, html[data-theme="lavan"] .todayc > .stone:first-child { justify-content: flex-start; }
}
html[data-theme="lavan"] .dnum { font-size: 64px; line-height: .9; letter-spacing: -.05em; }
html[data-theme="lavan"] .dname { font-size: 28px; }
html[data-theme="lavan"] .dmon { font: 600 18px/1 var(--display); letter-spacing: .14em; color: var(--ink); }
html[data-theme="lavan"][lang="he"] .dmon { letter-spacing: 0; font-family: var(--sans); font-weight: 700; }
@media (min-width: 900px) { html[data-theme="lavan"] .dnum { font-size: clamp(90px, 7.6vw, 132px); } html[data-theme="lavan"] .dname { font-size: clamp(30px, 2.5vw, 38px); } }
html[data-theme="lavan"] .dtag { background: var(--ivory); color: var(--graphite); border-radius: 999px; padding: 4px 12px 3px; }
html[data-theme="lavan"] .dtag.now { background: var(--ochre); color: var(--graphite); }
html[data-theme="lavan"] .day .subh { border-top: 1.5px solid var(--seam); color: var(--ink); }
/* the filter sheet, the day bar, the map */
html[data-theme="lavan"] .sheet, html[data-theme="lavan"] .daybar, html[data-theme="lavan"] .grp-strip {
  background: var(--grain) 0 0 / 256px 256px, var(--paper); color: var(--graphite); --ink: var(--graphite); --mute: #29343a; --focus: var(--graphite);
}
html[data-theme="lavan"] .sheet { border: 0; border-radius: 6px; border-start-end-radius: 34px; box-shadow: var(--pop), 0 0 0 1.5px var(--seam); overscroll-behavior: contain; }
@media (max-width: 599.98px) { html[data-theme="lavan"] .sheet { border-radius: 26px 26px 0 0; } }
html[data-theme="lavan"] .sheet-foot { background: var(--sand); border-top: 1.5px solid var(--seam); }
html[data-theme="lavan"] .sheet-foot .btn-line { background: var(--ivory); color: var(--graphite); }
html[data-theme="lavan"] .sheet legend { color: var(--graphite); }
html[data-theme="lavan"] .sheet::backdrop { background: rgba(27, 34, 38, .66); }
html[data-theme="lavan"] .xbtn { border-radius: 50%; }
html[data-theme="lavan"] .daybar { border-bottom: 3px solid var(--graphite); }
html[data-theme="lavan"] #map { border: 0; border-radius: 6px; border-start-end-radius: 34px; box-shadow: 0 0 0 3px var(--ivory), 0 0 0 4.5px var(--seam); }
html[data-theme="lavan"] #map .leaflet-popup-content-wrapper { background: var(--paper); color: var(--graphite); border-radius: 6px; border-start-end-radius: 18px; box-shadow: var(--pop), 0 0 0 1.5px var(--seam); max-width: calc(100vw - 96px); }
html[data-theme="lavan"] #map .leaflet-popup-content { margin: 12px 34px 12px 14px; max-width: calc(100vw - 124px); overflow-wrap: anywhere; }
html[data-theme="lavan"] #map .leaflet-popup-tip { background: var(--paper); }
html[data-theme="lavan"] #map a.leaflet-popup-close-button { color: var(--graphite); }
@media (max-width: 599.98px) { html[data-theme="lavan"] #map .leaflet-top.leaflet-left { top: auto; bottom: 22px; } }
html[data-theme="lavan"] .pin { background: var(--ochre); color: var(--graphite); }
html[data-theme="lavan"] .grp-course { padding: 0; }
html[data-theme="lavan"] .grp-strip { padding: 12px 16px calc(12px + 12px); gap: 10px 20px; }
@media (max-width: 599.98px) { html[data-theme="lavan"] .grp-strip .gj-t { font-size: 15px; } html[data-theme="lavan"] .grp-strip .gjoin { min-height: 46px; } }
@media (min-width: 900px) { html[data-theme="lavan"] .grp-strip { padding: 16px 34px calc(16px + 12px); } }
@media (max-width: 899.98px) {
  html[data-theme="lavan"] .evhead { --py: 20px; }
  html[data-theme="lavan"] .evhead .kinds { -webkit-mask: linear-gradient(90deg, #000 calc(100% - 44px), transparent); mask: linear-gradient(90deg, #000 calc(100% - 44px), transparent); }
  html[data-theme="lavan"][dir="rtl"] .evhead .kinds { -webkit-mask: linear-gradient(270deg, #000 calc(100% - 44px), transparent); mask: linear-gradient(270deg, #000 calc(100% - 44px), transparent); }
  html[data-theme="lavan"] .evhead .sub { font-size: 15px; }
  html[data-theme="lavan"] .todayc > .stone:first-child, html[data-theme="lavan"] .day > .daylabel { --py: 18px; }
}

/* ================================================================ newsletter */
html[data-theme="lavan"] .nl input[type="email"], html[data-theme="lavan"] .nl select, html[data-theme="lavan"] input[type=text], html[data-theme="lavan"] textarea { border-radius: 12px; border: 2px solid var(--graphite); background: #fffdf8; color: var(--graphite); }
html[data-theme="lavan"] .nl-chip span { border-radius: 999px; border-width: 2px; background: var(--ivory); color: var(--graphite); border-color: rgba(27, 34, 38, .55); }
html[data-theme="lavan"] .nl-chip input:checked + span { background: var(--glass); border-color: var(--glass); color: #fff; }
@media (min-width: 1100px) {
  html[data-theme="lavan"] .nl > .c { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 56px; align-content: start; }
  html[data-theme="lavan"] .nl > .c > * { grid-column: 1; }
  html[data-theme="lavan"] .nl > .c > .nlform, html[data-theme="lavan"] .nl > .c > .nl-done { grid-column: 2; grid-row: 1 / span 4; }
}

/* ================================================================ the chat with Lulu (public/chatinca.css, body.chatpage) */
html[data-theme="lavan"] body.chatpage {
  --c-bg2: #d9d6ce; --c-paper: #f4f0e6; --c-head: #24343a; --c-bub: #fffdf8; --c-pop: #fffdf8;
  --c-ink: #1b2226; --c-mute: #29343a; --c-line: rgba(27, 34, 38, .2); --c-line2: rgba(27, 34, 38, .55);
  --c-terra: #24343a; --c-terra-h: #31464d; --c-terra-t: #85381f; --c-on-terra: #fff; --c-teal: #0d5058;
  --c-lulu: #0d5058; --c-lulu-o: #f07010;
  --c-user: #24343a; --c-on-user: #fff; --c-link: #1d4f4a; --c-focus: #1b2226;
  --pop-shadow: var(--pop), 0 0 0 1.5px rgba(84, 68, 44, .3);
}
html[data-theme="lavan"]:has(body.chatpage) { background: var(--grain) 0 0 / 256px 256px, #d9d6ce; }
html[data-theme="lavan"] body.chatpage { background: transparent; }
html[data-theme="lavan"] body.chatpage .chatapp { background: var(--grain) 0 0 / 256px 256px, var(--c-paper); }
html[data-theme="lavan"] .chatpage .chat-hd { --c-ink: #f6f1e4; --c-mute: #f6f1e4; --c-terra-t: #f4cf7c; --c-focus: #fff; color: #f6f1e4;
  background: linear-gradient(108deg, transparent 0 36%, rgba(255, 255, 255, .07) 36% 51%, transparent 51% 100%), linear-gradient(180deg, #2c3f46, #1e2d33);
  padding-top: calc(12px + env(safe-area-inset-top, 0px)); padding-bottom: 14px; }
html[data-theme="lavan"] .chatpage .chat-hd::after { clip-path: none; bottom: -12px; height: 12px; background: linear-gradient(180deg, #fffdf8 0 8px, rgba(84, 68, 44, .32) 8px 12px); -webkit-mask: none; mask: none; }
html[data-theme="lavan"] .chatpage .hd-t h1 { font: 700 26px/1.1 var(--display); letter-spacing: -.02em; color: #f6f1e4; }
html[data-theme="lavan"] .chatpage .hd-av { box-shadow: 0 0 0 2.5px #fdfbf5; }
html[data-theme="lavan"] .chatpage .ld-btn, html[data-theme="lavan"] .chatpage .cmb { clip-path: none; border-radius: 999px; background: #f6f1e4; color: #1b2226; box-shadow: 0 2px 0 rgba(0, 0, 0, .35); }
html[data-theme="lavan"] .chatpage .plb { background: transparent; color: #f6f1e4; box-shadow: inset 0 0 0 1.5px rgba(246, 241, 228, .7); }
html[data-theme="lavan"] .chatpage .plb .ico-svg:first-child { color: #f4cf7c; }
html[data-theme="lavan"] .chatpage .plpop, html[data-theme="lavan"] .chatpage .cml, html[data-theme="lavan"] .chatpage .ld-menu { --c-ink: #1b2226; --c-mute: #29343a; --c-terra-t: #85381f; --c-focus: #1b2226; color: #1b2226; }
html[data-theme="lavan"] .chatpage .empty h2 { font: 700 clamp(34px, 9.6vw, 46px)/1.04 var(--display); letter-spacing: -.035em; }
html[data-theme="lavan"] .chatpage .start { border-radius: 14px; border-start-end-radius: 26px; box-shadow: inset 0 0 0 2px var(--c-ink), 0 3px 0 rgba(27, 34, 38, .2); }
html[data-theme="lavan"] .chatpage .start:hover { background: #fff4d6; }
html[data-theme="lavan"] .chatpage .si, html[data-theme="lavan"][dir="rtl"] .chatpage .si { clip-path: none; border-radius: 50%; }
html[data-theme="lavan"] .chatpage .bub { border-radius: 16px; }
html[data-theme="lavan"] .chatpage .turn.in .bub, html[data-theme="lavan"] .chatpage .turn.in[dir="rtl"] .bub { clip-path: none; border-end-start-radius: 4px; box-shadow: inset 0 0 0 1.5px var(--c-line2); }
html[data-theme="lavan"] .chatpage .turn.out .bub, html[data-theme="lavan"][dir="rtl"] .chatpage .turn.out .bub { clip-path: none; border-end-end-radius: 4px; box-shadow: none; }
html[data-theme="lavan"] .chatpage .composer { border-radius: 999px; box-shadow: inset 0 0 0 2px var(--c-ink); }
html[data-theme="lavan"] .chatpage .send, html[data-theme="lavan"][dir="rtl"] .chatpage .send { clip-path: none; border-radius: 50%; }
html[data-theme="lavan"] .chatpage .composer-wrap { background: transparent; }

/* ================================================================ night: the white houses under street lamps; the render goes warm grey, the lettering light */
@media (prefers-color-scheme: dark) {
  html[data-theme="lavan"] {
    --plaster: #2d2b27; --bone: #34312c; --concrete: #3a3834; --ivory: #46433c;
    --t1: #3a3832; --t2: #36322d; --t3: #3f3d37; --t4: #322f29; --t5: #33362f;
    --glass: #131d22; --glass-2: #1e2d33; --shutter: #2e4337; --sea: #1f4540; --ochre: #e2a93c; --terra: #d98a65; --terra-t: #e49a74; --brass: #c79a3a;
    --ink: #f6f1e4; --mute: #ebe5d7; --em: #f4cf7c; --focus: #f6f1e4; --line: #f6f1e4;
    --lip-hi: rgba(255, 250, 235, .2); --lip-lo: rgba(0, 0, 0, .55);
    --cast-1: rgba(0, 0, 0, .5); --cast-2: rgba(0, 0, 0, .26); --cast-3: rgba(0, 0, 0, .1);
    --streak: rgba(0, 0, 0, .2);
    --sheen: rgba(255, 244, 214, .06);
    --seam: rgba(246, 241, 228, .28);
    --grain: url(/img/lavan-plaster-night-4.svg);
    --btn-bg: #f6f1e4; --btn-ink: #1b2226; --btn-h: #fff; --btn-shadow: rgba(0, 0, 0, .5);
    --chip-bg: #2d2b27; --paper: #34312c; --label-bg: rgba(0, 0, 0, .3);
    --pop: 0 14px 26px -10px rgba(0, 0, 0, .75);
    scrollbar-color: #6d6a65 #1e1c1a;
  }
  html[data-theme="lavan"] .stone.photo::before { filter: brightness(.62) saturate(.9); }
  html[data-theme="lavan"] .stone { --face: var(--t1); }
  html[data-theme="lavan"] .t1 { --face: var(--t1); } html[data-theme="lavan"] .t2 { --face: var(--t2); } html[data-theme="lavan"] .t3 { --face: var(--t3); }
  html[data-theme="lavan"] .t4 { --face: var(--t4); } html[data-theme="lavan"] .t5 { --face: var(--t5); } html[data-theme="lavan"] .stone.terr { --face: var(--t4); }
  html[data-theme="lavan"] .nl { --face: #2e332f; }
  html[data-theme="lavan"] .stone.photo { --face: #34312c; }
  html[data-theme="lavan"] .stone.wa { --face: var(--glass-2); }
  html[data-theme="lavan"] .stone.teal, html[data-theme="lavan"] .stone.blue { --face: var(--sea); }
  html[data-theme="lavan"] .stone.deep { --face: var(--shutter); }
  /* the ochre floors stay ochre: that is the lit window at night */
  html[data-theme="lavan"] .stone.sun, html[data-theme="lavan"] .partner-cta, html[data-theme="lavan"] .todayc > .stone:first-child {
    --face: #d8a03a; --ink: #1b2226; --mute: #1b2226; --em: #1b2226; --focus: #1b2226; --streak: rgba(60, 40, 0, .14); --sheen: rgba(255, 244, 205, .3); --grain: url(/img/lavan-plaster-4.svg);
  }
  html[data-theme="lavan"] .partner-cta .btn:not(.btn-line) { --bb: #1b2226; --bc: #fff; }
  html[data-theme="lavan"] .todayc > .stone:last-child { --face: var(--t3); }
  html[data-theme="lavan"] .ft .t3 { --face: var(--concrete); }
  html[data-theme="lavan"] .ft .t5 { --face: var(--t4); }
  html[data-theme="lavan"] .ft .emblem { --face: var(--glass); }
  html[data-theme="lavan"] .ayni-course > .stone { --face: #3a352d; --ink: #f6f1e4; --mute: #f6f1e4; --em: #f4cf7c; --focus: #f6f1e4; }
  html[data-theme="lavan"] .ayni-course > .stone::before { background: linear-gradient(180deg, rgba(34, 31, 26, .72), rgba(34, 31, 26, .72)), var(--terrazzo) 0 0 / 360px 360px, var(--face); box-shadow: 0 9px 0 -1px rgba(0, 0, 0, .5), 0 18px 26px -14px rgba(0, 0, 0, .8); }
  html[data-theme="lavan"] .day > .stone.daylabel.daylabel { --face: var(--shutter); }
  html[data-theme="lavan"] main > .day:nth-child(5n+2) > .daylabel.daylabel { --face: var(--glass-2); }
  html[data-theme="lavan"] main > .day:nth-child(5n+3) > .daylabel.daylabel { --face: #6b3320; }
  html[data-theme="lavan"] main > .day:nth-child(5n+4) > .daylabel.daylabel { --face: var(--sea); }
  html[data-theme="lavan"] main > .day:nth-child(5n) > .daylabel.daylabel { --face: #4a463b; }
  html[data-theme="lavan"] .day > .stone:last-child { --face: var(--t3); }
  html[data-theme="lavan"] main > .day:nth-child(5n+2) > .stone:last-child { --face: var(--t1); }
  html[data-theme="lavan"] main > .day:nth-child(5n+3) > .stone:last-child { --face: var(--t2); }
  html[data-theme="lavan"] main > .day:nth-child(5n+4) > .stone:last-child { --face: var(--t5); }
  html[data-theme="lavan"] main > .day:nth-child(5n) > .stone:last-child { --face: var(--t4); }
  html[data-theme="lavan"] .ld-menu, html[data-theme="lavan"] .plpop, html[data-theme="lavan"] .fab-menu { color: var(--ink); }
  html[data-theme="lavan"] .ld-i, html[data-theme="lavan"] .pli, html[data-theme="lavan"] .fab-i { color: var(--ink); }
  html[data-theme="lavan"] .fab-intro, html[data-theme="lavan"] .fab-save, html[data-theme="lavan"] .plall { color: var(--mute); }
  html[data-theme="lavan"] .pli[aria-current], html[data-theme="lavan"] .ld-i[aria-checked="true"], html[data-theme="lavan"] .pli .ico-svg { color: #f4cf7c; }
  html[data-theme="lavan"] .ld-i:hover, html[data-theme="lavan"] .ld-i:focus-visible, html[data-theme="lavan"] .pli:hover, html[data-theme="lavan"] .pli:focus-visible,
  html[data-theme="lavan"] .fab-i:hover, html[data-theme="lavan"] .fab-i:focus-visible, html[data-theme="lavan"] .fab-save:hover { background: var(--ochre); color: #1b2226; }
  html[data-theme="lavan"] .plb .ico-svg:first-child { color: #b5532f; }
  html[data-theme="lavan"] .niche { box-shadow: 0 0 0 3px #46433c, 0 0 0 4.5px rgba(246, 241, 228, .5), 0 3px 5px rgba(0, 0, 0, .4); }
  html[data-theme="lavan"] .stone.wa .niche, html[data-theme="lavan"] .stone.teal .niche, html[data-theme="lavan"] .stone.deep .niche { box-shadow: 0 0 0 3px #fdfbf5, 0 0 0 4.5px rgba(0, 0, 0, .4); }
  html[data-theme="lavan"] .btn-sun, html[data-theme="lavan"] .fbtn { --bb: var(--ochre); --bc: #1b2226; }
  html[data-theme="lavan"] .btn-sun:hover, html[data-theme="lavan"] .fbtn:hover { --bb: #ecb958; }
  html[data-theme="lavan"] .stone.deep .btn:not(.btn-line), html[data-theme="lavan"] .stone.wa .btn:not(.btn-line) { --bb: #f6f1e4; --bc: #1b2226; }
  html[data-theme="lavan"] .fbtn:focus-visible { outline-color: var(--ink); }
  html[data-theme="lavan"] .seg { background: #f6f1e4; }
  html[data-theme="lavan"] .seg button[aria-pressed="true"] { background: #131d22; }
  html[data-theme="lavan"] .chip { color: var(--ink); box-shadow: inset 0 0 0 2px rgba(246, 241, 228, .5); }
  html[data-theme="lavan"] .chip:hover { box-shadow: inset 0 0 0 2px var(--ink); }
  html[data-theme="lavan"] .chip[aria-pressed="true"], html[data-theme="lavan"] .dayrow .chip[aria-current="true"] { background: #f6f1e4; color: #1b2226; }
  html[data-theme="lavan"] .chip:focus-visible { outline-color: var(--ink); }
  html[data-theme="lavan"] .dtag { background: #f6f1e4; color: #1b2226; }
  html[data-theme="lavan"] .dtag.now { background: var(--ochre); color: #1b2226; }
  html[data-theme="lavan"] .badge { background: var(--ochre); color: #1b2226; }
  html[data-theme="lavan"] .kt.kb { color: color-mix(in srgb, var(--kf) 55%, #fff); }
  html[data-theme="lavan"] .ev .kt, html[data-theme="lavan"] #tlist .kt, html[data-theme="lavan"] .evmain .kt { --kb: rgba(0, 0, 0, .3); --kf: var(--ink); --ke: rgba(246, 241, 228, .5); }
  html[data-theme="lavan"] .ev .th { box-shadow: 0 0 0 2.5px #5a564d, 0 0 0 4px rgba(0, 0, 0, .5); }
  html[data-theme="lavan"] .sheet, html[data-theme="lavan"] .daybar, html[data-theme="lavan"] .grp-strip { color: var(--ink); --ink: #f6f1e4; --mute: #ebe5d7; --focus: #f6f1e4; }
  html[data-theme="lavan"] .sheet legend { color: var(--ink); }
  html[data-theme="lavan"] .sheet-foot { background: #2b2925; border-top-color: var(--seam); }
  html[data-theme="lavan"] .sheet-foot .btn-line { background: #34312c; color: var(--ink); }
  html[data-theme="lavan"] .daybar { border-bottom-color: #f6f1e4; }
  html[data-theme="lavan"] #map { box-shadow: 0 0 0 3px #46433c, 0 0 0 4.5px var(--seam); }
  html[data-theme="lavan"] #map .leaflet-popup-content-wrapper, html[data-theme="lavan"] #map .leaflet-popup-tip { background: #34312c; color: var(--ink); }
  html[data-theme="lavan"] #map a.leaflet-popup-close-button, html[data-theme="lavan"] #map .pop, html[data-theme="lavan"] #map .pop li span { color: var(--ink); }
  html[data-theme="lavan"] #map .pop a { color: #f4cf7c; }
  html[data-theme="lavan"] .pin { background: var(--ochre); color: #1b2226; box-shadow: 0 0 0 2px #f6f1e4; }
  html[data-theme="lavan"] .nl input[type="email"], html[data-theme="lavan"] .nl select, html[data-theme="lavan"] input[type=text], html[data-theme="lavan"] textarea, html[data-theme="lavan"] input[type=email], html[data-theme="lavan"] input[type=url] { background: #1f2327; color: var(--ink); border-color: var(--ink); }
  html[data-theme="lavan"] .stone input::placeholder, html[data-theme="lavan"] .stone textarea::placeholder { color: #bdb4a4; opacity: 1; }
  html[data-theme="lavan"] .nl-chip span { background: #2d2b27; color: var(--ink); border-color: rgba(246, 241, 228, .55); }
  html[data-theme="lavan"] .nl-chip input:checked + span { background: #f6f1e4; border-color: #f6f1e4; color: #1b2226; }
  html[data-theme="lavan"] .fab-t small { color: #e9f1f1; }
  html[data-theme="lavan"] .fab { background: #1e2d33; box-shadow: inset 0 0 0 3px #1e2d33, inset 0 0 0 4.5px rgba(253, 251, 245, .85); }
  /* the chat at night */
  html[data-theme="lavan"] body.chatpage {
    --c-bg2: #1e1c1a; --c-paper: #2d2b27; --c-head: #131d22; --c-bub: #3a3832; --c-pop: #3a3832;
    --c-ink: #f6f1e4; --c-mute: #e2dccd; --c-line: rgba(246, 241, 228, .2); --c-line2: rgba(246, 241, 228, .55);
    --c-terra: #f6f1e4; --c-terra-h: #fff; --c-terra-t: #f4cf7c; --c-on-terra: #1b2226; --c-link: #f4cf7c; --c-focus: #f6f1e4;
    --c-user: #2b6a62; --c-on-user: #fff; --c-teal: #7fc0b2;
    --pop-shadow: var(--pop), 0 0 0 1.5px rgba(246, 241, 228, .25);
  }
  html[data-theme="lavan"]:has(body.chatpage) { background: var(--grain) 0 0 / 256px 256px, #25231f; }
  html[data-theme="lavan"] .chatpage .plpop, html[data-theme="lavan"] .chatpage .cml, html[data-theme="lavan"] .chatpage .ld-menu { --c-ink: #f6f1e4; --c-mute: #e2dccd; --c-terra-t: #f4cf7c; --c-focus: #f6f1e4; color: #f6f1e4; }
  html[data-theme="lavan"] .chatpage .start:hover { background: #46433c; }
  html[data-theme="lavan"] .chatpage .chat-hd::after { background: linear-gradient(180deg, rgba(255, 250, 235, .2) 0 8px, rgba(0, 0, 0, .55) 8px 12px); }
}

/* ================================================================ Windows high contrast: gradients and shadows are dropped; give controls a real edge */
@media (forced-colors: active) {
  html[data-theme="lavan"] .btn, html[data-theme="lavan"] .nl-submit, html[data-theme="lavan"] .fbtn, html[data-theme="lavan"] .gjoin, html[data-theme="lavan"] .chip,
  html[data-theme="lavan"] .seg, html[data-theme="lavan"] .ld-btn, html[data-theme="lavan"] .plb, html[data-theme="lavan"] .kt, html[data-theme="lavan"] .cgo, html[data-theme="lavan"] .ev .evgo { border: 2px solid ButtonText; }
  html[data-theme="lavan"] .stone::before, html[data-theme="lavan"] .stone::after { display: none; }
  html[data-theme="lavan"], html[data-theme="lavan"] body, html[data-theme="lavan"] .wall, html[data-theme="lavan"] .sheet, html[data-theme="lavan"] .daybar, html[data-theme="lavan"] .grp-strip { background: Canvas; }
}

/* ================================================================ print stays plain */
@media print { html[data-theme="lavan"], html[data-theme="lavan"] body, html[data-theme="lavan"] .wall { background: #fff; } html[data-theme="lavan"] .stone::before, html[data-theme="lavan"] .stone::after { display: none; } }
