  :root{
    --bg:#16191D;
    --bg-panel:#1E2228;
    --bg-panel-2:#252A31;
    --line:#333941;
    --line-soft:#2A2F36;
    --ink:#F2EFE9;
    --ink-dim:#A2A9B1;
    --accent:#C98A3E;
    --accent-soft:#E3B37A;

    /* Šriftai vienoje vietoje. Nori pakeisti — keisk tik šias dvi eilutes
       ir Google Fonts nuorodą faile partials/head.php.
       DĖMESIO: prieš keisdamas patikrink lietuviškas raides ąčęėįšųūž —
       kai kurie šriftai (pvz. Fraunces) neteisingai piešia ū. */
    --font-display:'Newsreader', Georgia, 'Times New Roman', serif;
    --font-sans:'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;

    --radius:3px;
    --ease:cubic-bezier(.22,.61,.36,1);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth; scroll-padding-top:96px;}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:var(--font-sans);
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,.display{
    font-family:var(--font-display);
    font-weight:600;
    letter-spacing:-0.015em;
    line-height:1.15;
  }
  a{color:inherit;}
  img{max-width:100%; display:block;}
  /* butina: kitaip .rev-summary{display:flex} nugaletu [hidden] */
  [hidden]{display:none !important;}
  ::selection{background:var(--accent); color:#16191D;}
  :focus-visible{outline:2px solid var(--accent); outline-offset:3px; border-radius:2px;}

  .skip{
    position:absolute; left:-9999px; top:0; z-index:200;
    background:var(--accent); color:#16191D; padding:12px 20px;
    font-size:.9rem; font-weight:500; text-decoration:none;
  }
  .skip:focus{left:0;}

  .wrap{max-width:1120px; margin:0 auto; padding:0 32px;}
  @media (max-width:600px){ .wrap{padding:0 20px;} }

  /* ---------- REVEAL ---------- */
  /* 3D atsiradimas slenkant: elementas „atsiverčia" iš gilumos */
  .reveal{
    opacity:0;
    transform:perspective(1200px) translate3d(0,38px,-70px) rotateX(7deg);
    transform-origin:50% 0;
    transition:opacity .75s var(--ease), transform .9s var(--ease);
  }
  /* baigus — transform:none, kad vaikų 3D (kortelių posūkis) nebūtų suplokštintas */
  .reveal.in{opacity:1; transform:none;}

  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto;}
    .reveal, .reveal.in{opacity:1; transform:none; transition:none;}
    *{animation-duration:.01ms !important; transition-duration:.01ms !important;}
  }

  /* ---------- NAV ---------- */
  /* ---------- AKCIJOS JUOSTA ---------- */
  /* Nuslenka kartu su puslapiu — prilipusi lieka tik navigacija. */
  .promo-bar{
    position:relative; z-index:49;
    background:linear-gradient(92deg,#2A2118 0%,#3A2B17 48%,#241F19 100%);
    border-bottom:1px solid rgba(201,138,62,.32);
    font-size:.86rem;
  }
  .promo-in{
    display:flex; align-items:center; gap:14px;
    min-height:42px; padding-top:7px; padding-bottom:7px;
  }
  .promo-ico{font-size:1.05rem; line-height:1; flex:none;}
  .promo-txt{
    flex:1 1 auto; min-width:0;
    display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 8px;
    color:var(--ink-dim); line-height:1.35;
  }
  .promo-txt strong{color:var(--accent-soft); font-weight:600; letter-spacing:.01em;}
  .promo-cd{
    flex:none;
    font-variant-numeric:tabular-nums;
    color:var(--ink); font-size:.8rem;
    padding:3px 9px; border-radius:999px;
    border:1px solid rgba(201,138,62,.35); background:rgba(201,138,62,.1);
  }
  .promo-cd:empty{display:none;}
  .promo-cta{
    flex:none; text-decoration:none; white-space:nowrap;
    background:var(--accent); color:#16191D;
    font-weight:600; font-size:.82rem;
    padding:6px 15px; border-radius:999px;
    transition:background .2s ease, transform .2s var(--ease);
  }
  .promo-cta:hover{background:var(--accent-soft); transform:translateY(-1px);}
  .promo-x{
    flex:none; background:none; border:0; cursor:pointer;
    color:var(--ink-dim); padding:4px; margin-right:-4px;
    display:flex; align-items:center;
    transition:color .2s ease;
  }
  .promo-x:hover{color:var(--ink);}
  .promo-x svg{width:14px; height:14px;}

  @media (max-width:760px){
    .promo-in{gap:10px; align-items:flex-start; padding-top:9px; padding-bottom:9px;}
    .promo-ico{margin-top:1px;}
    .promo-txt{font-size:.8rem;}
    .promo-cta{display:none;}          /* telefone kviečia pats tekstas — juosta lieka viena eilute */
    .promo-cd{margin-top:1px;}
  }
  @media (max-width:420px){
    .promo-cd{display:none;}
  }

  header{
    position:sticky; top:0; z-index:50;
    background:rgba(22,25,29,.82);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid transparent;
    transition:border-color .3s ease, background .3s ease;
  }
  header.stuck{border-bottom-color:var(--line); background:rgba(22,25,29,.94);}
  nav.wrap{display:flex; align-items:center; justify-content:space-between; height:76px; gap:20px;}
  .logo{
    font-family:var(--font-display); font-weight:600; font-size:1.3rem;
    text-decoration:none; letter-spacing:-.02em; white-space:nowrap;
  }
  .logo span{color:var(--accent);}
  .nav-right{display:flex; align-items:center; gap:26px;}
  .navlinks{display:flex; gap:28px; font-size:.94rem;}
  .navlinks a{
    text-decoration:none; color:var(--ink-dim);
    transition:color .2s ease; position:relative; padding:4px 0;
  }
  .navlinks a::after{
    content:''; position:absolute; left:0; bottom:0; height:1px; width:0;
    background:var(--accent); transition:width .28s var(--ease);
  }
  .navlinks a:hover{color:var(--ink);}
  .navlinks a:hover::after, .navlinks a.active::after{width:100%;}
  .navlinks a.active{color:var(--ink);}

  .lang{display:flex; align-items:center; gap:2px; font-size:.82rem; letter-spacing:.06em;}
  .lang button{
    background:none; border:none; color:var(--ink-dim); cursor:pointer;
    font-family:inherit; font-size:.82rem; padding:4px 6px; letter-spacing:.06em;
    transition:color .2s ease;
  }
  .lang button:hover{color:var(--ink);}
  .lang button[aria-pressed="true"]{color:var(--accent); font-weight:600;}
  .lang i{color:var(--line); font-style:normal;}

  .navtoggle{
    display:none; background:none; border:1px solid var(--line); color:var(--ink);
    width:42px; height:42px; border-radius:var(--radius); cursor:pointer;
    align-items:center; justify-content:center;
  }
  .navtoggle span{
    display:block; width:18px; height:1.5px; background:var(--ink); position:relative;
    transition:background .2s ease;
  }
  .navtoggle span::before,.navtoggle span::after{
    content:''; position:absolute; left:0; width:18px; height:1.5px; background:var(--ink);
    transition:transform .28s var(--ease);
  }
  .navtoggle span::before{top:-6px;}
  .navtoggle span::after{top:6px;}
  .navtoggle[aria-expanded="true"] span{background:transparent;}
  .navtoggle[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg);}
  .navtoggle[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg);}

  @media (max-width:820px){
    .navtoggle{display:flex;}
    .navlinks{
      /* absolute, ne fixed — kad meniu atsivertų po pačia navigacija
         net kai virš jos stovi akcijos juosta */
      position:absolute; top:100%; left:0; right:0;
      flex-direction:column; gap:0;
      background:var(--bg-panel);
      border-bottom:1px solid var(--line);
      max-height:0; overflow:hidden;
      transition:max-height .35s var(--ease);
    }
    .navlinks.open{max-height:340px;}
    .navlinks a{padding:17px 32px; border-bottom:1px solid var(--line-soft); font-size:1rem;}
    .navlinks a::after{display:none;}
  }
  @media (max-width:600px){ .navlinks a{padding:17px 20px;} }

  /* ---------- HERO ---------- */
  /* svarbu: tik vertikalus padding, kad neperrasytu .wrap sonu */
  /* overflow:hidden nededam — drobė turi lįsti už turinio stulpelio ribų.
     Horizontalų slinkimą sulaiko body{overflow-x:hidden}. */
  .hero{position:relative; padding-top:130px; padding-bottom:100px;}
  .hero::before{
    content:''; position:absolute; top:-220px; right:-140px;
    width:620px; height:620px; border-radius:50%;
    background:radial-gradient(circle, rgba(201,138,62,.16) 0%, rgba(201,138,62,0) 68%);
    pointer-events:none;
  }
  .hero > *{position:relative;}
  .eyebrow{
    color:var(--accent-soft); font-size:.88rem; letter-spacing:.14em;
    text-transform:uppercase; margin-bottom:24px;
    display:flex; align-items:center; gap:12px;
  }
  .eyebrow::before{content:''; width:32px; height:1px; background:var(--accent); display:block;}
  .hero h1{font-size:clamp(2.3rem, 6.2vw, 4.3rem); max-width:900px;}
  .hero h1 em{font-style:normal; color:var(--accent-soft);}
  .hero .lede{margin-top:28px; max-width:560px; color:var(--ink-dim); font-size:1.12rem;}
  .hero-actions{margin-top:40px; display:flex; gap:14px; flex-wrap:wrap;}

  .btn{
    display:inline-flex; align-items:center; gap:10px;
    padding:15px 28px; border-radius:var(--radius);
    text-decoration:none; font-size:.94rem; font-weight:500;
    border:1px solid transparent; cursor:pointer;
    font-family:var(--font-sans);
    transition:background .2s ease, border-color .2s ease, color .2s ease, transform .2s var(--ease);
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-primary{background:var(--accent); color:#16191D;}
  .btn-primary:hover{background:var(--accent-soft);}
  .btn-ghost{border-color:var(--line); color:var(--ink);}
  .btn-ghost:hover{border-color:var(--accent); color:var(--accent-soft);}
  .btn svg{width:14px; height:14px; flex:none;}

  .hero-roles{
    margin-top:74px; display:grid;
    grid-template-columns:repeat(4,1fr); gap:14px;
    perspective:1000px;
  }
  @media (max-width:900px){ .hero-roles{grid-template-columns:repeat(2,1fr); gap:12px;} }
  @media (max-width:460px){ .hero-roles{grid-template-columns:1fr;} }

  .role-card{
    position:relative; isolation:isolate;
    background:linear-gradient(158deg, #232830 0%, #1B1F25 60%, #191D22 100%);
    border:1px solid var(--line-soft);
    border-radius:12px;
    padding:26px 24px 28px;
    transform-style:preserve-3d;
    transition:transform .4s var(--ease), border-color .3s ease, box-shadow .4s var(--ease);
    box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
  }
  /* šviesos blyksnis viršutiniame krašte — suteikia tūrio */
  .role-card::before{
    content:''; position:absolute; inset:0; border-radius:12px; pointer-events:none;
    background:linear-gradient(160deg, rgba(255,255,255,.055) 0%, rgba(255,255,255,0) 42%);
    z-index:-1;
  }
  .role-card::after{
    content:''; position:absolute; left:24px; right:24px; top:0; height:1px; pointer-events:none;
    background:linear-gradient(90deg, transparent, rgba(201,138,62,.55), transparent);
    opacity:0; transition:opacity .35s ease;
  }
  .role-card:hover{
    border-color:#3E454E;
    box-shadow:0 26px 50px -24px rgba(0,0,0,.85), 0 0 0 1px rgba(201,138,62,.10);
  }
  .role-card:hover::after{opacity:1;}

  .role-card .n{
    display:inline-block; color:var(--accent);
    font-family:var(--font-display);
    font-size:.8rem; letter-spacing:.14em; margin-bottom:14px;
  }
  .role-card .t{
    font-size:1.02rem; color:var(--ink); font-weight:500;
    letter-spacing:-.005em; margin-bottom:7px;
  }
  .role-card .d{color:var(--ink-dim); font-size:.855rem; line-height:1.5;}
  @media (max-width:900px){ .role-card{padding:22px 20px 24px;} }

  /* ---------- SECTIONS ---------- */
  .section{padding-top:104px; padding-bottom:104px; border-top:1px solid var(--line-soft);}
  @media (max-width:700px){
    .hero{padding-top:88px; padding-bottom:76px;}
    .section{padding-top:76px; padding-bottom:76px;}
  }
  .section-head{
    display:flex; justify-content:space-between; align-items:flex-end;
    gap:28px; margin-bottom:52px; flex-wrap:wrap;
  }
  .section-head h2{font-size:clamp(1.8rem, 4vw, 2.7rem);}
  .kicker{
    color:var(--accent); font-size:.78rem; letter-spacing:.14em;
    text-transform:uppercase; margin-bottom:14px; display:block;
  }
  .section-head p{color:var(--ink-dim); max-width:400px; font-size:.97rem;}

  /* ---------- ABOUT ---------- */
  .about-grid{display:grid; grid-template-columns:1fr 1.5fr; gap:64px;}
  @media (max-width:800px){ .about-grid{grid-template-columns:1fr; gap:44px;} }
  .about-grid .body p{color:var(--ink-dim); margin-bottom:18px; font-size:1.03rem;}
  .about-grid .body p:last-child{margin-bottom:0;}
  .about-grid .body strong{color:var(--ink); font-weight:500;}
  .about-stats{display:flex; flex-direction:column; gap:30px;}
  .stat{border-left:2px solid var(--accent); padding-left:20px;}
  .stat .num{font-family:var(--font-display); font-size:2.3rem; color:var(--ink); line-height:1;}
  .stat .label{color:var(--ink-dim); font-size:.9rem; margin-top:6px;}

  .toolbelt{margin-top:34px; display:flex; flex-wrap:wrap; gap:8px;}
  .toolbelt span{
    border:1px solid var(--line); color:var(--ink-dim);
    padding:6px 13px; border-radius:99px; font-size:.82rem;
  }

  /* ---------- PORTFOLIO ---------- */
  .filters{display:flex; gap:8px; margin-bottom:34px; flex-wrap:wrap;}
  .filter-btn{
    background:none; border:1px solid var(--line); color:var(--ink-dim);
    padding:9px 18px; border-radius:99px; font-family:var(--font-sans);
    font-size:.86rem; cursor:pointer; transition:all .18s ease;
  }
  .filter-btn:hover{color:var(--ink); border-color:var(--ink-dim);}
  .filter-btn[aria-pressed="true"]{background:var(--ink); color:var(--bg); border-color:var(--ink);}

  .portfolio-grid{
    display:grid; grid-template-columns:repeat(2,1fr);
    gap:1px; background:var(--line-soft);
    border:1px solid var(--line-soft);
  }
  @media (max-width:720px){ .portfolio-grid{grid-template-columns:1fr;} }
  .project{
    background:var(--bg-panel); padding:34px 32px;
    display:flex; flex-direction:column; gap:12px;
    position:relative; overflow:hidden;
    transition:background .25s ease, opacity .3s ease, transform .3s var(--ease);
  }
  .project::after{
    content:''; position:absolute; left:0; top:0; width:2px; height:100%;
    background:var(--accent); transform:scaleY(0); transform-origin:top;
    transition:transform .35s var(--ease);
  }
  .project:hover{background:var(--bg-panel-2);}
  .project:hover::after{transform:scaleY(1);}
  .project .cat{
    color:var(--accent-soft); font-size:.76rem;
    letter-spacing:.12em; text-transform:uppercase;
  }
  .project h3{font-size:1.3rem;}
  .project .desc{color:var(--ink-dim); font-size:.95rem;}
  .project .tags{display:flex; flex-wrap:wrap; gap:6px; margin-top:2px;}
  .project .tags span{
    font-size:.74rem; color:var(--ink-dim);
    border:1px solid var(--line); padding:3px 9px; border-radius:99px;
  }
  .project .link{
    font-size:.87rem; color:var(--ink); margin-top:auto; padding-top:16px;
    text-decoration:none; display:inline-flex; align-items:center; gap:7px;
    align-self:flex-start; border-bottom:1px solid var(--line); padding-bottom:3px;
    transition:border-color .2s ease, color .2s ease;
  }
  .project .link:hover{color:var(--accent-soft); border-color:var(--accent);}
  .project .link span{transition:transform .25s var(--ease); display:inline-block;}
  .project .link:hover span{transform:translateX(4px);}
  .project.hidden{display:none;}

  .works-note{
    margin-top:30px; color:var(--ink-dim); font-size:.93rem;
    border-left:2px solid var(--accent); padding-left:18px; max-width:640px;
  }
  /* ---------- PROCESS ---------- */
  .steps{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; perspective:1000px;}
  @media (max-width:860px){ .steps{grid-template-columns:repeat(2,1fr); gap:12px;} }
  @media (max-width:520px){ .steps{grid-template-columns:1fr;} }
  .step{
    position:relative;
    background:linear-gradient(158deg, #21262E 0%, #1A1E24 65%);
    border:1px solid var(--line-soft);
    border-radius:12px;
    padding:28px 24px 30px;
    transition:transform .4s var(--ease), border-color .3s ease, box-shadow .4s var(--ease);
  }
  .step:hover{
    transform:translate3d(0,-5px,0);
    border-color:#3E454E;
    box-shadow:0 24px 46px -24px rgba(0,0,0,.85);
  }
  /* jungiamoji linija tarp žingsnių — matosi tik plačiame ekrane */
  .step::after{
    content:''; position:absolute; top:40px; right:-15px; width:14px; height:1px;
    background:var(--line); pointer-events:none;
  }
  .step:last-child::after{display:none;}
  @media (max-width:860px){ .step{padding:24px 20px 26px;} .step::after{display:none;} }
  .step .n{
    font-family:var(--font-display); color:var(--accent); font-size:.8rem;
    letter-spacing:.12em; margin-bottom:12px;
  }
  .step h3{font-size:1.08rem; font-weight:500; margin-bottom:8px;}
  .step p{color:var(--ink-dim); font-size:.92rem;}

  /* ---------- SERVICES ---------- */
  /* ---------- AKCIJOS KORTELĖ ---------- */
  .promo-card{
    display:flex; gap:26px; align-items:flex-start;
    margin-bottom:14px; padding:26px 28px;
    background:linear-gradient(150deg,rgba(201,138,62,.13) 0%,rgba(201,138,62,.04) 55%,transparent 100%);
    border:1px solid rgba(201,138,62,.34); border-radius:14px;
  }
  .promo-card-pct{
    flex:none;
    font-family:var(--font-display); font-size:2.4rem; line-height:1;
    color:var(--accent-soft); letter-spacing:-.02em;
  }
  .promo-card h3{font-size:1.25rem; font-weight:500; margin-bottom:8px;}
  .promo-card p{color:var(--ink-dim); font-size:.94rem; max-width:62ch;}
  .promo-card-meta{
    display:flex; flex-wrap:wrap; align-items:center; gap:10px;
    margin-top:14px; font-size:.82rem;
  }
  .promo-card-meta code{
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.78rem;
    color:var(--accent-soft); letter-spacing:.06em;
    padding:3px 9px; border-radius:4px;
    border:1px dashed rgba(201,138,62,.45); background:rgba(201,138,62,.08);
  }
  .promo-card .btn{margin-top:18px;}
  @media (max-width:600px){
    .promo-card{flex-direction:column; gap:12px; padding:22px 20px;}
    .promo-card-pct{font-size:2rem;}
  }

  /* akcijos kaina skaičiuoklėje */
  .calc-was{
    display:flex; flex-wrap:wrap; align-items:center; gap:8px;
    margin-top:6px; font-size:.84rem; color:var(--ink-dim);
  }
  .calc-was s{opacity:.75;}
  .calc-was b{
    color:#16191D; background:var(--accent);
    font-size:.74rem; font-weight:700; letter-spacing:.03em;
    padding:2px 8px; border-radius:999px;
  }
  .calc-was span{color:var(--accent-soft);}

  .services-list{display:flex; flex-direction:column;}
  .service-row{
    display:grid; grid-template-columns:1.3fr 2fr .9fr; gap:28px;
    padding:30px 0; border-top:1px solid var(--line-soft);
    align-items:baseline; transition:padding-left .3s var(--ease);
  }
  .service-row:hover{padding-left:10px;}
  .services-list .service-row:last-child{border-bottom:1px solid var(--line-soft);}
  @media (max-width:760px){
    .service-row{grid-template-columns:1fr; gap:8px; padding:24px 0;}
    .service-row:hover{padding-left:0;}
  }
  .service-row h3{font-size:1.2rem; font-weight:500;}
  .service-row p{color:var(--ink-dim); font-size:.94rem;}
  .service-row .price{
    font-family:var(--font-display); color:var(--accent-soft);
    font-size:1.18rem; text-align:right; white-space:nowrap;
  }
  @media (max-width:760px){ .service-row .price{text-align:left; margin-top:4px;} }
  .price small{
    display:block; color:var(--ink-dim); font-size:.74rem;
    font-family:var(--font-sans); margin-top:2px; letter-spacing:.04em;
  }
  .services-note{
    margin-top:38px; color:var(--ink-dim); font-size:.93rem;
    border-left:2px solid var(--accent); padding-left:18px; max-width:640px;
  }

  /* ---------- PATIRTIS ---------- */
  .exp-lede{color:var(--ink-dim); max-width:660px; margin-bottom:40px; font-size:1.02rem;}
  .exp-list{display:flex; flex-direction:column;}
  .exp-row{
    display:grid; grid-template-columns:1.1fr 1.4fr auto; gap:24px;
    padding:24px 0; border-top:1px solid var(--line-soft); align-items:baseline;
  }
  .exp-list .exp-row:last-of-type{border-bottom:1px solid var(--line-soft);}
  @media (max-width:700px){ .exp-row{grid-template-columns:1fr auto; gap:6px 16px; padding:20px 0;} }
  .exp-row h3{font-size:1.15rem; font-weight:500;}
  .exp-row .role{color:var(--ink-dim); font-size:.94rem;}
  @media (max-width:700px){ .exp-row .role{grid-column:1 / -1;} }
  .exp-row .players{
    font-family:var(--font-display); color:var(--accent-soft);
    font-size:1.3rem; text-align:right; white-space:nowrap;
  }
  .exp-row .players small{
    display:block; color:var(--ink-dim); font-size:.72rem; margin-top:1px;
    font-family:var(--font-sans); letter-spacing:.04em;
  }
  .exp-note{
    margin-top:30px; color:var(--ink-dim); font-size:.93rem;
    border-left:2px solid var(--accent); padding-left:18px; max-width:640px;
  }
  .exp-skills{margin-top:34px;}
  .exp-skills .lbl{
    color:var(--accent); font-size:.76rem; letter-spacing:.14em;
    text-transform:uppercase; margin-bottom:14px; display:block;
  }
  .exp-skills .tags{display:flex; flex-wrap:wrap; gap:8px;}
  .exp-skills span.t{
    border:1px solid var(--line); color:var(--ink-dim);
    padding:6px 13px; border-radius:99px; font-size:.82rem;
  }

  /* ---------- ATSILIEPIMAI ---------- */
  .rev-summary{
    display:flex; align-items:center; gap:14px; margin-bottom:34px;
    color:var(--ink-dim); font-size:.95rem; flex-wrap:wrap;
  }
  .rev-summary .avg{
    font-family:var(--font-display); font-size:1.9rem;
    color:var(--ink); line-height:1;
  }
  .stars-out{color:var(--accent); letter-spacing:2px; font-size:1.05rem;}
  .stars-out i{color:var(--line); font-style:normal;}

  .rev-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line-soft);
            border:1px solid var(--line-soft);}
  @media (max-width:720px){ .rev-grid{grid-template-columns:1fr;} }
  .rev-grid:empty{display:none;}
  .rev-card{background:var(--bg-panel); padding:26px 28px; display:flex; flex-direction:column; gap:10px;}
  .rev-card .top{display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap;}
  .rev-card .who{font-family:var(--font-display); font-size:1.1rem;}
  .rev-card .proj{color:var(--ink-dim); font-size:.84rem;}
  .rev-card .body{color:var(--ink-dim); font-size:.95rem; white-space:pre-wrap;}
  .rev-card .date{color:#6C737B; font-size:.78rem; margin-top:auto; padding-top:8px;}

  /* ---------- ATSILIEPIMŲ JUOSTA (kai jų daug) ---------- */
  .rev-marquee{position:relative; margin-left:calc(50% - 50vw); width:100vw; padding:6px 0;}
  .rev-row{
    overflow:hidden; padding:9px 0;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
            mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
  }
  .rev-track{display:flex; gap:16px; width:max-content; animation:marq 70s linear infinite;}
  .rev-row-back .rev-track{animation-direction:reverse;}
  .rev-marquee:hover .rev-track{animation-play-state:paused;}
  @keyframes marq{ from{transform:translate3d(0,0,0);} to{transform:translate3d(-50%,0,0);} }

  .rev-marquee .rev-card{
    flex:0 0 350px; width:350px;
    border:1px solid var(--line-soft); border-radius:12px;
    background:linear-gradient(158deg,#20242B 0%,#1A1E24 70%);
  }
  @media (max-width:600px){ .rev-marquee .rev-card{flex-basis:290px; width:290px;} }

  /* Slenkantis švytėjimas — prideda šviesos, kaip ir WebGL fonas */
  .rev-marquee::after{
    content:''; position:absolute; top:-8%; left:0; height:116%; width:38%;
    pointer-events:none; z-index:3; mix-blend-mode:screen;
    background:radial-gradient(ellipse at center,
      rgba(227,179,122,.15) 0%, rgba(201,138,62,.07) 42%, rgba(201,138,62,0) 70%);
    animation:sweep 13s ease-in-out infinite alternate;
  }
  @keyframes sweep{ from{transform:translate3d(-40%,0,0);} to{transform:translate3d(200%,0,0);} }

  @media (prefers-reduced-motion:reduce){
    .rev-track{animation:none !important; transform:none !important;}
    .rev-row{overflow-x:auto; mask-image:none; -webkit-mask-image:none;}
    .rev-marquee::after{animation:none !important; opacity:.45;}
  }


  /* ---------- LAIKMATIS ---------- */
  .countdown{
    border-top:1px solid var(--line-soft);
    padding:56px 0; text-align:center; position:relative; overflow:hidden;
  }
  .countdown::before{
    content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    width:760px; height:420px; pointer-events:none;
    background:radial-gradient(ellipse, rgba(201,138,62,.10) 0%, rgba(201,138,62,0) 70%);
  }
  .countdown > *{position:relative;}
  .cd-label{
    color:var(--accent); font-size:.78rem; letter-spacing:.14em;
    text-transform:uppercase; margin-bottom:22px;
  }
  .cd-clock{display:flex; justify-content:center; gap:10px; flex-wrap:wrap;}
  .cd-unit{min-width:104px; padding:16px 10px; border:1px solid var(--line-soft); border-radius:var(--radius);}
  @media (max-width:520px){ .cd-unit{min-width:72px; padding:13px 6px;} }
  .cd-num{
    font-family:var(--font-display); font-size:clamp(1.9rem,5.5vw,2.7rem);
    line-height:1; color:var(--ink); font-variant-numeric:tabular-nums;
  }
  .cd-word{color:var(--ink-dim); font-size:.8rem; margin-top:8px; letter-spacing:.03em;}
  .cd-joke{color:var(--ink-dim); margin-top:26px; font-size:.98rem; max-width:460px;
           margin-left:auto; margin-right:auto;}

  /* ---------- WebGL FONAS ---------- */
  /* Drobė dedama kaip pirmas vaikas, kad turinys liktų virš jos.
     Specifiškumas didesnis nei .hero > * , kad neperimtų position:relative. */
  /* per visą ekrano plotį, ne tik per turinio stulpelį —
     kitaip rūkas nusikirstų stačiu kraštu ties 1120px riba */
  .hero > .fx, .countdown > .fx{
    position:absolute; top:0; height:100%;
    left:50%; width:100vw; transform:translateX(-50%);
    display:block; pointer-events:none; z-index:0;
    opacity:0; transition:opacity 1.4s ease;
    /* prideda šviesą, o ne dažo — kitaip auksas ant tamsos virsta ruda dėme */
    mix-blend-mode:screen;
  }
  .fx.ready{opacity:1;}
  /* Kai WebGL veikia — CSS švytėjimas išjungiamas, kad nesidubliuotų */
  .hero.gl-on::before, .countdown.gl-on::before{opacity:0;}

  /* ---------- 3D GYLIS ---------- */
  /* Kortelės jau turi .reveal transformą, todėl hover'iui rašom pilną transformą,
     kad ji nekonfliktuotų su atsiradimo animacija. */
  .portfolio-grid, .rev-grid, .exp-list, .cd-clock{perspective:1300px;}

  .project.in:hover{
    transform:perspective(1300px) translate3d(0,-6px,26px);
    box-shadow:0 30px 55px -28px rgba(0,0,0,.9);
    z-index:2;
  }
  .rev-card{
    transition:transform .4s var(--ease), background .3s ease, box-shadow .4s var(--ease);
  }
  .rev-card:hover{
    transform:translate3d(0,-4px,0);
    background:var(--bg-panel-2);
    box-shadow:0 24px 44px -26px rgba(0,0,0,.85);
  }
  .exp-row{transition:transform .35s var(--ease), border-color .3s ease;}
  .exp-row:hover{transform:translate3d(10px,0,0);}
  .exp-row:hover .players{color:var(--accent);}

  .cd-unit{
    transition:transform .4s var(--ease), border-color .3s ease, background .3s ease;
    transform-style:preserve-3d;
  }
  .cd-unit:hover{
    transform:translate3d(0,-4px,18px) rotateX(-6deg);
    border-color:var(--line); background:rgba(255,255,255,.02);
  }

  /* Parallax: --sy nustato JS pagal slinkimo pozicija */
  .hero::before{
    transform:translate3d(0, calc(var(--sy, 0) * 0.22px), 0);
    will-change:transform;
  }
  .countdown::before{
    transform:translate(-50%,-50%) scale(calc(1 + var(--cdp, 0) * 0.12));
  }

  @media (prefers-reduced-motion:reduce){
    .project.in:hover, .rev-card:hover, .exp-row:hover,
    .cd-unit:hover, .role-card:hover, .step:hover{transform:none;}
    .hero::before{transform:none;}
  }

  /* ---------- CONTACT ---------- */
  .contact-grid{display:grid; grid-template-columns:1.25fr 1fr; gap:64px;}
  @media (max-width:800px){ .contact-grid{grid-template-columns:1fr; gap:48px;} }
  .contact-grid h2{font-size:clamp(1.9rem,4vw,2.8rem); margin-bottom:18px;}
  .contact-grid .intro{color:var(--ink-dim); max-width:460px; margin-bottom:34px;}
  form{display:flex; flex-direction:column; gap:18px;}
  label{font-size:.83rem; color:var(--ink-dim); margin-bottom:7px; display:block; letter-spacing:.03em;}
  input, textarea, select{
    width:100%; background:var(--bg-panel); border:1px solid var(--line);
    color:var(--ink); padding:13px 15px; border-radius:var(--radius);
    font-family:var(--font-sans); font-size:.95rem;
    transition:border-color .2s ease, background .2s ease;
  }
  input::placeholder, textarea::placeholder{color:#6C737B;}
  input:hover, textarea:hover, select:hover{border-color:var(--ink-dim);}
  input:focus, textarea:focus, select:focus{outline:none; border-color:var(--accent); background:var(--bg-panel-2);}
  textarea{min-height:130px; resize:vertical;}
  select{appearance:none; cursor:pointer;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23A2A9B1' stroke-width='1.5'/></svg>");
    background-repeat:no-repeat; background-position:right 15px center; background-size:12px; padding-right:40px;}
  .hp{position:absolute; left:-9999px; opacity:0; height:0; width:0;}
  .form-status{font-size:.9rem; padding:12px 15px; border-radius:var(--radius); display:none;}
  .form-status.show{display:block;}
  .form-status.ok{background:rgba(201,138,62,.12); border:1px solid var(--accent); color:var(--accent-soft);}
  .form-status.err{background:rgba(214,90,72,.1); border:1px solid #D65A48; color:#E89184;}

  .contact-info{display:flex; flex-direction:column; gap:14px;}

  /* Pagrindinis kontaktas — paspaudziamas blokas */
  .ci{
    display:flex; align-items:center; gap:15px; text-decoration:none;
    background:linear-gradient(158deg,#22272E 0%,#1A1E24 70%);
    border:1px solid var(--line-soft); border-radius:13px;
    padding:17px 18px;
    transition:border-color .3s ease, transform .3s var(--ease), box-shadow .3s var(--ease);
  }
  .ci:hover{
    border-color:rgba(201,138,62,.45);
    transform:translateY(-3px);
    box-shadow:0 22px 40px -24px rgba(0,0,0,.85);
  }
  .ci-ico{
    flex:0 0 42px; width:42px; height:42px; border-radius:12px;
    display:flex; align-items:center; justify-content:center;
    background:rgba(201,138,62,.12); border:1px solid rgba(201,138,62,.28);
    color:var(--accent); transition:background .3s ease, color .3s ease;
  }
  .ci:hover .ci-ico{background:rgba(201,138,62,.22); color:var(--accent-soft);}
  .ci-ico svg{width:20px; height:20px;}
  .ci-txt{display:flex; flex-direction:column; min-width:0; flex:1;}
  .ci-lbl{color:var(--ink-dim); font-size:.79rem; letter-spacing:.05em; margin-bottom:2px;}
  .ci-txt strong{
    font-family:var(--font-display); font-size:1.12rem;
    font-weight:600; color:var(--ink); word-break:break-word;
  }
  .ci-go{
    color:var(--ink-dim); font-size:1.05rem; flex:0 0 auto;
    transition:transform .3s var(--ease), color .3s ease;
  }
  .ci:hover .ci-go{transform:translateX(4px); color:var(--accent-soft);}

  /* Faktai — kompaktiskas saraselis */
  .ci-facts{
    display:flex; flex-direction:column;
    border:1px solid var(--line-soft); border-radius:13px; overflow:hidden;
  }
  .cf{
    display:grid; grid-template-columns:34px 1fr auto; align-items:center;
    gap:0 12px; padding:14px 18px;
    border-top:1px solid var(--line-soft);
  }
  .cf:first-child{border-top:none;}
  .cf-ico{
    grid-row:1 / -1; align-self:start; margin-top:2px;
    width:34px; height:34px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    background:rgba(255,255,255,.03); border:1px solid var(--line-soft);
    color:var(--ink-dim);
  }
  .cf-ico svg{width:16px; height:16px;}
  .cf-lbl{color:var(--ink-dim); font-size:.78rem; letter-spacing:.05em; grid-column:2;}
  .cf-val{
    grid-column:2; color:var(--ink); font-size:.98rem; font-weight:500;
  }
  .cf-note{
    grid-column:2; color:#7C838B; font-size:.82rem; margin-top:3px;
  }

  .ci-social{padding-top:4px;}
  .ci-social-row{display:flex; flex-wrap:wrap; gap:8px; margin-top:8px;}
  .ci-social-row a{
    border:1px solid var(--line); color:var(--ink-dim); text-decoration:none;
    padding:8px 15px; border-radius:99px; font-size:.86rem;
    transition:border-color .2s ease, color .2s ease;
  }
  .ci-social-row a:hover{border-color:var(--accent); color:var(--accent-soft);}

  /* Du igudziu rinkiniai */
  .exp-skills{display:flex; flex-wrap:wrap; gap:30px 56px;}
  .skillset{min-width:240px;}
  .t-soft{
    border-color:rgba(201,138,62,.3) !important;
    color:var(--accent-soft) !important;
    background:rgba(201,138,62,.06);
  }

  /* ---------- FOOTER ---------- */
  footer{border-top:1px solid var(--line-soft); padding:34px 0;}
  footer .wrap{
    display:flex; justify-content:space-between; align-items:center;
    gap:16px; flex-wrap:wrap; color:var(--ink-dim); font-size:.85rem;
  }
  footer a{text-decoration:none; transition:color .2s ease;}
  footer a:hover{color:var(--ink);}

  .totop{
    position:fixed; right:26px; bottom:26px; z-index:40;
    width:44px; height:44px; border-radius:50%;
    background:var(--bg-panel-2); border:1px solid var(--line); color:var(--ink);
    display:flex; align-items:center; justify-content:center; cursor:pointer;
    opacity:0; pointer-events:none;
    transition:opacity .3s ease, transform .3s var(--ease), border-color .2s ease;
    transform:translateY(8px);
  }
  .totop.show{opacity:1; pointer-events:auto; transform:none;}
  .totop:hover{border-color:var(--accent); color:var(--accent-soft);}
  @media (max-width:600px){ .totop{right:16px; bottom:16px;} }


/* ============================================================
   SKAIČIUOKLĖ
   ============================================================ */
.calc{display:grid; grid-template-columns:1.35fr 1fr; gap:34px; align-items:start;}
@media (max-width:900px){ .calc{grid-template-columns:1fr;} }

.calc-qs{display:flex; flex-direction:column; gap:26px;}
.calc-lbl{
  display:flex; align-items:baseline; gap:10px; margin-bottom:12px;
  font-size:.95rem; color:var(--ink);
}
.calc-lbl em{
  font-style:normal; font-family:var(--font-display);
  color:var(--accent); font-size:.8rem; letter-spacing:.12em;
}
.calc-opts{display:flex; flex-wrap:wrap; gap:8px;}
.calc-opts button{
  background:none; border:1px solid var(--line); color:var(--ink-dim);
  padding:10px 16px; border-radius:99px; cursor:pointer;
  font-family:var(--font-sans); font-size:.87rem;
  transition:border-color .2s ease, color .2s ease, background .2s ease;
}
.calc-opts button:hover{color:var(--ink); border-color:var(--ink-dim);}
.calc-opts button[aria-pressed="true"]{
  background:var(--accent); border-color:var(--accent); color:#16191D; font-weight:500;
}

.calc-out{
  position:sticky; top:100px;
  background:linear-gradient(158deg,#21262E 0%,#1A1E24 70%);
  border:1px solid var(--line-soft); border-radius:14px;
  padding:28px 26px 26px;
}
@media (max-width:900px){ .calc-out{position:static;} }
.calc-out-lbl{
  display:block; color:var(--accent); font-size:.76rem;
  letter-spacing:.14em; text-transform:uppercase; margin-bottom:12px;
}
.calc-price{
  font-family:var(--font-display); color:var(--ink);
  font-size:clamp(1.9rem,4.5vw,2.5rem); line-height:1.1;
  font-variant-numeric:tabular-nums;
}
.calc-price em{font-style:normal; color:var(--accent-soft);}
.calc-note{
  color:var(--ink-dim); font-size:.86rem; margin-top:14px;
  padding-top:14px; border-top:1px solid var(--line-soft);
}
.calc-form{display:flex; flex-direction:column; gap:12px; margin-top:20px;}
.calc-form label{margin-bottom:0;}
.calc-form textarea{min-height:64px;}

/* ============================================================
   PROJEKTO PUSLAPIS
   ============================================================ */
.backlink{
  display:inline-block; color:var(--ink-dim); text-decoration:none;
  font-size:.9rem; margin-bottom:34px; transition:color .2s ease;
}
.backlink:hover{color:var(--accent-soft);}

.case{max-width:860px;}
.case-head h1{font-size:clamp(2rem,5vw,3.1rem); margin-top:6px;}
.case-lead{color:var(--ink-dim); font-size:1.12rem; margin-top:18px; max-width:620px;}
.case-meta{
  display:flex; flex-wrap:wrap; gap:14px 40px; margin-top:32px;
  padding-top:24px; border-top:1px solid var(--line-soft);
}
.case-meta .lbl{
  display:block; color:var(--ink-dim); font-size:.78rem;
  letter-spacing:.06em; margin-bottom:4px;
}
.case-meta strong{font-weight:500; font-size:.98rem;}
.case-meta a{color:var(--accent-soft); text-decoration:none;}
.case-meta a:hover{text-decoration:underline;}

.case-shot{
  margin:44px 0 8px; border-radius:14px; overflow:hidden;
  border:1px solid var(--line-soft);
  box-shadow:0 34px 60px -34px rgba(0,0,0,.9);
}
.case-shot img{width:100%; height:auto; display:block;}

.case-block{margin-top:52px;}
.case-block h2{font-size:1.55rem; margin-bottom:16px;}
.case-block p{color:var(--ink-dim); font-size:1.04rem;}
.case-result{
  border-left:2px solid var(--accent); padding-left:20px;
  color:var(--ink) !important;
}
.case-list{list-style:none; display:flex; flex-direction:column; gap:12px;}
.case-list li{
  color:var(--ink-dim); padding-left:26px; position:relative; font-size:1.02rem;
}
.case-list li::before{
  content:'—'; position:absolute; left:0; color:var(--accent);
}
.tagrow{display:flex; flex-wrap:wrap; gap:8px;}
.tagrow .t{
  border:1px solid var(--line); color:var(--ink-dim);
  padding:6px 13px; border-radius:99px; font-size:.82rem;
}

.case-more{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
@media (max-width:700px){ .case-more{grid-template-columns:1fr;} }
.case-more-card{
  display:flex; flex-direction:column; gap:6px; text-decoration:none;
  background:var(--bg-panel); border:1px solid var(--line-soft);
  border-radius:12px; padding:22px 20px;
  transition:transform .3s var(--ease), border-color .3s ease;
}
.case-more-card:hover{transform:translateY(-4px); border-color:#3E454E;}
.case-more-card .cat{color:var(--accent-soft); font-size:.74rem; letter-spacing:.12em; text-transform:uppercase;}
.case-more-card strong{font-family:var(--font-display); font-size:1.15rem; font-weight:600;}
.case-more-card .d{color:var(--ink-dim); font-size:.88rem;}

.case-cta, .post-cta{
  margin-top:64px; padding:34px 30px; text-align:center;
  background:linear-gradient(158deg,#21262E 0%,#1A1E24 70%);
  border:1px solid var(--line-soft); border-radius:14px;
}
.case-cta h2, .post-cta h2{font-size:1.5rem; margin-bottom:10px;}
.case-cta p, .post-cta p{color:var(--ink-dim); margin-bottom:22px;}

/* ============================================================
   STRAIPSNIAI
   ============================================================ */
.post{max-width:760px;}
.post-meta, .post-item-meta{
  display:flex; gap:10px; align-items:center;
  color:var(--ink-dim); font-size:.85rem; margin-bottom:14px;
}
.post-head h1{font-size:clamp(1.9rem,4.6vw,2.9rem);}
.post-lead{color:var(--ink-dim); font-size:1.14rem; margin-top:18px;}

.post-body{margin-top:44px;}
.post-body h2{font-size:1.45rem; margin:42px 0 14px;}
.post-body h2:first-child{margin-top:0;}
.post-body p{color:var(--ink-dim); font-size:1.06rem; margin-bottom:18px;}
.post-body strong{color:var(--ink); font-weight:500;}
.post-body ul{list-style:none; margin:0 0 22px; display:flex; flex-direction:column; gap:11px;}
.post-body li{
  color:var(--ink-dim); font-size:1.02rem; padding-left:26px; position:relative;
}
.post-body li::before{content:'—'; position:absolute; left:0; color:var(--accent);}

.post-list{display:flex; flex-direction:column; gap:1px; background:var(--line-soft);
           border:1px solid var(--line-soft); border-radius:12px; overflow:hidden;}
.post-item{
  display:block; text-decoration:none; background:var(--bg-panel);
  padding:30px 30px 26px; transition:background .25s ease;
}
.post-item:hover{background:var(--bg-panel-2);}
.post-item h2{font-size:1.4rem; margin-bottom:10px;}
.post-item p{color:var(--ink-dim); font-size:.98rem; margin-bottom:14px; max-width:640px;}
.post-item-go{
  display:inline-block; margin-top:14px; color:var(--accent-soft); font-size:.9rem;
}
@media (max-width:600px){ .post-item{padding:24px 20px;} }

.post-more{margin-top:56px;}
.post-more h2{font-size:1.3rem; margin-bottom:16px;}
.post-more-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
@media (max-width:700px){ .post-more-grid{grid-template-columns:1fr;} }
.post-card{
  display:flex; flex-direction:column; gap:7px; text-decoration:none;
  background:var(--bg-panel); border:1px solid var(--line-soft);
  border-radius:12px; padding:22px 20px;
  transition:transform .3s var(--ease), border-color .3s ease;
}
.post-card:hover{transform:translateY(-4px); border-color:#3E454E;}
.post-card .d{color:var(--ink-dim); font-size:.8rem;}
.post-card strong{font-family:var(--font-display); font-size:1.1rem; font-weight:600;}
.post-card .l{color:var(--ink-dim); font-size:.87rem;}

/* Projektų kortelių nuotraukos pagrindiniame puslapyje */
.project-shot{
  display:block; margin:-34px -32px 18px; border-bottom:1px solid var(--line-soft);
  aspect-ratio:16/10; overflow:hidden; background:var(--bg);
}
.project-shot img{
  width:100%; height:100%; object-fit:cover; object-position:top center;
  transition:transform .6s var(--ease); opacity:.86;
}
.project:hover .project-shot img{transform:scale(1.04); opacity:1;}

/* Kortele be nuotraukos - tvarkingas vietos laikiklis, kad tinklelis liktu tolygus */
.project-shot.ph{
  display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(120% 90% at 30% 0%, rgba(201,138,62,.13) 0%, rgba(201,138,62,0) 60%),
    linear-gradient(158deg,#23282F 0%,#191D23 70%);
}
.project-shot.ph .ph-mark{
  font-family:var(--font-display);
  font-size:1.5rem; color:var(--ink-dim); letter-spacing:-.01em;
  opacity:.55; padding:0 20px; text-align:center;
}
/* Dvi nuorodos projekto kortelej */
.project-links{
  display:flex; flex-wrap:wrap; gap:8px 20px; align-items:center;
  margin-top:auto; padding-top:16px;
}
.project-links .link{margin-top:0; padding-top:0;}
.project-links .link-quiet{
  color:var(--ink-dim); border-bottom-color:transparent;
}
.project-links .link-quiet:hover{color:var(--accent-soft); border-bottom-color:var(--accent);}
/* ============================================================
   KODEL TOKIOS KAINOS
   ============================================================ */
.why{
  margin-top:56px; padding:34px 32px 30px;
  background:linear-gradient(158deg,#21262E 0%,#1A1E24 70%);
  border:1px solid var(--line-soft); border-radius:14px;
}
@media (max-width:600px){ .why{padding:26px 20px 24px;} }
.why-head h3{font-size:1.5rem; margin-bottom:12px;}
.why-head p{color:var(--ink-dim); max-width:680px; font-size:1rem;}

.cmp{margin-top:28px; border-top:1px solid var(--line-soft);}
.cmp-row{
  display:grid; grid-template-columns:1.1fr 1fr 1fr 1fr; gap:14px;
  padding:14px 0; border-bottom:1px solid var(--line-soft);
  font-size:.94rem; color:var(--ink-dim); align-items:center;
}
.cmp-row .k{color:var(--ink); font-weight:500;}
.cmp-row .me{color:var(--accent-soft); font-weight:500;}
.cmp-head{
  font-size:.76rem; letter-spacing:.1em; text-transform:uppercase;
  color:#6C737B; border-bottom-color:var(--line);
}
.cmp-head .me{color:var(--accent);}

/* Telefone lentele slenka horizontaliai — taip islieka pats palyginimas,
   kuris ir yra visa sios lenteles prasme */
@media (max-width:760px){
  .cmp{overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:4px;}
  .cmp-row{
    grid-template-columns:104px repeat(3, minmax(116px, 1fr));
    min-width:520px; font-size:.86rem; gap:10px;
  }
}

/* Keturi argumentai — kortelemis, ne sarasu */
.why-points{
  display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:30px;
}
@media (max-width:700px){ .why-points{grid-template-columns:1fr;} }

.wp{
  display:flex; gap:15px; align-items:flex-start;
  background:rgba(255,255,255,.022);
  border:1px solid var(--line-soft);
  border-radius:12px; padding:19px 19px 21px;
  transition:border-color .3s ease, transform .3s var(--ease), background .3s ease;
}
.wp:hover{
  border-color:#3E454E;
  transform:translateY(-3px);
  background:rgba(255,255,255,.04);
}
.wp:hover .wp-ico{
  background:rgba(201,138,62,.2);
  border-color:rgba(201,138,62,.5);
  color:var(--accent-soft);
}

.wp-ico{
  flex:0 0 40px; width:40px; height:40px; border-radius:11px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,138,62,.11);
  border:1px solid rgba(201,138,62,.26);
  color:var(--accent);
  transition:background .3s ease, border-color .3s ease, color .3s ease;
}
.wp-ico svg{width:19px; height:19px;}

.wp strong{
  display:block; font-family:var(--font-display);
  font-size:1.06rem; font-weight:600; color:var(--ink);
  letter-spacing:-.005em; margin-bottom:6px;
}
.wp p{color:var(--ink-dim); font-size:.92rem; line-height:1.55;}

.why-foot{
  margin-top:24px; padding-top:18px; border-top:1px solid var(--line-soft);
  color:#7C838B; font-size:.88rem; max-width:720px;
}

/* ============================================================
   BUSENOS TASKAS
   ============================================================ */
.live-dot{
  display:inline-block; width:8px; height:8px; border-radius:50%;
  background:#6C737B; margin-right:8px; vertical-align:middle;
  box-shadow:0 0 0 0 rgba(95,169,107,.5);
}
.live-dot.on{
  background:#5FA96B;
  animation:livePulse 2.4s ease-out infinite;
}
@keyframes livePulse{
  0%{box-shadow:0 0 0 0 rgba(95,169,107,.45);}
  70%{box-shadow:0 0 0 7px rgba(95,169,107,0);}
  100%{box-shadow:0 0 0 0 rgba(95,169,107,0);}
}
.cf-status .cf-val{display:flex; align-items:center;}

/* ============================================================
   POKALBIU LANGAS
   ============================================================ */
.chat{position:fixed; right:26px; bottom:26px; z-index:90; isolation:isolate;}
@media (max-width:600px){ .chat{right:16px; bottom:16px;} }

.chat-fab{
  position:relative; width:56px; height:56px; border-radius:50%;
  border:1px solid rgba(201,138,62,.4); cursor:pointer;
  background:linear-gradient(158deg,#2A3039 0%,#1C2026 70%);
  color:var(--accent); display:flex; align-items:center; justify-content:center;
  box-shadow:0 16px 34px -14px rgba(0,0,0,.9);
  transition:transform .3s var(--ease), border-color .3s ease, color .3s ease;
}
.chat-fab:hover{transform:translateY(-3px); border-color:var(--accent); color:var(--accent-soft);}
.chat-fab svg{width:23px; height:23px;}
.chat-fab-dot{
  position:absolute; top:3px; right:3px;
  width:13px; height:13px; border-radius:50%;
  background:#6C737B; border:2.5px solid #16191D;
}
.chat-fab-dot.on{background:#5FA96B;}
.chat.open .chat-fab{opacity:0; pointer-events:none;}

.chat-panel{
  position:absolute; right:0; bottom:0;
  width:min(370px, calc(100vw - 32px));
  background:#1B1F25; border:1px solid var(--line);
  border-radius:16px; overflow:hidden;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.95);
  display:flex; flex-direction:column;
  transform-origin:bottom right;
  animation:chatIn .28s var(--ease);
  /* atskiras piesimo sluoksnis — kitaip po langu esantis turinys
     gali prasisviesti pro ji */
  isolation:isolate; position:absolute; z-index:1;
  backface-visibility:hidden;
}
@keyframes chatIn{from{opacity:0; transform:translateY(12px) scale(.97);} to{opacity:1; transform:none;}}
@media (prefers-reduced-motion:reduce){ .chat-panel{animation:none;} }

.chat-head{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 14px 14px 16px; border-bottom:1px solid var(--line-soft);
  background:linear-gradient(158deg,#23282F 0%,#1B1F25 80%);
}
.chat-who{display:flex; align-items:center; gap:11px;}
.chat-av{
  width:36px; height:36px; border-radius:50%; flex:0 0 36px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,138,62,.14); border:1px solid rgba(201,138,62,.3);
  color:var(--accent); font-family:var(--font-display); font-size:1.05rem;
}
.chat-who strong{display:block; font-size:.97rem; color:var(--ink); font-weight:600;}
.chat-state{display:flex; align-items:center; font-size:.79rem; color:var(--ink-dim); margin-top:1px;}
.chat-x{
  background:none; border:none; color:var(--ink-dim); cursor:pointer;
  width:30px; height:30px; border-radius:8px; display:flex;
  align-items:center; justify-content:center; transition:color .2s ease, background .2s ease;
}
.chat-x:hover{color:var(--ink); background:rgba(255,255,255,.05);}
.chat-x svg{width:17px; height:17px;}

.chat-log{
  padding:16px; display:flex; flex-direction:column; gap:9px;
  max-height:330px; min-height:150px; overflow-y:auto;
  scrollbar-width:thin; scrollbar-color:var(--line) transparent;
}
.chat-log::-webkit-scrollbar{width:6px;}
.chat-log::-webkit-scrollbar-thumb{background:var(--line); border-radius:3px;}

.msg{
  max-width:82%; padding:10px 13px; border-radius:14px;
  font-size:.9rem; line-height:1.5; white-space:pre-wrap; word-break:break-word;
}
.msg.a{
  align-self:flex-start; background:#252A31; color:var(--ink);
  border:1px solid var(--line-soft); border-bottom-left-radius:5px;
}
.msg.v{
  align-self:flex-end; background:var(--accent); color:#16191D;
  font-weight:500; border-bottom-right-radius:5px;
}
.msg-sys{
  align-self:center; text-align:center; color:var(--ink-dim);
  font-size:.83rem; padding:6px 4px; max-width:100%;
}

.chat-form{padding:12px 14px 14px; border-top:1px solid var(--line-soft);}
.chat-email{margin-bottom:9px;}
.chat-email input{
  width:100%; background:#22272E; border:1px solid var(--line);
  color:var(--ink); border-radius:10px; padding:9px 12px;
  font-family:var(--font-sans); font-size:.86rem;
}
.chat-email input:focus{outline:none; border-color:var(--accent);}
.chat-row{display:flex; gap:8px; align-items:flex-end;}
.chat-row textarea{
  flex:1; background:#22272E; border:1px solid var(--line);
  color:var(--ink); border-radius:11px; padding:10px 12px;
  font-family:var(--font-sans); font-size:.9rem; line-height:1.45;
  resize:none; max-height:110px; min-height:40px;
}
.chat-row textarea:focus{outline:none; border-color:var(--accent);}
.chat-row button{
  flex:0 0 40px; width:40px; height:40px; border-radius:11px;
  background:var(--accent); border:none; color:#16191D; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:background .2s ease, transform .2s ease;
}
.chat-row button:hover{background:var(--accent-soft); transform:translateY(-1px);}
.chat-row button:disabled{opacity:.45; cursor:default; transform:none;}
.chat-row button svg{width:18px; height:18px;}
.chat-note{color:var(--ink-dim); font-size:.78rem; margin-top:8px; min-height:1em;}
.chat-note.err{color:#E89184;}

/* ---------- Pasisveikinimo burbulas ---------- */
.chat-teaser{
  position:absolute; right:0; bottom:70px;
  width:min(280px, calc(100vw - 44px));
  background:linear-gradient(158deg,#242A32 0%,#1B1F25 75%);
  border:1px solid var(--line);
  border-radius:14px 14px 4px 14px;
  padding:14px 16px 15px 14px;
  display:flex; gap:11px; align-items:flex-start;
  box-shadow:0 20px 44px -18px rgba(0,0,0,.9);
  cursor:pointer;
  animation:teaserIn .45s var(--ease);
}
@keyframes teaserIn{
  from{opacity:0; transform:translateY(10px) scale(.96);}
  to{opacity:1; transform:none;}
}
@media (prefers-reduced-motion:reduce){ .chat-teaser{animation:none;} }

.chat-teaser:hover{border-color:rgba(201,138,62,.45);}

.chat-teaser-av{
  flex:0 0 30px; width:30px; height:30px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,138,62,.14); border:1px solid rgba(201,138,62,.3);
  color:var(--accent); font-family:var(--font-display); font-size:.92rem;
}
.chat-teaser p{
  color:var(--ink); font-size:.88rem; line-height:1.5; margin:0; padding-right:12px;
}
.chat-teaser-x{
  position:absolute; top:6px; right:6px;
  width:22px; height:22px; border:none; background:none;
  color:#6C737B; cursor:pointer; border-radius:6px;
  display:flex; align-items:center; justify-content:center;
  transition:color .2s ease, background .2s ease;
}
.chat-teaser-x:hover{color:var(--ink); background:rgba(255,255,255,.06);}
.chat-teaser-x svg{width:13px; height:13px;}

/* atidarius pokalbi, burbulas dingsta */
.chat.open .chat-teaser{display:none !important;}
