@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/poppins-latin-ext-300-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/poppins-latin-300-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-latin-ext-400-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/poppins-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-latin-ext-500-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/poppins-latin-500-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-latin-ext-600-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/poppins-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Poppins';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/poppins-latin-ext-400-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/poppins-latin-400-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#faf9f5;color:#141413}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}

/* ===== Tokens — one disciplined scale, reused everywhere ===== */
:root{
  --c-len:#F6F2EC;
  --c-len-card:#FAF8F4;
  --c-len-hi:#FFFFFF;
  --c-len-line:#E3DCD2;

  --c-ink:#1E2530;
  --c-ink-soft:#5B6B85;
  --c-ink-deep:#10151C;

  --c-hneda:#68564A;
  --c-hneda-soft:#A89385;

  --c-salvej:#284F48;
  --c-salvej-deep:#0F211E;
  --c-salvej-mid:#3D786D;

  --c-meruna:#DD8E83;
  --c-meruna-mid:#D06253;
  --c-meruna-deep:#B44131;
  --c-meruna-pale:#F7E6E3;

  --font-display:'Chillax','Poppins',system-ui,sans-serif;
  --font-body:'Poppins',system-ui,sans-serif;

  /* exactly five sizes, used everywhere, nothing invented per-component */
  --fs-h1:clamp(2.5rem,4vw + 1.7rem,4.25rem);
  --fs-h2:clamp(1.85rem,2vw + 1.35rem,2.4rem);
  --fs-h3:1.375rem;
  --fs-lead:1.125rem;
  --fs-body:1rem;
  --fs-small:0.875rem;

  --maxw:1120px;
  --gutter:clamp(1.25rem,5vw,3rem);
  --radius:8px;
  --header-h:5rem;
  color-scheme:light;
}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--c-len);color:var(--c-ink);font-family:var(--font-body);
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
  padding-inline:var(--gutter);overflow-x:hidden;
}
img,svg{max-width:100%;display:block;}
a{color:inherit;}
h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.1;text-wrap:balance;margin:0;}
p{margin:0;}
ul{margin:0;padding:0;list-style:none;}
button{font:inherit;}
:focus-visible{outline:3px solid var(--c-meruna-deep);outline-offset:2px;}

.wrap{max-width:var(--maxw);margin-inline:auto;}
.lead{font-size:var(--fs-lead);color:var(--c-ink-soft);}
.eyebrow{
  display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:var(--fs-small);
  letter-spacing:.12em;text-transform:uppercase;color:var(--c-hneda);
}
.eyebrow::before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--c-meruna-deep);flex:none;}
.section{padding-block:clamp(3.25rem,7vw,6rem);}
.section-head{max-width:40rem;margin-bottom:clamp(2rem,4vw,2.75rem);}
.section-head h2{margin-top:.7rem;}
.section-head p{margin-top:.85rem;}

.btn{
  display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-weight:600;
  font-size:1rem;padding:.85rem 1.6rem;border-radius:999px;border:none;cursor:pointer;
  text-decoration:none;white-space:nowrap;transition:transform .15s ease, background .15s ease;
}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--c-meruna);color:var(--c-ink);}
.btn-primary:hover{background:var(--c-meruna-mid);color:var(--c-len-hi);}
.btn-outline{background:transparent;color:var(--c-ink);border:1.5px solid var(--c-ink);}
.btn-outline:hover{background:var(--c-ink);color:var(--c-len);}
.btn-light{background:transparent;color:var(--c-len);border:1.5px solid rgba(246,242,236,.55);}
.btn-light:hover{background:rgba(246,242,236,.12);border-color:var(--c-len);}
.btn svg{width:1rem;height:1rem;flex:none;}

/* One reusable icon-list pattern — used for contact info, education, disclaimer */
.icon-list{display:grid;gap:.85rem;}
.icon-list li{display:flex;gap:.7rem;}
.icon-list li svg{flex:none;width:1.1rem;height:1.1rem;margin-top:.2rem;color:var(--c-salvej);}
.icon-list li span{min-width:0;}
.icon-list b{display:block;font-family:var(--font-display);font-weight:500;color:var(--c-ink);}

