:root{
  --ink:#2d3f5d;
  --dock-h:108px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overscroll-behavior-y:contain}
body{
  margin:0;
  min-height:100svh;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,#f8fbff 0%,#e6f0ff 35%,#d6e5ff 72%,#c9dcff 100%);
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 16% 8%, rgba(255,255,255,.86), transparent 18%),
    radial-gradient(circle at 82% 18%, rgba(188,217,255,.72), transparent 24%),
    radial-gradient(circle at 50% 58%, rgba(255,255,255,.38), transparent 35%);
}
.ambient{position:fixed;border-radius:50%;filter:blur(36px);pointer-events:none;opacity:.72}
.ambient-a{width:34vw;height:34vw;left:-8vw;top:20vh;background:radial-gradient(circle,rgba(255,255,255,.9),rgba(255,255,255,0))}
.ambient-b{width:44vw;height:44vw;right:-12vw;top:12vh;background:radial-gradient(circle,rgba(180,213,255,.72),rgba(180,213,255,0))}
.ambient-c{width:58vw;height:58vw;left:22vw;bottom:-26vw;background:radial-gradient(circle,rgba(206,227,255,.8),rgba(206,227,255,0))}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font:inherit;-webkit-tap-highlight-color:transparent}
.restaurant-header{
  position:fixed;left:calc(14px + env(safe-area-inset-left));right:calc(14px + env(safe-area-inset-right));top:calc(14px + env(safe-area-inset-top));
  z-index:80;display:flex;align-items:center;justify-content:space-between;pointer-events:none;
}
.orb,.header-pill{pointer-events:auto}
.orb{display:flex;align-items:center;justify-content:center;width:72px;height:72px}
.orb img{width:64px;height:64px;filter:drop-shadow(0 16px 26px rgba(64,103,172,.22));animation:floatLogo 5.5s ease-in-out infinite}
@keyframes floatLogo{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
.header-pill{position:relative;width:min(318px,50vw);min-width:188px}
.header-pill img{width:100%;filter:drop-shadow(0 18px 30px rgba(70,110,178,.16))}
.header-pill span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:white;font-weight:900;font-size:clamp(11.5px,1.2vw,16px);letter-spacing:-.03em}

.restaurant-shell{
  position:relative;z-index:5;width:min(1180px,100%);margin:0 auto;padding:112px 18px 132px;
}
.kicker{margin:0 0 10px;font-size:12px;font-weight:900;letter-spacing:.24em;color:#7286a4;text-transform:uppercase}
.hero-section{
  display:grid;grid-template-columns:1.06fr minmax(260px,.94fr);gap:22px;align-items:center;min-height:76svh;
}
h1{
  margin:0;max-width:770px;color:#2e405f;font-size:clamp(3.2rem,7.2vw,6.6rem);line-height:.88;font-weight:900;letter-spacing:-.08em;text-wrap:balance;
}
.hero-sub{
  margin:16px 0 0;max-width:560px;color:#526784;font-size:clamp(1rem,1.6vw,1.24rem);line-height:1.28;font-weight:800;letter-spacing:-.035em;
}
.kora-hero{
  border:0;background:transparent;padding:0;position:relative;justify-self:center;width:min(82vw,420px,46svh);aspect-ratio:1/1.28;cursor:pointer;
  filter:drop-shadow(0 26px 40px rgba(43,70,116,.15));
}
.kora-pose{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transform:translateY(10px) scale(.99);
  transition:opacity .6s cubic-bezier(.2,.7,.2,1), transform .6s cubic-bezier(.2,.7,.2,1);
}
.kora-pose.active{opacity:1;transform:translateY(0) scale(1);animation:breathe 6.6s ease-in-out infinite}
@keyframes breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-7px) scale(1.004)}}
.cap-strip{
  display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;
}
.cap-item{
  display:flex;align-items:center;gap:8px;min-height:54px;padding:10px 16px;border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.018));
  backdrop-filter:blur(54px) saturate(245%) brightness(1.16);-webkit-backdrop-filter:blur(54px) saturate(245%) brightness(1.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74),inset 0 -1px 0 rgba(255,255,255,.07),0 18px 40px rgba(72,110,178,.08);
  color:#3f5673;font-size:14px;font-weight:900;letter-spacing:-.04em;
}
.cap-item img{width:48px;height:48px}
.hero-actions{display:flex;align-items:center;gap:14px;margin-top:22px}
.hero-cta,.flow-cta,.close-cta{
  position:relative;display:block;width:min(370px,70vw);min-width:240px;transition:transform .22s ease, filter .22s ease;
}
.hero-cta:hover,.flow-cta:hover,.close-cta:hover,
.hero-cta:active,.flow-cta:active,.close-cta:active{transform:translateY(-2px);filter:saturate(1.06)}
.hero-cta img,.flow-cta img,.close-cta img{width:100%;filter:drop-shadow(0 18px 30px rgba(70,110,178,.16))}
.hero-cta span,.flow-cta span,.close-cta span{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:white;font-size:clamp(14px,2vw,18px);font-weight:900;letter-spacing:-.04em;
}
.hero-arrow,.round-action{
  display:flex;align-items:center;justify-content:center;border:0;background:transparent;padding:0;width:96px;height:96px;cursor:pointer;
  transition:transform .22s ease, filter .22s ease;
}
.hero-arrow:hover,.round-action:hover,.hero-arrow:active,.round-action:active{transform:translateY(-3px) scale(1.04);filter:saturate(1.08)}
.hero-arrow img,.round-action img{width:96px;height:96px;filter:drop-shadow(0 18px 30px rgba(72,110,178,.16));animation:arrowPulse 2.8s ease-in-out infinite}
@keyframes arrowPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

.flow-section,.benefit-section,.close-section{margin-top:34px}
.section-copy{max-width:760px;margin-bottom:16px}
.section-copy h2{
  margin:0;color:#2e405f;font-size:clamp(2rem,4.4vw,4.2rem);line-height:.92;font-weight:900;letter-spacing:-.075em;text-wrap:balance;
}
.section-sub{
  margin:14px 0 0;max-width:560px;color:#536885;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.28;font-weight:800;letter-spacing:-.03em;
}
.mode-strip{
  z-index:20;display:flex;gap:clamp(10px,2vw,22px);justify-content:center;align-items:flex-start;flex-wrap:wrap;width:min(880px,100%);margin:0 auto 14px;
}
.mode{
  border:0;background:transparent;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;color:#2e405f;font-weight:900;letter-spacing:-.04em;transition:transform .22s ease, filter .22s ease;
}
.mode img{width:clamp(72px,8vw,106px);height:clamp(72px,8vw,106px)}
.mode span{font-size:13px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.26);backdrop-filter:blur(18px)}
.mode.active,.mode:hover{transform:translateY(-5px) scale(1.03);filter:saturate(1.08)}
.mode.auto-pulse img{animation:modePulse .72s ease}
@keyframes modePulse{0%{transform:scale(1)}42%{transform:scale(1.08)}100%{transform:scale(1)}}

.flow-card{
  position:relative;width:min(760px,100%);border-radius:42px;padding:22px;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.04));
  backdrop-filter:blur(42px) saturate(220%) brightness(1.1);-webkit-backdrop-filter:blur(42px) saturate(220%) brightness(1.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),inset 0 -1px 0 rgba(255,255,255,.10),0 30px 62px rgba(72,110,178,.10);
}
.flow-card::before{content:"";position:absolute;inset:1px 1px auto 1px;height:42%;border-radius:42px 42px 20px 20px;background:linear-gradient(180deg,rgba(255,255,255,.26),rgba(255,255,255,0));pointer-events:none}
.flow-head{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:4px}
.flow-head p{margin:0;font-size:12px;text-transform:uppercase;color:#6c81a1;font-weight:900;letter-spacing:.22em}
.flow-head img{width:72px;height:72px}
.journey-steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 12px}
.step{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border-radius:999px;background:rgba(255,255,255,.24);color:#536986;font-size:12px;font-weight:900}
.step b{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:rgba(255,255,255,.38)}
.step.active{color:white;background:linear-gradient(180deg,#4f94ff,#2772ee)}
.hero-board{position:relative;z-index:2;margin:0 auto 14px}
.hero-board>img{width:100%;filter:drop-shadow(0 18px 28px rgba(30,44,82,.2))}
.board-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(22px,5vw,46px)}
.board-copy span{color:#9fbaff;font-size:clamp(11px,1.8vw,16px);font-weight:900;letter-spacing:.22em}
.board-copy strong{margin-top:10px;max-width:470px;color:white;font-size:clamp(1.45rem,4.5vw,2.8rem);line-height:1.02;font-weight:900;letter-spacing:-.065em}
.chat-flow{position:relative;z-index:2;display:grid;gap:10px;margin:6px 0 12px}
.message{
  width:max-content;max-width:78%;padding:13px 16px;border-radius:22px;font-size:15px;line-height:1.22;font-weight:800;letter-spacing:-.04em;background:rgba(255,255,255,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.62);
  opacity:0;transform:translateY(10px);animation:messageIn .5s ease forwards;
}
.message.kora-message{justify-self:end;color:white;background:linear-gradient(180deg,#4f94ff,#2772ee);animation-delay:.18s}
.message.action{justify-self:center;color:#2f4364;background:rgba(255,255,255,.46);animation-delay:.34s}
@keyframes messageIn{to{opacity:1;transform:translateY(0)}}
.output-strip{
  position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;margin:0 auto 14px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.28);color:#354965;font-size:13px;font-weight:900;letter-spacing:-.035em;text-align:center;
}
.output-strip img{width:38px;height:38px}
.flow-actions{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:18px}

.benefit-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
}
.benefit-card{position:relative;min-height:240px;border-radius:36px;overflow:hidden}
.benefit-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;filter:drop-shadow(0 18px 26px rgba(30,44,82,.18))}
.benefit-copy{
  position:relative;z-index:2;min-height:240px;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;color:white;
}
.benefit-copy img{position:absolute;top:14px;right:14px;width:76px;height:76px}
.benefit-copy h3{margin:0;color:white;font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:.95;font-weight:900;letter-spacing:-.06em}
.benefit-copy span{margin-top:10px;color:rgba(255,255,255,.82);font-size:14px;line-height:1.25;font-weight:800}

.close-panel{
  display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;border-radius:38px;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.018));
  backdrop-filter:blur(54px) saturate(245%) brightness(1.16);-webkit-backdrop-filter:blur(54px) saturate(245%) brightness(1.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74),inset 0 -1px 0 rgba(255,255,255,.07),0 30px 62px rgba(72,110,178,.095);
}
.close-copy h2{
  margin:0;color:#2e405f;font-size:clamp(2rem,4.4vw,4rem);line-height:.9;font-weight:900;letter-spacing:-.075em;
}
.close-copy p{
  margin:12px 0 0;max-width:520px;color:#4b5f7d;font-size:16px;line-height:1.32;font-weight:800;
}
.close-cta{width:min(360px,42vw);min-width:230px;flex:0 0 auto}

.restaurant-dock{
  position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:80;display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(560px,calc(100% - 26px));padding:10px 12px;border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.018));
  backdrop-filter:blur(54px) saturate(245%) brightness(1.16);-webkit-backdrop-filter:blur(54px) saturate(245%) brightness(1.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.74),inset 0 -1px 0 rgba(255,255,255,.07),0 30px 62px rgba(72,110,178,.095);
}
.restaurant-dock::before{content:"";position:absolute;inset:1px 1px auto 1px;height:46%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(255,255,255,0));opacity:.54;pointer-events:none}
.dock-item{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;transition:transform .22s ease,filter .22s ease;position:relative;z-index:1}
.dock-item img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(72,110,178,.12))}
.dock-item:hover,.dock-item:active{transform:translateY(-4px) scale(1.04);filter:saturate(1.08)}

