/* Glenwood Bylaws & Policies
   Everything is scoped under #gwb so the site theme can't override it (and it can't affect the theme).
   Layout responds to the width of the content area it sits in (container queries),
   so it works in full-width pages, pages with a sidebar, laptops and phones. */

#gwb{
	--gw-ink:#1C2521; --gw-ink-2:#3A4640; --gw-ink-3:#4F5C55; --gw-ink-4:#5D6B63;
	--gw-pine:#2B5A46; --gw-pine-dk:#1C3D2F; --gw-pine-lt:#E3ECE6;
	--gw-wheat:#C9962E; --gw-wheat-lt:#F5EBD6; --gw-wheat-ink:#6B4A0E;
	--gw-ground:#F6F4EE; --gw-sand:#EAE6DA; --gw-line:#E2DED3; --gw-line-2:#CFC8B6; --gw-card:#FFFFFF;
	--gw-serif:'Source Serif 4',Georgia,'Times New Roman',serif;
	--gw-sans:'Public Sans',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
	--gw-mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
	container-type:inline-size;
	container-name:gwb;
	display:block; width:100%; max-width:1200px; margin:0 auto;
	font-family:var(--gw-sans); font-size:16px; font-weight:400; line-height:1.5; color:var(--gw-ink);
	text-align:left; -webkit-font-smoothing:antialiased;
}

/* ---- Neutralise theme styles inside the library ---- */
#gwb *,#gwb *::before,#gwb *::after{box-sizing:border-box}
#gwb h2,#gwb h3,#gwb p,#gwb ul,#gwb li,#gwb b,#gwb em,#gwb small,#gwb label,#gwb span{
	margin:0;padding:0;border:0;background:none;font-family:inherit;font-size:inherit;font-weight:inherit;font-style:normal;
	line-height:inherit;letter-spacing:normal;text-transform:none;color:inherit;text-shadow:none}
#gwb b{font-weight:700}
#gwb li{list-style:none}
#gwb li::before,#gwb li::after{content:none;display:none}
#gwb a{text-decoration:none;box-shadow:none;border:0;transition:none}
#gwb button,#gwb input{font-family:inherit;font-size:inherit;letter-spacing:normal;text-transform:none;line-height:normal;
	margin:0;box-shadow:none;text-shadow:none;min-width:0;max-width:none;width:auto;height:auto;float:none}
#gwb button{background:transparent;border:0;border-radius:0;padding:0;color:inherit;cursor:pointer;font-weight:inherit}
#gwb svg{display:inline-block;vertical-align:middle;flex-shrink:0}
#gwb [hidden]{display:none!important}
#gwb :focus-visible{outline:3px solid var(--gw-wheat);outline-offset:2px;border-radius:6px}
#gwb:not(.gw-hasjs) .gw-needs-js{display:none!important}

/* ---- Hero ---- */
#gwb .gw-hero{background:var(--gw-sand);border:1px solid #DDD7C8;border-radius:16px;padding:32px 36px;display:flex;flex-direction:column;gap:20px}
#gwb .gw-hero-top{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
#gwb .gw-intro{display:flex;flex-direction:column;gap:10px;max-width:640px}
#gwb .gw-h1{font-family:var(--gw-serif);font-weight:600;font-size:44px;line-height:1.08;letter-spacing:-.02em;color:var(--gw-ink)}
#gwb .gw-lede{font-size:17px;line-height:1.55;color:var(--gw-ink-2)}
#gwb .gw-stats{display:flex;gap:12px;flex-shrink:0}
#gwb .gw-stat{background:var(--gw-card);border:1px solid #DDD7C8;border-radius:12px;padding:12px 18px;display:flex;flex-direction:column;min-width:112px}
#gwb .gw-stat b{font-family:var(--gw-serif);font-size:30px;font-weight:600;color:var(--gw-pine);line-height:1.2}
#gwb .gw-stat span{font-size:13px;color:var(--gw-ink-3)}

