/*
Theme Name: KiniFlow
Description: Clinical Calm theme for KiniFlow recovery brand.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 8.0
*/

/* === HARD RESET: override WP core + WooCommerce block defaults === */
body,html{margin:0;padding:0}
:where(body){font-family:Manrope,system-ui,sans-serif!important;font-size:17px!important;line-height:1.65!important;color:#12212E!important;background:#FFFFFF!important}
:where(h1,h2,h3,h4,h5,h6){font-family:Manrope,system-ui,sans-serif!important}
:root{--wp--preset--font-size--normal:17px!important;--wp--preset--font-size--huge:clamp(2.375rem,1.5rem + 3.4vw,3.75rem)!important}
.wp-element-button{font:600 16px/1 Manrope,sans-serif!important;padding:17px 28px!important;border-radius:12px!important;background:#1F4E79!important;color:#fff!important;border:0!important}
.wp-element-button:hover{background:#173C5E!important}

:root{
  --bg:#FFFFFF;--surface:#F4F7FA;--ink:#12212E;--muted:#5A6B7A;--border:#E2E8EE;
  --accent:#1F4E79;--accent-hover:#173C5E;--accent-tint:#EDF2F7;
  --support:#2CB1A1;--support-soft:#63D2C6;--support-tint:#EAF7F5;
  --r-sm:10px;--r-md:12px;--r-lg:16px;--r-xl:24px;
  --sh:0 1px 2px rgba(18,33,46,.05), 0 8px 24px rgba(18,33,46,.06);
  --sec:96px;--wrap:1200px;
}
@media(max-width:1024px){:root{--sec:64px}}
@media(max-width:767px){:root{--sec:48px}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Manrope,system-ui,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
@media(max-width:767px){body{font-size:16px}}
img{max-width:100%;display:block}a{color:var(--accent);text-underline-offset:3px}
h1,h2,h3,h4{margin:0 0 16px;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(2.375rem,1.5rem + 3.4vw,3.75rem);font-weight:800;line-height:1.05}
h2{font-size:clamp(1.8rem,1.25rem + 2.1vw,2.625rem);font-weight:800;line-height:1.1;letter-spacing:-.018em}
h3{font-size:1.375rem;font-weight:700;line-height:1.3;letter-spacing:-.01em}
h4{font-size:1.0625rem;font-weight:700;line-height:1.35}
p{margin:0 0 16px;max-width:68ch}
ul,ol{margin:0 0 16px;padding-left:20px}
:focus-visible{outline:2px solid var(--support);outline-offset:2px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:24px}
@media(max-width:767px){.wrap{padding-inline:20px}}
.sec{padding-block:var(--sec)}
.sec--tight{padding-block:calc(var(--sec)*.6)}
.tint{background:var(--surface)}
.dark{background:var(--ink);color:#C4CFD8}
.dark h2,.dark h3,.dark h4{color:#fff}
.lead{font-size:1.1875rem;font-weight:500;line-height:1.55;color:var(--muted);max-width:34em}
@media(max-width:767px){.lead{font-size:1.0625rem}}
.mark{color:var(--accent);font-weight:800}
.uline{background-image:linear-gradient(var(--support-soft),var(--support-soft));background-size:100% 6px;background-repeat:no-repeat;background-position:0 88%}
.eyebrow{display:block;font-size:.8125rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--support);margin-bottom:10px}
.muted{color:var(--muted)}
.small{font-size:.875rem}
.center{text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font:600 16px/1 Manrope,sans-serif;padding:17px 30px;border:0;cursor:pointer;border-radius:var(--r-md);background:var(--accent);color:#fff;text-decoration:none;transition:background .15s,transform .08s}
.btn:hover{background:var(--accent-hover);color:#fff}
.btn:active{transform:translateY(1px)}
.btn--ghost{background:transparent;color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.btn--ghost:hover{background:var(--accent-tint);color:var(--accent)}
.btn--light{background:#fff;color:var(--accent)}
.btn--light:hover{background:var(--accent-tint)}
.btn--sm{padding:12px 20px;font-size:15px}
.btn--full{width:100%}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.chk{width:20px;height:20px;stroke:var(--support);stroke-width:1.75;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ph{position:relative;border-radius:var(--r-lg);border:1px solid var(--border);overflow:hidden;background:linear-gradient(155deg,#EAF7F5 0%,#F4F7FA 55%,#EDF2F7 100%);display:grid;place-items:center}
.ph::after{content:attr(data-label);position:absolute;bottom:16px;left:0;right:0;text-align:center;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#93A5B3}
.ph--tall{aspect-ratio:4/5}.ph--wide{aspect-ratio:16/9}.ph--sq{aspect-ratio:1/1}
/* announce+header */
.announce{background:var(--accent);color:#fff;font-size:.875rem;font-weight:600;text-align:center;padding:10px 16px;line-height:1.3}
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--border)}
.hdr__in{display:flex;align-items:center;gap:32px;height:72px}
.logo{flex:none}
.logo img{height:auto}
.nav{display:flex;gap:28px;margin-left:auto;white-space:nowrap}
.nav a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.9375rem;padding:6px 0}
.nav a:hover{color:var(--accent)}
.hdr__act{display:flex;align-items:center;gap:18px;flex:none}
.iconbtn{background:none;border:0;padding:4px;cursor:pointer;color:var(--ink);display:grid;place-items:center}
.iconbtn:hover{color:var(--accent)}
.iconbtn svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.burger{display:none}
.mnav{display:none;flex-direction:column;padding:0 24px;border-bottom:1px solid var(--border)}
.mnav a{display:block;padding:14px 0;border-bottom:1px solid var(--border);color:var(--ink);text-decoration:none;font-weight:500;font-size:1rem}
.mnav a:last-child{border-bottom:0}
.mnav.open{display:flex}
@media(max-width:960px){.nav{display:none}.burger{display:grid}}
/* hero */
.hero{padding:72px 0}@media(max-width:767px){.hero{padding:40px 0}}
.hero__grid{display:grid;grid-template-columns:1.14fr 1fr;gap:64px;align-items:center}
@media(max-width:1024px){.hero__grid{grid-template-columns:1fr;gap:36px}}
/* proof */
.proof{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:22px 0}
.proof ul{display:flex;flex-wrap:wrap;gap:14px 44px;list-style:none;margin:0;padding:0;justify-content:center}
.proof li{display:flex;align-items:center;gap:10px;font-weight:500;font-size:.9375rem}
/* rail */
.rail{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;background:#fff}
@media(max-width:860px){.rail{grid-template-columns:1fr}}
.rail__step{padding:32px;border-right:1px solid var(--border)}
.rail__step:last-child{border-right:0}
@media(max-width:860px){.rail__step{border-right:0;border-bottom:1px solid var(--border)}.rail__step:last-child{border-bottom:0}}
.rail__time{font-size:2.75rem;font-weight:800;letter-spacing:-.04em;color:var(--accent);line-height:1}
.rail__time span{font-size:1rem;font-weight:600;color:var(--muted);letter-spacing:0}
.rail__bar{height:4px;background:var(--support-tint);border-radius:999px;margin:20px 0 22px;overflow:hidden}
.rail__bar i{display:block;height:100%;background:var(--support);border-radius:999px}
/* grid */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:1024px){.g2{grid-template-columns:1fr;gap:36px}}
/* bento */
.bento{display:grid;grid-template-columns:1.35fr 1fr;grid-auto-rows:minmax(0,auto);gap:20px}
@media(max-width:860px){.bento{grid-template-columns:1fr}}
.bento__big{grid-row:span 2}
.tile{border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;background:#fff}
.tile--tint{background:var(--surface)}
.tile--ink{background:var(--ink);color:#C4CFD8;border-color:var(--ink)}
.tile--ink h3{color:#fff}
/* cmp */
.cmp{width:100%;border-collapse:collapse;font-size:.9375rem}
.cmp th,.cmp td{padding:15px 14px;text-align:left;border-bottom:1px solid var(--border)}
.cmp thead th{font-weight:700;font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cmp thead th:nth-child(2){color:var(--accent)}
.cmp td:not(:first-child),.cmp th:not(:first-child){text-align:center;width:17%}
.cmp tbody td:nth-child(2){background:var(--support-tint)}
.yes{color:var(--support);font-weight:800}
.no{color:#B9C4CE}
/* reviews */
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.rgrid{grid-template-columns:1fr}}
.rv{border-top:2px solid var(--support);padding-top:20px}
.av{width:38px;height:38px;border-radius:999px;background:var(--support-tint);color:var(--accent);display:grid;place-items:center;font-weight:700;font-size:.8125rem;flex:none}
/* accordion */
.acc{border-top:1px solid var(--border)}
.acc__i{border-bottom:1px solid var(--border)}
.acc__q{width:100%;background:none;border:0;padding:22px 40px 22px 0;text-align:left;font:700 1.0625rem/1.4 Manrope,sans-serif;color:var(--ink);cursor:pointer;position:relative}
.acc__q::after{content:"";position:absolute;right:8px;top:50%;width:11px;height:11px;border-right:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.acc__i.open .acc__q::after{transform:translateY(-30%) rotate(-135deg)}
.acc__a{display:none;padding:0 0 22px;color:var(--muted)}
.acc__i.open .acc__a{display:block}
/* blog */
.bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:900px){.bgrid{grid-template-columns:1fr}}
.post{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:13px}
.tag{font-size:.75rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--support)}
.featured{display:grid;grid-template-columns:1.2fr 1fr;gap:0;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden}
@media(max-width:860px){.featured{grid-template-columns:1fr}}
/* forms */
label{display:block;font-weight:600;font-size:.9375rem;margin-bottom:6px}
.fld{margin-bottom:18px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],select,textarea{width:100%;font:400 16px/1.4 Manrope,sans-serif;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);padding:13px 14px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--support);box-shadow:0 0 0 2px var(--support-tint)}
::placeholder{color:#8FA0AE}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:600px){.f2{grid-template-columns:1fr}}
/* footer */
.ftr{background:var(--ink);color:#A9B8C4;padding:72px 0 0}
.ftr__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:52px}
@media(max-width:860px){.ftr__grid{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:520px){.ftr__grid{grid-template-columns:1fr}}
.ftr h4{color:#fff;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.ftr ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.ftr a{color:#A9B8C4;text-decoration:none;font-size:.9375rem}
.ftr a:hover{color:#fff}
.disc{font-size:.8125rem;color:#7E90A0;border-top:1px solid rgba(255,255,255,.13);padding:24px 0;max-width:none}
.ftr__bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.13);padding:20px 0 32px;font-size:.8125rem;color:#7E90A0}
.pay{display:flex;gap:7px;flex-wrap:wrap}
.pay span{background:rgba(255,255,255,.08);border-radius:5px;padding:5px 9px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;color:#C4CFD8}
/* woo */
.woocommerce ul.products li.product{text-align:left}
.woocommerce ul.products li.product a img{border-radius:var(--r-lg);background:var(--surface)}
.woocommerce ul.products li.product .price{color:var(--ink);font-weight:700}
.woocommerce ul.products li.product .price del{color:var(--muted);font-weight:400;opacity:1;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce span.onsale{background:var(--support-tint);color:var(--accent);border-radius:999px;font-weight:700;font-size:.8125rem;min-height:auto;min-width:auto;padding:6px 14px;line-height:1}
.woocommerce .star-rating span::before,.woocommerce .star-rating::before{color:var(--support)}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .button.alt{font:600 16px/1 Manrope,sans-serif;padding:17px 28px;border-radius:var(--r-md);background:var(--accent)!important;color:#fff!important;border:0}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button.alt:hover{background:var(--accent-hover)!important}
.woocommerce-message,.woocommerce-info{border-top:0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink)}
.woocommerce-checkout #payment{background:var(--surface);border-radius:var(--r-lg)}
.woocommerce table.shop_table{border-color:var(--border);border-radius:var(--r-lg)}
/* === HEADER: logo sizing + right-aligned actions (v2) === */
.hdr__in{gap:24px}
.logo{flex:none;display:flex;align-items:center;line-height:0}
.logo img{width:auto!important;height:28px!important;max-height:28px;display:block;object-fit:contain}
.nav{margin-left:auto}
.hdr__act{display:flex;align-items:center;flex:none;gap:20px}

@media(max-width:960px){
  .nav{display:none}
  .burger{display:grid}
  .hdr__in{gap:12px;height:64px;justify-content:space-between;flex-wrap:nowrap}
  .logo img{height:24px!important;max-height:24px}
  .hdr__act{margin-left:auto;gap:20px}
}

@media(max-width:480px){
  .hdr__in{height:60px}
  .logo img{height:22px!important;max-height:22px}
  .hdr__act{gap:18px}
}

/* ============================================================
   KiniFlow — PDP / shop / card components
   ============================================================ */
.kf-i{width:20px;height:20px;flex:none;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
.kf-head{max-width:660px;margin-bottom:40px}
.kf-head p{margin-bottom:0}
.kf-head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;max-width:none}
@media(max-width:767px){.kf-head--row{flex-direction:column;align-items:flex-start;gap:20px}.kf-head{margin-bottom:28px}}
.kf-notices:empty{display:none}
.kf-notices{padding-top:18px}
.kf-notices .woocommerce-message,.kf-notices .woocommerce-info,.kf-notices .woocommerce-error{margin:0 0 4px;list-style:none}

.kf-crumb{border-bottom:1px solid var(--border);font-size:.8125rem;color:var(--muted)}
.kf-crumb .wrap{display:flex;gap:9px;align-items:center;padding-block:13px;flex-wrap:wrap}
.kf-crumb a{color:var(--muted);text-decoration:none}
.kf-crumb a:hover{color:var(--accent)}
.kf-crumb__now{color:var(--ink);font-weight:600}

:root{--star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.8L12 17.8 5.8 21l1.2-6.8-5-4.9 6.9-1z'/%3E%3C/svg%3E")}
.kf-stars{display:inline-flex;gap:2px}
.kf-star{position:relative;width:15px;height:15px;background:#D8E0E7;-webkit-mask:var(--star) center/contain no-repeat;mask:var(--star) center/contain no-repeat}
.kf-star i{position:absolute;inset:0;background:var(--support);display:block}
.kf-rate{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.kf-rate__c{font-size:.875rem;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--border)}
.kf-rate__c:hover{color:var(--accent)}
.kf-rate--sm{margin-bottom:0}

.kf-pdp{padding-block:44px 8px}
@media(max-width:767px){.kf-pdp{padding-block:24px 0}}
.kf-pdp__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:start}
@media(max-width:1024px){.kf-pdp__grid{grid-template-columns:1fr;gap:32px}}

.kf-gal{position:sticky;top:104px;align-self:start}
@media(max-width:1024px){.kf-gal{position:static;top:auto}}
.kf-gal__stage{position:relative;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;background:var(--surface);aspect-ratio:1/1;display:grid;place-items:center}
.kf-gal__stage img{width:100%;height:100%;object-fit:contain;padding:20px}
.kf-gal__stage .ph{width:100%;height:100%;border:0;border-radius:0}
.kf-badge{position:absolute;z-index:2;top:16px;left:16px;border-radius:999px;padding:7px 14px;font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;line-height:1}
.kf-badge--save{background:var(--support);color:#fff}
.kf-gal__thumbs{display:flex;gap:12px;margin-top:14px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.kf-gal__t{flex:none;width:78px;height:78px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);padding:0;overflow:hidden;cursor:pointer;display:grid;place-items:center}
.kf-gal__t img{width:100%;height:100%;object-fit:contain;padding:6px}
.kf-gal__t.is-on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.kf-gal__t--empty{cursor:default;background:repeating-linear-gradient(135deg,#F4F7FA,#F4F7FA 8px,#EDF2F7 8px,#EDF2F7 16px)}
.kf-gal__hint{margin:10px 0 0}
@media(max-width:480px){.kf-gal__t{width:64px;height:64px}}

.kf-buy__title{font-size:clamp(1.75rem,1.2rem + 1.9vw,2.5rem);line-height:1.1;margin-bottom:12px}
.kf-buy__sub{margin-bottom:22px}
.kf-usp{list-style:none;padding:0;margin:0 0 26px;display:flex;flex-direction:column;gap:13px}
.kf-usp li{display:flex;gap:12px;align-items:flex-start;font-size:.9375rem;line-height:1.5}
.kf-usp .kf-i{color:var(--support);margin-top:1px}
.kf-usp b{font-weight:700}

.kf-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:22px}
.kf-price__now{font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.kf-price__now .woocommerce-Price-amount{color:var(--ink)}
.kf-price__was{color:var(--muted);text-decoration:line-through;font-size:1.125rem}
.kf-price__save{background:var(--support-tint);color:var(--accent);border-radius:999px;padding:5px 12px;font-size:.8125rem;font-weight:700}

.kf-tiers{display:flex;flex-direction:column;gap:11px;margin-bottom:20px}
.kf-tier{position:relative;display:flex;align-items:center;gap:14px;border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px;cursor:pointer;background:#fff;transition:border-color .15s,box-shadow .15s,background .15s}
.kf-tier:hover{border-color:#C9D5DF}
.kf-tier.is-on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-tint)}
.kf-tier input{position:absolute;opacity:0;pointer-events:none}
.kf-tier__dot{flex:none;width:20px;height:20px;border-radius:999px;border:2px solid #C9D5DF;background:#fff;position:relative}
.kf-tier.is-on .kf-tier__dot{border-color:var(--accent)}
.kf-tier.is-on .kf-tier__dot::after{content:"";position:absolute;inset:3px;border-radius:999px;background:var(--accent)}
.kf-tier__txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.kf-tier__txt b{font-size:.9375rem;font-weight:700}
.kf-tier__txt small{color:var(--muted);font-size:.8125rem}
.kf-tier__price{margin-left:auto;text-align:right;display:flex;flex-direction:column;gap:2px;flex:none}
.kf-tier__price b{font-size:1.0625rem;font-weight:800}
.kf-tier__price small{color:var(--support);font-weight:700;font-size:.75rem}
.kf-tier__flag{position:absolute;top:-9px;right:14px;background:var(--support);color:#fff;font-size:.6875rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px;border-radius:999px;line-height:1}
@media(max-width:480px){.kf-tier{padding:14px;gap:11px}.kf-tier__txt small{display:none}}

.kf-atc{display:flex;gap:12px;align-items:stretch;margin-bottom:16px}
.kf-qty{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--r-md);background:#fff;flex:none;overflow:hidden}
.kf-qty__b{width:44px;min-height:56px;background:none;border:0;cursor:pointer;color:var(--ink);display:grid;place-items:center}
.kf-qty__b:hover{color:var(--accent);background:var(--accent-tint)}
.kf-qty__i{width:46px;border:0!important;text-align:center;font-weight:700;font-size:16px;padding:0!important;background:none;-moz-appearance:textfield}
.kf-qty__i:focus{outline:none;box-shadow:none!important}
.kf-qty__i::-webkit-outer-spin-button,.kf-qty__i::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.kf-atc__b{min-height:56px;font-size:16px;font-weight:700;gap:10px}
.kf-atc .quantity{margin-right:10px}
@media(max-width:400px){.kf-atc{flex-direction:column}.kf-qty{align-self:flex-start}}

.kf-eta{display:flex;align-items:center;gap:9px;font-size:.875rem;color:var(--muted);margin:0 0 16px;max-width:none}
.kf-eta .kf-i{color:var(--support);width:18px;height:18px}
.kf-pay{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:26px}
.kf-pay span{background:var(--surface);border:1px solid var(--border);border-radius:5px;padding:5px 9px;font-size:.625rem;font-weight:800;letter-spacing:.04em;color:var(--muted)}

.kf-assure{list-style:none;padding:22px 0 0;margin:0;border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kf-assure li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center}
.kf-assure .kf-i{grid-row:span 2;color:var(--accent);width:22px;height:22px}
.kf-assure b{font-size:.875rem;font-weight:700;line-height:1.3}
.kf-assure span{font-size:.8125rem;color:var(--muted);line-height:1.3}
@media(max-width:520px){.kf-assure{grid-template-columns:1fr;gap:14px}}

.kf-strip{background:var(--ink);color:#C4CFD8;padding:20px 0}
.kf-strip ul{display:flex;list-style:none;margin:0;padding:0;gap:16px 40px;justify-content:center;flex-wrap:wrap}
.kf-strip li{display:flex;align-items:center;gap:10px;font-size:.875rem;font-weight:600}
.kf-strip .kf-i{color:var(--support-soft)}

.kf-rvsum{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center;border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;margin-bottom:28px}
.kf-rvsum__score{display:flex;flex-direction:column;gap:7px;align-items:flex-start;padding-right:36px;border-right:1px solid var(--border)}
.kf-rvsum__score b{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;line-height:1}
@media(max-width:640px){.kf-rvsum{grid-template-columns:1fr;gap:20px;padding:22px}.kf-rvsum__score{padding-right:0;border-right:0;padding-bottom:20px;border-bottom:1px solid var(--border)}}
.kf-rvwoo #reviews h2,.kf-rvwoo #reviews h3{font-size:1.125rem}
.kf-rvwoo .commentlist{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:18px}
.kf-rvwoo .commentlist li{border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;background:#fff}
.kf-rvwoo .comment_container{display:flex;gap:16px;align-items:flex-start}
.kf-rvwoo .comment_container img.avatar{width:42px;height:42px;border-radius:999px;flex:none}
.kf-rvwoo .comment-text{flex:1;min-width:0}
.kf-rvwoo .woocommerce-review__author{font-weight:700}
.kf-rvwoo .woocommerce-review__published-date{color:var(--muted);font-size:.8125rem}
.kf-rvwoo .comment-form-rating label{margin-bottom:8px}
.kf-rvwoo .comment-notes,.kf-rvwoo .comment-form-cookies-consent label{font-weight:400;font-size:.875rem;color:var(--muted)}
.kf-rvwoo .form-submit input[type=submit]{font:600 16px/1 Manrope,sans-serif;padding:15px 28px;border-radius:var(--r-md);background:var(--accent);color:#fff;border:0;cursor:pointer}
.kf-rvwoo .form-submit input[type=submit]:hover{background:var(--accent-hover)}
.kf-rvwoo #review_form_wrapper{border:1px solid var(--border);border-radius:var(--r-lg);padding:26px;background:var(--surface)}

.kf-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--border);box-shadow:0 -6px 24px rgba(18,33,46,.09);transform:translateY(105%);transition:transform .22s ease;padding:10px 0 calc(10px + env(safe-area-inset-bottom))}
.kf-sticky.is-on{transform:translateY(0)}
.kf-sticky__in{display:flex;align-items:center;gap:14px}
.kf-sticky__img{width:44px;height:44px;object-fit:contain;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);flex:none}
.kf-sticky__meta{display:flex;flex-direction:column;gap:1px;min-width:0}
.kf-sticky__meta b{font-size:.875rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kf-sticky__meta span{font-size:.9375rem;font-weight:800;color:var(--accent)}
.kf-sticky__form{margin-left:auto;flex:none}
.kf-sticky__b{padding:14px 26px;white-space:nowrap}
body.kf-has-sticky{padding-bottom:74px}
@media(min-width:961px){body.kf-has-sticky{padding-bottom:0}}
@media(max-width:600px){.kf-sticky__img{display:none}.kf-sticky__b{padding:14px 20px;font-size:15px}.kf-sticky__meta b{max-width:42vw}}

.kf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,258px),1fr));gap:26px}
@media(max-width:600px){.kf-grid{gap:20px}}
.kf-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;background:#fff;transition:box-shadow .18s,transform .18s}
.kf-card:hover{box-shadow:var(--sh);transform:translateY(-2px)}
.kf-card__media{position:relative;display:block;aspect-ratio:1/1;background:var(--surface);overflow:hidden}
.kf-card__media img{width:100%;height:100%;object-fit:contain;padding:16px;transition:transform .3s}
.kf-card:hover .kf-card__media img{transform:scale(1.04)}
.kf-card__media .ph{display:block;width:100%;height:100%;border:0;border-radius:0}
.kf-card__body{display:flex;flex-direction:column;gap:11px;padding:18px;flex:1}
.kf-card__t{font-weight:700;font-size:1rem;line-height:1.35;color:var(--ink);text-decoration:none}
.kf-card__t:hover{color:var(--accent)}
.kf-card__p{display:flex;align-items:baseline;gap:9px;margin-top:auto;padding-top:2px}
.kf-card__p b{font-size:1.125rem;font-weight:800}
.kf-card__p s{color:var(--muted);font-size:.9375rem}
.kf-card__p .woocommerce-Price-amount{color:inherit}

.kf-shophero{padding:52px 0 40px;border-bottom:1px solid var(--border)}
@media(max-width:767px){.kf-shophero{padding:32px 0 26px}}
.kf-shophero h1{max-width:16ch;margin-bottom:14px}
.kf-shophero .lead{margin:0}
.kf-pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
.kf-pill{border:1px solid var(--border);border-radius:999px;padding:9px 18px;font-size:.875rem;font-weight:600;color:var(--ink);text-decoration:none;background:#fff}
.kf-pill:hover{border-color:var(--accent);color:var(--accent)}
.kf-pill.is-on{background:var(--accent);border-color:var(--accent);color:#fff}
.kf-shopbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.kf-shopbar select{width:auto;min-width:190px;padding:10px 12px;font-size:.875rem}
.kf-shopbar form{margin:0}
.kf-pager{margin-top:40px}
.kf-pager ul.page-numbers{list-style:none;display:flex;gap:8px;padding:0;margin:0;justify-content:center;flex-wrap:wrap}
.kf-pager .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--border);border-radius:var(--r-sm);text-decoration:none;color:var(--ink);font-weight:600;font-size:.875rem}
.kf-pager .page-numbers.current{background:var(--accent);border-color:var(--accent);color:#fff}
.kf-why{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){.kf-why{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.kf-why{grid-template-columns:1fr}}
.kf-why .kf-i{width:26px;height:26px;color:var(--accent);margin-bottom:14px}
.kf-why h3{font-size:1.0625rem;margin-bottom:8px}

/* ============================================================
   KiniFlow — contact page, offer popup, My Account
   ============================================================ */
.kf-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.kf-alert{display:flex;gap:11px;align-items:flex-start;border-radius:var(--r-md);padding:16px 18px;margin-bottom:22px;font-size:.9375rem;line-height:1.5}
.kf-alert--ok{background:var(--support-tint);border:1px solid var(--support-soft);color:var(--ink)}
.kf-alert--bad{background:#FDF0EE;border:1px solid #F0C4BC;color:#8C2F1C}
.kf-alert .chk{margin-top:2px}

.kf-contact-hero{padding:52px 0 40px}
@media(max-width:767px){.kf-contact-hero{padding:32px 0 26px}}
.kf-contact-hero h1{max-width:14ch;font-size:clamp(2rem,1.4rem + 2.2vw,2.875rem);margin-bottom:14px}
.kf-contact-hero .lead{margin:0}
.kf-contact{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:start}
@media(max-width:960px){.kf-contact{grid-template-columns:1fr;gap:36px}}
.kf-contact__h{font-size:1.5rem;margin-bottom:10px}
.kf-contact__aside > p{margin-bottom:24px}

.kf-topics{display:flex;flex-direction:column;gap:12px;margin-bottom:32px}
.kf-topic{display:flex;gap:14px;align-items:flex-start;border:1px solid var(--border);border-radius:var(--r-md);padding:18px;background:#fff;text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.kf-topic:hover{border-color:var(--accent);box-shadow:var(--sh);color:var(--ink)}
.kf-topic .kf-i{color:var(--accent);margin-top:2px}
.kf-topic span{display:flex;flex-direction:column;gap:3px}
.kf-topic b{font-size:.9375rem;font-weight:700}
.kf-topic small{color:var(--muted);font-size:.8125rem;line-height:1.4}

.kf-contact__box{border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;background:var(--surface);margin-bottom:16px}
.kf-contact__box h4{font-size:.8125rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.kf-contact__box--ink{background:var(--ink);border-color:var(--ink);color:#C4CFD8}
.kf-contact__box--ink h4{color:#8FA3B4}
.kf-contact__box--ink b{color:#fff}
.kf-contact__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:11px}
.kf-contact__list li{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:.9375rem;flex-wrap:wrap}
.kf-contact__list span{color:var(--muted)}
.kf-contact__box--ink .kf-contact__list span{color:#8FA3B4}
.kf-contact__list a{font-weight:600;word-break:break-word}

.kf-formcard{background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh);padding:34px}
@media(max-width:600px){.kf-formcard{padding:24px;border-radius:var(--r-lg)}}
.kf-formcard form{margin:0}
.kf-formcard textarea{resize:vertical;min-height:130px}
.kf-formcard .btn{min-height:56px;margin-top:4px}
.kf-formcard__fine{margin:14px 0 0;max-width:none}

.kf-pop{position:fixed;inset:0;z-index:9000;display:grid;place-items:center;padding:20px}
.kf-pop[hidden]{display:none}
.kf-pop__back{position:absolute;inset:0;background:rgba(18,33,46,.62);opacity:0;transition:opacity .22s}
.kf-pop.is-on .kf-pop__back{opacity:1}
.kf-pop__box{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.15fr;width:min(100%,760px);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:var(--r-xl);box-shadow:0 24px 70px rgba(18,33,46,.3);opacity:0;transform:translateY(14px) scale(.98);transition:opacity .22s,transform .22s}
.kf-pop.is-on .kf-pop__box{opacity:1;transform:none}
@media(max-width:700px){.kf-pop__box{grid-template-columns:1fr;width:min(100%,440px)}}
.kf-pop__x{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;border:0;border-radius:999px;background:rgba(255,255,255,.9);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.kf-pop__x:hover{background:#fff;color:var(--accent)}
.kf-pop__x svg{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round}
.kf-pop__art{background:linear-gradient(160deg,var(--accent) 0%,#173C5E 100%);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:36px 24px;text-align:center}
@media(max-width:700px){.kf-pop__art{flex-direction:row;gap:12px;padding:22px;align-items:baseline;justify-content:center}}
.kf-pop__pct{font-size:clamp(3rem,2rem + 4vw,4.25rem);font-weight:800;letter-spacing:-.05em;line-height:1;color:#fff}
.kf-pop__off{font-size:.9375rem;font-weight:600;color:var(--support-soft);max-width:12ch;line-height:1.3}
@media(max-width:700px){.kf-pop__off{max-width:none}}
.kf-pop__body{padding:34px}
@media(max-width:600px){.kf-pop__body{padding:24px}}
.kf-pop__body h2{font-size:1.5rem;line-height:1.2;margin-bottom:10px}
.kf-pop__body p.muted{font-size:.9375rem;margin-bottom:20px}
.kf-pop__form{display:flex;gap:10px;margin:0}
@media(max-width:480px){.kf-pop__form{flex-direction:column}}
.kf-pop__form input[type=email]{flex:1;min-height:52px}
.kf-pop__form .btn{min-height:52px;white-space:nowrap;padding-inline:22px}
.kf-pop__msg{margin:14px 0 0;font-size:.9375rem;max-width:none}
.kf-pop__msg:empty{display:none}
.kf-pop__msg.is-ok{background:var(--support-tint);border-radius:var(--r-sm);padding:14px 16px;color:var(--ink)}
.kf-pop__msg.is-ok b{font-size:1.0625rem;letter-spacing:.04em}
.kf-pop__msg.is-bad{color:#8C2F1C}
.kf-pop__no{display:block;margin:16px 0 0;padding:0;background:none;border:0;color:var(--muted);font-size:.8125rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-family:inherit}
.kf-pop__no:hover{color:var(--ink)}
.kf-pop__fine{margin:14px 0 0;max-width:none;font-size:.75rem}

.kf-page-hero{padding:46px 0 34px;border-bottom:1px solid var(--border)}
@media(max-width:767px){.kf-page-hero{padding:30px 0 24px}}
.kf-page-hero h1{font-size:clamp(1.875rem,1.35rem + 2vw,2.75rem);margin-bottom:10px}
.kf-page-hero .lead{margin:0}
.kf-prose{max-width:760px}

.kf-acct .woocommerce::after{content:"";display:table;clear:both}
.kf-acct #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
@media(max-width:860px){.kf-acct #customer_login{grid-template-columns:1fr}}
.kf-acct #customer_login .u-column1,.kf-acct #customer_login .u-column2{width:auto;float:none;margin:0}
.kf-acct #customer_login h2{font-size:1.375rem;margin-bottom:18px}
.kf-acct .woocommerce-form-login,.kf-acct .woocommerce-form-register{border:1px solid var(--border);border-radius:var(--r-lg);padding:28px;background:#fff;box-shadow:var(--sh);margin:0}
@media(max-width:600px){.kf-acct .woocommerce-form-login,.kf-acct .woocommerce-form-register{padding:22px}}
.kf-acct .woocommerce-form-row{margin-bottom:16px;padding:0;float:none;width:auto}
.kf-acct .woocommerce-form__label-for-checkbox{display:flex;align-items:center;gap:9px;font-weight:400;font-size:.875rem;color:var(--muted)}
.kf-acct .woocommerce-form__input-checkbox{width:auto;margin:0}
.kf-acct .woocommerce-form-login__submit,.kf-acct .woocommerce-form-register button{width:100%;min-height:54px;margin:6px 0 0!important}
.kf-acct .woocommerce-LostPassword{margin:14px 0 0;font-size:.875rem}
.kf-acct .password-input,.kf-acct .show-password-input{width:100%;position:relative;display:block}

.kf-acct .woocommerce{display:block}
.kf-acct .woocommerce:has(.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:250px 1fr;gap:44px;align-items:start}
.kf-acct .woocommerce-form-login,.kf-acct .woocommerce-form-register{max-width:520px}
.kf-acct #customer_login .woocommerce-form-login,.kf-acct #customer_login .woocommerce-form-register{max-width:none}
@media(max-width:900px){.kf-acct .woocommerce{grid-template-columns:1fr;gap:26px}}
.kf-acct .woocommerce-MyAccount-navigation{width:auto;float:none;margin:0}
.kf-acct .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:10px;display:flex;flex-direction:column;gap:4px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface)}
@media(max-width:900px){.kf-acct .woocommerce-MyAccount-navigation ul{flex-direction:row;flex-wrap:wrap}}
.kf-acct .woocommerce-MyAccount-navigation li a{display:block;padding:12px 14px;border-radius:var(--r-sm);color:var(--ink);text-decoration:none;font-weight:600;font-size:.9375rem}
.kf-acct .woocommerce-MyAccount-navigation li a:hover{background:var(--accent-tint);color:var(--accent)}
.kf-acct .woocommerce-MyAccount-navigation li.is-active a{background:var(--accent);color:#fff}
.kf-acct .woocommerce-MyAccount-content{width:auto;float:none;margin:0;min-width:0}
.kf-acct .woocommerce-MyAccount-content h2,.kf-acct .woocommerce-MyAccount-content h3{font-size:1.25rem}
.kf-acct .woocommerce-MyAccount-content p{max-width:70ch}
.kf-acct .woocommerce-Address{border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;background:#fff;width:auto;float:none}
.kf-acct .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:700px){.kf-acct .woocommerce-Addresses{grid-template-columns:1fr}}
.kf-acct table.shop_table,.kf-acct table.woocommerce-orders-table{width:100%;border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;font-size:.9375rem}
.kf-acct table.shop_table th{background:var(--surface);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px}
.kf-acct table.shop_table td{padding:14px;border-top:1px solid var(--border)}
.kf-acct .woocommerce-message,.kf-acct .woocommerce-info,.kf-acct .woocommerce-Message{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--ink);padding:16px 18px;list-style:none;margin-bottom:20px}
.kf-acct .woocommerce-error{border:1px solid #F0C4BC;border-radius:var(--r-md);background:#FDF0EE;color:#8C2F1C;padding:16px 18px;list-style:none;margin-bottom:20px}
.kf-acct fieldset{border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;margin-top:22px}
.kf-acct legend{font-weight:700;padding:0 8px}
.kf-acct .button{display:inline-flex;align-items:center;justify-content:center;font:600 16px/1 Manrope,sans-serif;padding:15px 26px;border-radius:var(--r-md);background:var(--accent)!important;color:#fff!important;border:0;cursor:pointer;text-decoration:none}
.kf-acct .button:hover{background:var(--accent-hover)!important}
@media(max-width:760px){.kf-acct table.shop_table,.kf-acct table.woocommerce-orders-table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}}
.kf-acct .woocommerce-MyAccount-content{min-width:0;overflow-wrap:break-word}

/* ============================================================
   KiniFlow — homepage blocks
   ============================================================ */
.kf-heronote{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:12px 26px}
.kf-heronote li{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;color:var(--muted)}
.kf-heronote .kf-i{width:18px;height:18px;color:var(--support)}

.kf-heroart{position:relative;border:1px solid var(--border);border-radius:var(--r-xl);overflow:hidden;background:var(--surface);aspect-ratio:1/1;max-height:520px;display:grid;place-items:center}
.kf-heroart img{width:100%;height:100%;object-fit:contain;padding:26px}
.kf-heroart .ph{width:100%;height:100%;border:0;border-radius:0;aspect-ratio:auto}
@media(max-width:1024px){.kf-heroart{aspect-ratio:16/11;max-height:420px}}
@media(max-width:600px){.kf-heroart{aspect-ratio:1/1;max-height:340px}}

.kf-head.center{max-width:640px;text-align:center}
.kf-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){.kf-benefits{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.kf-benefits{grid-template-columns:1fr}}
.kf-benefit{border:1px solid var(--border);border-radius:var(--r-lg);padding:26px;background:#fff}
.kf-benefit .kf-i{width:26px;height:26px;color:var(--accent);margin-bottom:14px}
.kf-benefit h3{font-size:1.0625rem;margin-bottom:8px}
.kf-benefit p{margin:0;font-size:.9375rem}

.kf-feat{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center;border:1px solid var(--border);border-radius:var(--r-xl);padding:36px;background:#fff;box-shadow:var(--sh)}
@media(max-width:960px){.kf-feat{grid-template-columns:1fr;gap:30px;padding:24px}}
.kf-feat__media{position:relative;display:block;aspect-ratio:1/1;border-radius:var(--r-lg);overflow:hidden;background:var(--surface);border:1px solid var(--border)}
.kf-feat__media img{width:100%;height:100%;object-fit:contain;padding:20px}
.kf-feat__media .ph{display:block;width:100%;height:100%;border:0;border-radius:0}
.kf-feat__body h2{font-size:clamp(1.5rem, 1.1rem + 1.4vw, 2.125rem);margin-bottom:12px}
.kf-feat__body .kf-usp{margin-bottom:24px}
.kf-feat__body .kf-price{margin-bottom:22px}

.kf-guarantee{background:var(--ink);color:#C4CFD8;padding-block:var(--sec)}
.kf-guarantee__in{display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:center}
@media(max-width:767px){.kf-guarantee__in{grid-template-columns:1fr;gap:26px}}
.kf-guarantee h2{color:#fff;margin-bottom:14px}
.kf-guarantee p{max-width:56ch;margin-bottom:24px}
.kf-guarantee__seal{width:168px;height:168px;flex:none;border-radius:999px;border:2px solid var(--support);display:grid;place-items:center;align-content:center;gap:2px;background:rgba(44,177,161,.08)}
.kf-guarantee__seal .kf-i{width:26px;height:26px;color:var(--support-soft)}
.kf-guarantee__seal b{font-size:2.75rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:#fff}
.kf-guarantee__seal span{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--support-soft)}
@media(max-width:767px){.kf-guarantee__seal{width:132px;height:132px}.kf-guarantee__seal b{font-size:2.25rem}}