@media(max-width:920px){
  .restaurant-shell{padding:104px 14px 124px}
  .hero-section{grid-template-columns:1fr;gap:16px;min-height:auto}
  h1{font-size:clamp(2.95rem,14vw,5rem)}
  .hero-sub{max-width:360px}
  .kora-hero{width:min(78vw,340px,40svh);margin:0 auto}
  .cap-strip{gap:8px}
  .cap-item{padding:8px 12px;font-size:13px}.cap-item img{width:42px;height:42px}
  .hero-actions{gap:10px}
  .hero-arrow,.round-action,.hero-arrow img,.round-action img{width:78px;height:78px}
  .section-copy h2{font-size:clamp(1.85rem,8vw,2.8rem);max-width:360px}
  .mode-strip{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:4px 4px 14px;margin:0 -4px 10px;scrollbar-width:none}
  .mode-strip::-webkit-scrollbar{display:none}
  .mode{flex:0 0 auto}.mode img{width:70px;height:70px}.mode span{font-size:12px}
  .flow-card{padding:14px;border-radius:32px}.flow-card::before{border-radius:32px 32px 20px 20px}
  .flow-head img{width:56px;height:56px}
  .journey-steps{gap:6px}.step{min-height:34px;font-size:11px}.step b{width:20px;height:20px}
  .board-copy{padding:24px}.board-copy strong{font-size:clamp(1.28rem,6.4vw,1.75rem)}
  .message{font-size:13.5px;max-width:88%;padding:11px 13px}
  .output-strip{font-size:12px}.output-strip img{width:32px;height:32px}
  .flow-actions{gap:10px}.flow-cta{width:calc(100% - 82px)}
  .benefit-grid{grid-template-columns:1fr;gap:12px}
  .benefit-card,.benefit-copy{min-height:220px}
  .close-panel{flex-direction:column;align-items:flex-start;padding:18px;border-radius:32px}
  .close-cta{width:min(320px,100%);min-width:0}
  .header-pill{width:188px;min-width:188px}.header-pill span{font-size:11.5px}
}
@media(max-height:760px) and (max-width:920px){
  .kora-hero{width:min(70vw,290px,34svh)}
  .cap-item img{width:38px;height:38px}
  .benefit-card,.benefit-copy{min-height:200px}
  .benefit-copy img{width:64px;height:64px}
  .dock-item{width:60px;height:60px}.dock-item img{width:56px;height:56px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}


/* V5300: premium restaurant host section, no cutre chef costume */
.host-section{
  margin:18px 0 34px;
}
.host-panel{
  position:relative;
  overflow:hidden;
  min-height:420px;
  border-radius:42px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  align-items:center;
  gap:10px;
  box-shadow:0 34px 74px rgba(44,72,116,.12);
}
.host-surface{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.01);
}
.host-panel::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(15,30,25,.68),rgba(15,30,25,.24),rgba(255,255,255,.04));
  pointer-events:none;
}
.host-copy{
  position:relative;
  z-index:2;
  padding:clamp(24px,5vw,48px);
  color:white;
}
.host-copy .kicker{
  color:rgba(198,224,255,.86);
}
.host-copy h2{
  margin:0;
  max-width:560px;
  color:white;
  font-size:clamp(2.1rem,4.8vw,4.4rem);
  line-height:.9;
  font-weight:900;
  letter-spacing:-.078em;
  text-wrap:balance;
}
.host-copy p{
  margin:16px 0 0;
  max-width:500px;
  color:rgba(255,255,255,.78);
  font-size:clamp(1rem,1.6vw,1.18rem);
  line-height:1.28;
  font-weight:850;
  letter-spacing:-.035em;
}
.host-kora{
  position:relative;
  z-index:2;
  justify-self:center;
  align-self:end;
  width:min(360px,42vw);
  filter:drop-shadow(0 28px 48px rgba(0,0,0,.24));
  transform:translateY(20px);
  animation:hostFloat 6.2s ease-in-out infinite;
}
@keyframes hostFloat{
  0%,100%{transform:translateY(20px)}
  50%{transform:translateY(10px)}
}
@media(max-width:920px){
  .host-panel{
    grid-template-columns:1fr;
    min-height:620px;
    align-items:start;
  }
  .host-panel::after{
    background:linear-gradient(180deg,rgba(15,30,25,.72),rgba(15,30,25,.28),rgba(255,255,255,.04));
  }
  .host-kora{
    width:min(78vw,330px);
    align-self:end;
    margin-top:-26px;
  }
}
@media(max-height:760px) and (max-width:920px){
  .host-panel{
    min-height:560px;
  }
}


/* V5400: restaurant furry panels raw, no glass cage */
.host-panel{
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  filter:drop-shadow(0 34px 54px rgba(30,55,80,.16));
  aspect-ratio:1248 / 1712;
  min-height:auto !important;
  border-radius:0 !important;
}

.host-surface{
  object-fit:contain !important;
  transform:none !important;
}

.host-panel::after{
  display:none !important;
  content:none !important;
}

.host-copy{
  text-shadow:0 2px 18px rgba(0,0,0,.22);
}

.benefit-card{
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  aspect-ratio:1712 / 1248;
  min-height:auto !important;
  filter:drop-shadow(0 28px 42px rgba(55,86,145,.12));
}

.benefit-card>img{
  object-fit:contain !important;
  transform:none !important;
}

.benefit-copy{
  background:transparent !important;
  min-height:auto !important;
  height:100%;
  text-shadow:0 2px 18px rgba(0,0,0,.12);
}

.flow-card,
.close-panel{
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

.flow-card::before,
.close-panel::before,
.close-panel::after{
  display:none !important;
  content:none !important;
}

@media(max-width:920px){
  .host-panel{
    aspect-ratio:1248 / 1712;
    min-height:auto !important;
    display:block !important;
  }

  .host-kora{
    position:absolute;
    right:5%;
    bottom:0;
    width:min(64vw,300px);
  }

  .benefit-card,
  .benefit-copy{
    min-height:auto !important;
  }
}


/* V6000 restaurant chef host: premium, centered, same-size pose stack */
.host-section{
  margin:24px 0 40px !important;
}
.host-panel{
  position:relative;
  overflow:visible !important;
  min-height:auto !important;
  border-radius:0 !important;
  display:grid !important;
  grid-template-columns:1.02fr .98fr;
  align-items:center;
  gap:12px;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 34px 54px rgba(30,55,80,.16));
  aspect-ratio:1248 / 1712;
}
.host-surface{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain !important;
  transform:none !important;
  pointer-events:none;
}
.host-panel::after{
  display:none !important;
  content:none !important;
}
.host-copy{
  position:relative;
  z-index:2;
  padding:clamp(28px,5.2vw,60px);
  color:white;
  text-shadow:0 2px 18px rgba(0,0,0,.24);
}
.host-copy .kicker{
  color:rgba(198,224,255,.9);
}
.host-copy h2{
  margin:0;
  max-width:560px;
  color:white;
  font-size:clamp(2.1rem,4.8vw,4.4rem);
  line-height:.9;
  font-weight:900;
  letter-spacing:-.078em;
  text-wrap:balance;
}
.host-copy p{
  margin:16px 0 0;
  max-width:500px;
  color:rgba(255,255,255,.82);
  font-size:clamp(1rem,1.6vw,1.18rem);
  line-height:1.28;
  font-weight:850;
  letter-spacing:-.035em;
}
.chef-stage{
  position:relative;
  z-index:2;
  justify-self:center;
  align-self:end;
  width:min(420px,42vw);
  aspect-ratio:1 / 1;
  border:0;
  background:transparent;
  padding:0;
  margin:0 8% 4% 0;
  cursor:pointer;
  filter:drop-shadow(0 28px 48px rgba(0,0,0,.24));
}
.chef-pose{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  opacity:0;
  transform:translateY(10px) scale(.995);
  transition:opacity .58s cubic-bezier(.2,.7,.2,1), transform .58s cubic-bezier(.2,.7,.2,1);
}
.chef-pose.active{
  opacity:1;
  transform:translateY(0) scale(1);
  animation:chefBreathe 6.4s ease-in-out infinite;
}
@keyframes chefBreathe{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-7px) scale(1.003)}
}