/* One reusable placeholder pattern — flat sage green, never black */
.placeholder{
  position:relative;border-radius:var(--radius);overflow:hidden;background:var(--c-salvej);
  display:flex;align-items:flex-end;color:var(--c-len);width:100%;min-width:0;max-width:100%;min-height:15rem;
}
.placeholder::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 80% 20%, var(--c-meruna) 0 5%, transparent 5.3%),
    linear-gradient(115deg,transparent 47%,rgba(246,242,236,.14) 48%,rgba(246,242,236,.14) 49%,transparent 50%);
}
.placeholder-note{
  position:relative;width:100%;min-width:0;box-sizing:border-box;padding:1.1rem 1.2rem;
  display:flex;gap:.6rem;align-items:flex-start;font-size:var(--fs-small);line-height:1.45;
  background:linear-gradient(0deg,rgba(15,33,30,.6),transparent);
}
.placeholder-note svg{width:1.1rem;height:1.1rem;flex:none;margin-top:.1rem;opacity:.9;}
.placeholder-note span{min-width:0;flex:1;}
.placeholder-note b{display:block;font-family:var(--font-display);font-weight:600;margin-bottom:.15rem;}
.ph-hero{aspect-ratio:4/5;}
.ph-wide{aspect-ratio:16/10;}
.ph-portrait{aspect-ratio:4/5;}
.hero-photo{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius);display:block;}
.profile-photo{width:100%;height:auto;aspect-ratio:950/1377;object-fit:cover;border-radius:var(--radius);display:block;}
.contact-img{width:100%;height:auto;aspect-ratio:820/814;object-fit:cover;border-radius:var(--radius);display:block;}

/* One reusable simple price-list pattern — never a boxed table */
.price-list{margin-top:1.25rem;display:grid;}
.price-list li{
  display:flex;justify-content:space-between;gap:1rem;align-items:baseline;
  padding-block:.8rem;border-top:1px solid var(--c-len-line);
}
.price-list li:last-child{border-bottom:1px solid var(--c-len-line);}
.price-list .p-name{font-weight:500;}
.price-list .p-desc{display:block;color:var(--c-ink-soft);font-size:var(--fs-small);margin-top:.15rem;}
.price-list .p-val{font-family:var(--font-display);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums;}

section[id]{scroll-margin-top:var(--header-h);}

/* Grid/flex overflow safety net: an item's default min-width:auto can blow out narrow layouts */
.hero .wrap > *,
.about .wrap > *,
.contact .wrap > *,
.services-grid > *,
.diplomas > *,
.testimonials > *,
.balance-list > li,
.decision-list > li,
.decision-list li > span,
.paths-list > li,
.paths-list li > span,
.icon-list li > span,
.process-list > li,
.field-row > .field{min-width:0;}
select{min-width:0;}

