/* ============================================================
   TOVIAN — KB LAB BLOCKS
   Reusable premium blocks ported from the lab preview.
   Load AFTER tovian-article.css. Class names are unique to avoid
   collisions with existing site styles.
   ============================================================ */

/* ===== 1 · BENTO killer-features ===== */
.bento{display:grid;grid-template-columns:1.25fr 1fr;gap:14px;}
.bento__col{display:grid;gap:14px;}
.bcard{position:relative;border:1px solid var(--line);border-radius:22px;padding:26px;overflow:hidden;
  background:linear-gradient(180deg,var(--glass),transparent 60%),var(--card);text-decoration:none;color:inherit;
  transition:border-color .4s var(--ease),transform .5s var(--ease),box-shadow .4s ease;display:flex;flex-direction:column;min-height:178px;}
.bcard:hover{border-color:color-mix(in srgb,var(--lime) 50%,transparent);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.bcard--lg{min-height:370px;}
.bcard__arrow{position:absolute;top:22px;right:22px;width:38px;height:38px;border-radius:999px;display:grid;place-items:center;
  border:1px solid var(--line);color:var(--lime-ink);transition:background .35s ease,color .35s ease,transform .35s ease;}
.bcard:hover .bcard__arrow{transform:translate(2px,-2px);}
.bcard__n{font-family:'Space Grotesk',sans-serif;font-size:12px;letter-spacing:.04em;color:var(--lime-ink);text-transform:lowercase;}
.bcard__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(19px,1.7vw,25px);letter-spacing:-.025em;
  line-height:1.06;margin:auto 0 8px;padding-right:46px;}
.bcard--lg .bcard__t{font-size:clamp(24px,2.4vw,34px);margin-top:14px;}
.bcard__p{color:var(--muted);font-size:13.5px;line-height:1.5;max-width:34ch;text-wrap:pretty;}
.bcard__media{margin-top:18px;border-radius:16px;height:auto;flex:1 1 auto;min-height:210px;
  background-color:#efece6;background-image:var(--kbfig,none),url("hero/studio-cove.webp");
  background-size:contain,cover;background-position:center bottom,center 60%;background-repeat:no-repeat;
  border:1px solid var(--line-2);filter:none;}
#tools .bcard--lg .bcard__media{height:auto;flex:1 1 auto;min-height:210px;border-radius:16px;
  background-color:#efece6;background-image:var(--kbfig,none),url("hero/studio-cove.webp");
  background-size:contain,cover;background-position:center bottom,center 60%;background-repeat:no-repeat;
  filter:none;border:1px solid var(--line-2);}
.bcard__foot{margin-top:18px;padding-top:16px;border-top:1px solid rgba(10,11,10,.16);font-size:12.5px;line-height:1.45;color:rgba(10,11,10,.66);}
.bcard--lime{background:var(--lime);color:var(--ink-on-lime);border-color:var(--lime);}
.bcard--lime .bcard__t,.bcard--lime h3{color:var(--ink-on-lime);}
.bcard--lime .bcard__n,.bcard--lime .bcard__p{color:rgba(10,11,10,.7);}
.bcard--lime .bcard__arrow{border-color:rgba(10,11,10,.25);color:var(--ink-on-lime);}
.bcard--lime:hover{box-shadow:var(--shadow-lime);border-color:var(--lime);}

/* ===== 2 · ACCORDION with filled active row ===== */
.acc{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--card);margin:clamp(22px,2.8vw,32px) 0;}
.acc__item{border-top:1px solid var(--line-2);}
.acc__item:first-child{border-top:0;}
.acc__head{width:100%;display:flex;align-items:center;gap:18px;padding:clamp(20px,2.4vw,30px) clamp(20px,2.6vw,34px);
  background:none;border:0;cursor:pointer;text-align:left;color:inherit;transition:background .35s ease;}
.acc__n{font-family:'Space Grotesk',sans-serif;font-size:13px;color:var(--faint);font-variant-numeric:tabular-nums;width:34px;flex:0 0 auto;}
.acc__title{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:clamp(18px,1.9vw,26px);letter-spacing:-.03em;
  text-transform:lowercase;flex:1;line-height:1.05;}