@media(max-width:920px){
  .host-panel{
    grid-template-columns:1fr !important;
    aspect-ratio:1248 / 1712;
  }
  .host-copy{
    padding:30px 28px 0;
  }
  .chef-stage{
    width:min(80vw,360px);
    margin:0 auto 8%;
  }
}


/* V6200 performance guard */
@media(min-width:821px){
  .offer-grid,
  .offer-preview,
  .included-section,
  .process-strip,
  .price-stage,
  .addons-section,
  .care-strip,
  .decision-panel,
  .benefit-section,
  .close-section{
    content-visibility:auto;
    contain-intrinsic-size:800px;
  }
}


/* V6400 premium lock: no blue selection, no mobile callout, no accidental drag/zoom feel */
html,
body,
*{
  -webkit-tap-highlight-color:rgba(0,0,0,0) !important;
  -webkit-touch-callout:none !important;
  -webkit-user-select:none !important;
  user-select:none !important;
}
::selection{
  background:transparent !important;
  color:inherit !important;
}
::-moz-selection{
  background:transparent !important;
  color:inherit !important;
}
img,
a,
button{
  -webkit-user-drag:none !important;
  user-drag:none !important;
  touch-action:manipulation;
}
button,
a{
  outline:none !important;
}
button:focus,
button:focus-visible,
a:focus,
a:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}
body{
  overscroll-behavior:none;
}


/* V6400 restaurant mobile pixel polish */
:root{
  --dock-safe:calc(118px + env(safe-area-inset-bottom));
}
.restaurant-shell{
  padding-bottom:calc(var(--dock-safe) + 54px) !important;
}
.host-panel,
.benefit-card,
.price-card,
.offer-card,
.addon-card{
  max-width:100%;
}
.host-surface,
.benefit-card>img{
  object-fit:contain !important;
  transform:none !important;
}
.restaurant-dock{
  pointer-events:auto;
  isolation:isolate;
}
.restaurant-dock::before{
  pointer-events:none;
}
.flow-card,
.host-panel{
  z-index:2;
}

/* Give every restaurant block enough breathing room so the fixed dock never covers the next headline */
@media(max-width:920px){
  .hero-section,
  .host-section,
  .flow-section,
  .benefit-section,
  .close-section{
    scroll-margin-bottom:var(--dock-safe);
  }

  .host-section,
  .flow-section,
  .benefit-section{
    margin-bottom:calc(var(--dock-safe) + 16px) !important;
  }

  .host-panel{
    width:100% !important;
    max-width:100% !important;
    aspect-ratio:1248 / 1712 !important;
    overflow:visible !important;
    display:grid !important;
    grid-template-rows:auto 1fr;
    align-items:start !important;
  }

  .host-copy{
    padding:30px 28px 0 !important;
  }

  .host-copy h2{
    font-size:clamp(2.4rem,9.8vw,3.45rem) !important;
    max-width:10.5ch;
  }

  .host-copy p{
    max-width:27ch;
    font-size:clamp(.98rem,4.2vw,1.1rem);
  }

  .chef-stage{
    width:min(86vw,430px) !important;
    margin:-14px auto 8% !important;
    justify-self:center !important;
    align-self:end !important;
  }

  .mode-strip{
    position:relative;
    z-index:8;
    width:100%;
    gap:6px !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    padding:0 4px 12px;
    margin:0 0 18px !important;
    scrollbar-width:none;
  }

  .mode-strip::-webkit-scrollbar{
    display:none;
  }

  .mode{
    flex:0 0 auto;
  }

  .mode img{
    width:70px !important;
    height:70px !important;
  }

  .mode span{
    font-size:12px !important;
    background:transparent !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  .header-pill{
    width:188px !important;
    min-width:188px !important;
  }

  .restaurant-dock{
    width:min(520px,calc(100% - 28px)) !important;
    padding:9px 12px !important;
  }

  .dock-item{
    width:62px !important;
    height:62px !important;
  }

  .dock-item img{
    width:58px !important;
    height:58px !important;
  }

  .section-copy{
    padding-bottom:4px;
  }
}

@media(max-width:420px){
  .host-copy h2{
    font-size:clamp(2.1rem,10vw,3rem) !important;
  }

  .chef-stage{
    width:min(88vw,390px) !important;
  }

  .restaurant-dock{
    gap:6px !important;
  }
}


/* V7100 Investor-ready polish:
   - no header/content collision
   - no clipped chat bubbles
   - readable text over furry surfaces
   - sticky dock never covers important copy
   - preserve furry edges via contain, no deformation */
:root{
  --kora-header-safe: 128px;
  --kora-dock-safe: calc(132px + env(safe-area-inset-bottom));
  --kora-ink: #2d3f5d;
  --kora-muted: #526784;
}

html{
  scroll-padding-top: var(--kora-header-safe);
  scroll-padding-bottom: var(--kora-dock-safe);
}

body{
  padding-bottom: var(--kora-dock-safe);
}

/* The header must feel premium, but must not fight the content */
.header,
.examples-header,
.solutions-header,
.live-header,
.checkout-header,
.restaurant-header,
.pricing-header,
.offer-header,
.demo-header{
  min-height: 78px;
  pointer-events: none;
}

.header .orb,
.examples-header .orb,
.solutions-header .orb,
.live-header .orb,
.checkout-header .orb,
.restaurant-header .orb,
.pricing-header .orb,
.offer-header .orb,
.demo-header .orb,
.header-pill,
.top-cta,
.pricing-header .header-pill,
.offer-header .header-pill,
.restaurant-header .header-pill,
.demo-header .header-pill{
  pointer-events: auto;
}

.header-pill,
.top-cta{
  max-width: min(330px, 46vw);
  z-index: 3;
}

/* Any page shell must leave breathing room at the end, because the dock is fixed */
.shell,
.examples-shell,
solutions-shell,
live-shell,
checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-bottom: calc(var(--kora-dock-safe) + 34px) !important;
}

/* Protect furry surfaces */
.surface,
.vertical-surface,
.horizontal-surface,
.board-surface,
.close-surface,
.summary-surface,
.proof-surface,
.rules-surface,
.host-surface,
.card-bg,
.price-card > img,
.offer-card > img,
.benefit-card > img{
  object-fit: contain !important;
  transform: none !important;
  max-width: 100% !important;
}

/* Never let big buttons or blue chat messages leak outside viewport */
.message-flow,
.chat-row,
.chat-bubble,
.flow-message,
.demo-message,
.blue-message,
.reply,
.bot-reply{
  max-width: 100% !important;
  overflow-wrap: anywhere;
}

.message-flow span,
.chat-bubble,
.flow-message,
.demo-message,
.blue-message,
.reply,
.bot-reply{
  white-space: normal !important;
}

/* Generic text readability over furry surfaces */
.dark,
.card-inner.dark,
.row-copy.dark,
.board-copy,
.host-copy,
.summary-content{
  text-shadow: 0 3px 18px rgba(0,0,0,.22);
}

.light,
.card-inner.light,
.row-copy.light,
.proof-copy,
.checkout-hero,
.hero-copy{
  text-shadow: 0 2px 20px rgba(255,255,255,.72);
}

/* Make pale-card text stronger where screenshot showed weak contrast */
.price-content,
.card-copy,
.row-copy,
.card-inner,
.proof-copy,
.summary-content,
.board-copy,
.host-copy{
  color: var(--kora-ink);
}

.dark,
.card-inner.dark,
.row-copy.dark,
.summary-content,
.restaurant-live .board-copy{
  color: #fff !important;
}

.kicker{
  color: #7184a1;
}

/* Dock must be glassy and visible, not a heavy block */
.dock,
.examples-dock,
solutions-dock,
live-dock,
checkout-dock,
.restaurant-dock,
.pricing-dock,
.offer-dock,
.demo-dock{
  background: linear-gradient(180deg, rgba(255,255,255,.19), rgba(255,255,255,.045)) !important;
  backdrop-filter: blur(58px) saturate(245%) brightness(1.18) !important;
  -webkit-backdrop-filter: blur(58px) saturate(245%) brightness(1.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82), inset 0 -1px 0 rgba(255,255,255,.06), 0 32px 68px rgba(72,110,178,.08) !important;
}

/* All fixed docks must not cover section endings */
section,
.price-card,
.offer-card,
.card,
.live-board,
.sample-grid,
.live-close,
.rules,
.proof-strip,
.checkout-layout,
.host-section,
.flow-section,
.benefit-section,
.close-section{
  scroll-margin-bottom: var(--kora-dock-safe);
}

@media(max-width: 980px){
  .header-pill,
  .top-cta{
    max-width: 188px;
  }

  .shell,
  .examples-shell,
  .solutions-shell,
  .live-shell,
  .checkout-shell,
  .restaurant-shell,
  .pricing-shell,
  .offer-shell,
  .demo-shell{
    padding-top: calc(104px + env(safe-area-inset-top)) !important;
    padding-bottom: calc(var(--kora-dock-safe) + 44px) !important;
  }
}