/* ===== Header ===== */
.site-header{
  position:sticky;top:env(safe-area-inset-top,0px);z-index:50;
  margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);
  border-bottom:1px solid var(--c-len-line);
}
.site-header::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:rgba(246,242,236,.92);backdrop-filter:blur(6px);
}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-h);}
.brand{display:flex;align-items:center;text-decoration:none;}
.brand .mark{width:4.35rem;height:auto;}
.header-name{display:none;}
.nav-toggle{
  display:flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;
  border:1px solid var(--c-len-line);border-radius:6px;background:var(--c-len-card);cursor:pointer;
}
.nav-toggle svg{width:1.2rem;height:1.2rem;}
.nav-toggle .icon-close{display:none;}
.site-header.nav-open .nav-toggle .icon-open{display:none;}
.site-header.nav-open .nav-toggle .icon-close{display:block;}
.primary-nav{
  position:fixed;inset:var(--header-h) 0 0 0;background:var(--c-len);display:flex;flex-direction:column;
  padding:1.5rem var(--gutter) 2rem;transform:translateY(-8px);opacity:0;pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
}
.site-header.nav-open .primary-nav{opacity:1;transform:translateY(0);pointer-events:auto;}
.primary-nav a{
  font-family:var(--font-display);font-weight:500;font-size:1.3rem;color:var(--c-ink);
  text-decoration:none;padding-block:.85rem;border-bottom:1px solid var(--c-len-line);
}
.primary-nav .btn{margin-top:1.5rem;justify-content:center;}
@media (min-width:900px){
  .nav-toggle{display:none;}
  .header-name{
    display:block;font-family:var(--font-display);font-weight:500;font-size:1.02rem;
    color:var(--c-ink-soft);letter-spacing:.02em;margin-left:2.5rem;
  }
  .primary-nav{
    position:static;inset:auto;transform:none;opacity:1;pointer-events:auto;
    flex-direction:row;align-items:center;gap:1.9rem;padding:0;background:transparent;
  }
  .primary-nav a{font-size:.98rem;font-weight:500;padding-block:0;border-bottom:none;}
  .primary-nav .btn{margin-top:0;}
}

/* ===== Hero ===== */
.hero{padding-block:clamp(2.5rem,6vw,4.5rem);}
.hero .wrap{display:grid;gap:clamp(2rem,4vw,3rem);align-items:center;}
.hero-name{
  display:block;font-family:var(--font-display);font-weight:600;font-size:calc(var(--fs-h2) * 0.8);
  color:var(--c-ink);margin-bottom:1.1rem;line-height:1.1;
}
.hero h1{font-size:var(--fs-h1);color:var(--c-salvej);}
.claim-line2{display:block;width:fit-content;}
.claim-divider{display:block;margin:1.6rem auto 0;transform:rotate(-3.5deg);}
.claim-divider line{stroke:var(--c-meruna-deep);stroke-width:3;}
.claim-divider circle{fill:var(--c-meruna-deep);}

.section-divider{position:relative;max-width:var(--maxw);margin-inline:auto;height:1px;}
.section-divider-line{position:absolute;inset:0;border-top:3px solid #000;}
.section-divider-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:1.15rem;height:1.15rem;border-radius:50%;background:var(--c-meruna-deep);}
.hero .lead{margin-top:1.25rem;max-width:34rem;}
.hero .lead b{color:var(--c-ink);font-weight:600;}
.hero-cta{margin-top:1.75rem;}
@media (min-width:800px){
  .hero .wrap{grid-template-columns:.85fr 1.15fr;align-items:start;}
  .hero h1{font-size:calc(var(--fs-h1) * .82);}
  .hero-cta{margin-top:1.4rem;}
}

