:root{--wine:#782d3e;--ink:#282b27;--muted:#697069;--line:#e3e5df;--paper:#f8f9f5;--green:#254d43}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b36a29;outline-offset:4px}.skip{position:fixed;top:-80px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}.sidebar{position:fixed;width:254px;height:100vh;background:white;border-right:1px solid var(--line);padding:35px 22px;display:flex;flex-direction:column}.brand{font-family:Georgia,serif;font-size:49px;letter-spacing:-3px;line-height:1;color:var(--wine);padding:0 16px}.brand>span{font:12px Arial;letter-spacing:2px;margin-left:9px}.brand small{display:block;font:10px Arial;letter-spacing:2.6px;color:var(--muted);margin-top:15px}.nav-label{font-size:11px;letter-spacing:1.7px;color:#777d75;margin:52px 16px 15px}nav{display:grid;gap:7px}nav a{display:flex;gap:13px;align-items:center;padding:13px 14px;font-size:19px;border-radius:6px;color:#596159}nav a span{font-size:14px}nav a.active{background:#f4e9ec;color:var(--wine);font-weight:600}nav a:hover{background:#f5f5f1}.sidebar-foot{margin-top:auto;padding:24px 16px 0}.sidebar-foot p{font-family:Georgia,serif;font-size:20px;line-height:1.4;color:var(--green)}.sidebar-foot a{font-size:13px}.edition{font-size:11px;color:#737870;display:block;margin-top:25px}.shell{margin-left:254px}header{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 46px;background:#fff;font-size:13px;color:var(--muted)}header a{color:var(--wine);font-weight:600}main{max-width:1450px;margin:auto;padding:38px 46px 60px;min-height:75vh}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--wine);text-transform:uppercase}.hero{background:#f0eee6;border:1px solid #e4e1d7;display:grid;grid-template-columns:1.25fr 1fr;min-height:310px;overflow:hidden;border-radius:10px}.hero-copy{padding:35px 38px}.hero h1{font:normal clamp(34px,3.5vw,53px)/1.1 Georgia,serif;letter-spacing:-1.5px;margin:17px 0}.hero h1 em{font-weight:normal;color:var(--wine)}.hero p{font-size:15px;max-width:400px;color:#555d55;margin:0 0 24px}.hero figure{margin:0;position:relative;min-height:300px}.hero img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 47%}.hero figcaption{position:absolute;bottom:0;padding:28px 18px 13px;background:linear-gradient(transparent,#0009);color:white;width:100%;font-size:11px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--wine);color:white;border:1px solid var(--wine);padding:11px 17px;border-radius:5px;font-size:14px;font-weight:600}.btn.secondary{background:white;color:var(--wine)}.section-head{display:flex;justify-content:space-between;align-items:end;margin:34px 0 18px;gap:20px}.section-head h2{font:normal 27px Georgia,serif;margin:0}.section-head a{font-size:13px;color:var(--wine)}.section-head p{font-size:14px;color:var(--muted);margin:5px 0}.path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.path{background:white;border:1px solid var(--line);border-radius:7px;padding:20px 17px;transition:transform .15s,border-color .15s}.path:hover{transform:translateY(-3px);border-color:var(--wine)}.path .symbol{color:var(--wine);font-size:26px}.path h3{font-size:15px;margin:12px 0 6px}.path p{font-size:13px;color:var(--muted);margin:0;line-height:1.5}.path .go{display:block;margin-top:18px;font-size:12px;color:var(--wine)}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.resource{background:white;border:1px solid var(--line);border-radius:7px;padding:23px;display:flex;flex-direction:column;align-items:start;text-align:left;width:100%;color:var(--ink)}.resource:hover{border-color:var(--wine)}.tag{display:inline-block;padding:4px 8px;border-radius:3px;font-size:11px;letter-spacing:.5px;background:#e9f0eb;color:var(--green)}.resource h3{font:normal 22px/1.25 Georgia,serif;margin:18px 0 14px}.resource .meta{font-size:12px;color:var(--muted);margin-top:auto;padding-top:10px}.resource .resource-foot{display:flex;justify-content:space-between;width:100%;border-top:1px solid var(--line);margin-top:18px;padding-top:14px;font-size:12px;color:var(--wine)}.intro h1{font:normal 40px/1.2 Georgia,serif;margin:10px 0 12px}.intro p{max-width:730px;color:var(--muted)}.filters{margin:27px 0 22px;padding:20px;background:white;border:1px solid var(--line);border-radius:7px;display:grid;grid-template-columns:1.6fr 1fr 1.5fr 1fr;gap:13px}.filters label{font-size:12px;color:var(--muted)}.filters input,.filters select{width:100%;min-height:44px;border:1px solid #cdd2ca;border-radius:4px;background:white;padding:8px;color:var(--ink);font-size:14px;margin-top:5px}.result-bar{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);margin:20px 0}.link-button{background:none;border:0;color:var(--wine);font-size:13px;text-decoration:underline}.notice{padding:16px 20px;background:#eff2ed;border-left:3px solid var(--green);font-size:14px;margin:25px 0;color:#455249}.empty{padding:40px;border:1px dashed #a8b2a7;text-align:center;grid-column:1/-1}.territories{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}.territory{background:white;border:1px solid var(--line);border-radius:7px;padding:30px}.territory h2{font:30px Georgia;margin:8px 0 18px}.territory p{color:var(--muted);font-size:15px}.territory small{display:block;color:var(--muted);margin:20px 0}.techniques{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.technique{padding:25px;background:white;border:1px solid var(--line);border-top:4px solid var(--wine);border-radius:6px}.technique h2{font:26px Georgia}.technique p{font-size:14px;color:var(--muted)}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0}.roadmap article{border:1px solid var(--line);background:white;padding:26px;border-radius:6px}.roadmap h2{font:25px Georgia}.roadmap p{font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:30px 46px;display:grid;grid-template-columns:120px 1fr auto;gap:24px;background:white;color:var(--muted);font-size:12px}footer strong{font:30px Georgia;color:var(--wine)}footer strong span{font:10px Arial}footer p{margin:0;max-width:660px}footer small{grid-column:2/4;font-size:10px}dialog{border:1px solid var(--line);border-radius:10px;width:min(650px,92vw);padding:38px;color:var(--ink);max-height:88vh}dialog::backdrop{background:#14211ac0}.close{position:absolute;top:10px;right:15px;border:0;background:none;font-size:28px;color:var(--ink)}dialog h2{font:30px/1.2 Georgia;margin:20px 0}dialog p{color:var(--muted)}dialog dl{display:grid;grid-template-columns:110px 1fr;font-size:14px;gap:10px}dialog dt{color:var(--muted)}dialog dd{margin:0;overflow-wrap:anywhere}dialog .btn{margin-top:20px}@media(min-width:1600px){main{padding-top:50px}.hero{min-height:360px}}@media(max-width:1100px){.sidebar{width:220px;padding:30px 12px}.shell{margin-left:220px}main{padding:30px 25px}.hero-copy{padding:28px}.path-grid{grid-template-columns:repeat(2,1fr)}.resource-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}header{padding:0 25px}.techniques,.roadmap{grid-template-columns:1fr 1fr}}@media(max-width:700px){.sidebar{position:static;width:auto;height:auto;padding:18px}.brand{font-size:36px;padding:0}.brand small,.nav-label,.sidebar-foot{display:none}nav{display:flex;overflow-x:auto;margin-top:20px;gap:5px}nav a{white-space:nowrap;padding:9px;font-size:16px}nav a span{font-size:12px}.shell{margin:0}header{height:48px;padding:0 18px;font-size:11px}header>span{max-width:190px}main{padding:22px 18px 40px}.hero{grid-template-columns:1fr}.hero-copy{padding:25px}.hero h1{font-size:38px}.hero figure{min-height:200px}.hero img{object-position:center 44%}.path-grid,.resource-grid,.territories,.techniques,.roadmap{grid-template-columns:1fr}.path-grid{grid-template-columns:1fr 1fr}.path{padding:16px}.filters{grid-template-columns:1fr}.section-head h2{font-size:25px}.section-head a{font-size:12px}.intro h1{font-size:34px}footer{padding:24px 18px;grid-template-columns:1fr;gap:15px}footer small{grid-column:auto}dialog{padding:28px 22px}dialog dl{grid-template-columns:1fr}dialog dd{margin-bottom:10px}}
[hidden]{display:none!important}.signed-in,.muted{color:var(--muted);font-size:14px}.action-bar,.card-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:24px 0}.action-bar label{font-size:14px;color:var(--muted)}.action-bar select{margin-left:8px;padding:9px;background:white;border:1px solid var(--line);border-radius:4px}.view-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:28px 0 16px}.view-tabs button{border:0;background:transparent;color:var(--muted);padding:13px 19px;font-size:14px;border-bottom:3px solid transparent}.view-tabs button.selected{color:var(--wine);border-bottom-color:var(--wine);font-weight:700}.content-card{padding:24px;border:1px solid var(--line);background:white;border-radius:8px;display:flex;flex-direction:column}.content-card h2{font:26px/1.2 Georgia}.content-card p{font-size:14px;color:var(--muted)}.content-card .card-actions{margin-top:auto}.card-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.status{display:inline-block;font-size:11px;padding:4px 8px;border-radius:20px;background:#edf0e9;color:#536048}.status-review{background:#fff0d5;color:#79520c}.status-published{background:#e6f3ec;color:#24543d}.status-draft,.status-archived{background:#eceeec;color:#535853}.management-row{background:white;border:1px solid var(--line);border-radius:7px;padding:22px;margin:12px 0;display:flex;gap:25px;align-items:center;justify-content:space-between}.management-row h3{margin:10px 0 5px;font:23px Georgia}.management-row p{font-size:14px;color:var(--muted);margin:5px 0}.management-row .btn{flex-shrink:0}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.editor-grid label{font-size:14px;color:var(--muted);display:block}.editor-grid input,.editor-grid textarea,.editor-grid select{display:block;width:100%;border:1px solid #c4ccc3;background:white;color:var(--ink);border-radius:5px;padding:10px;margin-top:6px;min-height:43px}.editor-grid textarea{resize:vertical}.editor-grid input[readonly]{background:#f1f3ee;color:#687165}.editor-grid .check{display:flex;align-items:flex-start;gap:10px;margin:12px 0}.check input{width:18px;min-height:18px;margin:3px 0 0}.editor-grid .wide{grid-column:1/-1}.consent-block{padding:10px 18px;background:#f0f4ee;border-radius:5px}.form-actions{display:flex;gap:10px;flex-wrap:wrap}.btn.publish{background:var(--green);border-color:var(--green)}button:disabled{cursor:wait;opacity:.65}dialog.large{width:min(850px,95vw)}.error{background:#fae9e9;border-left-color:var(--wine);color:#792e3f}.preserve-lines{white-space:pre-wrap}.external{display:inline-block;text-decoration:underline;color:var(--wine);margin-top:15px}.directory-filters{grid-template-columns:1.5fr 1fr 1fr}#community-map{height:430px;border:1px solid var(--line);border-radius:6px;margin:15px 0;z-index:0}.map-notice,#map-message{font-size:13px;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:white;padding:14px 24px;border-radius:7px;z-index:10000;box-shadow:0 5px 20px #0002;max-width:90vw}#upload-status{display:block;margin-top:10px;font-size:13px}.review-note{border-left:2px solid #c59746;padding-left:10px}@media(max-width:700px){.editor-grid{grid-template-columns:1fr}.directory-filters{grid-template-columns:1fr}.management-row{align-items:flex-start;flex-direction:column;gap:12px}.view-tabs button{padding:10px;font-size:13px}#community-map{height:330px}header #session-state{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.sidebar,header,.action-bar,.view-tabs,footer,.close,.form-actions{display:none!important}.shell{margin:0}main{padding:0}.resource-grid,.techniques{display:block}.resource,.content-card{break-inside:avoid;margin:12px 0}body{background:white;color:black}dialog[open]{position:static;max-height:none;width:100%;border:0}dialog::backdrop{background:white}}
.media-gallery{display:grid;gap:18px;margin:20px 0}.media-gallery figure{margin:0;background:#f4f5f1;padding:10px;border-radius:7px}.media-gallery img,.media-gallery video{width:100%;max-height:460px;object-fit:contain;display:block}.media-gallery audio{width:100%}.media-gallery figcaption{font-size:14px;margin:8px 0}.media-picker{max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:5px;padding:15px}.media-picker p{font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:26px 0}.metrics article{padding:24px;background:white;border:1px solid var(--line);border-radius:7px}.metrics strong{display:block;font:36px Georgia;color:var(--wine)}.metrics span{font-size:14px;color:var(--muted)}.table-scroll{overflow:auto}.coverage-table{border-collapse:collapse;width:100%;background:white;font-size:14px}.coverage-table th,.coverage-table td{border:1px solid var(--line);padding:14px;text-align:left;min-width:100px}.coverage-table th{font-weight:600}.coverage-table caption{text-align:left;color:var(--muted);padding:12px 0}.coverage-table small{display:block;font-size:12px;font-weight:400;color:var(--muted);max-width:240px}.coverage-table .missing{background:#fff5df}.coverage-table .met{background:#eaf3ed}#technique-map{height:410px;margin:20px 0;border-radius:7px;z-index:0}details{margin:15px 0}summary{cursor:pointer;font-weight:600}#change-history{font-size:13px;color:var(--muted)}@media(max-width:700px){.metrics{grid-template-columns:1fr 1fr}.metrics article{padding:15px}#technique-map{height:300px}}
.local-banner{background:#fff1d2;color:#654a19;font-size:13px;padding:10px 46px;border-bottom:1px solid #e9d7b4}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin:20px 0}.calendar-toolbar h2{font:28px Georgia;text-transform:capitalize}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);min-width:650px}.calendar-scroll{overflow:auto}.weekday{background:var(--green);color:white;padding:12px;font-size:14px}.calendar-day{min-height:100px;background:white;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px;font-size:14px}.calendar-day.outside{background:#eef0e9}.calendar-day button{display:block;background:#f3e7eb;color:var(--wine);border:0;border-radius:3px;font-size:12px;text-align:left;padding:5px;margin:7px 0;width:100%;overflow-wrap:anywhere}.signed-in .external{margin-top:0}@media(max-width:700px){.local-banner{padding:10px 18px}.calendar-toolbar h2{font-size:23px}}
.discussion{padding:18px;background:#f5f7f2;border:1px solid var(--line);border-radius:6px;margin:15px 0}.discussion small{font-size:12px;color:var(--muted)}#discussion-form textarea{display:block;width:100%;padding:12px;border:1px solid #c4ccc3;border-radius:5px;font:inherit;margin:8px 0}#discussion-form .check{display:flex;gap:10px;font-size:14px;align-items:center;margin-top:12px}#discussion-panel{border-top:1px solid var(--line);margin-top:26px}
.team-actions {margin:1.5rem 0}.team-actions .content-card{padding:1.5rem}.team-actions .btn{margin-top:.5rem}.account-form{padding:1.5rem;border:1px solid var(--line,#ddd);border-radius:12px;margin:1rem 0;background:white}.account-form h2{font-size:1.2rem}.registration-section{border:1px solid #d5cdc7;border-radius:12px;padding:1.2rem;margin:1.3rem 0}.registration-section legend{font-size:1.1rem;font-weight:700;padding:0 .5rem;color:#782d3e}.registration-progress{position:sticky;top:0;padding:.75rem;background:#f4ece8;border-radius:6px;z-index:1}.registration-sections{min-width:0}.account-result:not(:empty){padding:.75rem;color:#782d3e}.table-scroll{overflow:auto}
.profile-photo{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid #ddd}.profile-photo img{width:90px;height:90px;object-fit:cover;border-radius:8px}.profile-photo label{min-width:0}@media(max-width:650px){.profile-photo{grid-template-columns:70px 1fr}.profile-photo img{width:70px;height:70px}.profile-photo button{grid-column:2}}
