/* Moduzel website kit - layout & section styling (uses DS tokens) */
.kit-scroll{height:100vh;overflow-y:auto;background:var(--surface-page);scroll-behavior:smooth}
.kit-container{max-width:var(--container-max);margin:0 auto;padding-inline:var(--gutter)}
.kit-section{padding-block:var(--section-y)}
.sh-on-dark,.sh-soft .sh-on-dark{}
.kit-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.kit-tick{width:26px;height:2px;background:var(--lime-500);display:inline-block}

/* ---------- Header ---------- */
.sh-head{position:sticky;top:0;z-index:50;transition:background var(--dur-base),box-shadow var(--dur-base);}
.sh-head--scrolled{background:rgba(250,248,243,.86);backdrop-filter:blur(10px);box-shadow:var(--shadow-sm)}
.sh-head__inner{max-width:var(--container-wide);margin:0 auto;padding:18px var(--gutter);display:flex;align-items:center;gap:24px}
.sh-head__logo img{height:34px;display:block}
.sh-head__nav{display:flex;gap:28px;margin-left:18px;flex:1}
.sh-head__link{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-sm);color:var(--ink-700);text-decoration:none}
.sh-head__link:hover{color:var(--forest-600)}
.sh-head__burger{display:none;background:none;border:none;color:var(--forest-700);cursor:pointer;padding:4px}
.sh-head__mobile{display:none}

/* ---------- Hero ---------- */
.sh-hero{padding-top:clamp(2rem, 1rem + 3vw, 4rem);padding-bottom:var(--section-y)}
.sh-hero__grid{max-width:var(--container-max);margin:0 auto;padding-inline:var(--gutter);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem, 1rem + 4vw, 5rem);align-items:center}
.sh-hero__title{font-size:var(--fs-display);font-weight:var(--fw-extra);letter-spacing:var(--ls-display);line-height:1.04;color:var(--forest-800);margin:0 0 1rem}
.sh-hero__lead{max-width:34ch;margin-bottom:1.8rem}
.sh-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:2.4rem}
.sh-hero__stats{display:flex;gap:40px;flex-wrap:wrap;border-top:1px solid var(--border-subtle);padding-top:1.6rem}
.sh-hero__media{position:relative}
.sh-hero__photo{width:100%;aspect-ratio:4/4.6;display:block;object-fit:cover;border-radius:26px;box-shadow:var(--shadow-lg)}
.sh-hero__chip{position:absolute;left:-14px;bottom:34px;background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:14px 18px;display:flex;align-items:center;gap:12px}
.sh-hero__chip-ic{width:42px;height:42px;border-radius:12px;background:var(--lime-400);color:var(--forest-800);display:flex;align-items:center;justify-content:center;font-size:22px}
.sh-hero__chip-k{font-size:var(--fs-xs);color:var(--text-secondary)}
.sh-hero__chip-v{font-family:var(--font-display);font-weight:var(--fw-bold);color:var(--forest-700)}
.sh-hero__badge{position:absolute;top:18px;right:18px}

/* ---------- Section heads ---------- */
.sh-sechead{max-width:52ch;margin-bottom:2.6rem}
.sh-sechead__title{font-size:var(--fs-h2);font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);color:var(--forest-800);margin:0 0 .6rem;line-height:1.12}
.sh-sechead__title.sh-on-dark{color:var(--sand-50)}

/* ---------- Services ---------- */
.sh-services__top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.sh-services__top .sh-sechead{margin-bottom:0}
.sh-services__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:2.4rem}

/* ---------- Values (dark) ---------- */
.sh-dark{background:var(--forest-800);color:var(--sand-50)}
.sh-values__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:2.4rem}

