:root{
  --bg:#ffffff;            /* pagrindas - baltas */
  --panel:#f8fafc;         /* kortelės - šviesiai pilkas */
  --muted:#64748b;         /* antrinis tekstas - tamsiai pilkas */
  --text:#1e293b;          /* pirminis tekstas - tamsus */
  --brand:#1d4ed8;         /* prekės ženklo spalva akcentams */
  --accent:#0ea5e9;        /* šviesus akcentas - dangaus mėlyna */
  --ok:#16a34a;            /* žalia (sėkmė) */
  --warn:#d97706;          /* įspėjimas */
  --err:#dc2626;           /* klaida */
  --radius:18px;
  --shadow:0 10px 30px rgba(0,0,0,.1);
  --ring:0 0 0 3px rgba(30,64,175,.25);
  --container:1200px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
  background: radial-gradient(1200px 600px at 80% -10%, rgba(30,64,175,.08), transparent 60%),
              radial-gradient(800px 400px at 10% 10%, rgba(14,165,233,.05), transparent 60%),
              var(--bg);
  color:var(--text);
  margin:0;
  line-height:1.5;
}
a{color:var(--text);text-decoration:none}
.container{max-width:var(--container);margin-inline:auto;padding:0 20px}

header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav{display:flex;align-items:center;gap:24px;min-height:70px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800}
.logo{width:180px;height:60px;border-radius:8px;display:block;object-fit:contain}
.brand span{letter-spacing:.5px}

