  *{box-sizing:border-box}
  body{margin:0;background:#FDFCF7;color:#141F17;font-family:var(--lnv-font-body);overflow-x:hidden}
  a{color:#00A859;text-decoration:none}
  a:hover{color:#00793F}
  h1,h2,h3{font-family:var(--lnv-font-display);font-weight:700;margin:0;letter-spacing:-.025em}
  ::selection{background:#FFE95E;color:#141F17}
  .navlink{color:#3E4A3F;font-size:14px;font-weight:500;cursor:pointer;padding:9px 14px;border-radius:100px;white-space:nowrap}
  .navlink:hover{background:#F1EFE3;color:#141F17}
  .tag{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#00A859}
  .lang-btn{cursor:pointer;font-size:13px;letter-spacing:.06em;font-weight:600}
  .chip{background:#ffffffcc;border:1px solid #EEEBDD;border-radius:100px;padding:8px 16px;font-size:12.5px;font-weight:500;color:#5F6B5F;white-space:nowrap}
  .card{background:#fff;border:1px solid #EEEBDD;border-radius:18px}
  .btn-green{background:#00A859;color:#fff;border:none;cursor:pointer}
  .btn-green:hover{background:#00934E;color:#fff}
  .btn-ghost{background:#fff;border:1.5px solid #E3E0D0;color:#141F17}
  .btn-ghost:hover{border-color:#141F17;color:#141F17}
  input,textarea{font-family:var(--lnv-font-body)}


/* WordPress implementation of the approved bundled prototype. */
x-dc { display:block; }
sc-if { display:contents; }
body.lnv-lang-en sc-if[data-lang="th"],
body.lnv-lang-th sc-if[data-lang="en"] { display:none !important; }
body.lnv-lang-en sc-if[data-lang="en"],
body.lnv-lang-th sc-if[data-lang="th"] { display:contents; }

image-slot {
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  width:100%;
  min-width:0;
  overflow:hidden;
  color:#6B756D;
  background:linear-gradient(135deg,#F3F1E6,#FAF8EE);
  border:1.5px dashed #D8D3BE;
  font-size:12px;
  text-align:center;
  padding:12px;
}
image-slot::before { content:attr(placeholder); max-width:80%; line-height:1.45; }
image-slot[shape="circle"] { border-radius:50%; }
image-slot[shape="rounded"] { border-radius:16px; }
image-slot[shape="rect"] { border-radius:10px; }

.lnv-prototype-home { min-height:100vh; }
.lnv-prototype-home .lang-btn.is-active { color:#141F17; }
.lnv-prototype-home .lang-btn:not(.is-active) { color:#9AA69B; }
.lnv-prototype-home .lang-btn:hover { color:#00A859; }
.lnv-prototype-home .screen-reader-text {
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

@media (max-width: 900px) {
  .lnv-prototype-home nav { padding:14px 22px !important; }
  .lnv-prototype-home section { padding-left:22px !important; padding-right:22px !important; }
  .lnv-prototype-home #top { padding-top:64px !important; }
  .lnv-prototype-home #top h1 { font-size:42px !important; }
  .lnv-prototype-home #hub > div:nth-of-type(2),
  .lnv-prototype-home #solution > div[style*="grid-template-columns:1fr 1fr"],
  .lnv-prototype-home #about > div[style*="grid-template-columns:1fr 1fr"],
  .lnv-prototype-home #contact > div,
  .lnv-prototype-home #solution div[style*="grid-template-columns:repeat(4,1fr)"],
  .lnv-prototype-home #solution > div[style*="grid-template-columns:repeat(3,1fr)"] {
    grid-template-columns:1fr !important;
  }
  .lnv-prototype-home #solution div[style*="grid-template-columns:repeat(4,1fr)"] {
    grid-template-columns:repeat(2,1fr) !important;
  }
  .lnv-prototype-home footer > div { align-items:flex-start !important; }
}

@media (max-width: 620px) {
  .lnv-prototype-home nav { align-items:flex-start !important; }
  .lnv-prototype-home nav > div { width:100%; justify-content:flex-start !important; overflow-x:auto; padding-bottom:4px; }
  .lnv-prototype-home .navlink { padding:8px 10px; }
  .lnv-prototype-home #top { padding-top:52px !important; padding-bottom:48px !important; }
  .lnv-prototype-home #top h1 { font-size:34px !important; line-height:1.14 !important; }
  .lnv-prototype-home #top p { font-size:15px !important; }
  .lnv-prototype-home section h2 { font-size:28px !important; }
  .lnv-prototype-home #solution div[style*="grid-template-columns:repeat(4,1fr)"] { grid-template-columns:1fr 1fr !important; }
  .lnv-prototype-home #schools .card,
  .lnv-prototype-home #about .card[style*="grid-template-columns:auto 1fr"] { grid-template-columns:1fr !important; }
  .lnv-prototype-home #contact > div { padding:28px 22px !important; }
  .lnv-prototype-home #contact form > div { grid-template-columns:1fr !important; }
  .lnv-prototype-home footer > div { padding:32px 22px !important; }
}

/* Homepage images managed from Appearance → Customize → Homepage Images. */
.lnv-media-slot {
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  width:100%;
  min-width:0;
  overflow:hidden;
  color:#6B756D;
  background:linear-gradient(135deg,#F3F1E6,#FAF8EE);
  border:1.5px dashed #D8D3BE;
  font-size:12px;
  text-align:center;
}
.lnv-media-slot img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.lnv-media-slot--contain img {
  object-fit:contain;
  padding:10px;
  background:#fff;
}
.lnv-media-slot--circle { border-radius:50%; }
.lnv-media-slot--rounded { border-radius:16px; }
.lnv-media-slot--rect { border-radius:10px; }
.lnv-media-slot__placeholder { max-width:80%; line-height:1.45; padding:12px; }

/* Dedicated marketing pages added in v0.6.0. */
.lnv-marketing-page-hero__glow {
  position:absolute;
  left:50%;
  bottom:-420px;
  transform:translateX(-50%);
  width:920px;
  height:920px;
  border-radius:50%;
  background:radial-gradient(circle,#FFF3B8 0%,#FDFCF7 68%);
  pointer-events:none;
}
.lnv-prototype-page main { min-height:55vh; }
@media (max-width:900px) {
  .lnv-prototype-page section[style*="grid-template-columns:repeat(3,1fr)"],
  .lnv-prototype-page div[style*="grid-template-columns:repeat(3,1fr)"] { grid-template-columns:1fr !important; }
  .lnv-marketing-page-hero h1 { font-size:40px !important; }
}
@media (max-width:620px) {
  .lnv-marketing-page-hero { padding-top:56px !important; padding-bottom:44px !important; }
  .lnv-marketing-page-hero h1 { font-size:32px !important; line-height:1.2 !important; }
}
