
:root{
  /* === BRAND COLOR SYSTEM (per brief) === */
  --violet-deep:#360A61;
  --violet-bg-dark:#360A61; /* Unified brand violet for dark backgrounds */
  --about-hero-bg:#360A61; /* Matches the newly recolored About Hero image */
  --violet-pop:#6B3FA0;      /* vivid accent violet, for emphasis words — clearly distinct from --ink */
  --gold-soft:#C9A961;       /* muted champagne gold, for accents on dark violet backgrounds */
  --violet-lt:#F4F0F7;       /* primary light violet background */
  --violet-soft:#DCD2EA;     /* soft violet block */
  --sand:#EEE7D9;            /* warm sand block */
  --gold-pale:#F2E6C4;       /* soft pale gold/yellow block background */
  --sage:#DEE5DA;            /* soft sage / muted green block */
  --near-white:#FAFAFA;
  --ink:#211A2E;
  --ink-soft:#5B5468;
  --white:#FFFFFF;

  --serif:'Playfair Display',serif;
  --sans:'Inter',sans-serif;
  --header-h:104px;
  --header-h-compact:65px;

  /* === SHARED RESPONSIVE GRID === */
  --page-max:1480px;
  --page-gutter:clamp(24px, 4.4vw, 64px);
  --space-section:clamp(72px, 7vw, 108px);

  /* === FLUID TYPE TOKENS === */
  --h1-size:clamp(2.2rem, 4vw, 3.4rem);
  --h2-size:clamp(1.8rem, 2.8vw, 2.7rem);
  --text-display:clamp(2.4rem, 1.6rem + 2.2vw, 3.3rem);
  --text-h1:var(--h1-size);
  --text-h2:var(--h2-size);
  --text-h3:clamp(1.5rem, 1.1rem + 1.4vw, 1.95rem);
  --text-body-lg:clamp(1.05rem, 0.95rem + 0.3vw, 1.2rem);
  --text-body:clamp(0.98rem, 0.94rem + 0.15vw, 1.08rem);
  --text-small:clamp(0.78rem, 0.75rem + 0.1vw, 0.85rem);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);color:var(--ink);background:var(--near-white);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column;}
body.nav-open{overflow:hidden;}

:focus-visible{outline:2px solid var(--violet-deep);outline-offset:2px;}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:0.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.001ms !important;
    scroll-behavior:auto !important;
  }
}
main{display:flex;flex-direction:column;flex:1 0 auto;}
body.page-susisiekime main{justify-content:center;background:var(--violet-bg-dark);}
footer{flex-shrink:0;}
.skip-link{
  position:absolute;left:8px;top:-48px;z-index:1000;
  background:var(--violet-bg-dark);color:var(--white);
  padding:10px 18px;border-radius:4px;font-size:0.9rem;text-decoration:none;
  transition:top 0.2s ease;
}
.skip-link:focus{top:8px;}
img{max-width:100%;display:block;}
a{color:inherit;}
ul{list-style:none;}

.eyebrow{font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--violet-deep);font-weight:500;}
h2.eyebrow{margin:0;display:block;}
.serif{font-family:var(--serif);}

/* ============ SHARED CONTAINER ============ */
.container{
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));
  margin-inline:auto;
}