@media(max-width: 820px){
  :root{
    --kora-header-safe: 118px;
    --kora-dock-safe: calc(120px + env(safe-area-inset-bottom));
  }

  .header,
  .examples-header,
  .solutions-header,
  .live-header,
  .checkout-header,
  .restaurant-header,
  .pricing-header,
  .offer-header,
  .demo-header{
    left: calc(14px + env(safe-area-inset-left)) !important;
    right: calc(14px + env(safe-area-inset-right)) !important;
    top: calc(12px + env(safe-area-inset-top)) !important;
  }

  .header-pill,
  .top-cta{
    width: 188px !important;
    min-width: 188px !important;
  }

  .dock,
  .examples-dock,
  .solutions-dock,
  .live-dock,
  .checkout-dock,
  .restaurant-dock,
  .pricing-dock,
  .offer-dock,
  .demo-dock{
    width: min(520px, calc(100% - 28px)) !important;
    padding: 9px 12px !important;
  }

  .dock-item,
  .dock a,
  .examples-dock .dock-item,
  .solutions-dock .dock-item,
  .live-dock .dock-item,
  .checkout-dock .dock-item{
    width: 60px !important;
    height: 60px !important;
  }

  .dock-item img,
  .dock a img,
  .examples-dock .dock-item img,
  .solutions-dock .dock-item img,
  .live-dock .dock-item img,
  .checkout-dock .dock-item img{
    width: 56px !important;
    height: 56px !important;
  }
}

@media(max-height: 780px) and (max-width: 820px){
  .header-pill,
  .top-cta{
    transform: scale(.92);
    transform-origin: top right;
  }
}


/* V7100 restaurant: fix text overflow, flow bubbles and sticky collision */
.restaurant-shell{
  padding-top: calc(132px + env(safe-area-inset-top)) !important;
}

.restaurant-header,
.header{
  z-index: 95 !important;
}

.hero-title,
.restaurant-title,
.section-title{
  max-width: min(680px, 100%) !important;
}

.restaurant-flow,
.flow-card,
.flow-panel,
.chat-flow,
.message-flow{
  overflow: hidden !important;
}

.chat-bubble,
.flow-message,
.demo-message,
.reply,
.bot-reply,
.message-flow span{
  max-width: min(100%, 620px) !important;
  box-sizing: border-box !important;
}

.message-flow{
  align-items: flex-start !important;
}

.host-panel{
  margin-bottom: 44px !important;
}

.flow-section{
  margin-top: 42px !important;
  margin-bottom: calc(var(--kora-dock-safe) + 20px) !important;
}

.flow-card{
  padding-bottom: 34px !important;
}

.restaurant-dock{
  z-index: 98 !important;
}