#gwb .gw-search{display:flex;flex-direction:column;gap:8px;max-width:760px}
#gwb .gw-search label{font-size:14px;font-weight:600;color:var(--gw-ink)}
#gwb .gw-search-box{display:flex;align-items:center;gap:12px;background:var(--gw-card);border:1.5px solid #9BA89F;border-radius:12px;padding:0 6px 0 18px;min-height:56px}
#gwb .gw-search-box:focus-within{border-color:var(--gw-pine);box-shadow:0 0 0 3px rgba(43,90,70,.18)}
#gwb .gw-search-box input.gw-q{flex:1 1 auto;border:0;outline:none;background:transparent;font-size:17px;color:var(--gw-ink);height:52px;padding:0;border-radius:0;-webkit-appearance:none;appearance:none}
#gwb .gw-search-box input.gw-q::-webkit-search-cancel-button{display:none}
#gwb .gw-search-box input.gw-q::placeholder{color:#6B776F;opacity:1}
#gwb .gw-clear-q{display:none;width:44px;height:44px;border-radius:8px;color:var(--gw-ink-3);align-items:center;justify-content:center}
#gwb .gw-clear-q.is-on{display:flex}
#gwb .gw-clear-q:hover{background:var(--gw-ground)}

#gwb .gw-popular{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
#gwb .gw-popular > span{font-size:14px;color:var(--gw-ink-3);margin-right:4px}
#gwb .gw-chip{font-size:14px;font-weight:500;color:var(--gw-pine-dk);background:var(--gw-card);border:1px solid var(--gw-line-2);border-radius:999px;padding:0 16px;min-height:40px;white-space:nowrap}
#gwb .gw-chip:hover{border-color:var(--gw-pine);background:#FBFAF7}

/* ---- Layout ---- */
#gwb .gw-main{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:start;margin-top:32px}
#gwb:not(.gw-hasjs) .gw-main{grid-template-columns:minmax(0,1fr)}

/* ---- Filters ---- */
#gwb .gw-filters{position:sticky;top:110px;display:flex;flex-direction:column;gap:26px}
#gwb .gw-fgroup{display:flex;flex-direction:column;gap:10px}
#gwb .gw-flabel{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gw-ink-3)}
#gwb .gw-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;background:var(--gw-sand);border-radius:10px;padding:4px}
#gwb .gw-seg button{min-height:40px;border-radius:7px;font-size:14px;font-weight:600;color:var(--gw-ink-2);text-align:center}
#gwb .gw-seg button[aria-pressed="true"]{background:var(--gw-card);color:var(--gw-pine-dk);box-shadow:0 1px 2px rgba(28,37,33,.14)}
#gwb .gw-cats{display:flex;flex-direction:column;gap:2px}
#gwb .gw-cat{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 14px;border-radius:8px;text-align:left;font-size:15px;font-weight:500;color:var(--gw-ink)}
#gwb .gw-cat:hover{background:#EFECE4}
#gwb .gw-cat[aria-pressed="true"]{background:var(--gw-pine-lt);color:var(--gw-pine-dk);font-weight:700}
#gwb .gw-cat small{font-size:13px;color:var(--gw-ink-4);font-variant-numeric:tabular-nums;font-weight:500}
#gwb .gw-past{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:var(--gw-card);border:1px solid var(--gw-line);border-radius:10px;cursor:pointer}
#gwb .gw-past input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--gw-pine);flex-shrink:0;-webkit-appearance:auto;appearance:auto}
#gwb .gw-past > span{display:flex;flex-direction:column;gap:2px}
#gwb .gw-past b{font-size:15px;color:var(--gw-ink)}
#gwb .gw-past em{font-size:13px;line-height:1.45;color:var(--gw-ink-3)}

#gwb .gw-help{padding:20px;background:var(--gw-pine-dk);color:#E8EFEA;border-radius:12px;display:flex;flex-direction:column;gap:8px;font-size:14px}
#gwb .gw-help b{font-family:var(--gw-serif);font-size:20px;font-weight:600;color:#fff}
#gwb .gw-help a{color:#fff;font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:3px}
#gwb .gw-help a:hover{color:#fff;text-decoration-thickness:2px}
#gwb .gw-help-inline{display:none;margin-top:4px;font-size:15px}
#gwb:not(.gw-hasjs) .gw-help-inline{display:flex}

