/* Loaded only by the English international homepage and its /en/ alias. */
.english-home-content { min-width: 0; padding-block: 18px var(--section-gap, 58px); }
.english-home-content h2 { margin: 0; font-size: clamp(29px, 3.15vw, 40px); line-height: 1.13; letter-spacing: -.035em; text-wrap: balance; }
.english-home-content h3 { margin: 0 0 14px; font-size: 20px; line-height: 1.3; }
.english-home-content p { font-size: 15px; line-height: 1.7; overflow-wrap: anywhere; }
.english-home-content p:last-child { margin-bottom: 0; }
.home-english-heading { max-width: 850px; margin-bottom: 27px; }
.home-source-card { padding: 30px; border: 1px solid var(--line); border-radius: 20px; background: #eaf1ed; }
.home-source-card h2 { font-size: clamp(25px, 2.4vw, 32px); }
.home-source-card p { max-width: 1000px; }
.home-example-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 18px; }
.home-example-grid > article { min-width: 0; padding: 26px; border: 1px solid var(--line); border-radius: 20px; background: #fff; }
.home-example-grid .home-example-input { background: #f2f5f2; }
.home-example-grid p { white-space: pre-wrap; }
.home-example-note { max-width: 1000px; color: #58625b; }
.home-faq { border-top: 1px solid var(--line); }
.home-faq-list { display: grid; gap: 12px; }
.home-faq-item { min-width: 0; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.home-faq-item summary { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; padding: 22px 24px; cursor: pointer; list-style: none; font-size: 17px; font-weight: 700; line-height: 1.5; overflow-wrap: anywhere; }
.home-faq-item summary::-webkit-details-marker { display: none; }
.home-faq-item summary::after { content: '+'; flex: 0 0 auto; color: var(--green-deep); font-size: 23px; line-height: 1; }
.home-faq-item[open] summary::after { content: '−'; }
.home-faq-item summary:focus-visible { outline: 3px solid var(--green-deep); outline-offset: 3px; border-radius: 14px; }
.home-faq-answer { max-width: 1000px; padding: 0 24px 24px; }
.home-faq-answer p { margin-top: 0; }
.home-faq-answer a { color: var(--green-deep); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 680px) {
  .home-example-grid { grid-template-columns: minmax(0, 1fr); }
  .home-source-card, .home-example-grid > article { padding: 22px; }
  .home-faq-item summary { padding: 19px 20px; font-size: 16px; }
  .home-faq-answer { padding: 0 20px 20px; }
}

/* A compact excerpt precedes the full, independently checked calculation. */
body[data-page="home"] .hero:has(.home-hero-example) { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 42px; }
.home-hero-example { min-width: 0; padding: 30px; border: 1px solid #b8cebf; border-radius: 24px; background: linear-gradient(145deg, #fff, #eaf1ed); box-shadow: 0 16px 46px #13291c12; }
.home-hero-example h2 { margin: 14px 0 18px; font-size: clamp(25px, 2.5vw, 34px); line-height: 1.17; letter-spacing: -.025em; text-wrap: balance; }
.home-hero-example p { overflow-wrap: anywhere; }
.home-hero-input { font-size: 15px; line-height: 1.7; color: #58625b; }
.home-hero-result { margin-block: 22px; padding-block: 20px; border-block: 1px solid #c7d8cb; font-size: clamp(23px, 2.1vw, 30px); font-weight: 750; line-height: 1.3; color: #214d32; }
.home-hero-note { font-size: 12px; color: #58625b; line-height: 1.5; }
.home-hero-example .text-link { display: inline-flex; gap: 8px; line-height: 1.5; }
@media (max-width: 900px) {
  body[data-page="home"] .hero:has(.home-hero-example) { grid-template-columns: minmax(0, 1fr); gap: 26px; }
}
@media (max-width: 480px) {
  .home-hero-example { padding: 23px; }
}
