/*
Theme Name: Kosher Shalom Light
Theme URI: https://www.kehilaprag.cz/
Author: ChatGPT pro ŽOP
Author URI: https://openai.com/
Description: Světlejší elegantní bloková WordPress šablona pro košer restauraci Kosher Shalom v budově Židovské radnice v Maiselově ulici.
Version: 1.0.0
Requires at least: 6.6
Tested up to: 6.9
Requires PHP: 8.0
Text Domain: kosher-shalom-light
Tags: full-site-editing, block-patterns, restaurant, custom-colors, custom-logo
*/

:root{
  --ks-navy:#041728;
  --ks-navy-2:#08233c;
  --ks-gold:#c18a3b;
  --ks-gold-soft:#e5bd74;
  --ks-ivory:#fff3df;
  --ks-paper:#f4ead7;
  --ks-muted:#d8c5a8;
  --ks-border:rgba(193,138,59,.72);
}

html{scroll-behavior:smooth;}
body{
  background: radial-gradient(circle at top, #123657 0, var(--ks-navy) 38rem, #020c16 100%);
}

a{text-decoration-thickness:1px;text-underline-offset:.22em;}
.wp-site-blocks{overflow:hidden;}

.ks-shell{
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
  padding-left:clamp(18px,4vw,44px);
  padding-right:clamp(18px,4vw,44px);
}

.ks-header{
  position:absolute;
  z-index:20;
  top:24px;
  left:50%;
  transform:translateX(-50%);
  width:min(1080px,calc(100% - 48px));
  box-sizing:border-box;
  border:1px solid var(--ks-border);
  border-radius:22px;
  background:rgba(3,18,34,.74);
  backdrop-filter:blur(12px);
  box-shadow:0 18px 55px rgba(0,0,0,.35);
}

.ks-header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:16px 32px;
}

.ks-brand{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:265px;
}

.ks-logo{
  width:72px;
  height:72px;
  object-fit:contain;
  border-radius:50%;
  background:#fff;
  padding:4px;
  box-shadow:0 0 0 1px rgba(255,255,255,.2);
}

.ks-brand-text{
  border-left:1px solid rgba(193,138,59,.55);
  padding-left:18px;
  line-height:1.05;
}

.ks-brand-name{
  display:block;
  color:var(--ks-gold-soft);
  font-family:Georgia, 'Times New Roman', serif;
  font-size:clamp(1.35rem,2vw,1.75rem);
  font-weight:700;
}

.ks-brand-sub{
  display:block;
  color:var(--ks-ivory);
  font-size:.72rem;
  letter-spacing:.19em;
  text-transform:uppercase;
  margin-top:5px;
}

.ks-nav{
  display:flex;
  align-items:center;
  gap:clamp(16px,2.3vw,34px);
  white-space:nowrap;
  font-size:.98rem;
}

.ks-nav a{
  color:var(--ks-ivory);
  text-decoration:none;
  position:relative;
  padding:8px 0;
}

.ks-nav a:hover,.ks-nav a[aria-current="page"]{color:var(--ks-gold-soft);}
.ks-nav a:first-child::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:2px;
  height:2px;
  background:var(--ks-gold);
}

.ks-menorah{color:var(--ks-gold-soft);font-size:2rem;line-height:1;}

.ks-hero{
  position:relative;
  min-height:720px;
  display:flex;
  align-items:center;
  background-image:
    linear-gradient(90deg, rgba(2,12,23,.97) 0%, rgba(2,12,23,.88) 27%, rgba(2,12,23,.42) 55%, rgba(2,12,23,.26) 100%),
    linear-gradient(0deg, rgba(2,12,23,.94) 0%, rgba(2,12,23,.05) 42%),
    var(--hero-image);
  background-size:cover;
  background-position:center center;
  padding-top:145px;
  padding-bottom:96px;
}