/* ---- Results ---- */
#gwb .gw-results{display:flex;flex-direction:column;gap:34px;min-width:0}
#gwb .gw-rhead{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #DDD7C8;padding-bottom:10px;min-height:46px}
#gwb .gw-status{font-size:15px;color:var(--gw-ink-2)}
#gwb .gw-status strong{color:var(--gw-ink);font-weight:700}
#gwb .gw-reset{padding:10px 0;font-size:14px;font-weight:600;color:var(--gw-pine);text-decoration:underline;white-space:nowrap}
#gwb .gw-group{display:flex;flex-direction:column;gap:8px}
#gwb .gw-group-h{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
#gwb .gw-group-h h3{font-family:var(--gw-serif);font-size:26px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--gw-ink)}
#gwb .gw-gcount{font-size:14px;color:var(--gw-ink-4)}
#gwb .gw-blurb{font-size:15px;color:var(--gw-ink-3);margin-bottom:6px}
#gwb .gw-list{background:var(--gw-card);border:1px solid var(--gw-line);border-radius:14px;overflow:hidden}
#gwb .gw-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:20px;align-items:center;padding:14px 20px;border-top:1px solid #EEEBE3;background:var(--gw-card)}
#gwb:not(.gw-hasjs) .gw-row:first-child,#gwb .gw-row.is-first{border-top:0}
#gwb .gw-row.is-past{background:#FBFAF7}
#gwb .gw-code{font-family:var(--gw-mono);font-size:13px;font-weight:500;text-align:center;padding:6px 8px;border-radius:6px;color:var(--gw-pine-dk);background:var(--gw-pine-lt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#gwb .gw-row.is-policy .gw-code{color:var(--gw-wheat-ink);background:var(--gw-wheat-lt)}
#gwb .gw-body{display:flex;flex-direction:column;gap:3px;min-width:0}
#gwb .gw-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#gwb .gw-title{font-size:16px;font-weight:600;line-height:1.35;color:var(--gw-ink)}
#gwb a.gw-title:hover{text-decoration:underline;color:var(--gw-pine-dk)}
#gwb .gw-row.is-past .gw-title{color:var(--gw-ink-3)}
#gwb .gw-meta{font-size:13px;color:var(--gw-ink-4)}
#gwb .gw-pill{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:3px 10px;color:var(--gw-ink-3);background:#EEEBE3;white-space:nowrap;line-height:1.4}
#gwb .gw-pill.is-proposed{color:#7A4F06;background:#FBEFD5}
#gwb .gw-pdf{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--gw-line-2);border-radius:8px;font-size:14px;font-weight:600;color:var(--gw-pine-dk);white-space:nowrap;background:var(--gw-card)}
#gwb .gw-pdf:hover{border-color:var(--gw-pine);background:#F3F7F4;color:var(--gw-pine-dk)}
#gwb .gw-empty{padding:44px 24px;background:var(--gw-card);border:1px dashed var(--gw-line-2);border-radius:14px;text-align:center;display:flex;flex-direction:column;gap:8px}
#gwb .gw-empty b{font-family:var(--gw-serif);font-size:22px;font-weight:600}
#gwb .gw-empty span{font-size:15px;color:var(--gw-ink-3)}
#gwb .gw-updated{font-size:13px;color:var(--gw-ink-4)}

/* ---- Financial documents: "Most recent" cards ---- */
#gwb .gw-latest-wrap{margin-top:32px;display:flex;flex-direction:column;gap:12px}
#gwb .gw-latest-h{font-family:var(--gw-serif);font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.01em;color:var(--gw-ink)}
#gwb .gw-latest{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
#gwb .gw-card{background:var(--gw-card);border:1px solid var(--gw-line);border-top:4px solid var(--gw-pine);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
#gwb .gw-card-k{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gw-ink-3)}
#gwb .gw-card-t{font-family:var(--gw-serif);font-size:19px;font-weight:600;line-height:1.25;color:var(--gw-ink)}
#gwb a.gw-card-t:hover{text-decoration:underline;color:var(--gw-pine-dk)}
#gwb .gw-card-m{font-size:13px;color:var(--gw-ink-4);min-height:1em}
#gwb .gw-card .gw-pdf{margin-top:auto;min-height:40px}
#gwb .gw-card .gw-card-m:empty{display:none}