/* ============ HEADER ============ */
header{
  position:fixed;top:0;left:0;right:0;z-index:200;
  background:var(--violet-lt);
  transition:background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
/* Compact scrolled state: header shrinks from the initial hero height once the
   user scrolls, on every page (not just Home/About) — reduces visual weight
   on normal laptop screens while remaining fully readable. */
@media (min-width:981px){
  header.header-compact .header-inner{height:var(--header-h-compact);}
  header.header-compact .brand-mark{width:40px;height:40px;}
  header.header-compact .brand-divider{height:30px;}
  header.header-compact .brand-name{font-size:1.08rem;}
  header.header-compact .brand-slogan{font-size:0.585rem;}

  /* Contact stays dark, but its desktop header geometry matches the standard header. */
  body.page-susisiekime header.header-compact .header-inner{height:var(--header-h);}
  body.page-susisiekime header.header-compact .brand-mark{width:50px;height:50px;}
  body.page-susisiekime header.header-compact .brand-divider{height:36px;}
  body.page-susisiekime header.header-compact .brand-name{font-size:1.2rem;}
  body.page-susisiekime header.header-compact .brand-slogan{font-size:0.63rem;}
}
@media (max-width:980px){
  header.header-compact .header-inner{height:68px;}
  header.header-compact nav[aria-label="Pagrindinis meniu"]{top:68px;}
}
.header-inner{transition:height 0.25s ease;}
/* HOME, MOBILE ONLY: at the very top the header takes the colour sampled from the Home hero
   artwork (#360A61) so it merges with the hero and scrolled header.
   The first rule prevents a transparent 104px flash before the script has run. */
@media (max-width:699px){
  body.page-pradzia header.header-transparent{background:#360A61;}
  body.page-pradzia header.header-transparent .header-inner{height:68px;}
  body.page-pradzia:not(.nav-open) header.header-dark.header-at-top{background:#360A61;}
}
/* Home and About pages, before the user scrolls: header blends into the Hero —
   transparent, no border. Removed automatically on scroll or when navigating to
   another page (see script at bottom of file). */
header.header-transparent{
  background:transparent;
  border-bottom-color:transparent;
}
/* Home Hero has a dark artwork background, so its nav needs to render in white
   while transparent. About Hero's artwork is light, so its default dark nav
   colour already reads fine over it — no override needed there. */
header.header-transparent.header-white-text .brand-name,
header.header-transparent.header-white-text .brand-slogan{color:var(--white);}
header.header-transparent.header-white-text .brand-divider{background:rgba(255,255,255,0.4);}
header.header-transparent.header-white-text .nav-toggle span{background:var(--white);}
/* Solid dark-violet header state: Home once scrolled past its hero, and
   Susisiekime always (since that whole page is now dark violet too). */
header.header-dark{
  background:var(--violet-bg-dark);
}
header.header-dark .brand-name,
header.header-dark .brand-slogan{color:var(--white);}
header.header-dark .brand-divider{background:rgba(255,255,255,0.3);}
header.header-dark .nav-toggle span{background:var(--white);}
.header-inner{
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;
  height:var(--header-h);
  display:flex;align-items:center;justify-content:space-between;
}
.brand-block{display:flex;align-items:center;gap:24px;text-decoration:none;}
.brand-mark{width:50px;height:50px;flex-shrink:0;transition:width 0.25s ease, height 0.25s ease;}
.brand-mark img{width:100%;height:100%;object-fit:contain;}
.brand-divider{width:1px;height:36px;background:rgba(54,10,97,0.18);transition:height 0.25s ease, background-color 0.25s ease;}
.brand-text{display:flex;flex-direction:column;gap:6px;}
.brand-name{
  font-family:var(--serif);font-size:1.2rem;color:var(--ink);
  white-space:nowrap;
  letter-spacing:0.065em;
  transition:color 0.25s ease, font-size 0.25s ease;
}
.brand-slogan{
  font-size:0.63rem;color:var(--ink-soft);
  text-transform:uppercase;
  letter-spacing:0.06em;
  white-space:nowrap;
  transition:color 0.25s ease, font-size 0.25s ease;
}

nav{display:flex;}
nav ul{display:flex;align-items:center;gap:48px;}
nav a{
  font-size:0.92rem;letter-spacing:0.03em;text-transform:uppercase;
  text-decoration:none;color:var(--white);
  font-weight:500;
  position:relative;padding:10px 0;
  transition:color 0.2s ease;
}
nav a:hover{color:var(--gold-soft);}
nav a.active{color:var(--gold-soft);}

/* Desktop nav underline (>=981px only; the mobile menu below has its own rules and no line).
   Active page: permanent hairline, opacity .68. Hover: temporary hairline growing from the
   centre, opacity .52. The active line is never affected by hovering other items. */
@media (min-width:981px){
  nav a::after{
    content:"";position:absolute;left:50%;bottom:3px;
    width:38px;height:0.6px;background:currentColor;
    opacity:.52;transform:translateX(-50%) scaleX(0);transform-origin:center;
    transition:transform .22s ease, opacity .22s ease;
    pointer-events:none;
  }
  nav a:hover::after,nav a:focus-visible::after{transform:translateX(-50%) scaleX(1);}
  nav a.active::after{transform:translateX(-50%) scaleX(1);opacity:.68;}
}
@media (min-width:981px) and (prefers-reduced-motion:reduce){
  nav a::after{transition:none;}
}

/* ============ MOBILE NAV TOGGLE ============ */
.nav-toggle{
  display:none;
  width:40px;height:40px;
  background:transparent;border:none;cursor:pointer;
  flex-direction:column;justify-content:center;align-items:center;gap:6px;
  flex-shrink:0;
}
.nav-toggle span{
  display:block;width:24px;height:2px;background:var(--ink);
  transition:transform 0.25s,opacity 0.25s,background-color 0.25s ease;
}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}

/* ============ HERO ============ */
/* Home Hero — approved final artwork (background + portrait + clarity ring baked in by art director).
   HTML only overlays the editable text on top. Do not recreate/regenerate the artwork. */
.hero{
  position:relative;
  overflow:hidden;
  background:var(--violet-bg-dark);
}
.hero-artwork-frame{
  position:relative;
  width:100%;
  height:min(59vw, 920px);
  overflow:hidden;
}
.hero-artwork{
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 22%;
}
.hero-inner{
  position:absolute;
  top:var(--header-h);
  left:0;
  right:0;
  bottom:0;
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;
  display:flex;
  align-items:center;
  z-index:1;
  pointer-events:none;
}
.hero-content{
  max-width:600px;
  pointer-events:auto;
}

/* HOME HERO — desktop optical balance: lower only the left copy slightly.
   Portrait/artwork remains completely untouched. */
@media (min-width:700px){
  .hero-content{
    transform:translateY(20px);
  }
}
.hero-label{display:block;margin-bottom:28px;color:var(--violet-soft);font-size:0.9rem;}
.hero-headline{
  font-family:var(--serif);font-weight:400;
  font-size:var(--h1-size);line-height:1.22;color:var(--white);
  margin-bottom:36px;
}
.hero-headline em{font-style:normal;color:var(--gold-soft);}
/* Shared thin CTA arrow (Kleinigkeiten Vol.4 #14) — replaces the plain
   unicode arrow character with a small custom-drawn SVG chevron so it reads
   as a deliberate editorial mark rather than an oversized typographic glyph. */
.cta-arrow{display:inline-flex;align-items:center;flex-shrink:0;position:relative;top:1px;transition:transform 0.22s ease;}
.contact-cta-link .cta-arrow{top:0.05em;}
.cta-arrow svg{width:16px;height:10px;display:block;color:inherit;}
.hero-cta{
  display:inline-flex;align-items:center;gap:12px;
  font-size:1.12rem;color:var(--white);
  text-decoration:none;font-weight:500;
  text-transform:uppercase;letter-spacing:0.04em;
  border-bottom:1px solid transparent;
  transition:gap 0.25s,border-color 0.25s,color 0.25s;
  padding-bottom:3px;
  margin-top:48px;
  width:fit-content;
}
/* Refined hover: text and hairline both turn the gold accent (no white line); arrow sits on the text's optical centre */
.hero-cta .cta-arrow{top:0;}
.hero-cta:hover,.hero-cta:focus-visible{gap:18px;color:var(--gold-soft);border-color:var(--gold-soft);}
@media (prefers-reduced-motion:reduce){.hero-cta{transition:none;}}

/* HOME HERO — small laptop / tablet landscape: artwork scales via width:100%, only type tightens */
@media (max-width:1099px){
  .hero-headline{font-size:clamp(1.9rem, 3.4vw, 2.6rem);}
}

/* HOME HERO — mobile (<=699px): ONE integrated photographic composition.
   The same high-resolution artwork is used (no crop file, no second copy): its height
   fills the frame, its right edge sits on the viewport's right edge, so Orinta stays on the
   RIGHT and the copy on the LEFT. Frame height and type scale with the viewport width, so
   the composition scales as a whole; the headline switches deterministically from
   2 lines (>=600px) to a 4-line stack (<600px) — see the collision test in the delivery notes.
   The hero starts BELOW the fixed 68px mobile header (it is not pulled underneath it). */
@media (max-width:699px){
  .hero{height:auto;padding-top:68px;background:#360A61;}
  .hero-artwork-frame{display:block;position:relative;width:100%;height:clamp(300px, 88vw, 520px);}
  .hero-artwork{left:auto;right:0;width:auto;max-width:none;height:100%;object-fit:fill;}
  .hero-inner{
    position:absolute;top:68px;left:0;right:0;bottom:auto;
    width:100%;height:clamp(300px, 88vw, 520px);margin:0;
    padding:clamp(38px, 10vw, 52px) var(--page-gutter) 0;
    display:block;
  }
  .hero-content{max-width:none;}
  .hero-label{
    white-space:nowrap;margin-bottom:clamp(12px, 3.8vw, 20px);
    font-family:var(--sans);font-size:clamp(0.56rem, 2.55vw, 0.68rem);letter-spacing:0.12em;
    color:var(--violet-soft);opacity:0.92;
  }
  .hero-headline{
    font-size:clamp(1.2rem, 6vw, 1.85rem);line-height:1.2;
    margin-bottom:clamp(16px, 5vw, 26px);
    max-width:7.4em; /* 4-line stack: only the longest single word fits per line */
    position:relative;
    top:clamp(32px, 8vw, 42px);
  }
  /* the full sentence stays in the H1 for assistive tech / crawlers; only its middle is visually replaced */
  .hero-headline .hh-mid{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
  .hero-headline .hh-mid + .hh-d{display:none;}
  .hero-cta{
    margin-top:0;
    font-size:clamp(0.78rem, 3.5vw, 0.92rem);
    letter-spacing:0.05em;
    position:relative;
    top:clamp(32px, 8vw, 42px);
  }
  .hero-cta .cta-arrow{
    display:inline-flex;
    width:12px;
    margin-left:4px;
  }
  .hero-cta .cta-arrow svg{
    width:12px;
    height:auto;
  }
}
/* wider phones / small tablets portrait: two-line display headline */
@media (min-width:600px) and (max-width:699px){
  .hero-headline{max-width:none;font-size:clamp(1.55rem, 4.6vw, 1.85rem);}
}

/* ============ SECTION 2 — PAŽĮSTAMOS SITUACIJOS ============ */
.situations{
  background:var(--violet-lt);
  padding:64px var(--page-gutter) clamp(56px, 6vw, 80px);
}
.situations-inner{max-width:var(--page-max);margin:0 auto;}
.situations-head{margin-bottom:44px;}
.situations-head .eyebrow{
  font-family:var(--serif);font-weight:400;
  font-size:1.95rem;line-height:1.3;
  color:var(--ink);
  text-transform:none;
  letter-spacing:normal;
}
.situations-grid{
  display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:clamp(32px, 2.2vw, 48px);
}
.situation-item{display:flex;flex-direction:column;gap:21px;}
.situation-ring{width:30px;height:30px;color:var(--violet-deep);display:block;}
.situation-ring circle{fill:none;stroke:currentColor;stroke-width:1.3;stroke-dasharray:77 4;stroke-linecap:round;}
.situation-title{
  font-family:var(--serif);font-size:1.4rem;line-height:1.35;
  color:var(--ink);font-weight:400;
  min-height:1.35em;
}
.situation-desc{font-size:0.92rem;color:var(--ink-soft);line-height:1.8;}
/* Column logic — preserve the editorial 4-up composition on normal desktop/laptop.
     >=1100px : 4 equal columns
     700-1099 : 2 x 2
     <=699    : 1 column */
@media (max-width:1099px){
  .situations-grid{grid-template-columns:repeat(2, minmax(0, 1fr));gap:35px;}
}
@media (max-width:699px){
  .situations-grid{grid-template-columns:1fr;gap:26px;}
  .situation-item{gap:13px;}
}
@media (max-width:339px){
  /* very narrow phones only: scale the description so its longest line stays on one row */
  .situation-desc{font-size:min(0.92rem, calc((100vw - 48px) / 19.2));}
}

/* ============ SECTION 5 — BENDRADARBIAVIMO ERDVĖS ============ */
.services{
  background:var(--near-white);
}
.services-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
}
.service-block{
  --service-eyebrow-h:44px;
  padding:52px var(--page-gutter) clamp(44px, 5vw, 64px);
  display:grid;
  grid-template-rows:var(--service-eyebrow-h) auto auto 1fr auto;
  min-height:clamp(334px, 33vw, 449px);
  text-decoration:none;
  transition:filter 0.3s;
}
.service-block:hover{filter:brightness(0.97);}
.service-block.violet-soft{background:var(--violet-soft);}
.service-block.sand{background:var(--sand);}
.service-block.sage{background:var(--sage);}
.service-eyebrow{grid-row:1;align-self:start;margin:0;}
.service-title{
  grid-row:2;
  font-family:var(--serif);font-size:1.95rem;line-height:1.3;
  color:var(--ink);font-weight:400;margin:0 0 24px;
  min-height:2.6em;
  align-self:start;
  display:flex;
  align-items:flex-start;
}
.service-desc{
  grid-row:3;
  font-size:clamp(1rem, 0.3vw + 0.95rem, 1.1rem);
  color:var(--ink-soft);line-height:1.85;
  max-width:320px;
  align-self:start;
}
.service-arrow{
  grid-row:5;
  font-size:0.92rem;color:var(--violet-deep);
  font-weight:500;
  border-bottom:1px solid transparent;
  transition:border-color 0.25s;
  width:fit-content;
  align-self:end;
}
.service-block:hover .service-arrow{border-color:var(--violet-deep);}

/* ============ SECTION 6 — SUSISIEKIME ============ */
.contact-cta{
  background:var(--violet-bg-dark);
  padding:max(calc(var(--header-h) + 8px), 96px) var(--page-gutter) clamp(100px, 10vw, 136px);
  position:relative;
  overflow:hidden;
}
.contact-cta-ring{
  position:absolute;
  width:560px;height:560px;
  right:-60px;
  top:50%;
  transform:translateY(-50%);
  border:1.5px solid var(--violet-soft);
  border-radius:50%;
  opacity:0.3;
  pointer-events:none;
  clip-path:inset(0 50% 0 0);
}
.contact-cta-inner{
  position:relative;
  max-width:var(--page-max);margin:0 auto;
  display:grid;grid-template-columns:1fr 1fr;
  align-items:center;
  gap:40px;
  padding-right:clamp(24px, 6vw, 96px);
}
.contact-headline{
  font-family:var(--serif);font-weight:400;
  font-size:var(--text-h2);line-height:1.28;color:var(--white);
  max-width:480px;
}
.contact-cta-link{
  display:inline-flex;align-items:center;gap:14px;
  font-size:var(--text-h2);line-height:1.28;color:var(--gold-soft);
  text-decoration:none;font-weight:400;
  justify-self:end;
}
.contact-cta-link:hover .cta-arrow{transform:translateX(6px);}

/* ============================================================
   ABOUT PAGE — "Apie mane"
   ============================================================ */

/* ---- About Hero ---- */
/* Approved final artwork — single continuous editorial banner (background + photo
   already composed by the art director). Used as-is; only the HTML text overlays it. */
.about-hero{
  position:relative;
  overflow:hidden;
  height:calc(var(--header-h) + clamp(580px, 38vw, 660px));
  background:var(--about-hero-bg);
}
.about-hero-artwork{
  position:absolute;
  bottom:0;left:0;right:0;
  height:clamp(520px, 34vw, 600px);
  width:100%;
  object-fit:cover;
  object-position:0% 20%;
  display:block;
}
.about-hero-inner{
  position:absolute;
  top:var(--header-h);left:0;right:0;bottom:0;
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;
  display:flex;align-items:center;justify-content:flex-end;
  padding-right:clamp(0px, 0.4vw, 4px);
  z-index:1;
  pointer-events:none;
}
.about-hero-text{
  max-width:460px;
  pointer-events:auto;
}
.about-hero-label{display:block;margin-bottom:22px;}
.about-hero-headline{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(2.1rem, 2.6vw, 2.9rem);line-height:1.13;color:var(--white);
  margin-bottom:28px;
}
.about-hero-text-body{font-size:1.05rem;color:rgba(244,240,247,0.78);line-height:1.85;max-width:420px;}
/* Large desktop: one horizontal row of 4 */
.about-hero-stats{
  margin-top:48px;
  display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:20px;
}
.about-hero-stats-row{display:contents;}
.about-hero-stats-divider{display:none;}
.about-hero-stat{display:flex;flex-direction:column;gap:4px;min-width:0;}
.about-hero-stat-number{font-family:var(--serif);font-size:1.2rem;color:var(--white);font-weight:400;line-height:1.2;white-space:nowrap;}
.about-hero-stat-label{font-family:var(--sans);font-size:0.7rem;color:var(--violet-soft);line-height:1.4;}

/* ---- Desktop only: one continuous hero surface ----
   The bottom-anchored artwork is shorter than the hero (hero = header + 580–660px, artwork = 520–600px),
   which left a strip above it filled with a flat CSS colour — a colour-managed image never matches a flat
   colour exactly, so the strip showed. The strip is now filled from the SAME image file (its top rows, which are
   pure background, stretched), so header, strip and artwork share one colour path. Artwork size, scale, position
   and hero height are unchanged. Mobile (<900px) keeps its own rules and is not affected. */
@media (min-width:900px){
  .about-hero{
    background:var(--about-hero-bg);
  }
}

/* ---- Intermediate widths: text needs more of the available room, so stats fall back to 2×2 ---- */
@media (max-width:1179px) and (min-width:900px){
  .about-hero-headline{font-size:clamp(1.9rem, 3.2vw, 2.4rem);}
  .about-hero-text{max-width:380px;}
  .about-hero-stats{grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px 16px;}
  .about-hero-stats-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .about-hero-stats-divider{display:block;height:1px;background:rgba(244,240,247,0.18);margin:12px 0;grid-column:1 / -1;}
}

/* ---- Mobile: text stacks above the artwork, artwork shown in full (no crop needed) ---- */
@media (max-width:899px){
  .about-hero{
    height:auto;
    padding-top:var(--header-h);
    background:var(--about-hero-bg);
  }
  .about-hero-artwork{display:none;}
  .about-hero-inner{
    position:static;
    top:auto;left:auto;right:auto;bottom:auto;
    display:block;
    width:100%;max-width:100%;
    padding:36px var(--page-gutter) 44px;
  }
  .about-hero-text{max-width:100%;}
  .about-hero-headline{font-size:clamp(1.7rem, 6vw, 2.1rem);}
  .about-hero-stats{grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px 16px;}
  .about-hero-stats-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .about-hero-stats-divider{display:block;height:1px;background:rgba(244,240,247,0.18);margin:12px 0;grid-column:1 / -1;}
}
@media (max-width:360px){
  .about-hero-stats{grid-template-columns:1fr;}
  .about-hero-stats-row{display:grid;grid-template-columns:1fr;gap:14px;}
}


/* ---- Section 3: Professional journey ---- */
.about-journey{
  background:var(--sand);
  padding:clamp(56px, 6vw, 88px) var(--page-gutter) clamp(80px, 8vw, 112px);
  scroll-margin-top:var(--header-h);
}
.about-journey-inner{max-width:var(--page-max);margin:0 auto;}
.about-journey-intro{margin-bottom:clamp(56px, 6vw, 80px);}
.about-journey-eyebrow{display:block;margin-bottom:20px;color:var(--violet-deep);}
.about-journey-headline{
  font-family:var(--serif);font-weight:400;
  font-size:var(--text-h2);line-height:1.18;color:var(--ink);
  max-width:520px;
}
.about-journey-chapters{
  display:grid;grid-template-columns:repeat(3, 1fr);
  gap:68px;
  margin-bottom:clamp(24px, 2.5vw, 36px);
}
.about-journey-accent{
  width:36px;height:1px;
  background:var(--violet-pop);
  margin-bottom:24px;
}
.about-journey-chapter p{
  font-size:1.02rem;color:var(--ink-soft);line-height:1.85;
  text-align:left;
  margin-bottom:23px;
}
.about-journey-chapter p:last-child{margin-bottom:0;}
.about-journey-chapter-spaced{margin-top:12px;}
.journey-emphasis{font-weight:600;}
.service-lead{font-weight:600;}
.about-journey-closing{
  padding-top:clamp(28px, 3vw, 40px);
  border-top:1px solid rgba(33,26,46,0.1);
}
.about-journey-closing-statement{
  font-family:var(--serif);font-weight:400;
  font-size:1.4rem;line-height:1.5;color:var(--ink);
  border-left:3px solid var(--violet-pop);
  padding-left:24px;
  margin-left:20%;
  max-width:820px;
}

/* ---- Section 4: Partnerships ---- */
.about-partners{
  background:var(--violet-soft);
  padding:48px var(--page-gutter) clamp(48px, 5vw, 72px);
}
.about-partners-head-wrap{
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));
  margin-inline:auto;
}
.about-partners-inner{max-width:1040px;margin-inline:auto;position:relative;left:clamp(0px, 3vw, 48px);}
.about-partners-head{margin-bottom:40px;}
.about-partners-title{
  font-family:var(--serif);font-weight:400;font-size:var(--text-h2);color:var(--ink);
}
.about-partner-row{
  display:grid;grid-template-columns:280px 1fr;gap:58px;
  padding:26px 0;
  border-top:1px solid rgba(33,26,46,0.12);
  align-items:center;
}
.about-partners-inner .about-partner-row:last-child{border-bottom:1px solid rgba(33,26,46,0.12);}
.about-partner-logo{
  display:flex;align-items:center;justify-content:center;
  text-align:center;
  height:116px;
  text-decoration:none;
  transition:opacity 0.2s;
}
.about-partner-logo:hover{opacity:0.72;}
.about-partner-logo img{
  max-height:48px;max-width:190px;width:auto;height:auto;
  object-fit:contain;display:block;
}
/* Optical correction: different logo aspect ratios render very differently at
   the same height cap. FranklinCovey and Verslo žinios are closer to square,
   so they need extra height to reach a similar visual weight/width to the
   wider IPB Partners / Everything DiSC lockups. */
.about-partner-logo img[alt="FranklinCovey®"]{max-height:108px;}
.about-partner-logo img[alt="Verslo žinios"]{max-height:58px;}
.about-partner-logo--multi{gap:28px;}
.about-partner-desc{font-size:0.98rem;color:var(--ink-soft);line-height:1.75;max-width:480px;}

/* ---- Section 5: Publications ---- */
.about-publications{
  --pub-arrow-clearance:64px;
  background:var(--sage);
  padding:clamp(64px, 7vw, 88px) 0 clamp(56px, 6vw, 80px);
  overflow:hidden;
}
.about-pub-head{
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;
  margin-bottom:52px;
  display:flex;justify-content:space-between;align-items:flex-end;gap:40px;
}
.about-pub-title{font-family:var(--serif);font-weight:400;font-size:var(--text-h2);color:var(--ink);max-width:480px;}
.about-pub-subtitle{font-size:0.98rem;color:var(--ink-soft);line-height:1.7;max-width:380px;margin-right:var(--pub-arrow-clearance);}
.about-pub-carousel{position:relative;width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;}
.about-pub-arrow{
  position:absolute;top:35%;transform:translateY(-50%);
  width:48px;height:48px;border-radius:50%;
  border:1px solid rgba(33,26,46,0.22);
  background:var(--sage);color:var(--ink);
  font-size:1.1rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:border-color 0.2s,background 0.2s;
  z-index:2;
}
.about-pub-arrow--prev{left:0;}
.about-pub-arrow--next{right:0;}
.about-pub-arrow:hover{border-color:var(--violet-deep);background:rgba(54,10,97,0.06);}
.about-pub-arrow:disabled{opacity:0.35;cursor:default;pointer-events:none;}
.about-pub-viewport{
  overflow:hidden;
  padding:0 var(--pub-arrow-clearance);
}
.about-pub-track{
  --card-gap:40px;
  display:flex;gap:var(--card-gap);overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.about-pub-track::-webkit-scrollbar{display:none;}
.about-pub-item{
  flex:0 0 calc((100% - 3 * var(--card-gap)) / 4);
  scroll-snap-align:start;
  display:flex;flex-direction:column;
}
.about-pub-image{
  width:100%;aspect-ratio:21/9;height:auto;margin-bottom:24px;
  display:block;object-fit:cover;
  background:linear-gradient(135deg,#EEF1EA 0%,#C3D0BC 55%,#8FA486 100%);
}
.about-pub-eyebrow{font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--violet-deep);font-weight:500;display:block;margin-bottom:12px;}
.about-pub-title-item{font-family:var(--serif);font-weight:400;font-size:1.05rem;line-height:1.4;color:var(--ink);margin-bottom:10px;min-height:2.8em;}
@media (min-width:981px){
  .about-pub-title-item{min-height:4.2em;}
}
.about-pub-excerpt{font-size:0.82rem;color:var(--ink-soft);line-height:1.65;margin-bottom:14px;max-width:280px;}
.about-pub-link{font-size:0.8rem;color:var(--violet-deep);text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.2s;width:fit-content;margin-top:auto;}
.about-pub-link:hover{border-color:var(--violet-deep);}
.about-pub-dots{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:36px;}
.about-pub-dot{
  width:7px;height:7px;border-radius:50%;
  border:none;padding:0;cursor:pointer;
  background:rgba(33,26,46,0.2);
  transition:background-color 0.2s,transform 0.2s;
}
.about-pub-dot:hover{background:rgba(33,26,46,0.35);}
.about-pub-dot.is-active{background:var(--violet-deep);transform:scale(1.15);}

/* ============================================================
   CONTACT PAGE — "Susisiekime"
   ============================================================ */
.contact-page{
  background:var(--violet-bg-dark);
  padding-top:var(--header-h);
}
.contact-page-inner{
  width:min(100% - (2 * var(--page-gutter)), var(--page-max));margin-inline:auto;
  padding:72px 0 clamp(40px, 4vw, 56px);
  display:grid;grid-template-columns:1.25fr 1fr;
  gap:56px;
}
.contact-left{padding-top:0;}
.contact-left-headline{
  font-family:var(--serif);font-weight:400;
  font-size:var(--h1-size);line-height:1.22;color:var(--white);
  max-width:560px;margin-bottom:22px;
}
@media (min-width:981px){
  .contact-left-headline{margin-top:-14px;}
}
.contact-left-text{
  font-size:1.05rem;line-height:1.65;color:rgba(244,240,247,0.72);
  max-width:460px;
}
.contact-left-details{
  display:flex;flex-direction:column;gap:14px;
  margin-top:64px;
}
@media (min-width:981px){
  .contact-left-details{margin-top:78px;}
}
.contact-detail-link{
  display:inline-flex;align-items:center;gap:12px;
  width:fit-content;
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color 0.2s,opacity 0.2s;
}
.contact-detail-link span:last-child{
  font-family:var(--serif);font-size:1.2rem;color:var(--gold-soft);
  letter-spacing:0.01em;
  transition:color 0.2s;
}
.contact-detail-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:19px;height:19px;color:var(--gold-soft);
  flex-shrink:0;
  transition:color 0.2s;
}
.contact-detail-icon svg{width:100%;height:100%;display:block;}
.contact-detail-link:hover,
.contact-detail-link:focus-visible{
  border-color:var(--gold-soft);
}
.contact-detail-link:hover span:last-child,
.contact-detail-link:focus-visible span:last-child{
  color:var(--white);
}
.contact-detail-link:hover .contact-detail-icon,
.contact-detail-link:focus-visible .contact-detail-icon{
  color:var(--white);
}
.contact-detail-link:focus-visible{
  outline:1.5px solid var(--gold-soft);
  outline-offset:4px;
  border-radius:2px;
}
.contact-right{padding-top:0;}
.contact-form{display:flex;flex-direction:column;max-width:440px;}
.form-field{
  display:flex;flex-direction:column;
  margin-bottom:32px;
}
.form-field label{
  font-size:0.82rem;letter-spacing:0.08em;text-transform:uppercase;
  color:var(--white);margin-bottom:14px;
}
.form-field input,
.form-field textarea{
  font-family:var(--sans);font-size:1.15rem;color:var(--white);
  background:transparent;border:none;
  border-bottom:1px solid rgba(244,240,247,0.28);
  padding:8px 0 14px;
  resize:none;
  transition:border-color 0.25s;
}
.form-field input::placeholder,
.form-field textarea::placeholder{
  color:rgba(244,240,247,0.58);
  opacity:1;
}
.form-field input:focus,
.form-field textarea:focus{
  outline:none;border-color:var(--white);
}
.form-field-honeypot{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.contact-form-status{
  margin-top:16px;font-size:0.92rem;color:rgba(244,240,247,0.85);
}
.contact-form-status.is-error{color:#E8B4B4;}
.contact-submit{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--serif);font-size:1.25rem;color:var(--gold-soft);
  background:none;border:none;cursor:pointer;
  padding:4px 0;width:fit-content;
  border-bottom:1px solid transparent;
  transition:gap 0.25s,border-color 0.25s;
  margin-top:12px;
}
.contact-submit:hover{gap:18px;border-color:var(--gold-soft);}
.contact-form-success p{
  font-size:1.2rem;line-height:1.7;color:var(--white);max-width:380px;
}

/* ============================================================
   PASLAUGOS PAGE
   ============================================================ */
.paslaugos-intro{
  background:var(--violet-lt);
  padding:calc(var(--header-h) + 64px) var(--page-gutter) clamp(56px, 6vw, 80px);
}
.paslaugos-intro-inner{
  max-width:var(--page-max);
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap:clamp(48px, 6vw, 96px);
  align-items:start;
  text-align:left;
}
.paslaugos-title{font-family:var(--serif);font-weight:400;font-size:clamp(2.4rem, 1.6rem + 2.2vw, 3.3rem);line-height:1.15;color:var(--ink);margin:0;}
.paslaugos-intro-text{font-size:1.05rem;color:var(--ink-soft);line-height:1.85;max-width:520px;text-align:left;}
.paslaugos-intro-text + .paslaugos-intro-text{margin-top:20px;}

/* Three service directions — part of the Hero's own typography/IA, not cards */
.paslaugos-directions{
  max-width:var(--page-max);
  margin:clamp(48px, 6vw, 72px) auto 0;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:40px;
}
.paslaugos-direction{
  display:block;
  text-decoration:none;
  text-transform:none;
  padding:2px 0;
  width:fit-content;
}
.paslaugos-direction-line{
  display:block;
  width:40px;height:1px;
  background:var(--violet-deep);
  opacity:0.45;
  margin-bottom:16px;
  transition:width 0.25s ease, background-color 0.25s ease, opacity 0.25s ease;
}
.paslaugos-direction:hover .paslaugos-direction-line,
.paslaugos-direction:focus-visible .paslaugos-direction-line{
  width:56px;
  background:var(--gold-soft);
  opacity:1;
}
.paslaugos-direction-category{
  display:block;
  font-family:var(--serif);font-weight:400;
  font-size:1.32rem;color:var(--ink);
  text-transform:none;letter-spacing:normal;
  margin-bottom:8px;
  transition:color 0.25s ease;
}
.paslaugos-direction:hover .paslaugos-direction-category,
.paslaugos-direction:focus-visible .paslaugos-direction-category{
  color:var(--gold-soft);
}
.paslaugos-direction-service{
  display:block;
  font-family:var(--sans);font-size:0.92rem;color:var(--ink-soft);
  text-transform:none;text-decoration:none;letter-spacing:normal;font-weight:400;
  line-height:1.5;
}
.paslaugos-direction:focus-visible{
  outline:2px solid var(--violet-deep);
  outline-offset:8px;
  border-radius:2px;
}

/* ============================================================
   PASLAUGOS HERO — DARK VIOLET VISUAL TEST (easy to revert: just
   remove the "paslaugos-intro--dark" class from the section markup
   and delete this block; nothing else references it).
   ============================================================ */
.paslaugos-intro--dark{background:var(--violet-bg-dark);}
.paslaugos-intro--dark .paslaugos-title{color:var(--white);}
.paslaugos-intro--dark .paslaugos-intro-text{color:rgba(244,240,247,0.78);}
.paslaugos-intro--dark .paslaugos-direction-line{background:var(--violet-soft);opacity:0.55;}
.paslaugos-intro--dark .paslaugos-direction-category{color:var(--white);}
.paslaugos-intro--dark .paslaugos-direction-service{color:var(--violet-soft);}
.paslaugos-intro--dark .paslaugos-direction:focus-visible{outline-color:var(--white);}

.service-section{padding:80px var(--page-gutter) clamp(36px, 4vw, 56px);scroll-margin-top:var(--header-h);}
.service-section.sand{background:var(--sand);}
.service-section.lavender{background:var(--violet-soft);}
.service-section.sage{background:var(--sage);}
.service-section-inner{
  max-width:var(--page-max);margin:0 auto;
  display:grid;
  grid-template-columns:1.5fr 1fr;
  grid-template-areas:"top image" "bottom image";
  column-gap:64px;row-gap:14px;
  align-items:start;
}
.service-section.service-section--flip .service-section-inner{
  grid-template-columns:1fr 1.5fr;
  grid-template-areas:"image top" "image bottom";
}
/* Service 3 — image is vertically centered against only the label+headline+
   paragraphs group, completely independent of where "Galimi formatai" (bottom)
   starts, so a taller/shorter image never pushes the format list down. */
.organizacija-inner{display:block;}
.organizacija-top-row{
  position:relative;
  margin-bottom:24px;
}
.organizacija-top-row .service-content-top{max-width:none;grid-area:auto;width:calc(100% - 490px);}
.organizacija-top-row .service-section-image{
  grid-area:auto;
  position:absolute;top:95px;right:0;
  width:450px;max-width:450px;
  margin-inline:0;
}
.organizacija-top-row .service-section-title{max-width:none;}
/* Service 2 — deliberate text-only editorial layout, no image column */
.service-section-inner-text{
  max-width:980px;margin:0 auto;
}
.service-topics-grid{
  display:grid;grid-template-columns:1fr 1fr;
  column-gap:64px;row-gap:0;
  margin:26px 0 34px;
}
.service-content-top{grid-area:top;}
.service-content-bottom{grid-area:bottom;}
.service-category{
  display:block;
  font-family:var(--serif);font-weight:400;
  font-size:0.9rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--violet-deep);
  margin-bottom:8px;
}
.service-section-title{
  font-family:var(--serif);font-weight:400;font-size:clamp(1.7rem, 2.3vw, 2.2rem);line-height:1.22;
  color:var(--ink);margin-bottom:18px;max-width:560px;
}
.service-copy{margin-bottom:14px;max-width:580px;}
.service-section-inner-text > .service-copy{max-width:none;}
.service-content-top > *:last-child{margin-bottom:0;}
.service-copy p{font-size:1.01rem;color:var(--ink-soft);line-height:1.55;margin-bottom:10px;text-align:left;}
@media (min-width:981px){
  #individualus-koucingas .service-copy p{line-height:1.62;margin-bottom:14px;}
}
.service-copy p:last-child{margin-bottom:0;}
.service-format{margin-bottom:26px;max-width:580px;}
.service-format-divider{
  width:44px;height:1px;
  background:var(--violet-deep);opacity:0.25;
  margin-bottom:24px;
}
.service-format:last-child{margin-bottom:0;}
.service-format-label{
  display:block;font-family:var(--sans);font-size:1rem;font-weight:600;color:var(--ink);
  margin-bottom:10px;
}
.service-focus-heading{
  display:block;font-family:var(--sans);font-size:1rem;font-weight:600;color:var(--ink);
  margin-bottom:10px;margin-top:0;
}
.service-list{display:flex;flex-direction:column;gap:7px;}
.service-list li{
  font-size:0.96rem;color:var(--ink-soft);line-height:1.5;
  padding-left:18px;position:relative;
}
.service-list li::before{
  content:'';position:absolute;left:2px;top:0.62em;
  width:5px;height:5px;border-radius:50%;
  background:var(--violet-deep);opacity:0.75;
}
.service-section-image{
  grid-area:image;
  width:100%;aspect-ratio:5/4;
  align-self:center;
  display:block;object-fit:cover;
}
.service-image-1{aspect-ratio:4/5;object-position:center 18%;background:#D9C9A8;}
@media (min-width:981px){
  .service-image-1{max-height:545px;width:auto;margin-inline:auto;}
}
.service-image-2{background:linear-gradient(150deg,#EDE7F3 0%,#C7B7DE 55%,#8E76B0 100%);}
.service-image-3{aspect-ratio:4/3;object-position:center 30%;background:#C3D0BC;}
@media (min-width:981px){
  .service-image-3{max-width:450px;margin-inline:auto;height:auto;}
}

/* Large desktop: restore a touch more generous spacing/typography — modest, not a full return to the old oversized scale */
@media (min-width:1440px){
  .service-section{padding:72px var(--page-gutter) clamp(64px, 6vw, 88px);}
  .service-section-inner{column-gap:80px;row-gap:16px;}
  .service-section-title{font-size:clamp(2rem, 2.5vw, 2.4rem);margin-bottom:20px;}
  .service-copy{margin-bottom:26px;}
  .service-copy p{font-size:1.05rem;line-height:1.6;margin-bottom:16px;}
  .service-format{margin-bottom:24px;}
}


/* ============ FOOTER ============ */
footer{
  background:var(--violet-bg-dark);
  padding:28px var(--page-gutter);
}
.footer-inner{
  max-width:var(--page-max);margin:0 auto;
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:24px;
}
.footer-brand{font-family:var(--sans);font-size:0.8rem;font-weight:400;color:rgba(244,240,247,0.7);}
.footer-contact{display:flex;gap:28px;flex-wrap:wrap;align-items:center;}
footer.footer--minimal .footer-contact{display:none;}
footer.footer--minimal .footer-contact-icons{display:none;}
.footer-contact span{font-family:var(--sans);font-size:0.8rem;font-weight:400;color:rgba(244,240,247,0.7);}
.footer-contact a{font-family:var(--sans);font-size:0.8rem;font-weight:400;color:rgba(244,240,247,0.7);text-decoration:none;transition:color 0.2s;}
.footer-contact a:hover{color:var(--white);}
.footer-contact-icons{display:none;}
.footer-contact-icons a{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;
  color:rgba(244,240,247,0.7);
  transition:color 0.2s;
}
.footer-contact-icons a svg{width:19px;height:19px;display:block;}
.footer-contact-icons a:hover{color:var(--gold-soft);}

/* ============ RESPONSIVE ============ */
@media (max-width: 980px){
  .brand-slogan{display:none;}
  .nav-toggle{display:flex;}
  nav[aria-label="Pagrindinis meniu"]{
    position:fixed;top:var(--header-h);left:0;right:0;bottom:0;
    background:var(--violet-bg-dark);
    display:flex;
    transform:translateX(100%);
    transition:transform 0.3s ease;
    z-index:199;
  }
  nav[aria-label="Pagrindinis meniu"].is-open{transform:translateX(0);}
  nav[aria-label="Pagrindinis meniu"] ul{
    flex-direction:column;align-items:flex-start;gap:8px;
    width:100%;padding:32px 24px;
  }
  nav[aria-label="Pagrindinis meniu"] a{
    display:block;width:100%;padding:16px 0;
    font-size:1.1rem;
    color:var(--violet-lt);
  }
  nav[aria-label="Pagrindinis meniu"] a:hover{color:var(--white);}
  nav[aria-label="Pagrindinis meniu"] a.active{color:var(--gold-soft);}
  /* Open state: header merges into the same deep-purple surface as the menu —
     no seam, regardless of page or scroll-driven transparency state. */
  body.nav-open header{background:var(--violet-bg-dark);}
  body.nav-open .brand-name,
  body.nav-open .brand-slogan{color:var(--violet-lt);}
  body.nav-open .brand-divider{background:rgba(244,240,247,0.3);}
  body.nav-open .nav-toggle span{background:var(--violet-lt);}
  nav ul{gap:24px;}
  nav a{font-size:0.76rem;}
  .brand-name{font-size:1rem;}

  .situations-head{margin-bottom:56px;}
  .situation-item-1,.situation-item-2,.situation-item-3,.situation-item-4{padding-top:0;}

  .services-grid{grid-template-columns:1fr;}
  .service-block{padding:var(--page-gutter) 32px;min-height:auto;}

  .contact-cta{padding:64px var(--page-gutter) 72px;}
  .contact-cta-inner{grid-template-columns:1fr;gap:40px;text-align:left;}
  .contact-cta-ring{display:none;}
  
  .contact-cta-link{justify-self:start;margin-top:24px;}

  .about-journey{padding:44px var(--page-gutter) 64px;}
  .about-journey-headline{font-size:clamp(1.7rem, 6vw, 2.1rem);}
  .about-journey-chapters{grid-template-columns:1fr;gap:40px;}
  .about-journey-closing-statement{font-size:1.28rem;margin-left:0;}

  .about-partners{padding:56px var(--page-gutter);}
  .about-partner-row{grid-template-columns:1fr;gap:14px;padding:22px 0;}

  .about-publications{padding:64px 0 56px;}
  .about-pub-dots{margin-top:26px;}
  .about-pub-head{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:48px;}
  .about-pub-track{--card-gap:24px;}
  .about-pub-item{flex:0 0 calc((100% - 1 * var(--card-gap)) / 2);}

  .contact-page{padding-top:var(--header-h-compact);}
  .contact-page-inner{grid-template-columns:1fr;gap:56px;padding:44px 0 56px;}
  .contact-left-headline{font-size:2.1rem;margin-bottom:16px;}
  .contact-left-text{margin-bottom:0;max-width:100%;}
  .contact-left-details{margin-top:24px;}
  .contact-right{padding-top:0;}
  .form-field{margin-bottom:22px;}
  .form-field textarea{height:4.4rem;}
  .contact-submit{margin-top:4px;}

  .paslaugos-intro{padding:calc(var(--header-h) + 38px) var(--page-gutter) 32px;}
  .paslaugos-intro-inner{grid-template-columns:1fr;gap:23px;}
  .paslaugos-intro-text{max-width:100%;}
  .paslaugos-intro-text + .paslaugos-intro-text{margin-top:16px;}
  .paslaugos-title{font-size:2.1rem;}
  .paslaugos-directions{grid-template-columns:1fr;gap:26px;margin-top:36px;}
  .service-section{padding:64px var(--page-gutter);}
  .service-section-inner{
    grid-template-columns:1fr;
    grid-template-areas:"top" "image" "bottom";
    gap:28px;
  }
  .service-section-image{width:100%;max-height:none;height:auto;}
  .service-image-1{aspect-ratio:4/3;object-position:center 45%;width:100%;height:auto;}
  #individualus-koucingas .service-copy p{margin-bottom:8px;}
  #individualus-koucingas .service-copy{margin-bottom:11px;}
  .service-content-top,.service-content-bottom{max-width:100%;}
  .service-section-inner-text{max-width:100%;}
  .service-topics-grid{grid-template-columns:1fr;row-gap:0;}
  #vadovu-komandu-mokymai .service-topics-grid{margin:23px 0 30px;}
  #vadovu-komandu-mokymai .service-copy{margin-bottom:12px;}
  .service-topics-grid .service-format{margin-bottom:19px;}
  .service-list{gap:6px;}
  .organizacija-top-row{position:static;margin-bottom:0;}
  .organizacija-top-row .service-content-top{width:100%;}
  .organizacija-top-row .service-section-image{
    position:static;transform:none;
    width:100%;max-width:100%;
    top:auto;right:auto;
    margin-top:28px;
  }

  footer{padding:24px var(--page-gutter);}
  .footer-inner{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;row-gap:12px;column-gap:16px;}
  .footer-contact{display:none;}
  .footer-contact-icons{display:flex;gap:2px;}
  .footer-brand-tagline{display:none;}
}

@media (max-width: 600px){
  .about-partner-row{grid-template-columns:1fr;}
  .about-pub-item{flex:0 0 100%;}
  .about-publications{--pub-arrow-clearance:40px;}
  .about-pub-arrow{width:36px;height:36px;font-size:0.95rem;}
}

@media (max-width: 430px){
  .contact-left-headline{font-size:1.8rem;}
}

/* ============================================================
   "PAŽĮSTAMOS SITUACIJOS?" — approved V10 ring animation
   Transplanted from the approved reference (smoother V10, strong outline).
   Scoped to .situation-ring-v10 so the production `.situation-ring circle`
   rule cannot override the internal SVG circles (explicit fills below).
   Before the viewport trigger every ring is a visible outline (the same
   state as the 0% animation frames). Animations only start once
   .situations-grid receives .is-playing (see main.js).
   ============================================================ */
.situation-ring-v10{width:30px!important;height:30px!important;display:block!important;overflow:visible!important;
  /* The ring/disc sits ~6.8px inside its 30px SVG box; pull the box left so the disc's
     left edge lines up with the first letter of the headline below it. */
  margin-left:-6px}
.situation-ring-v10 .ring{fill:none!important;stroke:#4f315f!important;stroke-width:2.6!important;stroke-linecap:round}
.situation-ring-v10 .rings{opacity:1!important}
.situation-ring-v10 .base{opacity:.92!important}
.situation-ring-v10 .softleft{opacity:.62!important}
.situation-ring-v10 .bridge{opacity:0}
.situation-ring-v10 .stream{opacity:.88;transform:translateX(-18px) scale(1)}
.situation-ring-v10 .seedDot{opacity:0;transform:translateX(-14px) scale(.68);transform-box:fill-box;transform-origin:center}
.situation-ring-v10 .initialFill{fill:#e4dbe9!important;opacity:1}
.situation-ring-v10 .finalFill{opacity:0}

/* Explicit fills: protects the internal circles from `.situation-ring circle` */
.situation-ring-v10 circle.dot{fill:#9478aa!important}
.situation-ring-v10 circle.seedDot{fill:#b49fc3!important}
.situation-ring-v10 circle.revealCircle{fill:white!important}
.ring-1 circle.finalFill{fill:url(#grad1)!important}
.ring-2 circle.finalFill{fill:url(#grad2)!important}
.ring-3 circle.finalFill{fill:url(#grad3)!important}
.ring-4 circle.finalFill{fill:url(#grad4)!important}

/* Approved sequence. The animations are defined up-front but PAUSED (showing
   their first frame = the visible outline state); main.js adds .is-playing when
   the section enters the viewport, which simply un-pauses them (once). */
.situation-ring-v10 .softleft{animation:v10s-left 4.50s cubic-bezier(.37,0,.18,1) forwards;animation-play-state:paused}
.situation-ring-v10 .bridge{animation:v10s-bridge 4.50s cubic-bezier(.37,0,.18,1) forwards;animation-play-state:paused}
.situation-ring-v10 .rings{animation:v10s-ringfade 4.50s cubic-bezier(.37,0,.18,1) forwards;animation-play-state:paused}
.situation-ring-v10 .stream{animation:v10s-stream 4.50s cubic-bezier(.42,0,.16,1) forwards;animation-play-state:paused}
.situation-ring-v10 .seedDot{animation:v10s-seed 4.50s cubic-bezier(.36,0,.16,1) forwards;animation-play-state:paused}
.situation-ring-v10 .revealCircle{animation:v10s-reveal 4.50s cubic-bezier(.42,0,.12,1) forwards;animation-play-state:paused}
.ring-1 :is(.softleft,.bridge,.rings,.stream,.seedDot,.revealCircle){animation-delay:0s;animation-fill-mode:both}
.ring-2 :is(.softleft,.bridge,.rings,.stream,.seedDot,.revealCircle){animation-delay:1.12s;animation-fill-mode:both}
.ring-3 :is(.softleft,.bridge,.rings,.stream,.seedDot,.revealCircle){animation-delay:2.24s;animation-fill-mode:both}
.ring-4 :is(.softleft,.bridge,.rings,.stream,.seedDot,.revealCircle){animation-delay:3.36s;animation-fill-mode:both}
/* As in the approved reference: delayed rings keep their outline while waiting */
.ring-2 .rings,.ring-3 .rings,.ring-4 .rings{animation-fill-mode:none!important}
.ring-1 .finalFill{animation:v10s-gate 4.50s cubic-bezier(.37,0,.18,1) 0s both;animation-play-state:paused}
.ring-2 .finalFill{animation:v10s-gate 4.50s cubic-bezier(.37,0,.18,1) 1.12s both;animation-play-state:paused}
.ring-3 .finalFill{animation:v10s-gate 4.50s cubic-bezier(.37,0,.18,1) 2.24s both;animation-play-state:paused}
.ring-4 .finalFill{animation:v10s-gate 4.50s cubic-bezier(.37,0,.18,1) 3.36s both;animation-play-state:paused}
.situations-grid.is-playing .situation-ring-v10 :is(.softleft,.bridge,.rings,.stream,.seedDot,.revealCircle,.finalFill){animation-play-state:running}

@keyframes v10s-stream{
  0%,2%{opacity:.88;transform:translateX(-18px) scale(1)}
  14%{opacity:.91;transform:translateX(-11px) scale(1.01)}
  26%{opacity:.92;transform:translateX(-4px) scale(1.025)}
  37%{opacity:.90;transform:translateX(4px) scale(1.05)}
  47%{opacity:.84;transform:translateX(11px) scale(1.09)}
  56%{opacity:.69;transform:translateX(17px) scale(1.14)}
  64%{opacity:.48;transform:translateX(22px) scale(1.20)}
  71%{opacity:.25;transform:translateX(26px) scale(1.27)}
  78%,100%{opacity:0;transform:translateX(29px) scale(1.32)}
}
@keyframes v10s-seed{
  0%,22%{opacity:0;transform:translateX(-14px) scale(.68)}
  28%{opacity:.09;transform:translateX(-11px) scale(.73)}
  34%{opacity:.22;transform:translateX(-8px) scale(.80)}
  40%{opacity:.40;transform:translateX(-5px) scale(.88)}
  46%{opacity:.60;transform:translateX(-2px) scale(.97)}
  52%{opacity:.77;transform:translateX(1px) scale(1.07)}
  58%{opacity:.86;transform:translateX(4px) scale(1.18)}
  64%{opacity:.73;transform:translateX(6px) scale(1.30)}
  70%{opacity:.48;transform:translateX(8px) scale(1.42)}
  76%{opacity:.22;transform:translateX(10px) scale(1.53)}
  82%,100%{opacity:0;transform:translateX(11px) scale(1.60)}
}
@keyframes v10s-reveal{
  0%,37%{r:0}
  41%{r:2px}
  45%{r:5px}
  49%{r:9px}
  53%{r:15px}
  57%{r:23px}
  61%{r:34px}
  65%{r:48px}
  69%{r:65px}
  73%{r:84px}
  77%{r:106px}
  81%{r:130px}
  86%{r:156px}
  92%,100%{r:205px}
}
@keyframes v10s-gate{
  0%,36.9%{opacity:0}
  41%{opacity:.035}
  45%{opacity:.09}
  49%{opacity:.17}
  53%{opacity:.28}
  57%{opacity:.42}
  61%{opacity:.58}
  66%{opacity:.74}
  72%{opacity:.88}
  80%,100%{opacity:1}
}
@keyframes v10s-left{0%,20%{opacity:.17}42%{opacity:.19}58%{opacity:.24}74%,100%{opacity:.38}}
@keyframes v10s-ringfade{0%,88%{opacity:1}94%{opacity:.72}100%{opacity:.20}}
@keyframes v10s-bridge{0%,38%{opacity:0}48%{opacity:.05}58%{opacity:.14}70%{opacity:.25}82%,100%{opacity:.38}}

/* Reduced motion: final filled state immediately, no animation */
@media (prefers-reduced-motion:reduce){
  .situation-ring-v10 *{animation:none!important}
  .situation-ring-v10 .finalFill{opacity:1!important}
  .situation-ring-v10 .stream,.situation-ring-v10 .seedDot{opacity:0!important}
  .situation-ring-v10 .revealCircle{r:205px!important} /* open the reveal mask fully so the fill is visible */
}

/* HOME HERO — final portrait composition
   Keep the source artwork and Orinta's scale untouched. On screens >=700px,
   use a slightly shallower hero window so part of the large empty violet area
   at the top is cropped away. The artwork stays bottom-anchored, which lifts
   Orinta visually while preserving her size and leaves the main headline
   slightly below the top of her head. Mobile keeps its dedicated composition. */
@media (min-width:700px){
  .hero-artwork-frame{
    height:min(56.5vw, 880px);
    background:#360A61;
  }
  .hero-artwork{
    object-position:center 48%;
  }
}

/* HOME HERO — short desktop/laptop screens
   Keep the approved source image untouched. The hero is capped to the viewport
   and the artwork is scaled slightly from the bottom-right corner. Crucially,
   there is NO second/background copy of the photograph, so no duplicated strip
   can appear at the bottom of Orinta's portrait. */
@media (min-width:1100px) and (max-height:900px){
  .hero-artwork-frame{
    height:min(52vw, 800px);
    min-height:650px;
    background:var(--violet-bg-dark);
  }
  .hero-artwork{
    transform:none;
    object-position:center bottom;
  }
  .hero-cta{margin-top:38px;}
}

/* PASLAUGOS — mobile header matches the dark hero surface */
@media (max-width:699px){
  body.page-paslaugos header.header-transparent{
    background:var(--violet-bg-dark);
  }
}

/* APIE — mobile header always matches About hero */
@media (max-width:899px){
  body.page-apie-mane #siteHeader{
    background:var(--about-hero-bg) !important;
  }
}

/* HOME — mobile CTA: keep the small arrow close to the label */
@media (max-width:699px){
  .hero-cta{
    gap:6px;
  }

  .hero-cta .cta-arrow{
    margin-left:0;
  }
}


/* HOME — mobile portrait/text spacing refinement */
@media (max-width:599px){
  .hero-artwork{
    right:-70px;
  }

  .hero-headline{
    max-width:8.6em;
  }
}


/* HOME — transparent header at top on all viewport widths */
body.page-pradzia header.header-transparent:not(.scrolled){
  background:transparent !important;
  box-shadow:none !important;
}

/* Once scrolling starts, keep the established solid header treatment */
body.page-pradzia header.header-transparent.scrolled{
  background:var(--violet-bg-dark) !important;
}

/* ===========================================================
   APPROVED TYPOGRAPHY HARMONIZATION — 2026-10
   Text only: no changes to headings, Hero geometry, imagery,
   navigation, decorative animations, CTA placement or spacing.
   =========================================================== */
@media (min-width:700px){
  .situation-desc, .service-desc, .about-journey-chapter p,
  .about-partner-desc, .service-copy p{
    font-size:1.03125rem; /* 16.5px */
    line-height:1.75;
  }
  .paslaugos-intro-text, .contact-left-text{
    font-size:1.0625rem; /* 17px */
    line-height:1.75;
  }
  .service-list li{font-size:1rem;line-height:1.65;}
}
@media (max-width:699px){
  .service-desc, .about-journey-chapter p, .about-partner-desc,
  .paslaugos-intro-text, .service-copy p, .contact-left-text{
    font-size:1rem;
    line-height:1.75;
  }
  .service-list li{font-size:1rem;line-height:1.65;}
  /* Keep the approved narrow-phone situation-card fitting rule. */
  .situation-desc{line-height:1.75;}
}

/* HOME HERO: approved V3 – transparent portrait over solid brand violet. */
.page-pradzia .hero,
.page-pradzia .hero-artwork-frame { background-color: #360A61; }
.page-pradzia .hero { background-image: none; }
.page-pradzia .hero-artwork { transform: scale(.92); transform-origin: right bottom; }


/* ABOUT HERO — approved STEP 2: transparent portrait on solid violet */
body.page-apie-mane .about-hero {
  background-color:#360A61;
  background-image:none;
}
body.page-apie-mane .about-hero-artwork {
  width:auto;
  height:clamp(520px,34vw,600px);
  left:clamp(36px,6vw,110px);
  right:auto;
  bottom:0;
  object-fit:contain;
  object-position:bottom left;
}
@media (max-width:899px) {
  body.page-apie-mane .about-hero-artwork {display:none;}
}

/* HOME HERO — desktop height preview: reduce empty top area by 70px.
   Keep portrait's rendered size by retaining its former image height,
   bottom anchored; no crop of Orinta's face or lower edge. */
@media (min-width:1100px) and (max-height:900px){
  body.page-pradzia .hero-artwork-frame{
    height:calc(min(52vw, 800px) - 70px);
    min-height:580px;
  }
  body.page-pradzia .hero-artwork{
    top:auto;
    bottom:0;
    height:calc(100% + 70px);
  }
}


/* V10: maintain V9 compact layout, but crop transparent margins and size portrait visibly. */
@media (max-width:1099px){
 body.page-pradzia .hero{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);column-gap:clamp(4px,1.5vw,18px);align-items:end!important;padding:clamp(112px,12vw,135px) clamp(18px,3vw,34px) 0!important;height:auto!important;min-height:0!important;overflow:hidden!important;}
 body.page-pradzia .hero .hero-inner{grid-column:1!important;grid-row:1!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0 0 clamp(30px,6vw,65px)!important;display:block!important;align-self:center!important;z-index:2!important;}
 body.page-pradzia .hero .hero-content{transform:none!important;max-width:100%!important;}
 body.page-pradzia .hero .hero-artwork-frame{grid-column:2!important;grid-row:1!important;position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:transparent!important;align-self:end!important;}
 body.page-pradzia .hero .hero-artwork{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:none!important;}
 body.page-pradzia .hero .hero-label{white-space:normal!important;font-size:clamp(10px,1.3vw,14px)!important;line-height:1.45!important;margin-bottom:clamp(17px,2.6vw,28px)!important;}
 body.page-pradzia .hero .hero-headline{position:static!important;top:auto!important;font-size:clamp(22px,3.1vw,37px)!important;line-height:1.2!important;max-width:100%!important;margin:0!important;}
 body.page-pradzia .hero .hero-headline .hh-mid{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip-path:none!important;white-space:normal!important;}
 body.page-pradzia .hero .hero-headline .hh-mid + .hh-d{display:inline!important;}
 body.page-pradzia .hero .hero-cta{position:static!important;top:auto!important;margin-top:clamp(24px,4vw,43px)!important;font-size:clamp(13px,1.7vw,18px)!important;}
}
@media(max-width:699px){
 body.page-pradzia .hero{grid-template-columns:minmax(0,1fr) minmax(0,.92fr)!important;padding:clamp(91px,15vw,110px) 12px 0 18px!important;column-gap:2px!important;}
 body.page-pradzia .hero .hero-inner{padding:0 0 clamp(16px,3vw,28px)!important;}
 body.page-pradzia .hero .hero-label{font-size:clamp(9px,1.65vw,12px)!important;letter-spacing:.07em!important;margin-bottom:clamp(16px,3vw,24px)!important;}
 body.page-pradzia .hero .hero-headline{font-size:clamp(19px,4vw,27px)!important;line-height:1.17!important;}
 body.page-pradzia .hero .hero-headline .hh-mid{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;}
 body.page-pradzia .hero .hero-headline .hh-mid + .hh-d{display:none!important;}
 body.page-pradzia .hero .hero-cta{font-size:clamp(11px,2vw,14px)!important;margin-top:clamp(23px,5vw,36px)!important;}
}

/* V11: approved V9 original desktop portrait; V10 cropped portrait only on narrow viewports. */
body.page-pradzia .hero .hero-artwork-large {display:block;}
body.page-pradzia .hero .hero-artwork-small {display:none;}
@media (max-width:1099px) {
 body.page-pradzia .hero .hero-artwork-large {display:none!important;}
 body.page-pradzia .hero .hero-artwork-small {display:block!important;}
}

/* V12: full headline at every viewport width; preserve V11 imagery and grid. */
@media (max-width:699px){
 body.page-pradzia .hero .hero-headline .hh-mid{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip-path:none!important;white-space:normal!important;}
 body.page-pradzia .hero .hero-headline .hh-mid + .hh-d{display:inline!important;}
 body.page-pradzia .hero .hero-headline{font-size:clamp(17px,3.65vw,25px)!important;line-height:1.17!important;overflow-wrap:normal!important;}
}
@media (max-width:420px){
 body.page-pradzia .hero{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr)!important;}
 body.page-pradzia .hero .hero-headline{font-size:clamp(15px,3.8vw,18px)!important;}
}

/* V25: isolated mobile HOME hero. The original desktop hero remains untouched.
   No mobile rules are layered onto the old hero elements. */
.home-mobile-hero-v25{display:none}
@media(max-width:699px){
 body.page-pradzia section.hero{display:none!important}
 body.page-pradzia .home-mobile-hero-v25{
  display:block!important;position:relative!important;isolation:isolate;
  box-sizing:border-box!important;width:100%!important;
  height:clamp(420px,116vw,505px)!important;min-height:0!important;
  margin:0!important;padding:0!important;overflow:hidden!important;
  background:#360A61!important;color:#fff!important;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-eyebrow{
  position:absolute;top:clamp(70px,19vw,90px);left:5%;right:3%;
  margin:0!important;padding:0!important;z-index:3;
  color:#e6dce9;font-family:Arial,sans-serif;font-weight:600;
  font-size:clamp(10px,2.45vw,13px);line-height:1.4;
  letter-spacing:.04em;white-space:normal;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-title{
  position:absolute;top:clamp(142px,39vw,174px);left:5%;
  width:53%;max-width:53%;margin:0!important;padding:0!important;
  z-index:4;color:#fff;font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(21px,5.35vw,28px);font-weight:400;
  line-height:1.14;letter-spacing:-.035em;text-align:left;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-line{
  display:block;white-space:nowrap;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-accent{color:#c6a66b}
 body.page-pradzia .home-mobile-hero-v25 .mh-photo{
  display:block!important;position:absolute!important;z-index:2;
  right:-17%!important;bottom:0!important;top:auto!important;left:auto!important;
  width:auto!important;height:clamp(290px,83vw,390px)!important;
  max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;
  object-fit:contain!important;transform:none!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-cta{
  position:absolute;left:5%;bottom:clamp(38px,11vw,56px);z-index:5;
  display:inline-flex;gap:9px;align-items:center;
  color:#fff;text-decoration:none;white-space:nowrap;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(12px,3vw,16px);letter-spacing:.02em;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-cta span{font-size:1.25em}
}
@media(max-width:375px){
 body.page-pradzia .home-mobile-hero-v25 .mh-title{font-size:clamp(19px,5.25vw,21px)}
 body.page-pradzia .home-mobile-hero-v25 .mh-photo{right:-21%!important}
}

/* V27: mobile-only fine tuning after iPhone 16 review.
   Preserve portrait, desktop and hero height. */
@media(max-width:699px){
 body.page-pradzia .home-mobile-hero-v25 .mh-eyebrow{
  top:clamp(91px,24.5vw,113px)!important;
  left:5%!important;right:4%!important;
  font-size:clamp(10px,2.4vw,12px)!important;
  line-height:1.45!important;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-title{
  top:clamp(163px,44vw,195px)!important;
 }
 body.page-pradzia .home-mobile-hero-v25 .mh-cta{
  bottom:clamp(78px,21vw,104px)!important;
  gap:5px!important;
  font-size:clamp(11px,2.85vw,14px)!important;
  letter-spacing:0!important;
 }
}

/* V28: mobile-only compact situations + service tiles.
   HOME HERO V27 and all >=700px layouts unchanged. */
@media (max-width:699px){
 body.page-pradzia .situations{
   padding:38px var(--page-gutter) 44px;
 }
 body.page-pradzia .situations-head{margin-bottom:25px;}
 body.page-pradzia .situations-head .eyebrow{
   font-size:clamp(1.55rem,6.3vw,1.8rem);
   line-height:1.22;
 }
 body.page-pradzia .situations-grid{gap:23px;}
 body.page-pradzia .situation-item{gap:7px;}
 body.page-pradzia .situation-ring{width:19px;height:19px;}
 body.page-pradzia .situation-title{
   font-size:1.27rem;line-height:1.3;min-height:0;
 }
 body.page-pradzia .situation-desc{
   font-size:0.9rem;line-height:1.55;
 }
 body.page-pradzia .service-block{
   display:flex;flex-direction:column;align-items:flex-start;
   min-height:0;padding:30px var(--page-gutter) 30px;
 }
 body.page-pradzia .service-title{
   min-height:0;margin:0 0 16px;
   font-size:clamp(1.65rem,6.5vw,1.9rem);
   line-height:1.26;
 }
 body.page-pradzia .service-desc{
   margin:0 0 19px;line-height:1.65;max-width:100%;
 }
 body.page-pradzia .service-arrow{
   margin-top:0;align-self:flex-start;
 }
}

/* V29: equal-height HOME service tiles on mobile only.
   Keep V27 hero and V28 situations exactly as before. */
@media (max-width:699px){
 body.page-pradzia .services-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr;}
 body.page-pradzia .service-block{
  box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto minmax(0,1fr) auto;
  height:100%;min-height:278px;padding:30px var(--page-gutter) 30px;
  align-content:stretch;align-items:start;
 }
 body.page-pradzia .service-title{
  grid-row:1;min-height:0;margin:0 0 16px;display:block;
 }
 body.page-pradzia .service-desc{
  grid-row:2;min-height:0;margin:0;max-width:100%;
 }
 body.page-pradzia .service-arrow{
  grid-row:4;align-self:end;margin:0;padding:0;
 }
}

/* V30: break middle service heading on mobile only; all other layout unchanged. */
.service-mobile-break-v30{display:none}
@media(max-width:699px){
 body.page-pradzia .service-mobile-break-v30{display:block}
}