.ks-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 34%, rgba(193,138,59,.14), transparent 24rem),
    radial-gradient(circle at 74% 16%, rgba(255,235,190,.12), transparent 26rem);
  pointer-events:none;
}

.ks-hero-content{
  position:relative;
  z-index:2;
  max-width:1180px;
  margin:0 auto;
  width:100%;
  padding-left:clamp(24px,5vw,68px);
  padding-right:clamp(24px,5vw,68px);
  box-sizing:border-box;
}

.ks-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:linear-gradient(135deg, rgba(122,83,36,.95), rgba(82,54,24,.88));
  color:#f7d38b;
  border:1px solid rgba(193,138,59,.62);
  border-radius:8px;
  padding:11px 18px;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 18px 45px rgba(0,0,0,.25);
}

.ks-hero-title{
  color:var(--ks-ivory);
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(3.4rem,7vw,6.15rem);
  line-height:.98;
  letter-spacing:-.045em;
  margin:28px 0 22px;
  max-width:780px;
  text-shadow:0 10px 28px rgba(0,0,0,.6);
}

.ks-deco{
  display:flex;
  align-items:center;
  gap:18px;
  color:var(--ks-gold-soft);
  margin:0 0 26px;
}

.ks-deco::before,.ks-deco::after{
  content:"";
  width:132px;
  height:2px;
  background:linear-gradient(90deg, transparent, var(--ks-gold), transparent);
}
.ks-deco::before{background:linear-gradient(90deg, var(--ks-gold), transparent);}

.ks-hero-copy{
  max-width:560px;
  color:var(--ks-ivory);
  font-size:clamp(1.05rem,1.5vw,1.34rem);
  line-height:1.55;
  margin-bottom:28px;
}

.ks-buttons{display:flex;gap:18px;flex-wrap:wrap;}
.ks-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:160px;
  padding:15px 24px;
  border-radius:9px;
  border:1px solid var(--ks-gold);
  text-decoration:none;
  font-weight:700;
  box-shadow:0 14px 32px rgba(0,0,0,.25);
}
.ks-btn-primary{background:linear-gradient(180deg,#d6a24c,#a46d27);color:#fffaf0;}
.ks-btn-secondary{background:rgba(4,23,40,.6);color:#fffaf0;}

.ks-main-overlap{
  position:relative;
  margin-top:-76px;
  z-index:5;
}

.ks-feature-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-bottom:22px;
}

.ks-feature-card{
  background:linear-gradient(180deg,rgba(7,32,55,.96),rgba(3,18,34,.98));
  border:1px solid var(--ks-border);
  border-radius:11px;
  padding:22px 20px;
  display:flex;
  gap:16px;
  align-items:center;
  min-height:98px;
  box-shadow:0 18px 45px rgba(0,0,0,.28);
}

.ks-icon{
  width:58px;height:58px;
  min-width:58px;
  border:1px solid var(--ks-gold);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--ks-gold-soft);
  font-size:1.75rem;
}

.ks-feature-title{
  color:var(--ks-gold-soft);
  font-family:Georgia,'Times New Roman',serif;
  font-size:1.14rem;
  font-weight:700;
  margin:0 0 5px;
}

.ks-feature-text{color:var(--ks-ivory);font-size:.9rem;line-height:1.35;margin:0;}

.ks-content-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.ks-panel{
  background:linear-gradient(180deg,rgba(253,245,229,.96),rgba(237,221,194,.96));
  border:1px solid rgba(193,138,59,.55);
  border-radius:10px;
  padding:28px;
  color:#241a12;
  box-shadow:0 22px 48px rgba(0,0,0,.28);
}

.ks-section-title{
  text-align:center;
  color:#281c12;
  font-family:Georgia,'Times New Roman',serif;
  letter-spacing:.08em;
  font-size:1.18rem;
  text-transform:uppercase;
  margin:0 0 22px;
}

.ks-section-title::before,.ks-section-title::after{
  content:"";
  display:inline-block;
  vertical-align:middle;
  width:58px;
  height:1px;
  margin:0 16px;
  background:var(--ks-gold);
}

.ks-menu-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}

