.elementor-131292 .elementor-element.elementor-element-3ead79e{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-131292 .elementor-element.elementor-element-3ead79e.e-con{--flex-grow:0;--flex-shrink:0;}@media(max-width:1024px) and (min-width:768px){.elementor-131292 .elementor-element.elementor-element-3ead79e{--width:956.167px;}}/* Start custom CSS */#klnov{
  --pine:#0f2a25; --pine-2:#173d35; --ivory:#f6f2ea; --paper:#fffdf8;
  --ink:#16302b; --muted:#566b66; --line:#e2d9c6;
  --gold:#c9a255; --gold-lt:#e6c987; --berry:#b02a30; --berry-lt:#e0575c; --cream:#f3ead2;
  --display:"Marcellus","Iowan Old Style",Georgia,serif;
  --ital:"Cormorant Garamond","Iowan Old Style",Georgia,serif;
  --body:"Karla","Segoe UI",system-ui,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  background:var(--ivory);color:var(--ink);font:400 17px/1.65 var(--body);color-scheme:light;overflow-x:clip
}
#klnov *{box-sizing:border-box}
#klnov img{max-width:100%;height:auto;display:block}
#klnov h1,#klnov h2,#klnov h3{font-family:var(--display);font-weight:400;line-height:1.15;margin:0;text-wrap:balance}
#klnov h2{font-size:clamp(30px,4.4vw,48px)}
#klnov p{margin:0}
#klnov a{color:inherit}
#klnov .kn-wrap{max-width:1120px;margin:0 auto;padding-inline:20px}
#klnov .kn-sec{padding-block:clamp(60px,8vw,104px);position:relative}
#klnov .kn-flush{padding-top:0}
#klnov .kn-divider+.kn-sec{padding-top:28px}
#klnov .kn-head{display:grid;gap:14px;max-width:680px;margin-bottom:42px}
#klnov .kn-head p{color:var(--muted)}
#klnov .kn-dark .kn-head p{color:#d3dbd4}
#klnov .kn-i{font-family:var(--ital);font-style:italic;font-weight:500;color:var(--gold)}

/* eyebrow with berry cluster */
#klnov .kn-eye{display:inline-flex;align-items:center;gap:10px;font:700 12.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:#9a6f1f}
#klnov .kn-dark .kn-eye{color:var(--gold)}
#klnov .kn-eye::before{content:"";width:14px;height:10px;flex:none;background:radial-gradient(circle at 3px 7px,var(--berry) 2.6px,transparent 3px),radial-gradient(circle at 10px 7px,var(--berry-lt) 2.6px,transparent 3px),radial-gradient(circle at 6.5px 3px,#8f1f25 2.6px,transparent 3px)}

/* buttons: gold with a shimmer sweep */
#klnov .kn-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 30px;border-radius:999px;background:var(--gold);color:var(--pine);font:700 15px/1 var(--body);letter-spacing:.04em;text-decoration:none;box-shadow:0 8px 24px -10px rgba(201,162,85,.8);transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
#klnov .kn-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);transform:translateX(-120%);animation:kn-shine 4.5s ease-in-out infinite}
#klnov .kn-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -10px rgba(201,162,85,.95)}
#klnov .kn-btn:focus-visible{outline:3px solid var(--berry-lt);outline-offset:3px}
#klnov .kn-btn.kn-pine{background:var(--pine);color:var(--cream);box-shadow:0 8px 24px -12px rgba(15,42,37,.8)}

/* dark photo bands share one recipe */
#klnov .kn-dark{position:relative;color:#f1ece0;background:var(--pine);isolation:isolate;overflow:hidden}
#klnov .kn-bg{position:absolute;inset:-12% 0;z-index:-2;background:center/cover no-repeat;transform:translate3d(0,var(--py,0),0) scale(1.06)}
#klnov .kn-fixed>.kn-bg{inset:0;transform:none;background-attachment:fixed}
#klnov .kn-dark::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--veil,rgba(10,26,22,.8))}