@media(max-width: 920px){
  .restaurant-shell{
    padding-top: calc(118px + env(safe-area-inset-top)) !important;
  }

  .restaurant-hero,
  .hero-section{
    padding-top: 10px !important;
  }

  .hero-title,
  .restaurant-title{
    font-size: clamp(2.55rem, 12vw, 4rem) !important;
    max-width: 9.8ch !important;
  }

  .flow-card,
  .flow-panel{
    overflow: hidden !important;
  }

  .chat-bubble,
  .flow-message,
  .demo-message,
  .reply,
  .bot-reply{
    width: auto !important;
    max-width: calc(100vw - 72px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .message-flow span{
    max-width: calc(100vw - 72px) !important;
  }

  .host-copy h2{
    font-size: clamp(2.1rem, 9.7vw, 3.25rem) !important;
  }

  .mode-strip{
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
  }

  .mode-strip::-webkit-scrollbar{
    display: none;
  }
}


/* V7500 Pixel Lock: app-like nav, compact typography, safe furry cards */
:root{
  --v7500-ink:#2c3e5d;
  --v7500-shadow:0 3px 0 rgba(0,0,0,.10), 0 12px 30px rgba(0,0,0,.26), 0 0 1px rgba(0,0,0,.65);
  --v7500-soft-shadow:0 2px 18px rgba(0,0,0,.22), 0 0 1px rgba(0,0,0,.34);
}

body{
  font-family:"Arial Rounded MT Bold","SF Pro Rounded","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

/* Headers should not dominate the experience */
h1{
  font-size:clamp(2.25rem,5.4vw,5.2rem) !important;
  line-height:.94 !important;
  letter-spacing:-.073em !important;
  max-width:12ch !important;
}

h2{
  font-size:clamp(1.9rem,4.3vw,4.2rem) !important;
  line-height:.94 !important;
  letter-spacing:-.07em !important;
}

h3{
  font-size:clamp(1.35rem,2.6vw,2.6rem) !important;
  line-height:1 !important;
  letter-spacing:-.055em !important;
}

.kicker,
.scene-kicker{
  font-size:clamp(9px,.9vw,11px) !important;
  letter-spacing:.26em !important;
  line-height:1.2 !important;
}

.hero-sub,
.scene-subline,
p{
  line-height:1.28 !important;
}

/* Furry card text must always read, even on green/blue/pink/black */
.case-inner,
.proof-card > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.proof-note > div{
  color:#fff !important;
  text-shadow:var(--v7500-shadow) !important;
}

.case-inner *,
.proof-card > div *,
.price-content *,
.card-copy *,
.board-copy *,
.host-copy *,
.summary-content *,
.investor-card > div *,
.trust-panel > div *,
.validation > div *,
.metric-card > div *,
.offer-card .card-copy *,
.live-board > div *,
.demo-card > div *,
.rules > div *,
.proof-note > div *{
  color:inherit !important;
  text-shadow:inherit !important;
}

/* Keep light text readable but avoid huge walls */
.case-inner h2,
.proof-card h2,
.price-content h2,
.price-content h3,
.card-copy h2,
.board-copy h2,
.host-copy h2,
.summary-content h2,
.investor-card h2,
.trust-panel h2,
.validation h2,
.metric-card h2,
.offer-card h2,
.live-board h2,
.demo-card h2,
.rules h2,
.proof-note h2{
  max-width:10.7ch !important;
}

/* Put copy safely inside furry surfaces */
.case-inner,
.proof-card > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.proof-note > div{
  padding:clamp(26px,4.2vw,46px) !important;
  overflow-wrap:anywhere;
}

.case-card,
.proof-card,
.price-card,
.offer-card,
.investor-card,
.trust-panel,
.validation,
.metric-card,
.live-board,
.demo-card,
.rules,
.proof-note,
.host-panel,
.flow-card{
  overflow:visible !important;
  margin-bottom:clamp(34px,7vw,84px) !important;
  scroll-margin-bottom:calc(170px + env(safe-area-inset-bottom)) !important;
}

/* Prevent clipped text/chips/buttons */
.case-card *,
.proof-card *,
.price-card *,
.offer-card *,
.investor-card *,
.trust-panel *,
.validation *,
.metric-card *,
.live-board *,
.demo-card *,
.rules *,
.proof-note *,
.host-panel *,
.flow-card *{
  max-width:100%;
  box-sizing:border-box;
}

.surface,
.case-bg,
.card-bg,
.price-card > img,
.proof-card > img,
.offer-card > img,
.trust-panel > img,
.validation > img,
.metric-card > img,
.investor-card > img{
  object-fit:contain !important;
  transform:none !important;
  width:100% !important;
  height:100% !important;
}

/* Furry buttons and pills: never stretch text outside */
.cta-fur span,
.header-pill span,
.top-cta span,
.router-primary span,
.router-pay span{
  color:#fff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.24), 0 0 1px rgba(0,0,0,.4) !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding-inline:16px;
}

/* Header auto-hide on scroll so it never covers content */
.header,
.examples-header,
.solutions-header,
.live-header,
.checkout-header,
.restaurant-header,
.pricing-header,
.offer-header,
.demo-header{
  transition:opacity .24s ease, transform .24s ease, filter .24s ease !important;
}

body.nav-hidden .header,
body.nav-hidden .examples-header,
body.nav-hidden .solutions-header,
body.nav-hidden .live-header,
body.nav-hidden .checkout-header,
body.nav-hidden .restaurant-header,
body.nav-hidden .pricing-header,
body.nav-hidden .offer-header,
body.nav-hidden .demo-header{
  opacity:.08 !important;
  transform:translateY(-14px) scale(.98) !important;
  pointer-events:none !important;
}

body.nav-compact .header-pill,
body.nav-compact .top-cta{
  filter:saturate(.92) opacity(.9);
}

/* Dock stays glass, less heavy, more app-like */
.dock,
.examples-dock,
solutions-dock,
live-dock,
checkout-dock,
restaurant-dock,
pricing-dock,
offer-dock,
demo-dock{
  background:linear-gradient(180deg,rgba(255,255,255,.30),rgba(255,255,255,.075)) !important;
  backdrop-filter:blur(64px) saturate(250%) brightness(1.18) !important;
  -webkit-backdrop-filter:blur(64px) saturate(250%) brightness(1.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88), inset 0 -1px 0 rgba(255,255,255,.08), 0 34px 72px rgba(72,110,178,.10) !important;
}

/* Secret menu = phone app launcher */
.secret-launcher{
  position:relative;
  width:min(640px,100%);
  min-height:420px;
  overflow:hidden;
  touch-action:pan-y;
}

.secret-page{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  opacity:0;
  transform:translateX(22px) scale(.985);
  pointer-events:none;
  transition:opacity .28s ease, transform .28s cubic-bezier(.2,.7,.2,1);
}

.secret-page.active{
  opacity:1;
  transform:translateX(0) scale(1);
  pointer-events:auto;
}

.secret-section{
  grid-column:1/-1;
  margin:0 0 2px;
  color:#7185a4 !important;
  text-shadow:none !important;
  font-size:11px !important;
  letter-spacing:.24em !important;
  text-transform:uppercase;
  font-weight:950;
}

.secret-page a{
  min-height:112px;
  border-radius:30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:4px;
  padding:10px;
  background:rgba(255,255,255,.20);
  backdrop-filter:blur(26px) saturate(160%);
  -webkit-backdrop-filter:blur(26px) saturate(160%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
  transition:transform .2s ease, filter .2s ease;
}

.secret-page a:hover,
.secret-page a:active{
  transform:translateY(-3px) scale(1.018);
  filter:saturate(1.06);
}

.secret-page a img{
  width:54px;
  height:54px;
  object-fit:contain;
}

.secret-page a span{
  color:#2e405f;
  font-size:12px;
  line-height:1.05;
  font-weight:950;
  letter-spacing:-.035em;
}

.secret-page a small{
  color:#607593;
  font-size:9px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.02em;
}

.secret-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:12px 0 4px;
}

.secret-dots button{
  width:8px;
  height:8px;
  border-radius:999px;
  padding:0;
  background:rgba(46,64,95,.20);
  transition:width .2s ease, background .2s ease;
}

.secret-dots button.active{
  width:24px;
  background:#2f75f3;
}

/* Avoid body text colliding with dock at page end */
.shell,
.examples-shell,
.solutions-shell,
.live-shell,
.checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-bottom:calc(190px + env(safe-area-inset-bottom)) !important;
}

@media(max-width:820px){
  h1{
    font-size:clamp(2.25rem,10.5vw,3.55rem) !important;
    max-width:10.2ch !important;
  }

  h2{
    font-size:clamp(2rem,8.8vw,3.2rem) !important;
    max-width:10.4ch !important;
  }

  h3{
    font-size:clamp(1.25rem,6.2vw,2.25rem) !important;
  }

  .hero-sub,
  .scene-subline,
  p{
    font-size:clamp(.92rem,3.4vw,1.04rem) !important;
  }

  .case-inner,
  .proof-card > div,
  .price-content,
  .card-copy,
  .board-copy,
  .host-copy,
  .summary-content,
  .investor-card > div,
  .trust-panel > div,
  .validation > div,
  .metric-card > div,
  .offer-card .card-copy,
  .live-board > div,
  .demo-card > div,
  .rules > div,
  .proof-note > div{
    padding:28px 24px !important;
  }

  .secret-launcher{
    min-height:392px;
  }

  .secret-page{
    grid-template-columns:repeat(3,1fr);
    gap:9px;
  }

  .secret-page a{
    min-height:104px;
    border-radius:26px;
    padding:8px 5px;
  }

  .secret-page a img{
    width:48px;
    height:48px;
  }

  .secret-page a span{
    font-size:11px;
  }

  .secret-page a small{
    font-size:8.5px;
  }
}

@media(max-width:390px){
  .secret-page a{
    min-height:96px;
  }

  .secret-page a img{
    width:44px;
    height:44px;
  }

  .secret-page a span{
    font-size:10px;
  }
}

/* Very short screens: hide optional chips instead of breaking layout */
@media(max-height:760px) and (max-width:820px){
  .tags,
  .badges,
  .signal-row,
  .home-proof{
    display:none !important;
  }
}

/* V7500 restaurant flow overflow lock */
.message-flow,
.chat-row,
.chat-bubble,
.flow-message,
.demo-message,
.blue-message,
.reply,
.bot-reply{
  max-width:100% !important;
  overflow-wrap:anywhere !important;
}
.flow-card,
.flow-panel{
  overflow:hidden !important;
}
@media(max-width:820px){
  .chat-bubble,
  .flow-message,
  .demo-message,
  .blue-message,
  .reply,
  .bot-reply{
    max-width:calc(100vw - 72px) !important;
  }
}


/* V7600 OMG Pixel QA
   Clean, app-like, no huge broken headings, no dark unreadable furry text, no header overlap. */

:root{
  --omg-ink:#2e405f;
  --omg-white-shadow:
    0 2px 0 rgba(0,0,0,.10),
    0 10px 26px rgba(0,0,0,.30),
    0 0 1px rgba(0,0,0,.78);
  --omg-dark-shadow:
    0 2px 20px rgba(255,255,255,.48),
    0 0 1px rgba(255,255,255,.82);
  --omg-dock-safe:calc(176px + env(safe-area-inset-bottom));
}

html{
  overflow-x:hidden !important;
  scroll-padding-bottom:var(--omg-dock-safe) !important;
}

body{
  overflow-x:hidden !important;
  font-family:"Arial Rounded MT Bold","SF Pro Rounded","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

/* Global headline discipline: no more oversized mobile posters */
h1{
  font-size:clamp(2.05rem,4.85vw,4.75rem) !important;
  line-height:.96 !important;
  letter-spacing:-.068em !important;
  max-width:12.4ch !important;
  text-wrap:balance !important;
}

h2{
  font-size:clamp(1.8rem,3.85vw,3.65rem) !important;
  line-height:.98 !important;
  letter-spacing:-.065em !important;
  max-width:12ch !important;
  text-wrap:balance !important;
}

h3{
  font-size:clamp(1.25rem,2.4vw,2.15rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
  text-wrap:balance !important;
}

p, li, a, button, input, textarea, select, span, small, strong{
  text-rendering:geometricPrecision !important;
}

.kicker,
.scene-kicker{
  font-size:clamp(9px,.82vw,10.5px) !important;
  line-height:1.14 !important;
  letter-spacing:.24em !important;
}

.hero-sub,
.scene-subline{
  font-size:clamp(.92rem,1.22vw,1.08rem) !important;
  line-height:1.3 !important;
  max-width:46ch !important;
}

/* Fixed headers should behave like an app overlay, not cover content */
body.nav-far .header,
body.nav-far .examples-header,
body.nav-far .solutions-header,
body.nav-far .live-header,
body.nav-far .checkout-header,
body.nav-far .restaurant-header,
body.nav-far .pricing-header,
body.nav-far .offer-header,
body.nav-far .demo-header{
  opacity:0 !important;
  transform:translateY(-20px) scale(.96) !important;
  pointer-events:none !important;
}

body.nav-compact .header-pill,
body.nav-compact .top-cta{
  transform:scale(.94) !important;
  transform-origin:right top !important;
}

/* Strong safe zones so first content never starts under fixed header */
.shell,
.examples-shell,
.solutions-shell,
.live-shell,
.checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-top:calc(132px + env(safe-area-inset-top)) !important;
  padding-bottom:var(--omg-dock-safe) !important;
}

/* Main home keeps its cinematic snap but text is cleaner */
.scene-line{
  font-size:clamp(2rem,4.2vw,4.35rem) !important;
  line-height:.94 !important;
  letter-spacing:-.07em !important;
  max-width:12.2ch !important;
}

.scene-subline{
  font-size:clamp(.92rem,1.2vw,1.06rem) !important;
}

/* Universal furry readability and safe content area */
.case-inner,
.proof-card > div,
.proof-note > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div,
.checkout-card > div,
.checkout-panel > div,
.order-panel,
.pay-panel{
  color:#fff !important;
  text-shadow:var(--omg-white-shadow) !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

.case-inner *,
.proof-card > div *,
.proof-note > div *,
.price-content *,
.card-copy *,
.board-copy *,
.host-copy *,
.summary-content *,
.investor-card > div *,
.trust-panel > div *,
.validation > div *,
.metric-card > div *,
.offer-card .card-copy *,
.live-board > div *,
.demo-card > div *,
.rules > div *,
.flow-card > div *,
.flow-panel > div *,
.checkout-card > div *,
.checkout-panel > div *,
.order-panel *,
.pay-panel *{
  color:inherit !important;
  text-shadow:inherit !important;
  max-width:100% !important;
}

/* Keep copy inside the fluffy surface, never at the edge */
.case-inner,
.proof-card > div,
.proof-note > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div{
  width:100% !important;
  height:100% !important;
  padding:clamp(32px,5.6vw,64px) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}

/* Very light furry cards can still use ink when they explicitly have no image/furry risk */
.router-proof,
.signal-row span,
.home-proof span,
.secure-field,
.detail,
.modal-title,
.modal-title *,
.detail *,
.summary,
.summary *,
.field-grid label{
  color:var(--omg-ink) !important;
  text-shadow:var(--omg-dark-shadow) !important;
}

/* Cards must have enough height for text and dock clearance */
.case-card,
.proof-card,
.proof-note,
.price-card,
.offer-card,
.investor-card,
.trust-panel,
.validation,
.metric-card,
.live-board,
.demo-card,
.rules,
.host-panel,
.flow-card,
.flow-panel{
  min-height:clamp(390px,58vw,620px) !important;
  margin-bottom:clamp(52px,9vw,110px) !important;
  scroll-margin-top:150px !important;
  scroll-margin-bottom:var(--omg-dock-safe) !important;
}

/* Avoid any horizontal spill from chat/message demos */
.chat-bubble,
.flow-message,
.demo-message,
.blue-message,
.reply,
.bot-reply,
.message,
.message-flow,
.chat-row{
  max-width:min(100%, calc(100vw - 58px)) !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

/* Long pills/buttons should never cover card edges */
.cta-fur,
.header-pill,
.top-cta{
  max-width:calc(100vw - 112px) !important;
}

.cta-fur span,
.header-pill span,
.top-cta span,
.router-primary span,
.router-pay span{
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

/* Furry assets: no clipping or stretching */
.surface,
.case-bg,
.card-bg,
.price-card > img,
.proof-card > img,
.offer-card > img,
.trust-panel > img,
.validation > img,
.metric-card > img,
.investor-card > img,
.flow-card > img,
.flow-panel > img,
.live-board > img,
.demo-card > img{
  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
  clip-path:none !important;
}

/* App launcher should feel like iOS pages */
.secret-launcher{
  min-height:clamp(380px,58vh,520px) !important;
  border-radius:36px;
  position:relative;
}

.secret-launcher::after{
  content:"Swipe";
  position:absolute;
  right:14px;
  top:10px;
  z-index:5;
  color:#8193ad;
  font-size:9px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.62;
}

.secret-launcher.dragging .secret-page.active{
  transform:scale(.985) !important;
}

.secret-page{
  align-content:start !important;
  padding-top:22px !important;
}

.secret-page a{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.68),
    0 16px 30px rgba(64,103,172,.055) !important;
}

.secret-page a span{
  color:#2e405f !important;
  text-shadow:none !important;
}

.secret-page a small{
  color:#607593 !important;
  text-shadow:none !important;
}

/* Dock should not hide content: slightly lower/lighter */
.dock,
.examples-dock,
.solutions-dock,
.live-dock,
checkout-dock,
.restaurant-dock,
.pricing-dock,
.offer-dock,
.demo-dock{
  bottom:calc(10px + env(safe-area-inset-bottom)) !important;
}

/* Mobile safety */
@media(max-width:820px){
  h1{
    font-size:clamp(2.05rem,9.6vw,3.15rem) !important;
    max-width:11.4ch !important;
  }

  h2{
    font-size:clamp(1.9rem,8vw,2.85rem) !important;
    max-width:11.2ch !important;
  }

  .scene-line{
    font-size:clamp(1.9rem,8.9vw,3.1rem) !important;
    max-width:11.6ch !important;
  }

  .shell,
  .examples-shell,
  .solutions-shell,
  .live-shell,
  .checkout-shell,
  .restaurant-shell,
  .pricing-shell,
  .offer-shell,
  .demo-shell{
    padding-top:calc(112px + env(safe-area-inset-top)) !important;
    padding-bottom:calc(164px + env(safe-area-inset-bottom)) !important;
  }

  .case-inner,
  .proof-card > div,
  .proof-note > div,
  .price-content,
  .card-copy,
  .board-copy,
  .host-copy,
  .summary-content,
  .investor-card > div,
  .trust-panel > div,
  .validation > div,
  .metric-card > div,
  .offer-card .card-copy,
  .live-board > div,
  .demo-card > div,
  .rules > div,
  .flow-card > div,
  .flow-panel > div{
    padding:34px 30px !important;
  }

  .case-card,
  .proof-card,
  .proof-note,
  .price-card,
  .offer-card,
  .investor-card,
  .trust-panel,
  .validation,
  .metric-card,
  .live-board,
  .demo-card,
  .rules,
  .host-panel,
  .flow-card,
  .flow-panel{
    min-height:clamp(400px,105vw,570px) !important;
  }

  .secret-launcher{
    min-height:430px !important;
  }

  .secret-page{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:9px !important;
    padding-top:24px !important;
  }

  .secret-page a{
    min-height:106px !important;
    border-radius:27px !important;
  }
}

/* Very small screens: keep layout usable instead of overflowing */
@media(max-width:380px){
  h1{font-size:clamp(1.9rem,9vw,2.82rem) !important;}
  h2{font-size:clamp(1.72rem,7.6vw,2.55rem) !important;}
  .hero-sub,
  .scene-subline{font-size:.9rem !important;}
  .secret-page a img{width:42px !important;height:42px !important;}
  .secret-page a span{font-size:10px !important;}
  .secret-page a small{display:none !important;}
}

@media(max-height:760px) and (max-width:820px){
  .tags,
  .badges,
  .signal-row,
  .home-proof{
    display:none !important;
  }

  .case-inner p,
  .proof-card p,
  .price-content p,
  .hero-sub{
    font-size:.9rem !important;
  }
}

/* V7700 final visual pass */
.secret-panel{max-height:calc(100svh - 28px - env(safe-area-inset-bottom))!important;overflow:auto!important}.secret-head h2{font-size:clamp(1.55rem,4.4vw,2.4rem)!important;max-width:none!important}.secret-launcher{min-height:402px!important}.secret-page a{min-height:104px!important}.secret-whatsapp{margin-top:8px!important}.hero,.case-hero,.proof-hero,.now-hero{min-height:42svh!important}h1{max-width:12.8ch!important}.proof-note .cta-fur+.cta-fur{margin-top:10px!important}@media(max-width:820px){.secret-panel{border-radius:30px!important;padding:18px!important}.secret-launcher{min-height:410px!important}.secret-page a{min-height:98px!important}.secret-page a small{display:block!important}.hero,.case-hero,.proof-hero,.now-hero{min-height:38svh!important}}


/* V7800 Full Polish
   Goal: every page feels like one futuristic app, restaurant uses chef only, copy stays inside furry surfaces. */
:root{
  --kora-ink:#2d405f;
  --kora-blue:#2f75f3;
  --kora-soft:#dcecff;
  --kora-shadow-white:0 2px 0 rgba(0,0,0,.12),0 12px 32px rgba(0,0,0,.34),0 0 1px rgba(0,0,0,.82);
  --kora-shadow-dark:0 2px 18px rgba(255,255,255,.5),0 0 1px rgba(255,255,255,.88);
}

/* Better font stack: rounded, bold, product-like */
body{
  font-family:"Arial Rounded MT Bold","SF Pro Rounded","Nunito Sans","Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

/* Headlines: premium, smaller, no goofy overflow */
h1,
.scene-line{
  font-size:clamp(2rem,4.4vw,4.35rem) !important;
  line-height:.96 !important;
  letter-spacing:-.068em !important;
  max-width:13ch !important;
}

h2{
  font-size:clamp(1.72rem,3.35vw,3.35rem) !important;
  line-height:.98 !important;
  letter-spacing:-.064em !important;
  max-width:13ch !important;
}

h3{
  font-size:clamp(1.18rem,2.1vw,2rem) !important;
  line-height:1.04 !important;
  letter-spacing:-.052em !important;
}

.kicker,
.scene-kicker{
  font-size:clamp(8.5px,.72vw,10px) !important;
  letter-spacing:.25em !important;
  opacity:.9;
}

.hero-sub,
.scene-subline,
.section-sub{
  font-size:clamp(.88rem,1.05vw,1.02rem) !important;
  line-height:1.34 !important;
  max-width:42ch !important;
}

/* Better home hierarchy */
.home-map-cta{
  position:relative;
  z-index:18;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62),0 14px 28px rgba(72,110,178,.07);
  color:#3b5272;
  text-shadow:none !important;
  font-size:12px;
  font-weight:950;
  letter-spacing:-.035em;
  margin-top:8px;
  transition:transform .2s ease, filter .2s ease;
}
.home-map-cta:hover,
.home-map-cta:active{
  transform:translateY(-2px) scale(1.02);
  filter:saturate(1.06);
}

/* Floating icons must sit behind copy/mascot, never on top of words */
.float-icon{
  z-index:1 !important;
  opacity:.44 !important;
}
.copy-wrap,
.character-wrap,
.arrow-cta,
.home-proof,
.home-map-cta{
  z-index:15 !important;
}

/* Make all furry cards readable, but not harsh */
.case-inner,
.proof-card > div,
.proof-note > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div,
.checkout-card > div,
.checkout-panel > div{
  color:#fff !important;
  text-shadow:var(--kora-shadow-white) !important;
}

/* Do not force white inside forms, modals and checkout fields */
.order-panel,
.pay-panel,
.order-panel *,
.pay-panel *,
.field-grid *,
.card-mock *,
.secure-field,
.summary,
.summary *,
.detail,
.detail *,
.modal-panel,
.modal-panel *,
.router-proof,
.router-proof *,
.signal-row span,
.home-proof span{
  color:var(--kora-ink) !important;
  text-shadow:var(--kora-shadow-dark) !important;
}

/* Every furry panel gets a safer internal content area */
.case-inner,
.proof-card > div,
.proof-note > div,
.price-content,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div{
  padding:clamp(34px,5vw,64px) !important;
  justify-content:center !important;
  gap:10px !important;
}

/* Text lines should wrap cleanly, never force side overflow */
p, h1, h2, h3, li, span, strong, small{
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}

/* Short chips, softer and readable */
.tags span,
.badges span,
.chip-row span,
.signal-row span,
.home-proof span{
  min-height:30px !important;
  padding:0 11px !important;
  border-radius:999px !important;
  white-space:nowrap !important;
}

/* Bigger page breathing room */
.shell,
.examples-shell,
.solutions-shell,
.live-shell,
.checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-top:calc(126px + env(safe-area-inset-top)) !important;
  padding-bottom:calc(190px + env(safe-area-inset-bottom)) !important;
}

/* Make boards/cards look intentionally large but controlled */
.case-card,
.proof-card,
.proof-note,
.price-card,
.offer-card,
.investor-card,
.trust-panel,
.validation,
.metric-card,
.live-board,
.demo-card,
.rules,
.host-panel,
.flow-card,
.flow-panel{
  min-height:clamp(420px,54vw,620px) !important;
  margin-bottom:clamp(54px,8vw,110px) !important;
}

/* No asset deformation */
.surface,
.case-bg,
.card-bg,
.price-card > img,
.proof-card > img,
.offer-card > img,
.trust-panel > img,
.validation > img,
.metric-card > img,
.investor-card > img,
.flow-card > img,
.flow-panel > img,
.live-board > img,
.demo-card > img,
.host-surface{
  object-fit:contain !important;
  object-position:center center !important;
  width:100% !important;
  height:100% !important;
  transform:none !important;
}

/* Restaurant-specific: chef should feel like the host, not random mascot */
.restaurant-page .kora-hero img,
.restaurant-page .chef-stage img,
.live-page .kora-stage img[src*="chef"]{
  filter:drop-shadow(0 30px 40px rgba(20,45,95,.22)) saturate(1.04) !important;
}

.chef-stage,
.kora-hero,
.kora-stage{
  isolation:isolate;
}

/* Fix long chat bubbles in restaurant demos */
.chat-bubble,
.flow-message,
.demo-message,
.blue-message,
.reply,
.bot-reply,
.message,
.message-flow,
.chat-row,
#koraMessage,
#visitorMessage,
#actionMessage{
  max-width:min(100%,calc(100vw - 72px)) !important;
  overflow:hidden !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
  line-height:1.24 !important;
}

/* App launcher final polish */
.secret-launcher{
  border-radius:38px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.54);
}
.secret-page a{
  min-height:112px !important;
}
.secret-page a img{
  filter:drop-shadow(0 12px 18px rgba(55,94,160,.14));
}
.secret-page a span{
  color:var(--kora-ink) !important;
  text-shadow:none !important;
}

/* Buttons should feel alive */
a, button{
  will-change:transform;
}
.cta-fur:hover,
.header-pill:hover,
.dock-item:hover,
.secret-page a:hover,
.router-primary:hover,
.router-pay:hover{
  transform:translateY(-2px) scale(1.012);
}

/* Desktop: let proof/case grids breathe */
@media(min-width:1000px){
  .case-grid,
  .proof-wall{
    gap:22px !important;
  }
}

/* Mobile: no hero/text clipping */
@media(max-width:820px){
  h1,
  .scene-line{
    font-size:clamp(1.95rem,8.6vw,3rem) !important;
    max-width:12ch !important;
  }
  h2{
    font-size:clamp(1.75rem,7.2vw,2.7rem) !important;
    max-width:12ch !important;
  }
  .hero-sub,
  .scene-subline,
  .section-sub{
    font-size:.91rem !important;
    max-width:34ch !important;
  }
  .case-inner,
  .proof-card > div,
  .proof-note > div,
  .price-content,
  .card-copy,
  .board-copy,
  .host-copy,
  .summary-content,
  .investor-card > div,
  .trust-panel > div,
  .validation > div,
  .metric-card > div,
  .offer-card .card-copy,
  .live-board > div,
  .demo-card > div,
  .rules > div,
  .flow-card > div,
  .flow-panel > div{
    padding:34px 28px !important;
  }
  .case-card,
  .proof-card,
  .proof-note,
  .price-card,
  .offer-card,
  .investor-card,
  .trust-panel,
  .validation,
  .metric-card,
  .live-board,
  .demo-card,
  .rules,
  .host-panel,
  .flow-card,
  .flow-panel{
    min-height:clamp(420px,108vw,570px) !important;
  }
  .secret-page a{
    min-height:104px !important;
  }
}

/* Small phones: hide optional proof chips instead of breaking layout */
@media(max-width:390px){
  .tags,
  .badges,
  .chip-row{
    gap:5px !important;
  }
  .tags span,
  .badges span,
  .chip-row span{
    font-size:10px !important;
    min-height:26px !important;
    padding:0 9px !important;
  }
}


/* V7900 Native Scroll + Furry Card Precision
   Decision: remove all snap. Use native, inertial scroll with reveal animations only. */

/* Zero snap everywhere. This prevents Android/iOS sticky scroll bugs. */
html,
body,
main,
section,
[class*="shell"],
[class*="scene"],
[class*="page"],
[class*="scroll"],
.snap,
.snap-container,
.demo-scenes,
.home-scenes{
  scroll-snap-type:none !important;
  scroll-snap-align:none !important;
  scroll-snap-stop:normal !important;
}

html{
  scroll-behavior:smooth !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
}

body{
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  touch-action:pan-y !important;
}

/* Better premium font stack: rounded but sharper, more app/product. */
body,
button,
input,
textarea,
select{
  font-family:"Avenir Next","SF Pro Rounded","Arial Rounded MT Bold","Inter",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

/* Typographic tightening: less huge, more luxury product UI */
h1,
.scene-line{
  font-size:clamp(2rem,4.15vw,4.15rem) !important;
  line-height:.98 !important;
  letter-spacing:-.062em !important;
  max-width:13.4ch !important;
}

h2{
  font-size:clamp(1.62rem,3vw,3.05rem) !important;
  line-height:1 !important;
  letter-spacing:-.058em !important;
  max-width:13.2ch !important;
}

h3{
  font-size:clamp(1.12rem,1.95vw,1.86rem) !important;
  line-height:1.06 !important;
  letter-spacing:-.048em !important;
}

p,
li,
.hero-sub,
.scene-subline,
.section-sub{
  font-size:clamp(.88rem,1vw,1rem) !important;
  line-height:1.36 !important;
}

/* Furry card sizing: do not let every card become a full poster. */
.case-card,
.proof-card,
.proof-note,
.price-card,
.offer-card,
.investor-card,
.trust-panel,
.validation,
.metric-card,
.live-board,
.demo-card,
.rules,
.host-panel,
.flow-card,
.flow-panel{
  min-height:unset !important;
  height:auto !important;
  aspect-ratio:auto !important;
  margin-bottom:clamp(28px,5.8vw,76px) !important;
}

/* Cards with furry background should stack like premium tiles. */
.price-card,
.offer-card,
.proof-card,
.case-card,
.investor-card,
.metric-card,
.validation,
.trust-panel,
.demo-card,
.live-board,
.flow-card,
.flow-panel,
.host-panel,
.proof-note{
  position:relative !important;
  display:grid !important;
  align-items:center !important;
  min-height:clamp(340px,52vw,520px) !important;
}

/* Pricing should feel like clean stacked product cards, not huge full sections. */
.pricing-grid,
.price-grid,
.prices,
.offer-grid,
.case-grid,
.proof-wall{
  align-items:start !important;
}

.price-card{
  min-height:clamp(430px,70vw,620px) !important;
  max-width:min(760px,100%) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Let the image stay pure, never clipped, never stretched. */
.price-card > img,
.offer-card > img,
.proof-card > img,
.proof-note > img,
.case-bg,
.card-bg,
.surface,
.investor-card > img,
.trust-panel > img,
.validation > img,
.metric-card > img,
.live-board > img,
.demo-card > img,
.flow-card > img,
.flow-panel > img,
.host-surface{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  transform:none !important;
  pointer-events:none !important;
}

/* Inner text must live inside the safe furry center, away from fuzzy borders. */
.price-content,
.case-inner,
.proof-card > div,
.proof-note > div,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div{
  position:relative !important;
  z-index:3 !important;
  width:100% !important;
  height:auto !important;
  min-height:inherit !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  padding:
    clamp(58px,8vw,92px)
    clamp(46px,7.2vw,86px)
    clamp(58px,8vw,92px) !important;
  gap:clamp(8px,1.4vw,16px) !important;
}

/* Premium readability over any furry color. */
.price-content,
.case-inner,
.proof-card > div,
.proof-note > div,
.card-copy,
.board-copy,
.host-copy,
.summary-content,
.investor-card > div,
.trust-panel > div,
.validation > div,
.metric-card > div,
.offer-card .card-copy,
.live-board > div,
.demo-card > div,
.rules > div,
.flow-card > div,
.flow-panel > div{
  color:#fff !important;
  text-shadow:
    0 2px 0 rgba(0,0,0,.16),
    0 10px 24px rgba(0,0,0,.42),
    0 0 1px rgba(0,0,0,.90) !important;
}

.price-content *,
.case-inner *,
.proof-card > div *,
.proof-note > div *,
.card-copy *,
.board-copy *,
.host-copy *,
.summary-content *,
.investor-card > div *,
.trust-panel > div *,
.validation > div *,
.metric-card > div *,
.offer-card .card-copy *,
.live-board > div *,
.demo-card > div *,
.rules > div *,
.flow-card > div *,
.flow-panel > div *{
  color:inherit !important;
  text-shadow:inherit !important;
  max-width:100% !important;
}

/* On very light furry cards, the white text can be too soft. Give it a stronger shadow pill feel. */
.price-card:nth-of-type(1) .price-content,
.case-card.light .case-inner,
.proof-card.light > div,
.proof-note > div{
  text-shadow:
    0 2px 0 rgba(0,0,0,.18),
    0 12px 28px rgba(0,0,0,.48),
    0 0 1px rgba(0,0,0,.95) !important;
}

/* Copy width: never touch fuzzy borders. */
.price-content h2,
.price-content h3,
.case-inner h2,
.proof-card h2,
.proof-note h2,
.card-copy h2,
.board-copy h2,
.host-copy h2,
.summary-content h2,
.investor-card h2,
.trust-panel h2,
.validation h2,
.metric-card h2,
.offer-card h2,
.live-board h2,
.demo-card h2,
.rules h2,
.flow-card h2,
.flow-panel h2{
  max-width:10.8ch !important;
}

.price-content p,
.case-inner p,
.proof-card p,
.proof-note p,
.card-copy p,
.board-copy p,
.host-copy p,
.summary-content p,
.investor-card p,
.trust-panel p,
.validation p,
.metric-card p,
.offer-card p,
.live-board p,
.demo-card p,
.rules p,
.flow-card p,
.flow-panel p{
  max-width:32ch !important;
}

/* Lists in pricing: tighter, cleaner */
.price-content ul,
.price-content ol{
  padding-left:0 !important;
  margin:10px 0 0 !important;
  list-style:none !important;
  display:grid !important;
  gap:8px !important;
}

.price-content li{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  font-weight:900 !important;
}

.price-content li::before{
  content:"";
  width:10px;
  height:10px;
  flex:0 0 10px;
  margin-top:.36em;
  border-radius:50%;
  background:#6ea2ff;
  box-shadow:0 0 0 5px rgba(110,162,255,.22);
}

/* Furry CTAs inside cards: not too close to fuzzy border. */
.price-content .cta-fur,
.card-copy .cta-fur,
.board-copy .cta-fur,
.host-copy .cta-fur,
.summary-content .cta-fur{
  margin-top:clamp(16px,3vw,36px) !important;
  max-width:min(520px,100%) !important;
}

/* Dock and header are lighter and cannot block reading. */
.dock,
.examples-dock,
.solutions-dock,
.live-dock,
.checkout-dock,
.restaurant-dock,
.pricing-dock,
.offer-dock,
.demo-dock{
  background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.10)) !important;
  backdrop-filter:blur(68px) saturate(235%) brightness(1.12) !important;
  -webkit-backdrop-filter:blur(68px) saturate(235%) brightness(1.12) !important;
  opacity:.94 !important;
}

/* Page end must never hide under sticky dock */
.shell,
.examples-shell,
.solutions-shell,
.live-shell,
.checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-bottom:calc(210px + env(safe-area-inset-bottom)) !important;
}

/* Reveal animations: wow without scroll hijack. */
.reveal,
.scene-copy,
.kora-stage,
.kora-hero,
.case-card,
.price-card,
.offer-card,
.proof-card{
  will-change:transform,opacity !important;
}

.reveal.visible,
.visible{
  transition:
    opacity .72s cubic-bezier(.2,.7,.2,1),
    transform .72s cubic-bezier(.2,.7,.2,1),
    filter .72s cubic-bezier(.2,.7,.2,1) !important;
}

/* Mobile precision */
@media(max-width:820px){
  h1,
  .scene-line{
    font-size:clamp(1.92rem,8.3vw,2.92rem) !important;
    max-width:11.8ch !important;
  }

  h2{
    font-size:clamp(1.62rem,6.7vw,2.48rem) !important;
    max-width:11.6ch !important;
  }

  p,
  li,
  .hero-sub,
  .scene-subline,
  .section-sub{
    font-size:.9rem !important;
    line-height:1.34 !important;
  }

  .price-card,
  .offer-card,
  .proof-card,
  .case-card,
  .investor-card,
  .metric-card,
  .validation,
  .trust-panel,
  .demo-card,
  .live-board,
  .flow-card,
  .flow-panel,
  .host-panel,
  .proof-note{
    min-height:clamp(390px,98vw,560px) !important;
    margin-bottom:42px !important;
  }

  .price-content,
  .case-inner,
  .proof-card > div,
  .proof-note > div,
  .card-copy,
  .board-copy,
  .host-copy,
  .summary-content,
  .investor-card > div,
  .trust-panel > div,
  .validation > div,
  .metric-card > div,
  .offer-card .card-copy,
  .live-board > div,
  .demo-card > div,
  .rules > div,
  .flow-card > div,
  .flow-panel > div{
    padding:
      clamp(48px,12vw,70px)
      clamp(36px,9vw,52px)
      clamp(48px,12vw,70px) !important;
  }

  .price-content h2,
  .price-content h3,
  .case-inner h2,
  .proof-card h2,
  .proof-note h2,
  .card-copy h2,
  .board-copy h2,
  .host-copy h2,
  .summary-content h2,
  .investor-card h2,
  .trust-panel h2,
  .validation h2,
  .metric-card h2,
  .offer-card h2,
  .live-board h2,
  .demo-card h2,
  .rules h2,
  .flow-card h2,
  .flow-panel h2{
    max-width:10.5ch !important;
  }

  .tags,
  .badges,
  .chip-row{
    gap:6px !important;
  }

  .tags span,
  .badges span,
  .chip-row span,
  .signal-row span,
  .home-proof span{
    font-size:10.5px !important;
    min-height:26px !important;
    padding:0 9px !important;
  }
}

/* Tiny phones: reduce optional detail before breaking layout */
@media(max-width:380px){
  .price-content p,
  .case-inner p,
  .proof-card p,
  .proof-note p{
    font-size:.84rem !important;
  }

  .price-content li{
    font-size:.84rem !important;
  }

  .tags,
  .badges{
    display:none !important;
  }
}


/* V8000 Unified Bottom Menu
   Same icons everywhere: chat = Kora Map, WhatsApp, phone, location. */
.kora-unified-dock,
.dock,
.restaurant-dock,
.demo-dock,
.offer-dock,
.pricing-dock,
.examples-dock,
.solutions-dock,
.live-dock,
.checkout-dock,
.investor-dock,
.kora-now-dock,
.proof-dock{
  position:fixed !important;
  left:50% !important;
  right:auto !important;
  bottom:calc(12px + env(safe-area-inset-bottom)) !important;
  transform:translateX(-50%) !important;
  z-index:999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(16px,5.5vw,42px) !important;
  width:min(560px,calc(100% - 28px)) !important;
  min-height:86px !important;
  padding:10px clamp(18px,4vw,34px) !important;
  border-radius:999px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.36),rgba(255,255,255,.10)) !important;
  backdrop-filter:blur(68px) saturate(240%) brightness(1.14) !important;
  -webkit-backdrop-filter:blur(68px) saturate(240%) brightness(1.14) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.92),
    inset 0 -1px 0 rgba(255,255,255,.10),
    0 34px 74px rgba(72,110,178,.13) !important;
  opacity:.98 !important;
}

