/* Klamka Group — service-page design system (shared across all service pages) */
:root{
  --bg:#FAF6EC; --ink:#3f372b; --head:#2A2118;
  --muted:#5b5145; --muted2:#7a6a4e; --muted3:#8a7d68;
  --gold:#9C6F23; --gold2:#c9a24e; --gold3:#b09a6e;
  --line:rgba(156,111,35,.2); --line2:rgba(156,111,35,.14);
  --paper:linear-gradient(180deg,#fffdf8,#fbf6ea);
  --paper2:linear-gradient(155deg,#fffdf8,#f3ead7);
  --goldbtn:linear-gradient(135deg,#caa24e,#ecd58a 45%,#b8862c 72%,#e0bb63);
  --goldink:linear-gradient(176deg,#8a611d,#caa24e 30%,#d4ab44 50%,#ab7c27 70%,#caa03a);
  --maxw:1180px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:'Cormorant Garamond','Heebo','Frank Ruhl Libre','Trirong','Noto Serif SC',serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;line-height:1.5}
::selection{background:rgba(184,144,47,.26);color:#2A2118}
a{color:inherit;text-decoration:none}
img{max-width:100%}
h1,h2,h3{margin:0;font-weight:600}

/* fixed background layers */
.kg-bg{position:fixed;inset:0;z-index:0;pointer-events:none}
.kg-bg-grad{background:radial-gradient(120% 80% at 50% -10%,#FFFCF4 0%,#FAF6EC 42%,#F1E8D5 100%)}
.kg-bg-svg{width:100%;height:100%;mix-blend-mode:multiply}
.kg-bg-marble{opacity:.5}
.kg-bg-grain{opacity:.05}
.kg-bg-vignette{box-shadow:inset 0 0 220px 40px rgba(120,92,40,.14)}

/* shell */
.kg-wrap{position:relative;z-index:10}
.kg-container{max-width:var(--maxw);margin:0 auto;padding:0 clamp(20px,6vw,72px)}

/* utility */
.gold-text{background:var(--goldink);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.eyebrow{font-family:'Jost',sans-serif;font-size:clamp(10px,1vw,12px);letter-spacing:.4em;text-transform:uppercase;color:var(--gold)}
.kg-rule{height:1px;background:linear-gradient(90deg,#c9a24e,transparent);border:0;margin:0}

/* reveal */
.kg-js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ===== nav ===== */
.kg-nav{position:fixed;top:0;left:0;right:0;z-index:120;display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:18px clamp(20px,5vw,72px);transition:background .5s,box-shadow .5s,padding .45s}
.kg-nav.scrolled{background:rgba(250,246,236,.86);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 rgba(156,111,35,.16),0 18px 44px -30px rgba(70,50,10,.55);padding-top:12px;padding-bottom:12px}
.kg-logo{display:flex;flex-direction:column;line-height:1;flex-shrink:0}
.kg-logo b{font-family:'Cinzel',serif;font-weight:700;font-size:20px;letter-spacing:.24em}
.kg-logo b.gold-text{background:linear-gradient(176deg,#8a611d,#b88a2c 26%,#d4ab44 46%,#ab7c27 64%,#caa03a 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.kg-logo span{font-family:'Cinzel',serif;font-weight:600;font-size:8.5px;letter-spacing:.66em;color:var(--gold);margin-top:3px;padding-left:3px}
.kg-navlinks{display:flex;align-items:center;gap:clamp(22px,2.6vw,46px)}
.kg-navlinks a{font-family:'Jost',sans-serif;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:#6b6151;transition:color .35s}
.kg-navlinks a:hover,.kg-navlinks a[aria-current]{color:var(--gold)}
.kg-navright{display:flex;align-items:center;gap:14px;flex-shrink:0}
.kg-wa{display:inline-flex;align-items:center;gap:9px;font-family:'Jost',sans-serif;font-size:11.5px;font-weight:500;letter-spacing:.18em;
  text-transform:uppercase;color:#3a2e16;padding:11px 22px;background:var(--goldbtn);border:1px solid rgba(156,111,35,.5);
  box-shadow:0 14px 30px -22px rgba(120,86,16,.95);transition:transform .4s,filter .4s,box-shadow .4s}
.kg-wa:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 20px 40px -22px rgba(120,86,16,.95)}
.kg-burger{display:none;cursor:pointer;background:transparent;border:none;flex-direction:column;gap:5px;padding:6px}
.kg-burger span{display:block;width:24px;height:1.5px;background:var(--gold)}
.kg-burger span:last-child{width:16px}

.kg-mobile{position:fixed;inset:0;z-index:130;background:rgba(250,246,236,.97);backdrop-filter:blur(14px);
  display:none;flex-direction:column;align-items:center;justify-content:center;gap:28px}
.kg-mobile.open{display:flex}
.kg-mobile a{font-family:'Cinzel',serif;font-size:28px;color:var(--head);letter-spacing:.05em}
.kg-mobile .kg-close{position:absolute;top:24px;right:26px;background:none;border:none;color:var(--gold);font-size:30px;cursor:pointer;font-family:'Cormorant Garamond',serif}

/* ===== hero ===== */
.kg-hero{padding:clamp(120px,17vh,190px) 0 clamp(40px,6vh,70px);text-align:center}
.kg-breadcrumb{font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold3);margin-bottom:22px}
.kg-breadcrumb a:hover{color:var(--gold)}
.kg-breadcrumb span{color:#cdb893;margin:0 8px}
.kg-hero .eyebrow{display:block;margin-bottom:20px}
.kg-h1{font-family:'Cinzel',serif;font-size:clamp(34px,5.2vw,68px);line-height:1.06;color:var(--head);letter-spacing:.01em}
.kg-subtitle{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(20px,2.1vw,28px);color:var(--muted2);margin-top:18px}

/* TL;DR card */
.kg-tldr{max-width:760px;margin:clamp(32px,5vw,48px) auto 0;position:relative;text-align:start;
  background:var(--paper2);border:1px solid var(--line);box-shadow:0 40px 80px -60px rgba(90,64,12,.6);
  padding:clamp(24px,3.4vw,34px) clamp(26px,4vw,40px)}
.kg-tldr::before{content:"";position:absolute;inset:10px;border:1px solid var(--line2);pointer-events:none}
.kg-tldr h2{font-family:'Jost',sans-serif;font-size:11px;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.kg-tldr p{font-family:'Cormorant Garamond',serif;font-size:clamp(19px,1.7vw,23px);line-height:1.55;color:#463d2f;margin:0}

.kg-cta-row{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:clamp(30px,4vw,42px)}
.btn{display:inline-flex;align-items:center;gap:11px;font-family:'Jost',sans-serif;font-weight:500;font-size:12px;
  letter-spacing:.24em;text-transform:uppercase;padding:16px 34px;transition:transform .4s,filter .4s,background .4s,box-shadow .4s;cursor:pointer}
.btn-gold{color:#3a2e16;background:var(--goldbtn);border:1px solid rgba(156,111,35,.5);box-shadow:0 18px 40px -26px rgba(120,86,16,.9)}
.btn-gold:hover{transform:translateY(-3px);filter:brightness(1.05);box-shadow:0 26px 50px -26px rgba(120,86,16,.95)}
.btn-ghost{color:var(--gold);background:transparent;border:1px solid rgba(156,111,35,.55)}
.btn-ghost:hover{background:rgba(184,144,47,.1);transform:translateY(-3px)}

/* ===== sections ===== */
.kg-section{padding:clamp(50px,8vh,96px) 0}
.kg-section-head{max-width:780px;margin:0 auto clamp(34px,4.5vw,56px)}
.kg-section-head.center{text-align:center}
.kg-section-head .eyebrow{display:block;margin-bottom:16px}
.kg-h2{font-family:'Cinzel',serif;font-size:clamp(26px,3.4vw,44px);line-height:1.14;color:var(--head);letter-spacing:.01em}
.kg-lead{font-family:'Cormorant Garamond',serif;font-size:clamp(19px,1.6vw,24px);line-height:1.65;color:var(--muted);margin:18px 0 0}
.kg-prose p{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,1.45vw,22px);line-height:1.72;color:var(--muted);margin:0 0 20px;max-width:62ch}
.kg-prose.center p{margin-left:auto;margin-right:auto}

/* included grid */
.kg-incl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;background:var(--line2);border:1px solid var(--line2)}
.kg-incl .item{background:var(--paper);padding:30px 28px}
.kg-incl .item h3{font-family:'Cinzel',serif;font-size:18px;color:var(--head);margin-bottom:10px;letter-spacing:.01em}
.kg-incl .item p{font-family:'Cormorant Garamond',serif;font-size:18px;line-height:1.55;color:var(--muted);margin:0}

/* ===== use cases ===== */
.kg-cases{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:22px}
.kg-case{position:relative;background:var(--paper);border:1px solid var(--line2);padding:28px 28px 30px;display:flex;flex-direction:column;gap:14px;transition:transform .4s,box-shadow .4s,border-color .4s}
.kg-case:hover{transform:translateY(-3px);box-shadow:0 36px 60px -48px rgba(90,64,12,.5);border-color:var(--line)}
.kg-case-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.kg-case-co{font-family:'Cinzel',serif;font-size:18px;color:var(--head);letter-spacing:.01em}
.kg-case-ind{font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold3)}
.kg-case-metric{align-self:flex-start;font-family:'Jost',sans-serif;font-size:11px;font-weight:500;letter-spacing:.06em;color:#5b4715;
  background:rgba(202,162,78,.16);border:1px solid rgba(156,111,35,.34);padding:7px 12px}
.kg-case .beat{display:block}
.kg-case .beat b{display:block;font-family:'Jost',sans-serif;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.kg-case .beat p{font-family:'Cormorant Garamond',serif;font-size:17.5px;line-height:1.5;color:var(--muted);margin:0}
.kg-case .beat.problem b{color:#9a7b4a}
.kg-case .beat.result b{color:#7a5a16}

/* ===== faq ===== */
.kg-faq{max-width:820px;margin:0 auto;border-top:1px solid var(--line2)}
.kg-faq details{border-bottom:1px solid var(--line2)}
.kg-faq summary{list-style:none;cursor:pointer;padding:22px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;
  font-family:'Cinzel',serif;font-size:clamp(17px,1.6vw,21px);color:var(--head)}
.kg-faq summary::-webkit-details-marker{display:none}
.kg-faq summary .mk{color:var(--gold);font-size:24px;font-family:'Cormorant Garamond',serif;transition:transform .3s}
.kg-faq details[open] summary .mk{transform:rotate(45deg)}
.kg-faq .ans{padding:0 4px 24px;font-family:'Cormorant Garamond',serif;font-size:clamp(18px,1.4vw,21px);line-height:1.65;color:var(--muted);max-width:64ch}

/* related */
.kg-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.kg-related a{background:var(--paper);border:1px solid var(--line2);padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  font-family:'Cormorant Garamond',serif;font-size:20px;color:var(--head);transition:transform .35s,border-color .35s,color .35s}
.kg-related a:hover{transform:translateY(-2px);border-color:var(--line);color:var(--gold)}
.kg-related a .ar{color:var(--gold2)}

/* CTA band */
.kg-ctaband{position:relative;text-align:center;background:linear-gradient(135deg,#f6edd8,#fbf6ea);border:1px solid var(--line);overflow:hidden;
  padding:clamp(44px,6vw,80px) clamp(26px,6vw,70px)}
.kg-ctaband::before{content:"";position:absolute;inset:12px;border:1px solid var(--line2);pointer-events:none}
.kg-ctaband h2{font-family:'Cinzel',serif;font-size:clamp(26px,3.6vw,46px);line-height:1.15;color:var(--head);margin-bottom:26px}

/* ===== footer ===== */
.kg-footer{position:relative;z-index:10;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(243,232,213,.4),rgba(243,232,213,.7));
  padding:clamp(56px,7vw,84px) clamp(20px,6vw,72px) 38px;margin-top:clamp(40px,6vh,80px)}
.kg-footer-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:46px 40px}
.kg-footer .brand{grid-column:1/-1;max-width:340px}
.kg-footer .brand b{font-family:'Cinzel',serif;font-weight:700;font-size:24px;letter-spacing:.22em}
.kg-footer .brand span{display:block;font-family:'Cinzel',serif;font-weight:600;font-size:10px;letter-spacing:.62em;color:var(--gold);margin-top:4px}
.kg-footer .brand p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:19px;color:var(--muted2);margin:18px 0 0}
.kg-footer h4{font-family:'Jost',sans-serif;font-size:11px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:0 0 16px}
.kg-footer .col a,.kg-footer .col span{display:block;font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--muted);margin-bottom:11px;transition:color .3s}
.kg-footer .col a:hover{color:var(--gold)}
.kg-footer-base{max-width:var(--maxw);margin:46px auto 0;padding-top:22px;border-top:1px solid var(--line2);display:flex;flex-wrap:wrap;gap:14px;
  justify-content:space-between;align-items:center;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:.12em;color:#9a8d76}
.kg-footer-base .up{letter-spacing:.22em;text-transform:uppercase}

@media (max-width:940px){
  .kg-navlinks{display:none}
  .kg-burger{display:flex}
}
@media (max-width:720px){
  .kg-wa{display:none}
  .kg-cases{grid-template-columns:1fr}
}

/* ===== multilingual: non-Latin script fallbacks ===== */
.kg-h1,.kg-h2,.kg-case-co,.kg-incl .item h3,.kg-faq summary,.kg-mobile a,.kg-ctaband h2,.kg-logo b,.kg-footer .brand b{
  font-family:'Cinzel','Heebo','Frank Ruhl Libre','Noto Serif SC','Trirong','Cormorant Garamond',serif;
}
.eyebrow,.kg-case-ind,.kg-case-metric,.kg-case .beat b,.kg-breadcrumb,.kg-footer h4,.kg-footer-base,.kg-lang-btn,.btn,.kg-wa,.kg-navlinks a{
  font-family:'Jost','Heebo','Frank Ruhl Libre','Noto Serif SC','Trirong',sans-serif;
}
/* Latin brand wordmark always Cinzel */
.kg-logo b,.kg-footer .brand b{letter-spacing:.22em}

/* ===== RTL ===== */
[dir="rtl"] .kg-tldr{text-align:right}
[dir="rtl"] .kg-breadcrumb span{transform:scaleX(-1);display:inline-block}
[dir="rtl"] .kg-case-metric{align-self:flex-end}

/* ===== language switcher (service pages) ===== */
.kg-lang{position:relative}
.kg-lang-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid rgba(156,111,35,.34);padding:9px 12px;color:#7a6a4e;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:border-color .35s,color .35s}
.kg-lang-btn:hover{border-color:rgba(156,111,35,.7);color:#9C6F23}
.kg-lang-btn svg{opacity:.8}
.kg-lang-menu{position:absolute;top:calc(100% + 10px);inset-inline-end:0;min-width:165px;background:rgba(255,253,248,.98);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(156,111,35,.28);box-shadow:0 30px 60px -34px rgba(90,64,12,.7);padding:8px;z-index:140;display:none}
.kg-lang-menu.open{display:block}
.kg-lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 13px;color:#5b5145;font-family:'Cormorant Garamond','Heebo','Frank Ruhl Libre','Noto Serif SC','Trirong',serif;font-size:17px;border-inline-start:2px solid transparent;transition:background .3s,border-color .3s,color .3s}
.kg-lang-menu a:hover,.kg-lang-menu a[aria-current]{background:rgba(184,144,47,.1);border-inline-start-color:#c9a24e;color:#2A2118}
.kg-lang-menu a .c{font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#b09a6e}

/* ===== larger, readable type on mobile (45+ audience) — desktop unchanged ===== */
@media (max-width:768px){
  .kg-h1{font-size:39px;line-height:1.08}
  .kg-subtitle{font-size:23px}
  .kg-tldr h2{font-size:13px}
  .kg-tldr p{font-size:22px;line-height:1.55}
  .eyebrow{font-size:14px;letter-spacing:.28em}
  .kg-h2{font-size:31px}
  .kg-lead{font-size:21px}
  .kg-prose p{font-size:21px;line-height:1.7}
  .kg-incl .item h3{font-size:21px}
  .kg-incl .item p{font-size:20px}
  .kg-case{padding:26px 24px 28px}
  .kg-case-co{font-size:21px}
  .kg-case-ind{font-size:13px}
  .kg-case-metric{font-size:14px}
  .kg-case .beat b{font-size:13px;letter-spacing:.16em}
  .kg-case .beat p{font-size:20px;line-height:1.55}
  .kg-faq summary{font-size:21px}
  .kg-faq .ans{font-size:20px;line-height:1.65}
  .kg-related a{font-size:22px}
  .kg-breadcrumb{font-size:13px}
  .kg-ctaband h2{font-size:31px}
  .btn{font-size:14px}
  .kg-wa{font-size:14px}
  .kg-lang-btn{font-size:13px}
  .kg-lang-menu a{font-size:19px}
  .kg-mobile a{font-size:31px}
  .kg-footer h4{font-size:13px}
  .kg-footer .col a,.kg-footer .col span{font-size:21px}
  .kg-footer .brand p{font-size:21px}
  .kg-footer .brand span{font-size:12px}
  .kg-footer-base{font-size:13px}
}