/* ===== Intro band: questions on the page's own background, balance list in a green frame ===== */
.intro-band{color:var(--c-ink);}
.intro-band .wrap{padding-block:clamp(2.75rem,6vw,4.5rem);}
.intro-band .questions p{font-family:var(--font-display);font-weight:500;font-size:var(--fs-h3);line-height:1.4;}
.intro-band .questions p + p{margin-top:.4rem;}
.intro-band hr{border:none;border-top:1px solid var(--c-len-line);margin-block:clamp(2rem,4vw,2.75rem);}
.balance-panel{
  background:var(--c-salvej);color:var(--c-len);border-radius:var(--radius);
  padding:clamp(1.75rem,4vw,2.75rem);
}
.balance-panel h2{color:var(--c-len);font-size:var(--fs-h3);max-width:30rem;}
.balance-list{margin-top:1.5rem;display:grid;gap:1rem;}
.balance-list li{display:flex;gap:.8rem;align-items:flex-start;font-size:var(--fs-lead);color:#DCD6CC;}
.balance-list .dot{
  flex:none;width:.5rem;height:.5rem;border-radius:50%;background:var(--c-meruna);margin-top:.55rem;
}
.balance-panel .btn{margin-top:1.75rem;}
@media (min-width:760px){.balance-list{grid-template-columns:1fr 1fr;column-gap:2rem;}}

/* ===== Služby ===== */
.services-grid{display:grid;gap:1.75rem;margin-top:clamp(2rem,4vw,2.75rem);}
@media (min-width:860px){.services-grid{grid-template-columns:1fr 1fr;align-items:stretch;}}
.service-card{
  display:flex;flex-direction:column;background:var(--c-len-card);border-top:3px solid var(--c-salvej);
  border-radius:var(--radius);padding:clamp(1.75rem,3vw,2.25rem);
}
.service-card.alt{border-top-color:var(--c-meruna-deep);}
.service-card h3{font-size:var(--fs-h3);}
.service-card .subtitle{display:block;margin-top:.3rem;color:var(--c-hneda);font-size:var(--fs-small);font-weight:600;}
.service-card > p{margin-top:1rem;color:var(--c-ink-soft);}
.service-card .who-label{display:block;margin-top:1.4rem;font-weight:600;font-size:var(--fs-small);}
.service-card .who{margin-top:.7rem;display:grid;gap:.55rem;}
.service-card .who li{display:flex;gap:.6rem;font-size:var(--fs-small);color:var(--c-ink-soft);}
.service-card .who li::before{content:"";flex:none;width:.4rem;height:.4rem;border-radius:50%;background:var(--c-meruna-deep);margin-top:.5rem;}
.service-card .btn{margin-top:1.6rem;align-self:flex-start;}

.decision{margin-top:clamp(2.5rem,5vw,3.5rem);max-width:38rem;}
.decision-intro{margin-top:.8rem;color:var(--c-ink-soft);}
.decision-list{margin-top:1.25rem;display:grid;gap:.9rem;}
.decision-link{display:inline;font-weight:600;color:var(--c-meruna-deep);text-decoration:underline;text-underline-offset:2px;white-space:nowrap;}
.decision-link:hover{color:var(--c-meruna-mid);}
.decision-list li{display:flex;gap:.7rem;align-items:flex-start;color:var(--c-ink-soft);}
.decision-list li b{color:var(--c-ink);font-weight:600;}
.decision-list .dot{flex:none;width:.5rem;height:.5rem;border-radius:50%;background:var(--c-meruna);margin-top:.5rem;}

.disclaimer{
  margin-top:clamp(2rem,4vw,2.75rem);display:flex;gap:1rem;padding:1.4rem 1.5rem;border-radius:var(--radius);
  background:var(--c-meruna-pale);border-left:4px solid var(--c-meruna-deep);
}
.disclaimer svg{flex:none;width:1.3rem;height:1.3rem;color:var(--c-meruna-deep);margin-top:.15rem;}
.disclaimer p{font-size:var(--fs-small);color:var(--c-ink);}
.disclaimer a{font-weight:600;text-decoration:underline;}

/* ===== O mně ===== */
.about .wrap{display:grid;gap:clamp(2rem,4vw,3rem);}
.about-photo{max-width:22rem;}
.about-body p + p{margin-top:1.05rem;color:var(--c-ink-soft);}
.about-body .lead{color:var(--c-ink);}
.about-body .paths{margin-top:1.05rem;color:var(--c-ink-soft);}
.paths-list{margin-top:.85rem;display:grid;gap:.7rem;}
.paths-list li{display:flex;gap:.7rem;align-items:flex-start;color:var(--c-ink-soft);}
.paths-list b{color:var(--c-ink);font-family:var(--font-display);font-weight:600;}
.paths-list .dot{flex:none;width:.5rem;height:.5rem;border-radius:50%;background:var(--c-meruna);margin-top:.5rem;}
.about-body .paths-outro{margin-top:1.05rem;color:var(--c-ink-soft);}

.intro-panel{
  margin-top:clamp(2rem,4vw,2.75rem);text-align:center;
  background:var(--c-len-card);border-top:3px solid var(--c-meruna-deep);border-radius:var(--radius);
  padding:clamp(1.75rem,4vw,2.5rem);
}
.intro-panel h3{font-size:var(--fs-h3);margin-top:.5rem;}
.intro-panel p{margin-top:.85rem;color:var(--c-ink-soft);max-width:34rem;margin-inline:auto;}
.intro-panel .btn{margin-top:1.5rem;}

.process-panel{
  background:var(--c-salvej);color:var(--c-len);border-radius:var(--radius);
  padding:clamp(1.75rem,4vw,2.5rem);margin-top:clamp(2rem,4vw,2.75rem);
}
.process-panel h3{color:var(--c-len);font-size:var(--fs-h3);}
.process-list{margin-top:1.4rem;display:grid;gap:1rem;counter-reset:step;}
.process-list li{display:flex;gap:.9rem;align-items:flex-start;font-size:var(--fs-lead);color:#DCD6CC;}
.process-list li::before{
  counter-increment:step;content:counter(step);flex:none;width:1.6rem;height:1.6rem;border-radius:50%;
  background:var(--c-meruna);color:var(--c-salvej-deep);font-family:var(--font-display);font-weight:600;
  font-size:.85rem;line-height:1;display:flex;align-items:center;justify-content:center;margin-top:.1rem;
}
.process-note{
  margin-top:1.4rem;padding-top:1.4rem;border-top:1px solid rgba(246,242,236,.2);
  font-size:var(--fs-lead);color:#DCD6CC;font-style:italic;
}

.about-body .credentials{margin-top:1.75rem;border-top:1px solid var(--c-len-line);padding-top:1.1rem;}
.about-body .credentials summary{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;
  font-family:var(--font-display);font-weight:500;font-size:var(--fs-lead);color:var(--c-ink);
  list-style:none;min-width:0;
}
.about-body .credentials summary::-webkit-details-marker{display:none;}
.about-body .credentials summary::after{
  content:"+";flex:none;font-size:1.5rem;line-height:1;color:var(--c-meruna-deep);font-weight:400;
}
.about-body .credentials[open] summary::after{content:"\2013";}
.about-body .icon-list{margin-top:1.5rem;}
.about-body .icon-list li{padding-top:.85rem;border-top:1px solid var(--c-len-line);}
.about-body .icon-list li:first-child{border-top:none;padding-top:0;}

.diplomas{margin-top:1.75rem;display:grid;gap:1.1rem;}
.diploma-slot{
  border:1.5px dashed var(--c-hneda-soft);border-radius:6px;
  display:flex;align-items:center;gap:.75rem;
  color:var(--c-hneda);padding:.85rem 1rem;
}
.diploma-slot svg{flex:none;width:1.3rem;height:1.3rem;}
.diploma-slot span{font-size:var(--fs-small);min-width:0;}
.diploma-card{display:block;width:100%;max-width:14rem;text-decoration:none;}
.diploma-card img{width:100%;display:block;border-radius:6px;border:1px solid var(--c-len-line);}
.diploma-card span{display:block;margin-top:.55rem;font-size:var(--fs-small);color:var(--c-hneda);}
.diploma-card:hover img{border-color:var(--c-hneda-soft);}
@media (min-width:520px){.diplomas{grid-template-columns:14rem 1fr;align-items:start;}}
@media (min-width:820px){.about .wrap{grid-template-columns:.8fr 1.2fr;align-items:start;}}

/* ===== Reference ===== */
.testimonials{display:grid;gap:1.25rem;margin-top:clamp(2rem,4vw,2.5rem);justify-content:center;}
.testi-slot{border:1.5px dashed var(--c-hneda-soft);border-radius:var(--radius);padding:1.6rem;display:flex;flex-direction:column;gap:.7rem;color:var(--c-hneda);}
.testi-slot svg{width:1.4rem;height:1.4rem;opacity:.7;}
.testi-slot p{font-size:var(--fs-small);}
@media (min-width:760px){.testimonials{grid-template-columns:repeat(auto-fit,minmax(260px,22rem));}}
.reference-cta{
  margin-top:1.75rem;display:flex;flex-wrap:wrap;gap:1.25rem;align-items:center;justify-content:space-between;
  padding-top:1.75rem;border-top:1px solid var(--c-len-line);
}
.reference-cta p{max-width:26rem;color:var(--c-ink-soft);font-size:var(--fs-small);}
.reference-cta b{display:block;color:var(--c-ink);font-family:var(--font-display);font-weight:600;font-size:var(--fs-body);margin-bottom:.25rem;}

/* ===== Otázky (FAQ) ===== */
.faq-list{margin-top:clamp(2rem,4vw,2.5rem);display:grid;}
.faq-item{border-top:1px solid var(--c-len-line);padding-block:1.1rem;min-width:0;}
.faq-item:last-child{border-bottom:1px solid var(--c-len-line);}
.faq-item summary{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;
  font-family:var(--font-display);font-weight:500;font-size:var(--fs-lead);color:var(--c-ink);
  list-style:none;min-width:0;
}
.faq-item summary > *{min-width:0;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
  content:"+";flex:none;font-size:1.5rem;line-height:1;color:var(--c-meruna-deep);font-weight:400;
}
.faq-item[open] summary::after{content:"–";}
.faq-item p{margin-top:.85rem;color:var(--c-ink-soft);}
.faq-item p + p{margin-top:.7rem;}
.faq-item .faq-prompt{
  text-align:right;margin-left:auto;margin-top:1.1rem;max-width:26rem;
  color:var(--c-salvej);font-weight:600;font-size:var(--fs-lead);font-family:var(--font-display);
}

/* ===== Kontakt ===== */
.contact .wrap{display:grid;gap:clamp(2rem,4vw,3rem);}
.contact .wrap > *{min-width:0;}
.contact-photo{max-width:13rem;margin-bottom:1.75rem;}
.contact-links{margin-top:1.1rem;display:grid;gap:.6rem;}
.contact-links a{
  display:inline-flex;align-items:center;gap:.6rem;width:fit-content;
  font-family:var(--font-display);font-weight:600;font-size:1.1rem;color:var(--c-meruna-deep);text-decoration:none;word-break:break-word;
}
.contact-links a svg{flex:none;width:1.15rem;height:1.15rem;}
.contact-info{margin-top:1.5rem;}

.form-card{background:var(--c-len-card);border-radius:var(--radius);padding:clamp(1.5rem,4vw,2.25rem);}
.field{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1.1rem;min-width:0;}
.field label{font-size:var(--fs-small);font-weight:600;}
.req{color:var(--c-meruna-deep);margin-left:.2rem;}
.field input,.field select,.field textarea{
  font:inherit;font-size:var(--fs-body);padding:.75rem .9rem;border-radius:6px;
  border:1px solid var(--c-len-line);background:var(--c-len-hi);color:var(--c-ink);
  width:100%;min-width:0;max-width:100%;
}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--c-meruna-deep);}
.field textarea{resize:vertical;min-height:6rem;}
.field-row{display:grid;gap:1.1rem;min-width:0;}
.field-row > .field{min-width:0;}
@media (min-width:600px){.field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}}
.consent{display:flex;gap:.65rem;align-items:flex-start;margin-bottom:1.3rem;}
.consent input{margin-top:.3rem;flex:none;width:1.05rem;height:1.05rem;accent-color:var(--c-meruna-deep);}
.consent label{flex:1;min-width:0;font-size:var(--fs-small);color:var(--c-ink-soft);}
.form-note{margin-top:.9rem;font-size:.8rem;color:var(--c-ink-soft);}
@media (min-width:820px){.contact .wrap{grid-template-columns:.85fr 1.15fr;align-items:start;}}

