/* OLKATE Brand System — navy / milk / orange
   Include on every public + admin surface. Legacy --gold* aliases map to accent. */

:root{
  /* Core brand */
  --navy:#0B1C2C;
  --navy-deep:#07131D;
  --navy-mid:#122536;
  --milk:#F5F1E8;
  --milk-soft:#FAF8F3;
  --milk-dim:#EAE4D8;
  --accent:#FF5A1F;
  --accent-soft:#FF7A4A;
  --accent-deep:#E04712;
  --blue-soft:#8BB8CC;

  /* Semantic */
  --bg:var(--milk);
  --bg2:#FFFFFF;
  --bg3:var(--milk-dim);
  --bg-elev:#FFFFFF;
  --ink:var(--navy);
  --text:var(--navy);
  --muted:#6B7280;
  --muted2:#4A5560;
  --line:rgba(11,28,44,.10);
  --border:rgba(11,28,44,.10);
  --border2:rgba(11,28,44,.16);

  /* Dark panel tokens (hero / AI / dramatic moments) */
  --ink-on-dark:var(--milk);
  --muted-on-dark:rgba(245,241,232,.62);
  --line-on-dark:rgba(245,241,232,.10);
  --bg-dark:var(--navy);
  --bg-dark-2:var(--navy-deep);
  --bg-dark-3:var(--navy-mid);

  /* Legacy aliases → accent (keeps existing template CSS working) */
  --gold:var(--accent);
  --gold-light:var(--accent-soft);
  --gold-dim:rgba(255,90,31,.12);
  --champagne:#C4B8A4;

  /* Status */
  --green:#2F9E6A;
  --red:#E25555;
  --yellow:#D4A017;
  --blue:var(--blue-soft);

  /* Type */
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:'Suisse Intl','Inter',system-ui,-apple-system,sans-serif;

  --ease:cubic-bezier(.22,1,.36,1);
  --max:1200px;
  --maxw:1180px;
  --radius:4px;
  --radius-lg:10px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{
  font-family:var(--sans);
  background:var(--bg);
  color:var(--text);
  line-height:1.45;
}

/* Paper / grain overlay for milky surfaces */
.olk-grain,
body.olk-milk::before{
  pointer-events:none;
}
.olk-grain{
  position:absolute;inset:0;z-index:0;opacity:.07;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
body.olk-milk{
  position:relative;
  background:var(--milk);
}
body.olk-milk::before{
  content:'';position:fixed;inset:0;z-index:0;opacity:.055;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
body.olk-milk > *{position:relative;z-index:1}

/* Watermark disabled — no OK/CK monogram mark */
.olk-watermark::after{display:none}

/* Wordmark — Playfair Display 400–500, tracking ~0.1em, never bold, plain K */
.olk-logo{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;text-decoration:none;color:inherit}
.olk-logo img,.olk-logo svg{display:block;height:1.15em;width:auto}
.olk-logo-tag{
  font-family:var(--sans);font-size:.48rem;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--muted2);
}
.olk-logo--light .olk-logo-tag{color:var(--muted-on-dark)}
.olk-mark{display:inline-block;height:1.35em;width:auto;vertical-align:middle}
.olk-wordmark,
.olk-logo,
.logo,
.nav-logo,
.topbar-logo,
.admin-logo,
.admin-logo-text,
.brand .olk-wordmark,
.entry-splash-brand,
.hero-mark.olk-wordmark{
  font-family:'Playfair Display',Georgia,'Times New Roman',serif!important;
  font-weight:400!important;
  font-style:normal!important;
  letter-spacing:.1em!important;
  text-transform:uppercase;
  line-height:1;
  -webkit-font-smoothing:antialiased;
}
.olk-wordmark span,
.logo span,
.admin-logo span,
.admin-logo-text{font-weight:400!important;letter-spacing:.1em!important}
.olk-wordmark--nav{font-size:1.35rem;font-weight:500!important}
.olk-wordmark--splash{
  font-size:clamp(2.6rem,13vw,5rem);
  font-weight:400!important;
  letter-spacing:.12em!important;
  color:#F5F1E8;
}
.olk-wordmark--hero{
  font-size:clamp(2.8rem,12vw,5.4rem);
  font-weight:400!important;
  letter-spacing:.12em!important;
  color:#F5F1E8;
  filter:drop-shadow(0 24px 80px rgba(0,0,0,.45));
}
.olk-wordmark--dark{color:#0B1C2C}
.olk-wordmark--light{color:#F5F1E8}

/* Shared CTA accents */
.olk-btn-accent,
.btn-gold,
.admin-btn-gold{
  background:var(--accent)!important;
  color:#fff!important;
  box-shadow:none!important;
  border:none;
}
.olk-btn-accent:hover,
.btn-gold:hover{background:var(--accent-deep)!important;color:#fff!important}

/* Focus rings */
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Verified OK seal on product photos */
.olkate-seal,.ok-seal{
  position:absolute;bottom:8px;right:8px;z-index:2;
  width:36px;height:36px;padding:0;border:none;background:transparent;
}
.olkate-seal img,.ok-seal img{
  width:100%;height:100%;object-fit:contain;display:block;
  filter:drop-shadow(0 2px 6px rgba(11,28,44,.35));
}