.acc__ic{width:30px;height:30px;flex:0 0 auto;border-radius:999px;border:1px solid var(--line);display:grid;place-items:center;
  color:var(--lime-ink);transition:transform .45s var(--ease),background .35s ease,color .35s ease;}
.acc__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease);}
.acc__panel-in{overflow:hidden;}
.acc__panel p{padding:clamp(18px,2vw,24px) clamp(20px,2.6vw,34px) clamp(22px,2.6vw,30px) calc(clamp(20px,2.6vw,34px) + 52px);color:var(--muted);
  font-size:15px;line-height:1.6;max-width:74ch;text-wrap:pretty;}
.acc__item.open .acc__panel{grid-template-rows:1fr;}
.acc__item.open .acc__head{background:var(--lime);}
.acc__item.open .acc__n{color:rgba(10,11,10,.55);}
.acc__item.open .acc__title{color:var(--ink-on-lime);font-weight:600;}
.acc__item.open .acc__ic{background:rgba(10,11,10,.14);border-color:transparent;color:var(--ink-on-lime);transform:rotate(45deg);}

/* ===== 3 · 4×N round-icon advantages ===== */
.adv{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.adv__c{border:1px solid var(--line);border-radius:18px;padding:24px 22px;background:var(--card);
  transition:border-color .4s ease,transform .5s var(--ease);}
.adv__c:hover{border-color:color-mix(in srgb,var(--lime) 45%,transparent);transform:translateY(-3px);}
.adv__ic{width:46px;height:46px;border-radius:999px;background:var(--lime);color:var(--ink-on-lime);
  display:grid;place-items:center;margin-bottom:16px;}
.adv__ic svg{width:21px;height:21px;}
.adv__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:16px;letter-spacing:-.02em;margin-bottom:6px;text-transform:lowercase;}
.adv__p{color:var(--muted);font-size:13px;line-height:1.5;text-wrap:pretty;}

/* ===== 4 · product-dossier card ===== */
.doss{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--card);transition:border-color .4s ease,transform .5s var(--ease),box-shadow .4s ease;}
.doss:hover{border-color:color-mix(in srgb,var(--lime) 42%,transparent);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.doss__media{position:relative;height:clamp(220px,30vw,340px);background-size:cover;background-position:center;}
.doss__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(7,8,9,.78));}
.doss__price{position:absolute;top:20px;right:20px;z-index:2;text-align:right;}
.doss__price b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(22px,2.4vw,34px);letter-spacing:-.03em;color:#fff;}
.doss__price span{font-size:12px;color:rgba(255,255,255,.7);}
.doss__title{position:absolute;left:24px;bottom:20px;z-index:2;font-family:'Space Grotesk',sans-serif;font-weight:600;
  font-size:clamp(22px,2.6vw,36px);letter-spacing:-.03em;color:#fff;text-transform:lowercase;}
.doss__specs{display:grid;grid-template-columns:repeat(4,1fr);}
.doss__cell{padding:20px 22px;border-right:1px solid var(--line-2);}
.doss__cell:last-child{border-right:0;}
.doss__cell span{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:7px;}
.doss__cell b{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--ink);}
.doss__cell--lime{background:var(--lime);}
.doss__cell--lime span{color:rgba(10,11,10,.6);}
.doss__cell--lime b{color:var(--ink-on-lime);}

/* ===== 5 · stat bar — one filled + tiers ===== */
.statbar{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:18px;overflow:hidden;}
.statbar__c{padding:26px 22px;border-right:1px solid var(--line-2);background:var(--card);}
.statbar__c:last-child{border-right:0;}
.statbar__c b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(24px,2.6vw,38px);
  letter-spacing:-.03em;line-height:1;color:var(--ink);}