.kora-unified-dock .dock-item,
.dock .dock-item,
.restaurant-dock .dock-item,
.demo-dock .dock-item,
.offer-dock .dock-item,
.pricing-dock .dock-item,
.examples-dock .dock-item,
.solutions-dock .dock-item,
.live-dock .dock-item,
.checkout-dock .dock-item,
.investor-dock .dock-item,
.kora-now-dock .dock-item,
.proof-dock .dock-item{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  min-height:68px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  transition:transform .22s cubic-bezier(.2,.7,.2,1), filter .22s ease, opacity .22s ease !important;
}

.kora-unified-dock .dock-item img,
.dock .dock-item img,
.restaurant-dock .dock-item img,
.demo-dock .dock-item img,
.offer-dock .dock-item img,
.pricing-dock .dock-item img,
.examples-dock .dock-item img,
.solutions-dock .dock-item img,
.live-dock .dock-item img,
.checkout-dock .dock-item img,
.investor-dock .dock-item img,
.kora-now-dock .dock-item img,
.proof-dock .dock-item img{
  width:66px !important;
  height:66px !important;
  min-width:66px !important;
  min-height:66px !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
  transform:none !important;
  filter:drop-shadow(0 15px 22px rgba(72,110,178,.14)) !important;
  pointer-events:none !important;
}