/* top bar */
#klnov .kn-bar{display:flex;justify-content:center;padding:14px 16px;background:#0b1f1b;box-shadow:inset 0 -2px 0 var(--berry)}
#klnov .kn-bar img{width:200px}

/* hero */
#klnov .kn-hero{--veil:linear-gradient(90deg,rgba(9,30,26,.94),rgba(9,30,26,.74) 46%,rgba(9,30,26,.1));padding-block:clamp(70px,10vw,130px)}
#klnov .kn-hero .kn-bg{animation:kn-drift 24s ease-in-out infinite alternate}
#klnov .kn-hero .kn-wrap{display:grid;gap:22px;position:relative}
#klnov .kn-hero h1{font-size:clamp(56px,10vw,118px)}
#klnov .kn-hero h1 em{font-family:var(--ital);font-weight:500;color:var(--gold);display:inline-block;background:linear-gradient(100deg,var(--gold) 20%,var(--gold-lt) 45%,var(--gold) 70%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:kn-foil 6s linear infinite}
#klnov .kn-sub{font:500 italic clamp(22px,2.6vw,28px)/1.35 var(--ital);max-width:30ch;color:#e9e0c9}
#klnov .kn-lede{max-width:56ch;color:#d7ddd6}
#klnov .kn-ticks{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,max-content);gap:8px 34px}
#klnov .kn-ticks li{display:flex;gap:10px;align-items:center;font-weight:500}
#klnov .kn-ticks li::before,#klnov .kn-list li::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--berry-lt),var(--berry) 60%);box-shadow:0 0 8px rgba(224,87,92,.55)}
#klnov .kn-cta{display:flex;flex-wrap:wrap;align-items:center;gap:22px 28px}
#klnov .kn-seal{width:84px;animation:kn-spin 60s linear infinite}

/* countdown */
#klnov .kn-count{display:flex;gap:10px;font-variant-numeric:tabular-nums}
#klnov .kn-count div{display:grid;justify-items:center;min-width:58px;padding:10px 6px;border:1px solid rgba(201,162,85,.45);border-radius:6px;background:rgba(9,30,26,.55);backdrop-filter:blur(4px)}
#klnov .kn-count b{font:400 26px/1 var(--display);color:var(--cream)}
#klnov .kn-count span{font:700 10px/1.6 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
#klnov .kn-note{font-size:14px;color:#c7d0c8}

/* hero lights */
#klnov .kn-lights{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}

/* cards */
#klnov .kn-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#klnov .kn-card{background:var(--paper);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:6px;padding:26px;display:grid;gap:10px;align-content:start;min-width:0;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
#klnov .kn-card:nth-child(3n+2){border-top-color:var(--berry)}
#klnov .kn-card:hover{transform:translateY(-6px);box-shadow:0 22px 40px -24px rgba(15,42,37,.45)}
#klnov .kn-card h3{font-size:21px}
#klnov .kn-card p{color:var(--muted);font-size:16px}

/* wednesday steps */
#klnov .kn-wed{--veil:rgba(12,24,18,.82)}
#klnov .kn-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;background:rgba(201,162,85,.35);border:1px solid rgba(201,162,85,.35)}
#klnov .kn-step{background:rgba(14,32,26,.9);padding:30px;display:grid;gap:12px;align-content:start;min-width:0;transition:background .4s}
#klnov .kn-step:hover{background:rgba(23,61,53,.95)}
#klnov .kn-step i{font:normal 400 14px/1 var(--display);letter-spacing:.12em;color:var(--berry-lt)}
#klnov .kn-step h3{font-size:22px}
#klnov .kn-step p{color:#cfd7d0;font-size:16px}