.statbar__c span{display:block;margin-top:8px;font-size:12.5px;color:var(--muted);line-height:1.4;}
.statbar__c--lime{background:var(--lime);}
.statbar__c--lime b{color:var(--ink-on-lime);}
.statbar__c--lime span{color:rgba(10,11,10,.66);}
.tierwrap{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px;}
.tier{border:1px solid var(--line);border-radius:20px;padding:26px 24px;background:var(--card);display:flex;flex-direction:column;transition:border-color .4s ease,transform .5s var(--ease),box-shadow .4s ease;}
.tier:not(.tier--lime):hover{border-color:color-mix(in srgb,var(--lime) 42%,transparent);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.tier--lime:hover{transform:translateY(-4px);}
.tier__n{font-family:'Space Grotesk',sans-serif;font-size:12px;color:var(--lime-ink);text-transform:lowercase;letter-spacing:.04em;}
.tier__price{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(26px,2.8vw,38px);letter-spacing:-.03em;margin:12px 0 4px;}
.tier__price em{font-style:normal;font-size:14px;color:var(--faint);font-weight:400;}
.tier ul{list-style:none;margin:16px 0 22px;display:grid;gap:9px;}
.tier li{font-size:13.5px;color:var(--muted);display:flex;gap:9px;align-items:flex-start;}
.tier li::before{content:"";width:15px;height:15px;flex:0 0 auto;margin-top:1px;border-radius:999px;
  background:color-mix(in srgb,var(--lime) 20%,transparent);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' stroke='black' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' stroke='black' stroke-width='1.6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;}
.tier__btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;
  padding:12px 18px;border-radius:999px;border:1px solid var(--line);color:var(--ink);font-family:'Space Grotesk',sans-serif;
  font-weight:600;font-size:13.5px;text-decoration:none;transition:border-color .3s ease;}
.tier__btn:hover{border-color:var(--lime);}
.tier--lime{background:var(--lime);border-color:var(--lime);box-shadow:var(--shadow-lime);}
.tier--lime .tier__n{color:rgba(10,11,10,.6);}
.tier--lime .tier__price,.tier--lime .tier__price em{color:var(--ink-on-lime);}
.tier--lime li{color:rgba(10,11,10,.74);}
.tier--lime li::before{background:rgba(10,11,10,.55);}
.tier--lime .tier__btn{background:var(--ink-on-lime);color:var(--lime);border-color:transparent;}
.tier__badge{align-self:flex-start;margin-bottom:14px;padding:4px 11px;border-radius:999px;background:rgba(10,11,10,.16);
  font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-on-lime);}

/* ===== 6 · editorial heading + accent number ===== */
.edh{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  padding-bottom:22px;border-bottom:1px solid var(--line);}
.edh__l .edh__kick{display:inline-flex;align-items:center;gap:9px;font-family:'Space Grotesk',sans-serif;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--lime-ink);margin-bottom:14px;}
.edh__h{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(30px,5vw,64px);
  line-height:.94;letter-spacing:-.04em;text-transform:lowercase;margin:0;}
.edh__num{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(44px,7vw,104px);
  line-height:.8;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1.5px var(--lime-ink);
  text-stroke:1.5px var(--lime-ink);flex:0 0 auto;}
.edh__num small{display:block;font-size:.13em;-webkit-text-stroke:0;text-stroke:0;color:var(--lime-ink);
  letter-spacing:.18em;text-transform:uppercase;text-align:right;margin-top:.4em;}

/* ===== 7 · mission text muted + emphasis ===== */
.mission{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:clamp(24px,3.4vw,46px);
  line-height:1.22;letter-spacing:-.03em;max-width:24ch;color:var(--faint);text-wrap:balance;}
.mission b,.mission em{color:var(--ink);font-weight:500;font-style:normal;}

/* ===== 8 · giant editorial list w/ hover image ===== */
.glist{position:relative;}
.glist__row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:clamp(20px,3vw,38px) 0;border-top:1px solid var(--line-2);text-decoration:none;color:var(--ink);
  transition:padding-left .45s var(--ease),color .35s ease;}
.glist__row:last-child{border-bottom:1px solid var(--line-2);}
.glist__row b{font-family:'Space Grotesk',sans-serif;font-weight:500;font-size:clamp(26px,5vw,58px);
  letter-spacing:-.04em;text-transform:lowercase;line-height:1;transition:color .35s ease;}
.glist__ar{width:clamp(34px,4vw,52px);height:clamp(34px,4vw,52px);flex:0 0 auto;border-radius:999px;
  border:1px solid var(--line);display:grid;place-items:center;color:var(--lime-ink);
  transition:background .35s ease,color .35s ease,transform .4s var(--ease);}