.spacer{flex:1}
.nav a.link{opacity:.85;transition:opacity .2s ease}
.nav a.link:hover{opacity:1;background:rgba(30,64,175,.08);padding:8px 12px;border-radius:8px}
.cta{background:linear-gradient(135deg,#1a1a1a,#000000);padding:10px 16px;border-radius:14px;font-weight:600;box-shadow:var(--shadow);color:#ffffff;transition:all .2s ease}
.cta:hover{background:linear-gradient(135deg,#2a2a2a,#0a0a0a);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.4)}
.header-image{height:45px;width:auto;max-width:120px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);margin-left:16px;object-fit:contain}

/* Mobile menu */
details.menu{margin-left:auto}
details.menu summary{list-style:none;cursor:pointer;border:1px solid rgba(255,255,255,.08);padding:8px 12px;border-radius:12px}
details[open] summary{background:rgba(0,0,0,.04)}
details.menu nav{display:flex;flex-direction:column;gap:10px;background:var(--panel);border:1px solid rgba(0,0,0,.08);padding:14px;border-radius:14px;position:absolute;right:20px;top:64px;min-width:220px;box-shadow:var(--shadow)}

@media (min-width:900px){
    details.menu{display:none}
    .nav .links{display:flex;gap:22px}
    .logo{transform:translateX(-35px)}
    footer .logo{transform:translateX(-20px)}
}
@media (max-width:899px){
     .nav .links{display:none}
     .header-image{height:35px;max-width:100px;margin-left:12px}
     footer .logo{transform:translateX(-10px)}
     .logo{width:140px;height:50px;transform:translateX(-25px)}
 }
@media (max-width:600px){
     footer .logo{transform:translateX(-10px)}
     .header-image{height:30px;max-width:80px;margin-left:8px}
     .logo{width:120px;height:40px;transform:translateX(-25px)}
 }

.hero{padding:80px 0 48px;position:relative}
.hero .grid{display:grid;gap:28px;align-items:center}
@media(min-width:900px){.hero .grid{grid-template-columns:1.1fr .9fr}}
h1{font-size:clamp(28px,4.6vw,48px);line-height:1.1;margin:0 0 14px}
.subtitle{color:var(--muted);font-size:clamp(14px,2vw,18px)}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(0,0,0,.03)}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}
.btn{display:inline-flex;align-items:center;gap:10px;border-radius:14px;padding:12px 16px;font-weight:600;transition:all .2s ease}
.btn.primary{background:linear-gradient(135deg,#1a1a1a,#000000);color:#ffffff}
.btn.primary:hover{background:linear-gradient(135deg,#2a2a2a,#0a0a0a);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.4)}
.btn.ghost{border:1px solid rgba(0,0,0,.3);background:rgba(0,0,0,.05)}
.btn.ghost:hover{background:rgba(0,0,0,.15);border-color:rgba(0,0,0,.5);transform:translateY(-1px)}

.mock{aspect-ratio:16/11;border-radius:20px;border:1px solid rgba(0,0,0,.08);background:linear-gradient(180deg,#f1f5f9,#e2e8f0);box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}
.hero-image{width:100%;height:100%;object-fit:cover;border-radius:20px}

.image-container{position:relative;width:100%;height:100%}
.overlay{position:absolute;top:0;right:0;width:40%;height:100%;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;border-radius:0 20px 20px 0}
.overlay-text{color:white;font-size:1.5rem;font-weight:bold;text-align:center;padding:10px}

@media (max-width:899px){
  .overlay{width:50%;font-size:1.2rem}
}
@media (max-width:600px){
  .overlay{width:100%;border-radius:20px;font-size:1rem}
}

section{padding:64px 0}
.section-title{font-size:clamp(22px,3vw,34px);margin:0 0 10px}
.section-sub{color:var(--muted);margin:0 0 22px}

.cards{display:grid;gap:16px}
@media(min-width:700px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cards{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--panel);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}
.card h3{margin:4px 0 4px;font-size:18px}
.meta{color:var(--muted);font-size:14px}

.strip{display:grid;gap:12px}
@media(min-width:900px){.strip{grid-template-columns:repeat(4,1fr)}}
.pill{display:flex;align-items:center;gap:12px;border:1px solid rgba(0,0,0,.08);background:rgba(0,0,0,.03);padding:14px;border-radius:14px}

.pricing{display:grid;gap:16px}
@media(min-width:900px){.pricing{grid-template-columns:1.2fr .8fr;align-items:stretch}}
.price-card{background:var(--panel);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.price-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--brand),#0a66ff)}
.price-card .price-header{margin-bottom:20px}
.price-card .section-title{color:var(--text);margin:0 0 8px;font-size:clamp(22px,3vw,28px)}
.price-card .section-sub{color:var(--muted);margin:0;font-size:16px}

.price-list{display:grid;gap:14px;margin-top:16px}
.price-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border:1px solid rgba(0,0,0,.06);border-radius:12px;background:rgba(255,255,255,.6);transition:all .2s ease}
.price-row:hover{background:rgba(30,64,175,.04);border-color:rgba(30,64,175,.2)}

.price-info{display:flex;flex-direction:column;gap:4px;flex:1}
.service-name{color:var(--text);font-weight:600;font-size:16px}
.service-desc{color:var(--muted);font-size:13px;font-weight:400}
.price-row .price{color:var(--brand);font-weight:700;font-size:18px;min-width:80px;text-align:right}

.price-footer{margin-top:20px}
.note{color:var(--muted);font-size:13px;padding:12px;background:rgba(30,64,175,.04);border-radius:10px;border-left:3px solid var(--brand);margin-bottom:16px}

.price-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;background:linear-gradient(135deg,rgba(30,64,175,.08),rgba(14,165,233,.05));border-radius:12px;border:1px solid rgba(30,64,175,.1)}
.cta-text{color:var(--brand);font-weight:600;font-size:14px}
.price-cta .btn{background:linear-gradient(135deg,#1a1a1a,#000000);color:#ffffff;border:none;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.price-cta .btn:hover{background:linear-gradient(135deg,#2a2a2a,#0a0a0a);transform:translateY(-1px);box-shadow:0 6px 16px rgba(0,0,0,.4)}

@media (max-width:899px){
  .pricing{grid-template-columns:1fr}
  .price-card{padding:20px}
  .price-row{flex-direction:column;align-items:flex-start;gap:8px}
  .price-row .price{text-align:left;min-width:auto}
  .price-cta{flex-direction:column;align-items:stretch;text-align:center;gap:8px}
  .service-desc{display:none}
}

@media (max-width:600px){
   .price-info{gap:2px}
   .service-name{font-size:15px}
   .price-row{padding:12px}
   .price-card .section-title{font-size:24px}
   /* Contact card responsive */
   .schedule .day{flex-direction:column;align-items:flex-start;gap:4px;padding:8px 0}
   .schedule .day-name{font-size:13px}
   .schedule .day .hours{font-size:13px}
   .schedule-section{padding:12px}
   .schedule-title{font-size:15px}
   .contact-info{gap:12px}
   .contact-details p{font-size:13px}
}

.form{background:linear-gradient(180deg,#ffffff,#f8fafc);border:1px solid rgba(0,0,0,.12);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}

.sticky-form-section{position:sticky;top:80px;z-index:10;padding:20px 0 40px}
#registracija .form{max-width:600px;margin:0 0 0 auto}

.hero-content{display:flex;align-items:center;justify-content:center;height:100%;min-height:300px}
.hero-text{color:var(--muted);font-size:16px;text-align:center;padding:20px}

@media (min-width:900px) {
  .hero .grid{grid-template-columns:1.1fr .9fr;gap:40px}
  .hero-content{min-height:400px}
}

@media (max-width:899px) {
  .sticky-form-section{top:75px;padding:16px 0 32px}
  #registracija .form{max-width:500px;margin:0 0 0 auto}
  .hero-content{min-height:250px}
}

@media (max-width:600px) {
  .sticky-form-section{top:70px;padding:12px 0 24px}
  #registracija .form{padding:16px;max-width:100%;margin:0}
  .hero-content{min-height:200px}
  .hero-text{font-size:14px}
}
.form .section-title,
.form .section-sub,
.form .help{color:#1e293b}
.grid{display:grid;gap:12px}
@media(min-width:760px){.grid.cols-2{grid-template-columns:1fr 1fr}}
label{font-size:14px;color:#374151}
input,select,textarea{width:100%;background:#ffffff;border:1px solid rgba(0,0,0,.12);color:var(--text);padding:12px 12px;border-radius:12px}
input:focus,select:focus,textarea:focus{outline:none;box-shadow:var(--ring);border-color:var(--brand)}
.help{color:var(--muted);font-size:12px;margin-top:4px}

.review-cards {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, 1fr);
}

.review-card {
  background: var(--panel);
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 16px;
  box-shadow: var(--shadow);
}

.review-card .reviewer {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.review-card .reviewer strong {
  font-weight: 600;
}

.review-card .text {
  margin-bottom: 8px;
}

.review-card.review-button {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.review-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 40px rgba(0,0,0,.15);
}

.review-button {
  background: linear-gradient(135deg, #1a1a1a, #000000);
  color: #ffffff;
  font-weight: 600;
}

@media (max-width: 899px) {
  .review-cards {
    grid-template-columns: 1fr;
  }
}

footer{margin-top:30px;border-top:1px solid rgba(0,0,0,.06);background:#f8fafc;margin-left:20px}
.foot{display:grid;gap:18px;padding:28px 0}
@media(min-width:900px){.foot{grid-template-columns:1.2fr .8fr .8fr .8fr}}
.copy{border-top:1px solid rgba(0,0,0,.06);padding:14px 0;color:var(--muted);font-size:14px}

.schedule{display:grid;gap:6px}
.schedule .day{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px;color:var(--text)}
.schedule .day .hours{color:var(--muted);font-weight:500}

.contact-info{display:flex;flex-direction:column;gap:16px}
.schedule-section{background:linear-gradient(135deg,rgba(30,64,175,.04),rgba(14,165,233,.02));border:1px solid rgba(30,64,175,.1);border-radius:12px;padding:16px}
.schedule-title{color:var(--brand);font-size:16px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}
.schedule-title::before{content:"🕐";font-size:14px}
.schedule{display:grid;gap:8px}
.schedule .day{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;color:var(--text);border-bottom:1px solid rgba(30,64,175,.08)}
.schedule .day:last-child{border-bottom:none}
.schedule .day-name{color:var(--text);font-weight:500}
.schedule .day .hours{color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}
.schedule-note{color:var(--muted);font-size:12px;margin:8px 0 0;padding:8px;background:rgba(30,64,175,.04);border-radius:8px;border-left:3px solid var(--brand)}
.contact-details{display:grid;gap:8px}
.contact-details p{margin:0;font-size:14px}
.contact-details strong{color:var(--text);font-weight:600}

.icon{width:20px;height:20px;opacity:.9}
.kicker{display:inline-flex;gap:8px;align-items:center;color:#1e40af;font-weight:600;background:rgba(30,64,175,.08);border:1px solid rgba(30,64,175,.25);padding:6px 10px;border-radius:999px;font-size:13px}

.form-message {
    padding: 12px 16px;
    border-radius: 12px;
    margin-bottom: 16px;
    font-size: 14px;
    font-weight: 500;
    animation: slideIn 0.3s ease-out;
}

.form-message.success {
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.1), rgba(22, 163, 74, 0.05));
    border: 1px solid rgba(22, 163, 74, 0.3);
    color: var(--ok);
    border-left: 4px solid var(--ok);
}

.form-message.error {
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.1), rgba(220, 38, 38, 0.05));
    border: 1px solid rgba(220, 38, 38, 0.3);
    color: var(--err);
    border-left: 4px solid var(--err);
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}