:root{--bg-171512:#22080E;--bg-F4F1EA:#F5EFE4;--bg-EFEBE1:#EFE6D6;--bg-FBF9F4:#FBF8F2;--bg-E6E0D2:#E6DCCB;--bg-E4DECF:#EDE3D2;--bg-EFE6D8:#EFE6D6;--bg-2A1216:#5E1322;--bg-1D1512:#2A0A11;--bg-2C2721:#2A0A11;--bg-C89B54:#C9A050;--bg-7C5C33:#8A6A2A;--bg-DCD5C6:#DCCBA6;--bg-CFC7B5:#D3BF96;--bg-ivory:245,239,228;--bg-brass:201,160,80;--fg-171512:#2A1015;--fg-575044:#5A4842;--fg-2A1216:#3A0F18;--fg-413B33:#3B2C29;--fg-2C2721:#2A1015;--fg-5C554B:#5E4A45;--fg-6B6459:#6A5550;--fg-7C5C33:#8A6A2A;--fg-C89B54:#9C7A34;--fg-F4F1EA:#F8F5EE;--fg-1D1512:#2A1015;--fg-CFC7B5:#B8A48C;--fg-DCD5C6:#C9B597;--fg-E6E0D2:#E6DCCB;--fg-C6B893:#B8A06A;--fg-8A8175:#7E6A62;--fg-7A7266:#7E6A62;--fg-8A7A5E:#7E6A62;--fg-9A8F7C:#7E6A62;--fg-8A8274:#7E6A62;--fg-6E6455:#7E6A62;--fg-ivory:244,241,234;--fg-brass:201,160,80;--bd-DCD5C6:#DCCBA6;--bd-E4DECF:#E6DCCB;--bd-CFC7B5:#D3BF96;--bd-E6E0D2:#E6DCCB;--bd-2A1216:#6B1426;--bd-C89B54:#C9A050;--bd-7C5C33:#9C7A34;--bd-F4F1EA:#F5EFE4;--bd-E3DACA:#E6DCCB;--bd-ivory:244,241,234;--bd-brass:201,160,80;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg-171512:#070304;--bg-F4F1EA:#0E0708;--bg-EFEBE1:#150A0C;--bg-FBF9F4:#1A0D10;--bg-E6E0D2:#211216;--bg-E4DECF:#180B0E;--bg-EFE6D8:#150A0C;--bg-2A1216:#3A0F18;--bg-1D1512:#070304;--bg-2C2721:#070304;--bg-C89B54:#C9A050;--bg-7C5C33:#A8823A;--bg-DCD5C6:#3A2620;--bg-CFC7B5:#4A3328;--bg-ivory:14,7,8;--bg-brass:201,160,80;--fg-171512:#F1E6D3;--fg-575044:#C4AFA3;--fg-2A1216:#F1E6D3;--fg-413B33:#D9C6B8;--fg-2C2721:#F1E6D3;--fg-5C554B:#C4AFA3;--fg-6B6459:#B9A497;--fg-7C5C33:#E7C982;--fg-C89B54:#E7C982;--fg-F4F1EA:#F8F5EE;--fg-1D1512:#F1E6D3;--fg-CFC7B5:#8C7A70;--fg-DCD5C6:#8C7A70;--fg-E6E0D2:#3A2620;--fg-C6B893:#C9A050;--fg-8A8175:#A8938A;--fg-7A7266:#A8938A;--fg-8A7A5E:#A8938A;--fg-9A8F7C:#A8938A;--fg-8A8274:#A8938A;--fg-6E6455:#A8938A;--fg-ivory:244,241,234;--fg-brass:231,201,130;--bd-DCD5C6:#3A2620;--bd-E4DECF:#2E1D19;--bd-CFC7B5:#4A3328;--bd-E6E0D2:#2E1D19;--bd-2A1216:#C9A050;--bd-C89B54:#C9A050;--bd-7C5C33:#C9A050;--bd-F4F1EA:#F1E6D3;--bd-E3DACA:#2E1D19;--bd-ivory:244,241,234;--bd-brass:201,160,80;}}
:root[data-theme="dark"]{--bg-171512:#070304;--bg-F4F1EA:#0E0708;--bg-EFEBE1:#150A0C;--bg-FBF9F4:#1A0D10;--bg-E6E0D2:#211216;--bg-E4DECF:#180B0E;--bg-EFE6D8:#150A0C;--bg-2A1216:#3A0F18;--bg-1D1512:#070304;--bg-2C2721:#070304;--bg-C89B54:#C9A050;--bg-7C5C33:#A8823A;--bg-DCD5C6:#3A2620;--bg-CFC7B5:#4A3328;--bg-ivory:14,7,8;--bg-brass:201,160,80;--fg-171512:#F1E6D3;--fg-575044:#C4AFA3;--fg-2A1216:#F1E6D3;--fg-413B33:#D9C6B8;--fg-2C2721:#F1E6D3;--fg-5C554B:#C4AFA3;--fg-6B6459:#B9A497;--fg-7C5C33:#E7C982;--fg-C89B54:#E7C982;--fg-F4F1EA:#F8F5EE;--fg-1D1512:#F1E6D3;--fg-CFC7B5:#8C7A70;--fg-DCD5C6:#8C7A70;--fg-E6E0D2:#3A2620;--fg-C6B893:#C9A050;--fg-8A8175:#A8938A;--fg-7A7266:#A8938A;--fg-8A7A5E:#A8938A;--fg-9A8F7C:#A8938A;--fg-8A8274:#A8938A;--fg-6E6455:#A8938A;--fg-ivory:244,241,234;--fg-brass:231,201,130;--bd-DCD5C6:#3A2620;--bd-E4DECF:#2E1D19;--bd-CFC7B5:#4A3328;--bd-E6E0D2:#2E1D19;--bd-2A1216:#C9A050;--bd-C89B54:#C9A050;--bd-7C5C33:#C9A050;--bd-F4F1EA:#F1E6D3;--bd-E3DACA:#2E1D19;--bd-ivory:244,241,234;--bd-brass:201,160,80;}
/* ============================================================
   Lubnan Online: new house design (October 2026)
   Tenor Sans, Limestone and Cedar (light), Cedar Noir (dark)
   ============================================================ */

/* ---------- type: Tenor Sans everywhere, Noto Kufi for Arabic ---------- */
*, *::before, *::after { font-family: 'Tenor Sans', system-ui, sans-serif !important; font-weight: 400 !important; font-style: normal !important; }
svg text { font-family: 'Tenor Sans', system-ui, sans-serif !important; }
[lang="ar"], [lang="ar"] *, html[dir="rtl"] body, html[dir="rtl"] body * { font-family: 'Noto Kufi Arabic', 'Tenor Sans', sans-serif !important; letter-spacing: 0 !important; }
body { line-height: 1.75; }
h1, h2, h3 { letter-spacing: -0.005em; }
[style*="font-size:clamp"] { line-height: 1.1 !important; }

/* ---------- surfaces from site.css that were hard coded ---------- */
html, body { background: var(--bg-F4F1EA); color: var(--fg-2A1216); }
body { overflow-x: clip; }
::selection { background: #C9A050; color: #2A1015; }
a { color: var(--fg-7C5C33); border-bottom-color: rgba(var(--bd-brass), .35); }
a:hover { color: var(--fg-2A1216); }
.nvi { color: var(--fg-5C554B); }
.nvi:hover, .nvi.on { color: var(--fg-2A1216); border-bottom-color: var(--fg-2A1216); }
.navtoggle { border-color: var(--bd-DCD5C6); }
.navtoggle span, .navtoggle span::before, .navtoggle span::after { background: var(--fg-2A1216); }
.statebar { color: var(--fg-413B33); }
.illus { color: var(--fg-7A7266); border-top-color: var(--bd-DCD5C6); }
.pf { background: var(--bg-E6E0D2); }
#apply-form input[type=text], #apply-form input[type=email], #apply-form input[type=url], #apply-form input[type=tel],
#apply-form textarea, #apply-form select, form input:not([type=checkbox]):not([type=radio]):not([type=hidden]), form textarea, form select {
  background: var(--bg-FBF9F4) !important; color: var(--fg-2A1216) !important; border-color: var(--bd-DCD5C6) !important; border-radius: 0;
}
header[style] { box-shadow: 0 1px 0 rgba(201, 160, 80, .18); }
header a.lk svg { color: var(--fg-2A1216) !important; }
.hv0:hover { background: #C9A050 !important; color: #2A1015 !important; }
.hv1:hover { border-color: #C9A050 !important; color: #C9A050 !important; }
.hv3:hover, .hv4:hover { background: #C9A050 !important; border-color: #C9A050 !important; color: #2A1015 !important; }

/* Anything sitting on gold keeps dark ink in both themes */
[style*="background:var(--bg-C89B54"] { color: #2A1015 !important; }

/* Wine surfaces (top strip, dark bands, footer): text and gold stay bright */
[style*="background:var(--bg-2A1216"], [style*="background:var(--bg-1D1512"], [style*="background:var(--bg-171512"], [style*="background:var(--bg-2C2721"], footer, .island {
  --fg-C89B54: #E7C982; --fg-7C5C33: #E7C982; --fg-2A1216: #F8F5EE; --fg-413B33: #E8D8CC;
  --fg-5C554B: #D9C6B8; --fg-6B6459: #D9C6B8; --fg-8A8175: #C9B3A6; --fg-7A7266: #C9B3A6;
  --bd-DCD5C6: rgba(244, 241, 234, .16); --bd-2A1216: #C9A050;
}
footer a:hover, footer a.lk:hover { color: #E7C982 !important; }

/* Wine bands get the Limestone and Cedar gradient */
section[style*="background:var(--bg-2A1216"]:not(.hero-block) {
  background: radial-gradient(circle at 50% 0%, #7A1A2C 0%, #420C17 100%) !important;
}
:root[data-theme="dark"] section[style*="background:var(--bg-2A1216"]:not(.hero-block) {
  background: radial-gradient(circle at 12% 18%, rgba(92, 18, 34, .75) 0%, transparent 55%), #140A0C !important;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) section[style*="background:var(--bg-2A1216"]:not(.hero-block) {
    background: radial-gradient(circle at 12% 18%, rgba(92, 18, 34, .75) 0%, transparent 55%), #140A0C !important;
  }
}

/* ---------- the page hero: light limestone with the photo behind it ---------- */
:root:not([data-theme="dark"]) .hero-block {
  --bg-2A1216: transparent; --fg-F4F1EA: #3A0F18; --fg-EFE6D8: #6B1426; --fg-ivory: 58, 15, 24; --bd-ivory: 58, 15, 24;
  --fg-C89B54: #9C7A34; --fg-7C5C33: #8A6A2A;
  --bg-F4F1EA: #6B1426; --fg-2A1216: #F3E2B8; --bd-brass: 107, 20, 38;
  background:
    radial-gradient(circle at 10% 15%, rgba(201, 160, 80, .16) 0%, transparent 45%),
    radial-gradient(circle at 90% 85%, rgba(107, 20, 38, .07) 0%, transparent 45%),
    #F5EFE4 !important;
  border-bottom: 1px solid #DCCBA6;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) .hero-block {
    --bg-2A1216: transparent; --fg-F4F1EA: #F8F5EE; --fg-ivory: 244, 241, 234; --bd-ivory: 244, 241, 234;
    --fg-C89B54: #E7C982; --fg-7C5C33: #E7C982; --bg-F4F1EA: #6B1426; --fg-2A1216: #F3E2B8; --bd-brass: 201, 160, 80;
    background:
      radial-gradient(circle at 12% 18%, rgba(92, 18, 34, .55) 0%, transparent 46%),
      radial-gradient(circle at 88% 78%, rgba(201, 160, 80, .10) 0%, transparent 42%),
      radial-gradient(circle at 50% 50%, #140A0C 0%, #0B0506 100%) !important;
    border-bottom: 1px solid rgba(201, 160, 80, .25);
  }
}
:root[data-theme="dark"] .hero-block {
  --bg-2A1216: transparent; --fg-F4F1EA: #F8F5EE; --fg-ivory: 244, 241, 234; --bd-ivory: 244, 241, 234;
  --fg-C89B54: #E7C982; --fg-7C5C33: #E7C982; --bg-F4F1EA: #6B1426; --fg-2A1216: #F3E2B8; --bd-brass: 201, 160, 80;
  background:
    radial-gradient(circle at 12% 18%, rgba(92, 18, 34, .55) 0%, transparent 46%),
    radial-gradient(circle at 88% 78%, rgba(201, 160, 80, .10) 0%, transparent 42%),
    radial-gradient(circle at 50% 50%, #140A0C 0%, #0B0506 100%) !important;
  border-bottom: 1px solid rgba(201, 160, 80, .25);
}
.hero-block::before { opacity: .25 !important; }
.hero-block a[style*="background:var(--bg-F4F1EA"] { box-shadow: 0 6px 18px rgba(107, 20, 38, .18); }

/* ---------- photo backdrops ---------- */
:root { --wall-opacity: .17; --wall-filter: grayscale(1) sepia(.45) contrast(1.05); }
:root[data-theme="dark"] { --wall-opacity: .22; --wall-filter: grayscale(1) sepia(.6) brightness(.9); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --wall-opacity: .22; --wall-filter: grayscale(1) sepia(.6) brightness(.9); } }
.has-wall { position: relative; isolation: isolate; }
.hero-block.has-wall { overflow: hidden; }
.wall {
  position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: var(--img); background-size: cover; background-position: center 40%;
  opacity: var(--wall-opacity); filter: var(--wall-filter);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 55%, transparent 100%);
  mask-image: linear-gradient(180deg, #000 0%, #000 55%, transparent 100%);
}
.page-wall > .wall { inset: auto; top: 0; left: 50%; width: 100vw; height: 560px; transform: translateX(-50%); opacity: calc(var(--wall-opacity) * .7); }
.wall-cap {
  position: absolute; right: var(--gut); bottom: 12px; z-index: 1; margin: 0; max-width: 60%;
  font-size: 9px; letter-spacing: .18em; text-transform: uppercase; color: #9C7A34; opacity: .9; text-align: right;
}
:root[data-theme="dark"] .wall-cap { color: #E7C982; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .wall-cap { color: #E7C982; } }
.page-wall > .wall-cap { top: 18px; bottom: auto; right: 0; }
html[dir="rtl"] .wall-cap { right: auto; left: var(--gut); text-align: left; }
@media (max-width: 640px) { .wall-cap { max-width: none; left: 16px; right: 16px; text-align: left; } .page-wall > .wall-cap { display: none; } }

/* ---------- home: the founding note as a floating island ---------- */
.island {
  --fg-ivory: 244, 241, 234; --bd-ivory: 244, 241, 234;
  position: relative; max-width: 380px; padding: 34px 32px 30px !important; border: 1px solid rgba(201, 160, 80, .45) !important;
  border-radius: 36px; background: linear-gradient(145deg, #5E1322 0%, #36090F 100%);
  color: #F8F5EE !important; font-size: 16px !important; line-height: 1.65 !important;
  box-shadow: 0 40px 80px -24px rgba(58, 15, 24, .45), 0 18px 36px -18px rgba(156, 122, 52, .35), inset 0 1px 0 rgba(245, 220, 163, .30);
  animation: island-float 7s ease-in-out infinite;
}
.island::before {
  content: ''; position: absolute; top: 0; left: 18%; right: 18%; height: 1px;
  background: linear-gradient(90deg, transparent, #F5DCA3, transparent);
}
.island::after {
  content: ''; position: absolute; left: 12%; right: 12%; bottom: -34px; height: 26px; border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(58, 15, 24, .22) 0%, transparent 70%);
  filter: blur(6px); animation: island-shadow 7s ease-in-out infinite; pointer-events: none;
}
@keyframes island-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes island-shadow { 0%, 100% { transform: scaleX(1); opacity: 1; } 50% { transform: scaleX(.9); opacity: .7; } }
@media (prefers-reduced-motion: reduce) { .island, .island::after { animation: none; } }
@media (max-width: 640px) { .island { border-radius: 28px; padding: 26px 22px !important; max-width: none; } }

/* ---------- light / dark switch ---------- */
.theme-toggle {
  width: 22px; height: 22px; padding: 0; border: 1px solid rgba(231, 201, 130, .6); border-radius: 50%;
  background: transparent; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; flex: none;
}
.theme-toggle span { width: 10px; height: 10px; border-radius: 50%; background: linear-gradient(90deg, #E7C982 50%, transparent 50%); border: 1px solid #E7C982; }
.theme-toggle:hover { border-color: #F5DCA3; }

/* ---------- photo credit line ---------- */
.photo-credit { max-width: 1240px; margin: 0 auto; padding: 0 var(--gut) 26px; font-size: 11px; line-height: 1.7; color: rgba(244, 241, 234, .55); }
.photo-credit a { color: #D9C6B8 !important; border-bottom: 1px solid rgba(217, 198, 184, .3); }
html[dir="rtl"] .photo-credit { direction: ltr; text-align: left; }

/* Arabic never sits in a translucent colour: the joins crack */
html[dir="rtl"] [style*="color:rgba"] { color: #DCCFC0 !important; }
:root:not([data-theme="dark"]) html[dir="rtl"] .hero-block [style*="color:rgba"],
html[dir="rtl"]:not([data-theme="dark"]) .hero-block [style*="color:rgba"] { color: #5E4A45 !important; }

/* Skip link: hide above the page instead of 9999px to the side (that broke the Arabic page) */
.skip { left: 0 !important; transform: translateY(-120%); transition: transform .15s; }
.skip:focus { transform: none; }
html { overflow-x: clip; }