.glist__row:hover{padding-left:clamp(14px,2vw,30px);}
.glist__row:hover b{color:var(--lime-ink);}
.glist__row:hover .glist__ar{background:var(--lime);color:var(--ink-on-lime);border-color:var(--lime);transform:translate(2px,-2px);}

/* ===== 10 · light inverted gauge section ===== */
.meter{background:#f3f1e8;color:#181712;border-radius:24px;padding:clamp(34px,5vw,62px);border:1px solid rgba(60,50,30,.12);margin:clamp(24px,3vw,36px) 0;}
.meter__kick{font-family:'Space Grotesk',sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#5b7e0a;margin-bottom:14px;}
.meter__h{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(24px,3vw,40px);letter-spacing:-.03em;line-height:1.05;max-width:20ch;color:#181712;margin:0;}
.meter__track{position:relative;height:14px;border-radius:999px;background:rgba(60,50,30,.1);margin:clamp(34px,4vw,52px) 0 10px;overflow:hidden;}
.meter__fill{position:absolute;inset:0 28% 0 0;border-radius:999px;background:linear-gradient(90deg,#a8e80c,#bdf52e);}
.meter__mk{position:relative;display:flex;justify-content:space-between;font-family:'Space Grotesk',sans-serif;font-size:13px;color:rgba(24,23,18,.6);}
.meter__big{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(40px,6vw,84px);letter-spacing:-.04em;line-height:1;color:#181712;margin-top:8px;}
.meter__big em{font-style:normal;color:#5b7e0a;}
.meter__row{display:flex;flex-wrap:wrap;gap:clamp(20px,4vw,52px);margin-top:clamp(20px,2.6vw,30px);}
.meter__row div{flex:1;min-width:140px;}
.meter__row b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(18px,1.8vw,24px);letter-spacing:-.02em;color:#181712;}
.meter__row span{font-size:13px;color:rgba(24,23,18,.62);}

/* ===== 11 · tag-chips over media + price ===== */
.chipcard{position:relative;border-radius:22px;overflow:hidden;min-height:clamp(280px,34vw,400px);display:block;
  background-size:cover;background-position:center;border:1px solid var(--line);text-decoration:none;transition:border-color .4s ease,transform .5s var(--ease),box-shadow .4s ease;}
.chipcard:hover{border-color:color-mix(in srgb,var(--lime) 42%,transparent);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.chipcard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,8,9,.15) 0%,rgba(7,8,9,.2) 45%,rgba(7,8,9,.85));}
.chipcard__top{position:absolute;inset:20px 20px auto 20px;z-index:2;display:flex;flex-wrap:wrap;gap:8px;}
.chipcard__chip{padding:7px 13px;border-radius:999px;font-family:'Space Grotesk',sans-serif;font-size:11.5px;font-weight:600;
  letter-spacing:.01em;text-transform:lowercase;color:#fff;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);}
.chipcard__chip--lime{background:var(--lime);color:var(--ink-on-lime);border-color:var(--lime);}
.chipcard__price{position:absolute;top:20px;right:20px;z-index:2;text-align:right;}
.chipcard__price b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(20px,2.2vw,30px);letter-spacing:-.03em;color:#fff;}
.chipcard__price span{font-size:11px;color:rgba(255,255,255,.72);}
.chipcard__bot{position:absolute;inset:auto 20px 20px 20px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;}
.chipcard__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(20px,2.4vw,30px);letter-spacing:-.03em;color:#fff;text-transform:lowercase;line-height:1.05;}
.chipcard__go{flex:0 0 auto;width:46px;height:46px;border-radius:999px;background:var(--lime);color:var(--ink-on-lime);display:grid;place-items:center;text-decoration:none;transition:transform .3s ease;}
.chipcard:hover .chipcard__go{transform:translate(2px,-2px);}

/* ===== 12 · accent block split by vertical hairlines ===== */
.vcol{border-radius:24px;background:var(--lime);color:var(--ink-on-lime);overflow:hidden;margin:clamp(22px,2.8vw,32px) 0;
  display:grid;grid-template-columns:repeat(4,1fr);}
.vcol__c{padding:clamp(24px,3.2vw,40px) clamp(16px,1.9vw,24px);border-left:1px solid rgba(10,11,10,.16);
  min-height:clamp(190px,21vw,248px);display:flex;flex-direction:column;transition:background .35s ease;}
.vcol__c:first-child{border-left:0;}
.vcol__c:hover{background:rgba(10,11,10,.06);}
.vcol__c:hover .vcol__n{color:rgba(10,11,10,.55);}
.vcol__n{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(28px,3vw,44px);letter-spacing:-.04em;line-height:.85;color:rgba(10,11,10,.3);transition:color .35s ease;}
.vcol__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(15px,1.45vw,18px);letter-spacing:-.025em;line-height:1.15;text-transform:lowercase;margin:clamp(16px,2vw,22px) 0 8px;min-height:2.7em;display:flex;align-items:flex-end;}
.vcol .vcol__p{color:rgba(10,11,10,.72);font-size:13px;line-height:1.5;text-wrap:pretty;margin:0;}
/* 5-step variant + result column highlight */
.vcol--5{grid-template-columns:repeat(5,1fr);}
.vcol__c--sum{background:rgba(10,11,10,.07);}
.vcol__c--sum .vcol__n{color:rgba(10,11,10,.5);}

/* ===== okcards — confirmation cards (premium: filled lime check, spotlight, hover lift) ===== */
.okcards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.okcards__c{position:relative;border:1px solid var(--line);border-radius:20px;padding:26px 26px 26px 26px;overflow:hidden;
  background:linear-gradient(180deg,var(--glass),transparent 62%),var(--card);
  transition:border-color .45s ease,transform .5s var(--ease),box-shadow .45s ease;}
.okcards__c:hover{border-color:color-mix(in srgb,var(--lime) 42%,transparent);transform:translateY(-3px);box-shadow:var(--shadow-md);}
.okcards__c:hover{border-color:color-mix(in srgb,var(--lime) 46%,transparent);transform:translateY(-4px);box-shadow:var(--shadow-md);}
.okcards__c > *{position:relative;z-index:1;}
.okcards__ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;margin-bottom:18px;
  background:var(--lime);color:var(--ink-on-lime);box-shadow:0 6px 16px color-mix(in srgb,var(--lime) 26%,transparent);
  transition:transform .4s var(--ease);}
.okcards__c:hover .okcards__ic{transform:scale(1.06) rotate(-3deg);}
.okcards__ic svg{width:19px;height:19px;}
.okcards__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(17px,1.5vw,20px);letter-spacing:-.025em;
  text-transform:lowercase;color:var(--ink);margin:0 0 7px;}
.okcards__d{color:var(--muted);font-size:13.5px;line-height:1.55;text-wrap:pretty;}
@media(max-width:600px){.okcards{grid-template-columns:1fr;}}

/* ===== 14 · single killer-feature (refreshed) ===== */
.kf2{display:grid;grid-template-columns:1.08fr .92fr;border:1px solid var(--line);border-radius:24px;overflow:hidden;
  background:linear-gradient(180deg,var(--glass),transparent 58%),var(--card);transition:border-color .4s ease;}
.kf2 + .kf2{margin-top:14px;}
.kf2:hover{border-color:color-mix(in srgb,var(--lime) 34%,transparent);}
.kf2__main{padding:clamp(28px,3.4vw,46px);display:flex;flex-direction:column;}
.kf2__tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 13px;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--lime) 28%,transparent);background:color-mix(in srgb,var(--lime) 10%,transparent);
  font-family:'Space Grotesk',sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--lime-ink);}