/* events */
#klnov .kn-events{display:grid;gap:22px}
#klnov .kn-ev{display:grid;grid-template-columns:5fr 7fr;background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
#klnov .kn-ev:nth-child(even){grid-template-columns:7fr 5fr}
#klnov .kn-ev:nth-child(even) .kn-ph{order:2}
#klnov .kn-ev:hover{transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(15,42,37,.55)}
#klnov .kn-ph{overflow:hidden;min-height:250px;background:var(--pine)}
#klnov .kn-ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
#klnov .kn-ev:hover .kn-ph img{transform:scale(1.07)}
#klnov .kn-tx{padding:30px 32px;display:grid;gap:12px;align-content:center;min-width:0}
#klnov .kn-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font:500 14px/1.3 var(--body);color:var(--muted)}
#klnov .kn-num{font:400 15px/1 var(--display);letter-spacing:.14em;color:var(--berry)}
#klnov .kn-ev h3{font-size:clamp(26px,3vw,32px)}
#klnov .kn-subt{font:500 italic 20px/1.3 var(--ital)}
#klnov .kn-badge{font:700 11.5px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;padding:7px 10px;border-radius:3px;background:#ece2c8}
#klnov .kn-big{border:1px solid var(--berry);box-shadow:0 0 0 3px rgba(176,42,48,.14)}
#klnov .kn-big .kn-badge{background:var(--berry);color:#fff5ea}
#klnov .kn-works{font-size:16px;color:var(--muted)}
#klnov .kn-works b{color:var(--ink)}
#klnov .kn-gift{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding-top:12px;border-top:1px dashed var(--line);font-size:15px;color:var(--muted)}
#klnov .kn-gift::before{content:"";width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--berry-lt),var(--berry) 60%)}
#klnov .kn-gift b{font:500 italic 19px/1.2 var(--ital);color:var(--berry)}
#klnov .kn-gift span{font-size:14px;letter-spacing:.02em}

/* seal divider */
#klnov .kn-divider{display:flex;align-items:center;justify-content:center;gap:18px;padding-block:8px}
#klnov .kn-divider::before,#klnov .kn-divider::after{content:"";height:1px;width:min(28vw,220px);background:linear-gradient(90deg,transparent,var(--gold))}
#klnov .kn-divider::after{transform:scaleX(-1)}
#klnov .kn-divider img{width:72px;animation:kn-spin 60s linear infinite}

/* week strip */
#klnov .kn-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:6px;overflow:hidden;background:var(--paper)}
#klnov .kn-day{padding:20px 14px;border-left:1px solid var(--line);display:grid;gap:8px;align-content:start;min-width:0;font-size:14.5px;line-height:1.45}
#klnov .kn-day:first-child{border-left:0}
#klnov .kn-day b{font:400 15px/1 var(--display);letter-spacing:.14em;color:#9a6f1f}
#klnov .kn-live{background:var(--pine);color:#f1ece0;box-shadow:inset 0 3px 0 var(--berry);animation:kn-glow 3s ease-in-out infinite}
#klnov .kn-live b{color:var(--gold)}

/* ken quote on peony */
#klnov .kn-quote{--veil:linear-gradient(90deg,rgba(28,6,10,.9),rgba(28,6,10,.66))}
#klnov .kn-quote .kn-wrap{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:clamp(30px,5vw,64px);align-items:center}
#klnov .kn-said{display:grid;gap:22px;min-width:0}
#klnov .kn-ken{margin:0;position:relative;border-radius:200px 200px 8px 8px;overflow:hidden;border:2px solid var(--gold);box-shadow:0 0 0 8px rgba(201,162,85,.14),0 30px 60px -30px rgba(0,0,0,.8)}
#klnov .kn-ken img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
#klnov blockquote{margin:0;font:500 italic clamp(24px,3vw,33px)/1.4 var(--ital);color:#f6e9e0}
#klnov cite{font:700 13px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;font-style:normal;color:var(--gold)}

/* bio + stats */
#klnov .kn-bio{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center}
#klnov .kn-bio p{color:var(--muted)}
#klnov .kn-bio .kn-head{margin:0}
#klnov .kn-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
#klnov .kn-stat{border-top:2px solid var(--gold);padding-top:14px;display:grid;gap:6px;min-width:0}
#klnov .kn-stat:nth-child(even){border-top-color:var(--berry)}
#klnov .kn-stat strong{font:400 clamp(30px,4vw,42px)/1 var(--display);font-variant-numeric:tabular-nums}
#klnov .kn-stat span{font-size:15px;color:var(--muted)}

