
:root{--ivory:#f7f4ec;--white:#fffef9;--ink:#28241d;--soft:#5f594c;--silkteal:#1f6b66;--silkteal-d:#154a46;--thread:#b5762f;--weft:#8a4a5e;--line:rgba(40,36,29,.14)}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{background:var(--ivory);color:var(--ink);font-family:'Assistant',system-ui,sans-serif;font-size:16.5px;line-height:1.74}
h1,h2,h3{font-family:'Cardo',serif;font-weight:700;line-height:1.16}
em{font-style:italic;color:var(--weft)}a{color:var(--silkteal-d)}p{margin:0 0 1.1em}
.wrap{max-width:1050px;margin:0 auto;padding:0 22px}
.eyebrow{font-size:11.5px;letter-spacing:3px;text-transform:uppercase;color:var(--thread);margin-bottom:12px;font-weight:700}
section{padding:66px 0;border-top:1px solid var(--line)}
section h2{font-size:clamp(26px,3.9vw,37px);margin-bottom:17px;max-width:750px}
.lead{font-size:17.8px;max-width:780px}.muted{color:var(--soft)}
.strip{background:var(--silkteal-d);color:var(--ivory);text-align:center;font-size:12.5px;font-weight:700;letter-spacing:1.2px;padding:9px 14px;text-transform:uppercase}
.strip a{color:#ecc98f}
nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;max-width:1150px;margin:0 auto;flex-wrap:wrap;background:var(--white)}
.logo{font-family:'Cardo',serif;font-size:23px;color:var(--ink);text-decoration:none;font-weight:700}.logo span{color:var(--thread)}
.navlinks{display:flex;gap:9px;flex-wrap:wrap}
.btn{display:inline-block;padding:11px 22px;border-radius:5px;text-decoration:none;font-weight:700;font-size:14.5px;transition:transform .16s ease}
.btn:hover{transform:translateY(-2px)}
.btn-teal{background:var(--silkteal);color:#fff;box-shadow:0 5px 18px rgba(31,107,102,.3)}
.btn-weft{background:var(--weft);color:#fff}.btn-line{border:1.5px solid var(--ink);color:var(--ink)}.btn-wa{background:#1f7a4d;color:#fff}
.hero{padding:62px 0 52px;border-top:none;background:var(--white)}
.hero h1{font-size:clamp(31px,5.2vw,50px);max-width:870px;margin-bottom:18px}
.hero .lead{margin-bottom:28px}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}
.stats{display:flex;background:var(--ivory);border:1.5px solid var(--silkteal);border-radius:8px;overflow:hidden;max-width:740px;flex-wrap:wrap}
.stats div{flex:1 1 148px;padding:15px 18px;border-right:1px solid var(--line)}.stats div:last-child{border-right:none}
.stats b{display:block;font-family:'Cardo',serif;font-size:23px;color:var(--silkteal-d)}
.stats small{font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--soft)}
.weave{margin-top:42px}.weave svg{width:100%;height:auto;display:block}
.weave .cap{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--soft);margin-top:7px;text-align:right}
.grid{display:grid;gap:14px;margin-top:26px}.g3{grid-template-columns:repeat(auto-fit,minmax(246px,1fr))}
.card{background:var(--white);border:1px solid var(--line);border-radius:8px;padding:20px;border-bottom:3px solid var(--silkteal)}
.card h3{font-size:17.5px;margin-bottom:7px}
.card .tag{display:inline-block;font-size:9.5px;letter-spacing:2px;text-transform:uppercase;color:var(--weft);font-weight:700;margin-bottom:8px}
.card p{color:var(--soft);font-size:14.7px;margin-bottom:0}
table{width:100%;border-collapse:collapse;margin-top:22px;font-size:14.7px;background:var(--white);border:1px solid var(--line)}
th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{font-size:10.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--silkteal-d);background:#ebe7db}
td b{color:var(--silkteal-d)}.tablewrap{overflow-x:auto}
details{border:1px solid var(--line);border-radius:8px;margin-bottom:9px;background:var(--white)}
summary{cursor:pointer;padding:15px 42px 15px 18px;font-weight:700;font-size:15px;list-style:none;position:relative}
summary::after{content:"+";position:absolute;right:18px;top:9px;font-family:'Cardo',serif;font-size:22px;color:var(--weft)}
details[open] summary::after{content:"–"}
details .a{padding:0 18px 16px;color:var(--soft);font-size:14.7px}
.band{background:var(--silkteal-d);color:#fff;border-radius:10px;padding:36px 30px;text-align:center;margin-top:12px}
.band h2{color:#fff;margin-bottom:10px}.band em{color:#ecc98f}
.band p{max-width:580px;margin:0 auto 20px;color:#cfe0dc}
.contact-list{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
footer{border-top:1.5px solid var(--silkteal);padding:34px 0 48px;font-size:13.5px;color:var(--soft);background:var(--white)}
footer .cols{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
footer h4{font-family:'Cardo',serif;color:var(--ink);font-size:15.5px;margin-bottom:8px;font-weight:700}
footer a{color:var(--soft);text-decoration:none;display:block;padding:2.5px 0}footer a:hover{color:var(--weft)}
.legal{margin-top:26px;padding-top:15px;border-top:1px solid var(--line);font-size:12px}
@media (max-width:640px){section{padding:46px 0}.band{padding:26px 16px}}
@media (prefers-reduced-motion:reduce){.btn:hover{transform:none}html{scroll-behavior:auto}}