/* ---- Agendas & Minutes ---- */
#gwb .gw-latest-2{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
#gwb .gw-card.is-next{border-top-color:var(--gw-wheat);background:#FFFCF5}
#gwb .gw-row.is-meeting{grid-template-columns:64px minmax(0,1fr) auto}
#gwb .gw-row.is-upcoming{background:#FFFCF5}
#gwb .gw-date{display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:58px;border-radius:10px;background:var(--gw-pine-lt);color:var(--gw-pine-dk);line-height:1}
#gwb .gw-date b{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
#gwb .gw-date i{font-style:normal;font-family:var(--gw-serif);font-size:24px;font-weight:600;margin-top:3px}
#gwb .gw-row.is-upcoming .gw-date{background:var(--gw-wheat-lt);color:var(--gw-wheat-ink)}
#gwb .gw-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
#gwb .gw-acts .gw-pdf{padding:0 14px}
#gwb .gw-pending{font-size:13px;color:var(--gw-ink-4);font-style:normal;white-space:nowrap;padding:0 4px}
#gwb .gw-card .gw-pending{margin-top:auto;padding:0}

/* ---- Medium: laptop with narrow content area, tablet (filters move above the list) ---- */
@container gwb (max-width: 900px){
	#gwb .gw-main{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px}
	#gwb .gw-filters{position:static;gap:16px}
	#gwb .gw-seg{max-width:360px}
	#gwb .gw-cats{flex-direction:row;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
	#gwb .gw-cat{width:auto;flex-shrink:0;border:1px solid var(--gw-line-2);border-radius:999px;background:var(--gw-card);padding:0 16px;white-space:nowrap}
	#gwb .gw-cat[aria-pressed="true"]{border-color:var(--gw-pine);background:var(--gw-pine-lt)}
	#gwb .gw-help-side{display:none}
	#gwb .gw-help-inline{display:flex}
	#gwb .gw-hero{padding:28px}
	#gwb .gw-h1{font-size:38px}
}

/* ---- Small: phones ---- */
@container gwb (max-width: 600px){
	#gwb .gw-hero{padding:22px 18px;border-radius:14px;gap:16px}
	#gwb .gw-hero-top{flex-direction:column;align-items:stretch;gap:16px}
	#gwb .gw-h1{font-size:32px}
	#gwb .gw-lede{font-size:16px}
	#gwb .gw-stats{gap:10px}
	#gwb .gw-stat{flex:1;min-width:0;padding:10px 14px}
	#gwb .gw-stat b{font-size:24px}
	#gwb .gw-search-box{padding-left:14px}
	#gwb .gw-search-box input.gw-q{font-size:16px}
	#gwb .gw-popular{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-right:-18px;padding-right:18px}
	#gwb .gw-popular .gw-chip{flex-shrink:0}
	#gwb .gw-seg{max-width:none}
	#gwb .gw-group-h h3{font-size:22px}
	#gwb .gw-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"code pdf" "body body";gap:8px 12px;padding:14px 16px}
	#gwb .gw-code{grid-area:code;justify-self:start;max-width:100%}
	#gwb .gw-body{grid-area:body}
	#gwb .gw-pdf{grid-area:pdf;min-height:40px;padding:0 12px}
	#gwb .gw-rhead{flex-wrap:wrap}
	#gwb .gw-row > span:last-child:empty{display:none}
	#gwb .gw-row.is-meeting{grid-template-columns:52px minmax(0,1fr);grid-template-areas:"date body" ". acts";gap:10px 14px}
	#gwb .gw-date{grid-area:date;width:52px;height:54px}
	#gwb .gw-row.is-meeting .gw-body{grid-area:body;align-self:center}
	#gwb .gw-acts{grid-area:acts;justify-content:flex-start}
	#gwb .gw-acts .gw-pdf{min-height:40px;padding:0 12px}
	#gwb .gw-latest{grid-template-columns:minmax(0,1fr)}
	#gwb .gw-card{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:12px}
	#gwb .gw-card-k{flex-basis:100%}
	#gwb .gw-card-t{flex:1 1 60%;font-size:17px}
	#gwb .gw-card-m{order:3;flex-basis:100%}
	#gwb .gw-card .gw-pdf{margin-top:0}
}

@media (prefers-reduced-motion:no-preference){
	#gwb .gw-chip,#gwb .gw-cat,#gwb .gw-pdf,#gwb .gw-seg button{transition:background-color .15s,border-color .15s}
}
@media print{
	#gwb .gw-needs-js,#gwb .gw-help{display:none!important}
	#gwb .gw-main{grid-template-columns:1fr}
}