/* ---------- CTA band ---------- */
.sh-cta{background:var(--lime-400);border-radius:var(--radius-2xl);padding:clamp(2rem, 1rem + 3vw, 3.5rem);display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.sh-cta__title{font-size:var(--fs-h2);font-weight:var(--fw-extra);letter-spacing:var(--ls-heading);color:var(--forest-800);margin:0;line-height:1.08}
.sh-cta__text{color:var(--forest-700);margin:.6rem 0 0;max-width:40ch;font-size:var(--fs-lead)}
.sh-cta__actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.sh-cta__phone{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:var(--fw-bold);color:var(--forest-800);text-decoration:none;font-size:1.1rem}
.sh-cta__phone span{display:inline-flex;font-size:20px}

/* ---------- FAQ ---------- */
.sh-soft{background:var(--sand-50)}
.sh-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.sh-faq__head .sh-sechead{margin-bottom:1.4rem}
.sh-faq__list{display:flex;flex-direction:column;gap:12px}
.sh-faq__item{background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow var(--dur-base)}
.sh-faq__item.is-open{box-shadow:var(--shadow-sm)}
.sh-faq__q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;background:none;border:none;cursor:pointer;padding:20px 22px;text-align:left;font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:1.05rem;color:var(--forest-800)}
.sh-faq__ic{display:inline-flex;font-size:20px;color:var(--forest-600);transition:transform var(--dur-base) var(--ease-standard);flex-shrink:0}
.sh-faq__item.is-open .sh-faq__ic{transform:rotate(45deg)}
.sh-faq__a{max-height:0;overflow:hidden;transition:max-height var(--dur-slow) var(--ease-standard)}
.sh-faq__item.is-open .sh-faq__a{max-height:240px}
.sh-faq__a p{margin:0;padding:0 22px 22px;color:var(--text-secondary);line-height:var(--lh-relaxed)}

/* ---------- Contact ---------- */
.sh-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:start}
.sh-contact__list{list-style:none;padding:0;margin:1rem 0 1.4rem;display:flex;flex-direction:column;gap:14px}
.sh-contact__list li{display:flex;align-items:center;gap:12px;font-family:var(--font-display);font-weight:var(--fw-medium);color:var(--forest-800)}
.sh-contact__ic{display:inline-flex;width:40px;height:40px;border-radius:12px;background:var(--forest-50);color:var(--forest-600);align-items:center;justify-content:center;font-size:18px}
.sh-contact__hours{color:var(--text-secondary);font-size:var(--fs-sm)}
.sh-contact__form{background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:clamp(1.5rem, 1rem + 2vw, 2.6rem);box-shadow:var(--shadow-md)}
.sh-form__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.sh-contact__form form>*{margin-bottom:16px}
.sh-contact__ok{text-align:center;padding:40px 10px}
.sh-contact__okic{display:inline-flex;width:64px;height:64px;border-radius:50%;background:var(--lime-400);color:var(--forest-800);align-items:center;justify-content:center;font-size:30px;margin-bottom:16px}
.sh-contact__ok h3{margin:0 0 .3rem;font-size:var(--fs-h3);color:var(--forest-800)}
.sh-contact__ok p{color:var(--text-secondary);margin:0}

/* ---------- Footer ---------- */
.sh-foot{background:var(--forest-900);color:var(--forest-100);padding-top:var(--space-8)}
.sh-foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;padding-bottom:var(--space-7)}
.sh-foot__brand img{height:34px;margin-bottom:16px}
.sh-foot__brand p{color:var(--forest-200);max-width:34ch;line-height:var(--lh-relaxed)}
.sh-foot__h{font-family:var(--font-display);font-weight:var(--fw-bold);color:var(--sand-50);margin-bottom:14px;font-size:var(--fs-sm);letter-spacing:.04em}
.sh-foot__col{display:flex;flex-direction:column;gap:10px}
.sh-foot__col a{color:var(--forest-200);text-decoration:none;font-size:var(--fs-sm)}
.sh-foot__col a:hover{color:var(--lime-400)}
.sh-foot__bottom{display:flex;justify-content:space-between;align-items:center;padding-block:24px;border-top:1px solid rgba(255,255,255,.08);font-size:var(--fs-sm);color:var(--forest-200)}
.sh-foot__legal{display:flex;gap:20px}
.sh-foot__legal a{color:var(--forest-200);text-decoration:none}

/* ---------- Responsive ---------- */
@media (max-width:1040px){
  .sh-values__grid{grid-template-columns:repeat(2,1fr)}
  .sh-services__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .sh-head__nav,.sh-head__cta{display:none}
  .sh-head__burger{display:inline-flex;margin-left:auto}
  .sh-head__mobile{display:flex;flex-direction:column;gap:14px;padding:18px var(--gutter) 24px;background:var(--sand-50);box-shadow:var(--shadow-md)}
  .sh-hero__grid,.sh-faq,.sh-contact{grid-template-columns:1fr}
  .sh-services__grid{grid-template-columns:1fr}
  .sh-services__top{flex-direction:column;align-items:flex-start}
  .sh-form__row{grid-template-columns:1fr}
  .sh-foot__grid{grid-template-columns:1fr 1fr}
  .sh-cta{flex-direction:column;align-items:flex-start}
}