.kora-unified-dock .dock-item:hover,
.kora-unified-dock .dock-item:active,
.dock .dock-item:hover,
.dock .dock-item:active{
  transform:translateY(-4px) scale(1.045) !important;
  filter:saturate(1.08) brightness(1.03) !important;
}

/* Never hide unified dock with old nav-hidden behavior. */
body.nav-hidden .kora-unified-dock,
body.nav-hidden .dock,
body.nav-hidden .restaurant-dock,
body.nav-hidden .demo-dock,
body.nav-hidden .offer-dock,
body.nav-hidden .pricing-dock,
body.nav-hidden .examples-dock,
body.nav-hidden .solutions-dock,
body.nav-hidden .live-dock,
body.nav-hidden .checkout-dock,
body.nav-hidden .investor-dock,
body.nav-hidden .kora-now-dock,
body.nav-hidden .proof-dock{
  opacity:.98 !important;
  transform:translateX(-50%) !important;
  pointer-events:auto !important;
}

/* Add enough bottom space on all pages so the unified menu does not cover text/cards. */
.shell,
.examples-shell,
.solutions-shell,
.live-shell,
.checkout-shell,
.restaurant-shell,
.pricing-shell,
.offer-shell,
.demo-shell{
  padding-bottom:calc(220px + env(safe-area-inset-bottom)) !important;
}

