/* TAI-ECOSAFE shared visual foundation. Page-specific CSS may extend it. */
:root {
    --body-font-family:"Open Sans","Segoe UI",Arial,sans-serif;
    --heading-font-family:"Open Sans","Segoe UI",Arial,sans-serif;
    --tai-green-950:#063d35;
    --tai-green-900:#074c40;
    --tai-green-800:#0a5b4c;
    --tai-green-100:#e8f3ef;
    --tai-ink:#1d2926;
    --tai-muted:#5d6865;
    --tai-line:#dce4e1;
    --darkest-color:var(--tai-green-900);
    --link-color:var(--tai-green-800);
}

html { font-family:var(--body-font-family); color:var(--tai-ink); }
body { font-family:var(--body-font-family); color:var(--tai-ink); font-size:1rem; line-height:1.5; }
button,input,select,textarea { font-family:inherit; font-size:inherit; line-height:1.35; }
table { font-family:inherit; }

h1,h2,h3,h4,h5,h6 {
    font-family:var(--heading-font-family);
    color:var(--tai-green-900);
    font-weight:700;
    line-height:1.2;
}
h1 { letter-spacing:-.025em; }
h2,h3 { letter-spacing:-.012em; }
p,li,dd,dt { line-height:1.5; }

a { color:var(--link-color); text-underline-offset:2px; }
a:hover { color:var(--tai-green-950); }

button,.button {
    font-family:inherit;
    font-weight:600;
    border-radius:8px;
}
input:not([type="checkbox"]):not([type="radio"]),select,textarea {
    border-radius:6px;
}
:focus-visible {
    outline:2px solid rgba(10,91,76,.65);
    outline-offset:2px;
}
::selection { color:#fff; background:var(--tai-green-800); }

@media(max-width:767px){
    body { font-size:.9375rem; }
}