.kf2__t{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(23px,2.5vw,34px);letter-spacing:-.03em;
  line-height:1.05;margin:16px 0 10px;max-width:18ch;}
.kf2 .kf2__p{color:var(--muted);font-size:14.5px;line-height:1.55;max-width:44ch;text-wrap:pretty;margin:0 0 22px;}
.kf2__bar{display:flex;align-items:center;gap:8px;padding:7px 7px 7px 16px;border-radius:14px;border:1px solid var(--line);
  background:var(--input-bg);margin-top:auto;transition:border-color .35s ease,box-shadow .35s ease;flex-wrap:nowrap;}
.kf2__bar:focus-within{border-color:color-mix(in srgb,var(--lime) 50%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 8%,transparent);}
.kf2__input{flex:1;min-width:0;height:44px;border:0;background:transparent;color:var(--ink);font-family:'Inter',sans-serif;font-size:15px;}
.kf2__input::placeholder{color:var(--faint);}
.kf2__input:focus{outline:none;}
.kf2__input:-webkit-autofill,.kf2__input:-webkit-autofill:hover,.kf2__input:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--ink);caret-color:var(--ink);
  -webkit-box-shadow:0 0 0 1000px var(--input-bg) inset;box-shadow:0 0 0 1000px var(--input-bg) inset;
  transition:background-color 9999s ease-in-out 0s;}
