.kn-team-page{color:#163f3a;background:radial-gradient(ellipse at 85% 0%,#e4f0ee 0%,transparent 36rem),linear-gradient(145deg,#fcfaf5,#f4f7f1);font-family:KoHo,system-ui,sans-serif}
.kn-team-shell{width:min(100% - 36px,1260px);margin-inline:auto;padding-block:clamp(44px,7vw,104px) clamp(46px,8vw,100px)}
.kn-team-hero{position:relative;isolation:isolate;overflow:hidden;padding:0 0 clamp(22px,5vw,52px);border-bottom:1px solid #c6d9d1}
.kn-team-hero::after{content:"";position:absolute;z-index:-1;inset:4% 1% 0 auto;width:min(34%,390px);background:url("/assets/Kinara_sailboat_clean.png") center right / contain no-repeat;opacity:.11;pointer-events:none}
.kn-team-eyebrow{margin:0 0 12px;text-transform:uppercase;letter-spacing:.14em;font-size:.83rem;font-weight:700;color:#326a61}
.kn-team-hero h1{font-size:clamp(2.5rem,6vw,5.1rem);line-height:1.02;max-width:15ch;letter-spacing:-.045em;margin:0;color:#173f3b}
.kn-team-hero p:not(.kn-team-eyebrow){font-size:clamp(1.1rem,2.3vw,1.35rem);line-height:1.55;max-width:48ch;margin:20px 0}
.kn-team-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.kn-team-nav a,.kn-team-services a{display:inline-flex;align-items:center;min-height:44px;color:#0e524b;border:1px solid #bdd1c7;background:#fff9;border-radius:999px;padding:6px 15px;text-decoration:none;font-weight:700}
.kn-team-nav a:hover,.kn-team-services a:hover{background:#e3efea}
.kn-team-page a:focus-visible,.kn-team-page summary:focus-visible{outline:3px solid #176b63;outline-offset:3px}
.kn-team-dept{margin-top:clamp(30px,6vw,60px);scroll-margin-top:110px}
.kn-team-dept h2{font-size:clamp(1.55rem,3.5vw,2.45rem);letter-spacing:-.02em;margin:0 0 17px;color:#163f3a}
.kn-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,2vw,24px);align-items:start}
.kn-team-card{overflow:hidden;min-width:0;border:1px solid #cbdad2;border-radius:18px;background:#ffffffe0;box-shadow:0 10px 28px #2b594614}
.kn-team-photo{display:block;width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;object-position:center 25%;background:#dfece6}
.kn-team-card-body{padding:clamp(12px,2vw,20px)}
.kn-team-card h3{font-size:clamp(1.12rem,1.7vw,1.46rem);margin:0;line-height:1.15;color:#173f3b;overflow-wrap:anywhere}
.kn-team-role{margin:6px 0 12px;color:#365e57;line-height:1.4}
.kn-team-card details{border-top:1px solid #dce9e2;margin-top:8px}
.kn-team-card summary{min-height:44px;padding-block:11px;color:#0e524b;font-weight:700;cursor:pointer;line-height:1.35}
.kn-team-card details h4{margin:11px 0 5px;font-size:.94rem;color:#173f3b}
.kn-team-card details p{margin:0 0 12px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere}
.kn-team-card ul{padding-inline-start:1.2rem;margin:0 0 12px}
.kn-team-card details a{color:#0e524b}
.kn-team-services{margin-top:42px}
.kn-team-services h2{margin:0 0 12px}
.kn-team-services ul{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:0}
@media(max-width:950px){.kn-team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.kn-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kn-team-shell{width:calc(100% - 26px)}.kn-team-card details p{font-size:.94rem}}
@media(max-width:360px){.kn-team-grid{grid-template-columns:1fr}}
.kn-team-page .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