/* for you if: peony band with frosted cards */
#klnov .kn-for{--veil:linear-gradient(180deg,rgba(26,8,12,.62),rgba(26,8,12,.82))}
#klnov .kn-for .kn-card{background:rgba(255,250,244,.1);border-color:rgba(255,255,255,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#f6ece4}
#klnov .kn-for .kn-card h3{font:600 italic 26px/1.2 var(--ital);color:#fff4ea}
#klnov .kn-for .kn-card p{color:#ecdcd4}

/* pricing */
#klnov .kn-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#klnov .kn-price{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:30px;display:grid;gap:16px;grid-template-rows:auto auto 1fr auto;min-width:0;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
#klnov .kn-price:hover{transform:translateY(-6px);box-shadow:0 26px 46px -26px rgba(15,42,37,.5)}
#klnov .kn-feat{border:2px solid var(--gold);border-top:6px solid var(--berry)}
#klnov .kn-amt{font:400 52px/1 var(--display)}
#klnov .kn-amt small{font:500 16px/1 var(--body);color:var(--muted)}
#klnov .kn-list{list-style:none;padding:0;margin:0;display:grid;gap:9px;align-content:start}
#klnov .kn-list li{display:flex;gap:10px;align-items:baseline;font-size:15.5px}
#klnov .kn-list li::before{width:7px;height:7px;box-shadow:none;transform:translateY(-1px)}
#klnov .kn-q4{position:relative;isolation:isolate;overflow:hidden;color:var(--cream);border:0;grid-template-rows:auto 1fr auto;background:var(--pine)}
#klnov .kn-q4 .kn-bg{inset:0;transform:none}
#klnov .kn-q4::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,26,24,.8),rgba(8,26,24,.94))}
#klnov .kn-q4 .kn-eye{color:var(--gold)}
#klnov .kn-q4 h3{font-size:28px}
#klnov .kn-q4 p{color:#d6dccf}

/* testimonials */
#klnov .kn-test{display:grid;gap:14px;align-content:start;padding:26px;background:var(--paper);border-left:2px solid var(--berry);min-width:0}
#klnov .kn-stars{color:var(--gold);letter-spacing:3px}
#klnov .kn-test q{font:500 italic 22px/1.4 var(--ital)}
#klnov .kn-test span{font-size:14px;color:var(--muted)}

/* faq accordion */
#klnov .kn-faq{border-top:1px solid var(--line);max-width:820px}
#klnov details{border-bottom:1px solid var(--line)}
#klnov summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding-block:22px;font:400 21px/1.35 var(--display);transition:color .3s}
#klnov summary:hover{color:var(--berry)}
#klnov summary::-webkit-details-marker{display:none}
#klnov summary::after{content:"+";flex:none;color:var(--berry);font:400 26px/1 var(--body);transition:transform .35s var(--ease)}
#klnov details[open] summary::after{transform:rotate(45deg)}
#klnov summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
#klnov details p{padding-bottom:22px;color:var(--muted);max-width:68ch;animation:kn-open .45s var(--ease)}

/* close */
#klnov .kn-close{--veil:radial-gradient(ellipse at center,rgba(10,28,22,.7),rgba(10,28,22,.9));text-align:center;padding-block:clamp(90px,12vw,150px)}
#klnov .kn-close .kn-wrap{display:grid;gap:22px;justify-items:center;position:relative}
#klnov .kn-close h2{font-size:clamp(38px,6vw,68px)}
#klnov .kn-close .kn-lede{font:500 italic 25px/1.35 var(--ital);color:#e9e0c9}
#klnov .kn-close .kn-seal{width:92px}

