/* The brand's interior pages. Homepage and other themes keep their own skins. */
.brush-interior {
    --primary-color:#275b56; --primary-dark:#193e3c; --secondary-color:#203d42;
    --text-color:#203d42; --text-light:#657b7c; --bg-light:#f6f8f4; --border-color:#d6e2db;
    --brand-ink:#203d42; --brand-muted:#657b7c; --brand-teal:#275b56;
    color:var(--brand-ink); background:#fcfdfa;
}
.brush-interior main { min-height:55vh; }
.brush-interior main:focus { outline:none; }
.brush-interior .navbar-brand { color:var(--brand-ink) !important; }
.brush-interior .navbar-nav .nav-link[aria-current="page"] { color:#275b56 !important; border-color:#67998a; }
.brush-interior .btn-lang { background:#edf3eb; color:#365e4d !important; }
.brush-interior .dropdown-menu { border-color:#d6e2db; box-shadow:0 12px 32px #203d4210; }
.brush-interior .dropdown-item.active { background:#275b56; }
.brand-skip-link { position:fixed; top:8px; left:16px; z-index:1100; padding:12px 20px; border-radius:4px; background:#203d42; color:#fff; transform:translateY(-150%); }
.brand-skip-link:focus { transform:translateY(0); color:#fff; outline:3px solid #b1d9bf; }
.brand-page { overflow:clip; }
.brand-page *, .brand-page *::before, .brand-page *::after { min-width:0; }
.brand-page a { text-decoration:none; }
.brand-page h1, .brand-page h2, .brand-page h3 { text-wrap:balance; overflow-wrap:anywhere; }
.brand-page p, .brand-page a, .brand-page dd, .brand-page li { overflow-wrap:anywhere; }
.brand-page img { max-width:100%; }
.brand-page img[hidden] { display:none !important; }
.brand-page .has-media-fallback { position:relative; min-height:180px; }
.brand-media-fallback { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; position:absolute; inset:0; background:linear-gradient(135deg,#e5ede2,#d8e6db); color:#536e63; pointer-events:none; }
.brand-media-fallback i { font-size:30px; }.brand-media-fallback > span { font-size:12px; letter-spacing:.03em; }
.brand-page section[id] { scroll-margin-top:100px; }
.brand-page :is(a,button,input,textarea,select,summary):focus-visible { outline:2px solid #397960; outline-offset:4px; }
.brand-page-hero { position:relative; isolation:isolate; padding:34px 0 72px; background:linear-gradient(110deg,#f4f7f2,#edf3ee); border-bottom:1px solid #dce5dc; }
.brand-page-hero::after { content:""; position:absolute; right:-100px; top:-150px; width:480px; height:480px; border:1px solid #b9d0bf44; border-radius:50%; box-shadow:0 0 0 60px #bfd2bf0d,0 0 0 120px #bfd2bf0a; z-index:-1; pointer-events:none; }
.brand-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:11px; margin-bottom:48px; color:#647b70; font-size:12px; line-height:1.7; }
.brand-breadcrumb a { color:#536e63; }.brand-breadcrumb a:hover { color:#193e3c; text-decoration:underline; text-underline-offset:4px; }
.brand-breadcrumb > span[aria-hidden] { color:#97ac9e; }
.brand-eyebrow { display:block; margin:0 0 18px; color:#52765f; font-size:11px; font-weight:600; letter-spacing:.12em; line-height:1.7; }
.brand-page-title { font-size:clamp(2.6rem,4.9vw,4.7rem); font-weight:600; letter-spacing:-.055em; line-height:1.16; margin:0 0 26px; color:#203d42; }
.brand-page-title em { color:#628778; font-style:normal; }
.brand-page-lead { max-width:490px; color:#5b7470; font-size:15px; line-height:1.9; margin:0; }
.brand-section { padding:70px 0 88px; }
.brand-btn, .brand-btn-outline { display:inline-flex; align-items:center; justify-content:center; gap:24px; padding:14px 22px; min-height:48px; border:1px solid #275b56; border-radius:5px; background:#275b56; color:#fff; font-size:13px; font-weight:600; line-height:1.5; cursor:pointer; transition:background .2s,color .2s,transform .2s; }
.brand-btn:hover { color:#fff; background:#193e3c; transform:translateY(-2px); }
.brand-btn-outline { background:transparent; color:#275b56; border-color:#b9cdc0; }
.brand-btn-outline:hover { color:#193e3c; background:#edf3eb; border-color:#7ca58b; transform:translateY(-2px); }
.brand-btn > span, .brand-btn-outline > span { font-size:18px; line-height:1; }
.brand-panel { background:white; border:1px solid #d6e2db; border-radius:8px; padding:32px; box-shadow:0 10px 35px #203d4205; }
.brand-empty { text-align:center; padding:80px 32px; border:1px solid #d6e2db; background:linear-gradient(135deg,#fff,#f4f7f0); border-radius:8px; }
.brand-empty h2, .brand-empty h3 { color:#203d42; font-size:clamp(1.5rem,3vw,2.2rem); font-weight:550; margin:0 0 20px; letter-spacing:-.03em; }
.brand-empty p:not(.brand-eyebrow) { color:#657b7c; max-width:480px; line-height:1.9; font-size:14px; margin:0 auto 25px; }
.brand-chip { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:42px; padding:9px 17px; border:1px solid #d6e2db; border-radius:50px; color:#526e61; background:#fff; font-size:12px; line-height:1.6; transition:background .2s,border-color .2s; }
.brand-chip > span { opacity:.75; font-size:11px; }
.brand-chip:hover { background:#edf3eb; color:#275b56; border-color:#94b69c; }
.brand-chip.is-active { color:#fff; background:#275b56; border-color:#275b56; }
.brand-pagination { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:48px; }
.brand-pagination a { display:inline-flex; justify-content:center; align-items:center; min-height:42px; min-width:42px; padding:9px 14px; color:#365e4b; font-size:12px; border:1px solid #d6e2db; border-radius:4px; background:#fff; }
.brand-pagination a:hover { background:#edf3eb; }.brand-pagination a.is-active { background:#275b56; color:#fff; border-color:#275b56; }
.brand-richtext { color:#4f6561; line-height:1.95; font-size:15px; overflow-wrap:anywhere; }
.brand-richtext :is(h1,h2,h3,h4,h5,h6) { color:#203d42; margin:1.6em 0 .7em; font-weight:600; letter-spacing:-.025em; }
.brand-richtext h1 { font-size:2rem; }.brand-richtext h2 { font-size:1.7rem; }.brand-richtext h3 { font-size:1.35rem; }
.brand-richtext p { margin:0 0 1.25em; }.brand-richtext a { color:#24614f; text-decoration:underline; text-underline-offset:3px; }
.brand-richtext img, .brand-richtext video { max-width:100% !important; height:auto !important; border-radius:5px; }
.brand-richtext iframe { max-width:100%; }
.brand-richtext blockquote { margin:26px 0; padding:18px 24px; border-left:3px solid #8caf95; background:#f2f6ef; }
.brand-richtext pre { max-width:100%; overflow:auto; padding:18px; background:#edf2ed; border-radius:5px; }
.brand-richtext table { display:block; max-width:100%; overflow-x:auto; margin:24px 0; border-collapse:collapse; }
.brand-richtext td, .brand-richtext th { border:1px solid #d6e2db; padding:10px 14px; min-width:90px; }
.brand-richtext ul, .brand-richtext ol { padding-left:1.5rem; }
.brush-interior footer { padding:48px 0; background:#f3f6f0; border-color:#d6e2db; }
.brush-interior footer p { color:#61756b; font-size:13px; line-height:1.8; }
.brush-interior footer a { overflow-wrap:anywhere; }
.brush-interior footer h5 { font-size:18px; }.brush-interior footer h6 { font-size:14px; }
.brand-page [data-page-reveal] { opacity:1; }
.brand-page [data-page-reveal].is-page-visible { animation:brand-page-enter .7s cubic-bezier(.2,.7,.2,1) both; }
@keyframes brand-page-enter { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@media(max-width:991px) {
    .brand-page-hero { padding-bottom:58px; }.brand-breadcrumb { margin-bottom:36px; }
    .brand-page-title { font-size:clamp(2.5rem,6vw,3.9rem); }
    .brand-section { padding:54px 0 64px; }.brand-page-hero::after { width:350px; height:350px; }
    .brush-interior .navbar-nav .nav-link[aria-current="page"] { border-color:transparent; background:#f0f5ed; border-radius:4px; }
}
@media(max-width:639px) {
    .brand-page-hero { padding:25px 0 44px; }.brand-breadcrumb { font-size:11px; margin-bottom:33px; gap:9px; }
    .brand-page-title { font-size:clamp(2rem,9vw,3.15rem); margin-bottom:22px; }
    .brand-eyebrow { font-size:10px; letter-spacing:.09em; margin-bottom:16px; }
    .brand-page-lead { font-size:13px; line-height:1.9; }.brand-section { padding:40px 0 54px; }
    .brand-btn, .brand-btn-outline { padding:12px 17px; font-size:12px; gap:17px; }
    .brand-panel { padding:22px; }.brand-empty { padding:50px 22px; }.brand-empty p:not(.brand-eyebrow) { font-size:13px; }
    .brand-chip { padding:8px 13px; font-size:11px; gap:7px; }.brand-richtext { font-size:14px; }
    .brand-pagination { margin-top:32px; gap:7px; }.brand-pagination a { min-width:38px; min-height:40px; padding:9px 11px; }
    .brush-interior footer { padding:38px 0; }
}
@media(prefers-reduced-motion:reduce) {
    html:has(.brush-interior) { scroll-behavior:auto; }
    .brand-page *, .brand-page *::before, .brand-page *::after { animation:none !important; transition:none !important; }
}