.kf2__go{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border:0;border-radius:999px;cursor:pointer;
  font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:14px;color:var(--ink-on-lime);background:var(--lime);transition:transform .3s ease;text-decoration:none;}
.kf2__go:hover{transform:translateY(-1px);}
.kf2__chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 22px;}
.kf2__chip{padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--glass);
  font-family:'Space Grotesk',sans-serif;font-size:12.5px;color:var(--muted);text-transform:lowercase;}
.kf2 .kf2__fine{margin:22px 0 0;font-size:12px;color:var(--faint);}
/* calc-variant standalone CTA (no fake input bar) */
.kf2__cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:14px;align-self:flex-start;
  padding:15px 24px;border-radius:14px;background:var(--lime);color:var(--ink-on-lime);
  font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;letter-spacing:-.01em;text-decoration:none;
  transition:transform .3s ease,box-shadow .35s ease;}
.kf2__cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-lime);}
.kf2__cta svg{width:16px;height:16px;flex:0 0 auto;}
@media(max-width:600px){.kf2__cta{align-self:stretch;justify-content:center;}}
.kf2__side{position:relative;padding:clamp(24px,2.6vw,34px);border-left:1px solid var(--line-2);
  background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--lime) 10%,transparent),transparent 56%);
  display:flex;flex-direction:column;justify-content:center;gap:10px;}
.kf2prev__bar{display:flex;align-items:center;gap:6px;margin-bottom:8px;}
.kf2prev__bar i{width:8px;height:8px;border-radius:999px;background:var(--line-strong);}
.kf2prev__bar span{margin-left:6px;font-size:11px;color:var(--faint);letter-spacing:.04em;}
.kf2prev__row{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--muted);margin-top:6px;}
.kf2prev__row span{width:96px;flex:0 0 auto;}
.kf2prev__row b{flex:1;height:8px;border-radius:999px;background:color-mix(in srgb,var(--lime) 22%,transparent);position:relative;overflow:hidden;}
.kf2prev__row b::after{content:"";position:absolute;inset:0 var(--rem,40%) 0 0;background:linear-gradient(90deg,var(--lime),var(--lime-2));border-radius:999px;}
.kf2prev__verdict{margin-top:10px;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;
  border:1px solid color-mix(in srgb,var(--lime) 30%,transparent);background:color-mix(in srgb,var(--lime) 8%,transparent);}
.kf2prev__dot{width:9px;height:9px;flex:0 0 auto;border-radius:999px;background:var(--lime);box-shadow:0 0 10px var(--lime);}
.kf2prev__verdict b{font-family:'Space Grotesk',sans-serif;font-size:14px;color:var(--ink);}
.kf2prev__verdict span{font-size:12px;color:var(--muted);}