@media(max-width:820px){
  .kora-unified-dock,
  .dock,
  .restaurant-dock,
  .demo-dock,
  .offer-dock,
  .pricing-dock,
  .examples-dock,
  .solutions-dock,
  .live-dock,
  .checkout-dock,
  .investor-dock,
  .kora-now-dock,
  .proof-dock{
    width:min(520px,calc(100% - 28px)) !important;
    min-height:82px !important;
    padding:9px clamp(16px,4.4vw,28px) !important;
    gap:clamp(14px,5.4vw,30px) !important;
  }

  .kora-unified-dock .dock-item,
  .dock .dock-item,
  .restaurant-dock .dock-item,
  .demo-dock .dock-item,
  .offer-dock .dock-item,
  .pricing-dock .dock-item,
  .examples-dock .dock-item,
  .solutions-dock .dock-item,
  .live-dock .dock-item,
  .checkout-dock .dock-item,
  .investor-dock .dock-item,
  .kora-now-dock .dock-item,
  .proof-dock .dock-item{
    width:62px !important;
    height:62px !important;
    min-width:62px !important;
    min-height:62px !important;
  }

  .kora-unified-dock .dock-item img,
  .dock .dock-item img,
  .restaurant-dock .dock-item img,
  .demo-dock .dock-item img,
  .offer-dock .dock-item img,
  .pricing-dock .dock-item img,
  .examples-dock .dock-item img,
  .solutions-dock .dock-item img,
  .live-dock .dock-item img,
  .checkout-dock .dock-item img,
  .investor-dock .dock-item img,
  .kora-now-dock .dock-item img,
  .proof-dock .dock-item img{
    width:60px !important;
    height:60px !important;
    min-width:60px !important;
    min-height:60px !important;
  }
}

@media(max-width:360px){
  .kora-unified-dock,
  .dock,
  .restaurant-dock,
  .demo-dock,
  .offer-dock,
  .pricing-dock,
  .examples-dock,
  .solutions-dock,
  .live-dock,
  .checkout-dock,
  .investor-dock,
  .kora-now-dock,
  .proof-dock{
    gap:10px !important;
    padding-inline:14px !important;
  }

  .kora-unified-dock .dock-item,
  .dock .dock-item{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
  }

  .kora-unified-dock .dock-item img,
  .dock .dock-item img{
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
  }
}
