:root{--forest:#173f32;--forest-2:#245947;--cream:#f7f3e8;--ink:#1e2924;--muted:#66736c;--line:#d8ded9;--white:#fff;--gold:#b48a42}*{box-sizing:border-box}body{margin:0;background:#f4f6f4;color:var(--ink);font-family:Arial,sans-serif;line-height:1.55}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:var(--white);padding:.75rem;z-index:10}.portal-shell{width:min(1120px,calc(100% - 2rem));margin:auto}.portal-header{background:var(--forest);color:var(--white);box-shadow:0 2px 12px #0002}.portal-header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:74px}.portal-nav a.home-link,.portal-nav a[href="https://mogollonranch.com/"]{font-weight:700}.portal-brand{color:var(--white);text-decoration:none;display:flex;flex-direction:column}.portal-brand span{font-size:.82rem;opacity:.8}.portal-nav{display:flex;flex-wrap:wrap;gap:.4rem}.portal-nav a{color:var(--white);text-decoration:none;padding:.55rem .75rem;border-radius:.4rem}.portal-nav a:hover,.portal-nav a[aria-current=page]{background:#ffffff1f}.portal-main{padding:2.25rem 0 3rem}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--forest-2);font-weight:700;font-size:.76rem}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.card{background:var(--white);border:1px solid var(--line);border-radius:.75rem;padding:1.25rem;box-shadow:0 4px 16px #173f3210}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.card h2,.card h3{margin-top:0}.meta-list{display:grid;grid-template-columns:max-content 1fr;gap:.45rem 1rem}.meta-list dt{font-weight:700}.meta-list dd{margin:0}.pill-list{display:flex;flex-wrap:wrap;gap:.5rem}.pill{background:#e7efe9;color:var(--forest);border-radius:999px;padding:.35rem .65rem;font-size:.88rem}.action-card a,.button{display:inline-block;background:var(--forest);color:#fff;text-decoration:none;padding:.65rem .85rem;border-radius:.45rem;border:0;cursor:pointer}.notice{background:#fff8df;border-left:4px solid var(--gold);padding:1rem;border-radius:.35rem}.portal-footer{background:#e9eeea;border-top:1px solid var(--line)}.portal-footer .portal-shell{min-height:70px;display:flex;align-items:center;justify-content:space-between}.portal-footer form{margin:0}.link-button{background:none;border:0;color:var(--forest);text-decoration:underline;cursor:pointer;font:inherit}.empty{color:var(--muted)}.doc-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:.75rem}.doc-tile{border:1px solid var(--line);border-radius:.7rem;padding:.7rem;background:#fbfcfb;display:flex;flex-direction:column;gap:.55rem;min-width:0}.doc-tile-preview{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.45rem;width:100%;min-height:11rem;background:linear-gradient(#f4f8f5,#e7eee9);border:1px solid var(--line);border-radius:.5rem;padding:1rem .75rem .85rem;cursor:pointer;text-align:center;text-decoration:none;font:inherit;color:inherit}.doc-tile-preview:hover,.doc-tile-preview:focus{background:#e3eee8;border-color:var(--forest-2);outline:2px solid var(--forest-2);outline-offset:1px}.doc-tile-icon{display:inline-flex;align-items:center;justify-content:center;min-width:3.4rem;min-height:3.4rem;background:var(--forest);color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.04em;border-radius:.45rem}.doc-tile-code{font-weight:700;font-size:.88rem;color:var(--forest);word-break:break-word}.doc-tile-title{font-size:.82rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;max-width:100%}.doc-tile-meta{font-size:.75rem;color:var(--muted)}.doc-tile-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center}.doc-tile .button{font-size:.8rem;padding:.4rem .65rem}.doc-preview-page{max-width:880px;margin:1.5rem auto;background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:1.5rem 1.75rem;box-shadow:0 4px 16px #173f3210}.doc-preview-page pre{white-space:pre-wrap;word-break:break-word;font-family:Georgia,serif;font-size:1rem;line-height:1.55}.cal-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(16rem,.75fr);gap:1.25rem;align-items:start}.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem;flex-wrap:nowrap}.cal-nav h2{margin:0;text-align:center;flex:1}.event-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;margin-bottom:.5rem}.cal-dow{text-align:center;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:.25rem 0}.cal-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:.5rem;background:var(--white);color:var(--ink);text-decoration:none;font-weight:700}.cal-cell.is-empty{background:transparent;border-color:transparent}.cal-cell.has-event{background:var(--forest);color:#fff}.cal-cell.has-event:hover,.cal-cell.is-selected{box-shadow:0 0 0 3px var(--gold)}.cal-upcoming{display:block;padding:.75rem 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.cal-upcoming:last-child{border-bottom:0}.cal-upcoming strong{display:block;color:var(--forest)}.cal-upcoming span{display:block;color:var(--muted);font-size:.85rem;margin-top:.2rem}@media(max-width:900px){.cal-layout{grid-template-columns:1fr}.cal-nav{flex-wrap:wrap}}@media(max-width:900px){.doc-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.portal-header-inner,.page-heading,.portal-footer .portal-shell{align-items:flex-start;flex-direction:column;padding:1rem 0}.portal-nav{width:100%}.portal-nav a{padding:.45rem}.span-4,.span-6,.span-8{grid-column:span 12}.meta-list{grid-template-columns:1fr}.meta-list dd{margin-bottom:.5rem}.doc-tile-grid{grid-template-columns:1fr}}