@media(max-width:860px){
  .bento{grid-template-columns:1fr;}
  .bcard--lg{min-height:240px;}
  .adv{grid-template-columns:repeat(2,1fr);}
  .doss__specs{grid-template-columns:repeat(2,1fr);}
  .doss__cell:nth-child(2){border-right:0;}
  .doss__cell:nth-child(1),.doss__cell:nth-child(2){border-bottom:1px solid var(--line-2);}
  .statbar{grid-template-columns:repeat(2,1fr);}
  .statbar__c:nth-child(2){border-right:0;}
  .statbar__c{border-bottom:1px solid var(--line-2);}
  .tierwrap{grid-template-columns:1fr;}
  .edh{flex-direction:column;align-items:flex-start;gap:10px;}
  .kf2{grid-template-columns:1fr;}
  .kf2__side{border-left:0;border-top:1px solid var(--line-2);}
  .kf2__go{padding:0 16px;}
  .vcol{grid-template-columns:repeat(2,1fr);}
  .vcol--5{grid-template-columns:repeat(2,1fr);}
  .vcol__c:nth-child(odd){border-left:0;}
  .vcol__c:nth-child(n+3){border-top:1px solid rgba(10,11,10,.16);}
}
@media(max-width:600px){
  .kf2__side{display:none;}
  .kf2 .kf2__chips{margin:16px 0 18px;}
}
@media(max-width:540px){
  .adv{grid-template-columns:1fr;}
  .doss__specs{grid-template-columns:1fr;}
  .doss__cell{border-right:0;border-bottom:1px solid var(--line-2);}
  .doss__cell:last-child{border-bottom:0;}
  .statbar{grid-template-columns:1fr;}
  .statbar__c{border-right:0;}
  .vcol{grid-template-columns:1fr;}
  .vcol__c{border-left:0;border-top:1px solid rgba(10,11,10,.16);min-height:0;
    flex-direction:row;align-items:baseline;gap:16px;padding:18px 20px;}
  .vcol__c:first-child{border-top:0;}
  .vcol__n{font-size:26px;flex:0 0 auto;min-width:34px;}
  .vcol__t{margin:0 0 4px;min-height:0;display:block;}
  .vcol__c > div:last-of-type,.vcol__c{align-items:baseline;}
  .vcol__c .vcol__t + .vcol__p{margin-top:2px;}
}

/* ===== TL;DR --key — airy premium key-takeaways card (brand star markers, no dividers) ===== */
.art__hero .art__tldr--key{padding:clamp(20px,2.6vw,30px) clamp(22px,2.8vw,34px);overflow:hidden;}
.art__tldr--key .art__tldr-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:clamp(16px,2vw,22px);}
.art__tldr--key .art__tldr-k{margin-bottom:0;}
.art__tldr--key .art__tldr-badge{font-family:'Space Grotesk',sans-serif;font-size:11px;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ink-on-lime);background:var(--lime);padding:5px 11px;border-radius:999px;}
.art__hero .art__tldr--key ul{gap:clamp(13px,1.7vw,18px);}
.art__hero .art__tldr--key li{padding-left:28px;}
.art__hero .art__tldr--key li::before{content:"";position:absolute;left:0;top:6px;width:13px;height:13px;
  background:var(--lime);-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat;border-radius:0;}

/* ===== kbquote --principle — premium principle card: eyebrow + watermark glyph + wordmark cite ===== */
.art__body .kbquote--principle{padding-top:clamp(26px,3.4vw,42px);}
.art__body .kbquote--principle::before{content:"”";left:auto;right:clamp(20px,3vw,40px);top:clamp(2px,1vw,14px);font-size:clamp(120px,15vw,210px);opacity:.1;pointer-events:none;}
.kbquote__eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:clamp(16px,2vw,22px);
  font-family:'Space Grotesk',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--lime-ink);position:relative;z-index:1;}
.kbquote__eyebrow .star{font-size:11px;color:var(--lime);}
.art__body .kbquote--principle p{padding-left:0!important;position:relative;z-index:1;}
.art__body .kbquote--principle cite{margin-left:0;}
.art__body .kbquote--principle cite::after{content:"· tovian";margin-left:8px;font-weight:600;color:var(--lime-ink);letter-spacing:.02em;text-transform:none;}

/* ============================================================
   KBENTO — лаборатория плашек (промоутнуто из kb-cards-demo.html, 22.06.2026)
   Асимметричная bento-сетка: 2 равные сверху + 1 широкая снизу (.kbento .wide).
   Решает чётность редакционно. Поверхность .kbc — премиум-карта с лайм-штрихом.
   Неймспейс .kbento/.kbc — чтобы не конфликтовать с .bento (killer) и body.kb.
   Варианты: --num (контурный номер за угол · замена sigcards/paycards),
             --ring (цифра в лайм-кольце · замена prepgrid),
             --live (курсор-прожектор · для одного ключевого блока).
   ============================================================ */
.kbento{display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.3vw,16px);}
.kbento .wide{grid-column:1 / -1;}
@media(max-width:760px){.kbento{grid-template-columns:1fr;}.kbento .wide{grid-column:auto;}}

.kbento .kbc{position:relative;display:flex;flex-direction:column;padding:clamp(24px,2.6vw,34px);
  border:1px solid var(--line-2);border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,var(--glass),transparent 42%),var(--card);
  transition:border-color .5s var(--ease),box-shadow .5s var(--ease),transform .5s var(--ease);}