.ks-dish{
  background:rgba(255,255,255,.42);
  border:1px solid rgba(122,83,36,.35);
  border-radius:7px;
  overflow:hidden;
  box-shadow:0 8px 18px rgba(70,45,20,.12);
}

.ks-dish-img{
  height:105px;
  background:linear-gradient(135deg,#e9c27c,#8b4c2d);
  position:relative;
  overflow:hidden;
}
.ks-dish-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 40%, rgba(255,255,255,.48), transparent 35%), linear-gradient(135deg, rgba(80,33,20,.35), rgba(255,220,150,.15));
}
.ks-dish-img.soup{background:radial-gradient(circle at 50% 50%, #f3d98e 0 22%, #9a6b30 23% 34%, #e5b86f 35% 55%, #6c4a22 56%);}
.ks-dish-img.meat{background:linear-gradient(135deg,#623321 0 30%,#b86a31 31% 45%,#412418 46% 70%,#d78b38 71%);}
.ks-dish-img.cake{background:linear-gradient(135deg,#f4e0bf 0 45%,#9b2f25 46% 62%,#eee0ce 63%);}

.ks-dish-body{padding:13px;}
.ks-dish-title{font-family:Georgia,'Times New Roman',serif;font-weight:700;margin:0 0 6px;color:#23180f;}
.ks-dish-text{font-size:.82rem;line-height:1.3;margin:0 0 8px;color:#422d1b;}
.ks-price{color:#9d651f;font-weight:700;}

.ks-small-button{
  display:block;
  width:max-content;
  margin:18px auto 0;
  padding:9px 18px;
  border:1px solid rgba(122,83,36,.45);
  border-radius:7px;
  color:#6e4318;
  text-decoration:none;
  font-weight:700;
  background:rgba(255,255,255,.28);
}

.ks-shabbat{
  position:relative;
  overflow:hidden;
  min-height:280px;
  display:grid;
  grid-template-columns:1.12fr .88fr;
  align-items:center;
}

.ks-shabbat-art{
  height:100%;
  min-height:230px;
  background:
    radial-gradient(circle at 50% 20%, rgba(255,250,220,.75), transparent 18%),
    linear-gradient(90deg, transparent 0 26%, rgba(163,103,35,.15) 27%),
    url('assets/hero-radnice.jpg');
  background-size:cover;
  background-position:center;
  opacity:.72;
  border-radius:8px;
  position:relative;
}
.ks-shabbat-art::before{
  content:"🕯️ 🕯️";
  position:absolute;
  top:28px;
  left:42%;
  font-size:3rem;
  filter:drop-shadow(0 10px 12px rgba(0,0,0,.25));
}
.ks-shabbat-art::after{
  content:"חלה";
  position:absolute;
  bottom:22px;
  left:26%;
  color:#704415;
  font-family:Georgia,serif;
  font-size:3.6rem;
  opacity:.45;
}

.ks-contact-strip{
  margin:20px 0 0;
  background:linear-gradient(180deg,rgba(7,32,55,.96),rgba(3,18,34,.98));
  border:1px solid var(--ks-border);
  border-radius:11px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  color:var(--ks-ivory);
  box-shadow:0 18px 45px rgba(0,0,0,.25);
}

.ks-contact-item{
  padding:24px 28px;
  display:flex;
  gap:18px;
  align-items:center;
}
.ks-contact-item + .ks-contact-item{border-left:1px solid rgba(193,138,59,.45);}
.ks-contact-title{font-family:Georgia,'Times New Roman',serif;color:var(--ks-ivory);font-weight:700;margin:0 0 4px;}
.ks-contact-text{color:var(--ks-muted);margin:0;font-size:.92rem;line-height:1.35;}

.ks-footer{
  margin-top:28px;
  background:#031221;
  border-top:1px solid rgba(193,138,59,.52);
  color:var(--ks-muted);
  padding:38px 0 18px;
}

.ks-footer-grid{
  display:grid;
  grid-template-columns:1.25fr .9fr .9fr 1.35fr;
  gap:34px;
  align-items:start;
}

.ks-footer-logo{display:flex;gap:14px;align-items:center;margin-bottom:14px;}
.ks-footer-logo img{width:72px;height:72px;object-fit:contain;border-radius:50%;background:#fff;padding:3px;}
.ks-footer h3{color:var(--ks-ivory);font-family:Georgia,'Times New Roman',serif;font-size:1rem;margin:0 0 14px;}
.ks-footer a{display:block;color:var(--ks-muted);text-decoration:none;margin:0 0 8px;}
.ks-footer a:hover{color:var(--ks-gold-soft);}
.ks-social{display:flex;gap:12px;margin-top:12px;}
.ks-social span{width:34px;height:34px;border:1px solid var(--ks-gold);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ks-gold-soft);}
.ks-lineart{color:rgba(193,138,59,.75);font-family:Georgia,serif;font-size:4rem;line-height:1;margin-top:20px;letter-spacing:.03em;}
.ks-copy{text-align:center;border-top:1px solid rgba(193,138,59,.22);margin-top:28px;padding-top:18px;font-size:.82rem;}

@media (max-width: 980px){
  .ks-header{position:relative;top:auto;left:auto;transform:none;width:auto;margin:16px 16px 0;}
  .ks-header-inner{flex-wrap:wrap;justify-content:center;padding:16px;}
  .ks-brand{min-width:0;}
  .ks-nav{justify-content:center;flex-wrap:wrap;}
  .ks-hero{padding-top:52px;min-height:620px;}
  .ks-feature-grid{grid-template-columns:repeat(2,1fr);}
  .ks-content-grid{grid-template-columns:1fr;}
  .ks-contact-strip{grid-template-columns:1fr;}
  .ks-contact-item + .ks-contact-item{border-left:0;border-top:1px solid rgba(193,138,59,.45);}
  .ks-footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width: 640px){
  .ks-brand{flex-direction:column;text-align:center;gap:8px;}
  .ks-brand-text{border-left:0;padding-left:0;}
  .ks-logo{width:86px;height:86px;}
  .ks-hero-title{font-size:3.1rem;}
  .ks-deco::before,.ks-deco::after{width:70px;}
  .ks-feature-grid{grid-template-columns:1fr;}
  .ks-menu-cards{grid-template-columns:1fr;}
  .ks-shabbat{grid-template-columns:1fr;}
  .ks-footer-grid{grid-template-columns:1fr;}
}


/* ===== Kosher Shalom Light variant ===== */

:root{
  --ks-navy:#12304a;
  --ks-navy-2:#1f4565;
  --ks-gold:#b67a2b;
  --ks-gold-soft:#c89345;
  --ks-ivory:#fff8ed;
  --ks-paper:#fbf2e2;
  --ks-muted:#6e5940;
  --ks-border:rgba(182,122,43,.50);
}

body{
  background:
    radial-gradient(circle at top left, rgba(255,244,222,.95) 0, rgba(246,232,204,.92) 28rem, transparent 48rem),
    linear-gradient(180deg,#f8efe0 0%,#eee0c8 44%,#f8efe8 100%);
  color:#24180f;
}

.ks-header{
  background:rgba(255,248,237,.82);
  border-color:rgba(182,122,43,.58);
  box-shadow:0 20px 50px rgba(72,44,18,.18);
}

.ks-brand-text{
  border-left-color:rgba(182,122,43,.45);
}

.ks-brand-name{
  color:#8a541d;
}

.ks-brand-sub{
  color:#1c3146;
}

.ks-nav a{
  color:#1c3146;
  font-weight:650;
}

.ks-nav a:hover,
.ks-nav a[aria-current="page"]{
  color:#9d651f;
}

.ks-nav a:first-child::after{
  background:#b67a2b;
}

.ks-menorah{
  color:#a66b23;
}

.ks-hero{
  min-height:710px;
  background-image:
    linear-gradient(90deg, rgba(255,248,237,.95) 0%, rgba(255,248,237,.82) 27%, rgba(255,248,237,.26) 52%, rgba(255,248,237,.08) 100%),
    linear-gradient(0deg, rgba(248,239,224,.95) 0%, rgba(248,239,224,.08) 34%),
    var(--hero-image);
}

.ks-hero::after{
  background:
    radial-gradient(circle at 12% 34%, rgba(182,122,43,.23), transparent 24rem),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.28), transparent 28rem);
}

.ks-badge{
  background:linear-gradient(135deg, rgba(255,250,239,.92), rgba(232,207,166,.92));
  color:#7b4b19;
  border-color:rgba(182,122,43,.54);
  box-shadow:0 16px 36px rgba(80,45,18,.14);
}

.ks-hero-title{
  color:#172c41;
  text-shadow:0 6px 20px rgba(255,255,255,.65);
}

.ks-deco{
  color:#a76b25;
}

.ks-deco::before,
.ks-deco::after{
  background:linear-gradient(90deg, transparent, #b67a2b, transparent);
}

.ks-deco::before{
  background:linear-gradient(90deg, #b67a2b, transparent);
}

.ks-hero-copy{
  color:#2b3e4f;
  text-shadow:0 2px 8px rgba(255,255,255,.65);
  font-weight:500;
}

.ks-btn{
  box-shadow:0 14px 32px rgba(80,45,18,.18);
}

.ks-btn-primary{
  background:linear-gradient(180deg,#d8a954,#a86a20);
  color:#fffaf0;
}

.ks-btn-secondary{
  background:rgba(255,248,237,.72);
  color:#17324a;
}

.ks-main-overlap{
  margin-top:-68px;
}

.ks-feature-card{
  background:linear-gradient(180deg,rgba(255,249,238,.96),rgba(239,222,190,.96));
  border-color:rgba(182,122,43,.48);
  box-shadow:0 18px 42px rgba(92,57,22,.16);
}

.ks-icon{
  border-color:#b67a2b;
  color:#a66b23;
  background:rgba(255,255,255,.42);
}

.ks-feature-title{
  color:#7c4b18;
}

.ks-feature-text{
  color:#354858;
}

.ks-panel{
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.55), transparent 18rem),
    linear-gradient(180deg,rgba(255,250,240,.98),rgba(240,224,195,.98));
  box-shadow:0 22px 48px rgba(92,57,22,.16);
}

.ks-contact-strip{
  background:linear-gradient(180deg,rgba(255,249,238,.96),rgba(236,217,183,.96));
  color:#1c3146;
  border-color:rgba(182,122,43,.48);
  box-shadow:0 18px 42px rgba(92,57,22,.16);
}

.ks-contact-item + .ks-contact-item{
  border-left-color:rgba(182,122,43,.36);
}

.ks-contact-title{
  color:#172c41;
}

.ks-contact-text{
  color:#5d4933;
}

.ks-footer{
  background:
    radial-gradient(circle at right bottom, rgba(182,122,43,.14), transparent 26rem),
    linear-gradient(180deg,#17334c,#0f263b);
  border-top-color:rgba(182,122,43,.55);
  color:#eadbc4;
}

.ks-footer h3{
  color:#fff8ed;
}

.ks-footer a{
  color:#eadbc4;
}

.ks-footer a:hover{
  color:#f0c984;
}

.ks-copy{
  border-top-color:rgba(240,201,132,.22);
  color:#d8c5a8;
}

@media (max-width: 980px){
  .ks-header{
    background:rgba(255,248,237,.93);
  }
}