/* ===== Footer ===== */
.site-footer{margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);background:var(--c-ink-deep);color:var(--c-len);}
.site-footer .wrap{padding-block:clamp(2.5rem,5vw,3.5rem);}
.footer-top{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;padding-bottom:2rem;border-bottom:1px solid rgba(246,242,236,.15);}
.footer-brand{display:flex;align-items:flex-end;gap:.7rem;}
.footer-brand .mark{width:5.3rem;}
.footer-brand-name{font-family:var(--font-display);font-weight:600;font-size:1.05rem;line-height:1.15;color:var(--c-len);margin-bottom:1.45rem;}
.footer-nav{display:flex;flex-wrap:wrap;gap:1.4rem 1.8rem;}
.footer-nav a{font-size:var(--fs-small);text-decoration:none;color:#C9D2DE;}
.footer-nav a:hover{color:var(--c-len);}
.footer-social{display:flex;gap:.8rem;}
.footer-social a{
  width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid rgba(246,242,236,.25);
  display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--c-len);
}
.footer-social svg{width:1.05rem;height:1.05rem;}
.footer-social a:hover{background:rgba(246,242,236,.1);}
.footer-bottom{padding-top:1.75rem;display:flex;flex-wrap:wrap;gap:1rem 1.5rem;justify-content:space-between;font-size:.8rem;color:#93A0B4;}
.footer-bottom a{color:#93A0B4;text-decoration:underline;text-underline-offset:2px;}
.footer-bottom a:hover{color:var(--c-len);}

.legal-stub{padding-block:clamp(2.5rem,5vw,3.5rem);scroll-margin-top:var(--header-h);}
.legal-stub h2{font-size:var(--fs-h3);}
.legal-stub p{margin-top:.85rem;color:var(--c-ink-soft);max-width:42rem;}
.legal-stub .flag{
  display:inline-flex;margin-top:.9rem;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  color:var(--c-meruna-deep);background:var(--c-meruna-pale);padding:.35rem .7rem;border-radius:999px;
}
.legal-stub .legal-meta{margin-top:.4rem;font-size:var(--fs-small);color:var(--c-ink-soft);}
.legal-stub h3{
  margin-top:2rem;font-family:var(--font-display);font-weight:600;font-size:1.15rem;color:var(--c-salvej);
}
.legal-stub ul{margin-top:.65rem;max-width:42rem;padding-left:1.25rem;color:var(--c-ink-soft);list-style:disc;}
.legal-stub ul li{margin-top:.55rem;line-height:1.5;}
.legal-stub ul li::marker{color:var(--c-meruna-deep);}
.legal-stub p strong,.legal-stub ul strong{color:var(--c-ink);font-weight:600;}
.legal-stub em{font-style:italic;}

@font-face{font-family:'Chillax';src:url(/fonts/chillax-1.otf) format('opentype');font-weight:400;font-style:normal;font-display:swap;}
@font-face{font-family:'Chillax';src:url(/fonts/chillax-2.otf) format('opentype');font-weight:500;font-style:normal;font-display:swap;}
@font-face{font-family:'Chillax';src:url(/fonts/chillax-3.otf) format('opentype');font-weight:600;font-style:normal;font-display:swap;}
@font-face{font-family:'Chillax';src:url(/fonts/chillax-4.otf) format('opentype');font-weight:700;font-style:normal;font-display:swap;}

/* ===== Doplňky k původním stylům (formulář přes server, reference, ochrana proti spamu) ===== */
.testi-slot .testi-author{display:block;margin-top:.9rem;font-size:var(--fs-small);font-weight:600;color:var(--c-hneda);letter-spacing:.02em;}
.form-status{margin-top:1rem;padding:.9rem 1rem;border-radius:8px;font-size:var(--fs-small);line-height:1.5;}
.form-status[data-typ="ok"]{background:#E6EFEC;color:var(--c-salvej-deep);}
.form-status[data-typ="chyba"]{background:var(--c-meruna-pale);color:var(--c-meruna-deep);}
.form-card .hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;}
.form-card .cf-turnstile{margin-top:.75rem;min-height:65px;}
.form-card button[disabled]{opacity:.6;cursor:progress;}
.consent .nepovinne{color:var(--c-ink-soft);font-weight:400;}
.legal-stub ul{padding-left:1.2rem;}
.legal-stub ul li{list-style:disc;}
.legal-stub ul ul{margin:.3rem 0 .5rem;}
.legal-stub ul ul li{list-style:circle;}