.kbento .kbc::before{content:"";position:absolute;top:0;left:0;height:2px;width:100%;z-index:3;border-radius:16px 16px 0 0;
  background:linear-gradient(90deg,var(--lime),transparent 70%);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);}
.kbento .kbc:hover::before{transform:scaleX(1);}
.kbento .kbc > *{position:relative;z-index:1;}
.kbento .kbc b{display:block;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(16px,1.3vw,19px);
  letter-spacing:-.015em;color:var(--ink);margin-bottom:9px;text-wrap:balance;}
.kbento .kbc p{font-size:14.5px;line-height:1.6;color:var(--muted);text-wrap:pretty;margin:0;}
.kbento .kbc:hover{border-color:rgba(168,232,12,.42);box-shadow:0 30px 70px rgba(0,0,0,.4);}

/* широкая карточка — горизонтальная: крупный номер слева, контент справа */
.kbento .kbc--wide{flex-direction:row;align-items:center;gap:clamp(22px,3vw,40px);}
.kbento .kbc__rail{flex:0 0 auto;display:flex;align-items:center;gap:clamp(18px,2vw,26px);}
.kbento .kbc__big{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(54px,7vw,92px);line-height:.85;
  letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1.4px rgba(168,232,12,.5);text-stroke:1.4px rgba(168,232,12,.5);}
.kbento .kbc__div{width:1px;align-self:stretch;background:linear-gradient(180deg,transparent,rgba(255,255,255,.14),transparent);}
.kbento .kbc__txt{flex:1;}
.kbento .kbc--wide b{margin-bottom:6px;}
@media(max-width:760px){.kbento .kbc--wide{flex-direction:column;align-items:flex-start;gap:16px;}.kbento .kbc__div{display:none;}}

/* ── вариант A · нумерованная (контурный numeral бьёт за угол) ── */
.kbento .kbc--num{padding-top:clamp(30px,3.4vw,46px);}
.kbento .kbc--num .kbc__n{position:absolute;top:-8px;right:6px;z-index:0;pointer-events:none;
  font-family:'Space Grotesk',sans-serif;font-weight:600;line-height:1;letter-spacing:-.03em;font-size:clamp(78px,9vw,128px);
  color:transparent;-webkit-text-stroke:1.2px rgba(168,232,12,.16);text-stroke:1.2px rgba(168,232,12,.16);}

/* ── вариант B · кольцо (заливается лаймом на ховере) ── */
.kbento .kbc--ring .kbc__n{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:50%;
  font-family:'Space Grotesk',sans-serif;font-weight:600;border:1.5px solid rgba(168,232,12,.5);color:var(--lime-ink);font-size:17px;margin-bottom:18px;
  transition:background .45s var(--ease),color .45s,border-color .45s,box-shadow .45s;}
.kbento .kbc--ring:hover{transform:translateY(-4px);}
.kbento .kbc--ring:hover .kbc__n{background:var(--lime);color:var(--ink-on-lime);border-color:var(--lime);box-shadow:0 0 0 7px rgba(168,232,12,.13);}

/* ── вариант C · живая (лайм-прожектор за курсором; --mx/--my ставит pv-interactions.js) ── */
.kbento .kbc--live::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .45s ease;
  background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(168,232,12,.15),transparent 62%);}
.kbento .kbc--live:hover{transform:translateY(-4px);}
.kbento .kbc--live:hover::after{opacity:1;}
.kbento .kbc--live .kbc__q{display:inline-flex;align-items:center;gap:9px;font-family:'Space Grotesk',sans-serif;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--lime-ink);margin-bottom:14px;}
.kbento .kbc--live .kbc__q::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 9px rgba(168,232,12,.8);flex:0 0 auto;}
@media(hover:none){.kbento .kbc:hover{transform:none;}}

/* MOBILE-FIRST КАНОН — волна 4 «максимально круто» (02.07.2026) */
@media(max-width:760px){
  .kf2__input{font-size:16px!important;}
  .kf2__chip{min-height:44px;}
}
@media(hover:none){
  .kf2__chip:active,.chipcard:active{transform:scale(.97);}
}