/* footer */
#klnov .kn-foot{padding-block:48px 120px;border-top:1px solid var(--line);color:var(--muted);font-size:14px}
#klnov .kn-foot .kn-wrap{display:grid;gap:18px}
#klnov .kn-brand{display:flex;align-items:center;gap:16px}
#klnov .kn-brand img:first-child{width:56px}
#klnov .kn-brand img:last-child{width:190px}
#klnov .kn-foot nav{display:flex;flex-wrap:wrap;gap:8px 22px}
#klnov .kn-foot a{color:var(--ink);text-decoration:none}

/* sticky bar slides up once the hero is gone */
#klnov .kn-sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 20px;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:var(--pine);color:#f1ece0;box-shadow:inset 0 3px 0 var(--berry);transform:translateY(110%);transition:transform .5s var(--ease)}
#klnov .kn-sticky.is-on{transform:none}
#klnov .kn-sticky .kn-btn{padding:12px 22px}

/* scroll reveal: script adds .kn-rv to below-the-fold .kn-r blocks and .kn-stagger children */
#klnov .kn-rv{opacity:0;transform:translateY(30px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--d,0s)}
#klnov .kn-rv.is-in{opacity:1;transform:none}
#klnov .kn-hero .kn-wrap>*{animation:kn-rise 1s var(--ease) both}
#klnov .kn-hero .kn-wrap>:nth-child(2){animation-delay:.1s}
#klnov .kn-hero .kn-wrap>:nth-child(3){animation-delay:.2s}
#klnov .kn-hero .kn-wrap>:nth-child(4){animation-delay:.3s}
#klnov .kn-hero .kn-wrap>:nth-child(5){animation-delay:.4s}
#klnov .kn-hero .kn-wrap>:nth-child(6){animation-delay:.5s}
#klnov .kn-hero .kn-wrap>:nth-child(7){animation-delay:.6s}

@keyframes kn-rise{from{opacity:0;transform:translateY(24px)}}
@keyframes kn-drift{to{transform:translate3d(0,0,0) scale(1.14)}}
@keyframes kn-foil{to{background-position:-220% 0}}
@keyframes kn-shine{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
@keyframes kn-spin{to{transform:rotate(360deg)}}
@keyframes kn-glow{50%{box-shadow:inset 0 3px 0 var(--berry),0 0 26px rgba(201,162,85,.45)}}
@keyframes kn-open{from{opacity:0;transform:translateY(-6px)}}

@media (max-width:900px){
  #klnov .kn-grid,#klnov .kn-prices{grid-template-columns:repeat(2,minmax(0,1fr))}
  #klnov .kn-bio,#klnov .kn-quote .kn-wrap{grid-template-columns:1fr;gap:30px}
  #klnov .kn-ken{max-width:300px}
  #klnov .kn-week{grid-template-columns:repeat(4,minmax(0,1fr))}
  #klnov .kn-day:nth-child(5){border-left:0}
  #klnov .kn-day:nth-child(n+5){border-top:1px solid var(--line)}
}
@media (max-width:760px){
  #klnov .kn-steps,#klnov .kn-ev,#klnov .kn-ev:nth-child(even){grid-template-columns:1fr}
  #klnov .kn-ev:nth-child(even) .kn-ph{order:0}
  #klnov .kn-ph{min-height:200px;max-height:240px}
}
@media (max-width:600px){
  #klnov .kn-grid,#klnov .kn-prices,#klnov .kn-ticks{grid-template-columns:1fr}
  #klnov .kn-count div{min-width:0;flex:1}
}
@media (prefers-reduced-motion:reduce){
  #klnov *,#klnov *::before,#klnov *::after{animation:none!important;transition:none!important}
  #klnov .kn-rv{opacity:1;transform:none}
}


#klnov .kn-prices .kn-price,
#klnov .kn-card,
#klnov .kn-step {
    transition: .3s ease-in-out;
}

#klnov .kn-dark  h1,
#klnov .kn-dark  h2,
#klnov .kn-dark  h3,
#klnov .kn-q4 h3 {
    color: #f6f2ea!important;
}/* End custom CSS */