*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-y:scroll}html,body{min-height:100%}img{max-width:100%;height:auto;display:block}button{cursor:pointer;font-family:inherit}:root{--marker-red: #b22b28;--navy: #002f49;--shop-dark: #001a28;--graphite: #414b57;--sheet: #eef1f2;--sheet-sunk: #e4e9ec;--rule: #d2d9de;--rule-strong: #b4c0c8;--white: #ffffff;--link: #002f49;--on-navy: #e8eef2;--on-navy-mute: #9fb6c4;--font-display: "Archivo", "Arial Narrow", system-ui, sans-serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Consolas, monospace;--wdth-nameplate: 74%;--wdth-heading: 82%;--wdth-legend: 85%;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 8rem;--section-pad-y: clamp(4rem, 8vh, 8rem);--section-pad-x: clamp(1.5rem, 5vw, 4rem);--content-max: 1360px;--text-display: clamp(2.125rem, 4.6vw, 3.5rem);--text-h1: clamp(2rem, 4vw, 3.25rem);--text-h2: clamp(1.6rem, 3vw, 2.25rem);--text-h3: clamp(1.125rem, 1.6vw, 1.3125rem);--text-body: 1.0625rem;--text-small: .875rem;--text-eyebrow: .75rem;--transition-base: .2s ease;--transition-slow: .35s ease;--color-primary: var(--navy);--color-text: var(--graphite);--color-text-light: #6b7085;--color-bg: var(--white);--color-bg-alt: var(--sheet-sunk);--color-border: var(--rule);--color-blue-bright: var(--marker-red);--color-navy: var(--navy);--color-white: var(--white);--color-black: #000000;--color-grey: #6b7085;--color-error: #dc2626;--color-success: #16a34a;--color-cyan: #00cfff;--color-blue-medium: #406ec9;--header-height: 72px;--admin-tab-bar-height: 56px;--transition-fast: .15s ease;--color-heading: var(--navy);--color-body: var(--graphite);--color-brand-accent: var(--marker-red);--color-cta: var(--marker-red);--color-cta-hover: #8f211e;--color-cta-text: var(--white);--color-input-border: #c6ccd2;--color-control-disabled-bg: #d0d4da;--color-danger-strong: #dc2626;--color-banner-error-bg: #fdecef;--color-banner-error-border: #dc2626;--color-banner-success-bg: #e0f5e9;--color-banner-success-text: #1f7a3a;--color-banner-warn-bg: #fff7e0;--color-banner-warn-text: #8a6500;--color-banner-warn-border: #d4a300;--color-hero-band-from: #001d2e;--color-hero-band-to: #003f61;--color-card-accent-border: var(--rule);--color-card-shadow: rgba(0, 47, 73, .12);--color-hero-band-deep: var(--shop-dark);--color-overlay-scrim: rgba(0, 47, 73, .94);--color-overlay-text: var(--white);--color-overlay-control-bg: rgba(255, 255, 255, .14);--color-overlay-control-bg-hover: rgba(255, 255, 255, .3)}body{font-family:var(--font-body);font-size:var(--text-body);line-height:1.6;color:var(--graphite);background-color:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-stretch:var(--wdth-heading);color:var(--navy);margin:0 0 .5em;line-height:1.1;font-weight:700;text-wrap:balance}.admin-shell h1,.admin-shell h2,.admin-shell h3,.admin-shell h4,.admin-shell h5,.admin-shell h6{font-family:var(--font-body);font-stretch:normal;line-height:1.2}.data{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.legend{font-family:var(--font-display);font-stretch:var(--wdth-legend);font-weight:700;text-transform:uppercase;letter-spacing:.09em;font-size:var(--text-eyebrow);line-height:1}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}.admin-shell a:hover{text-decoration:none}:focus-visible{outline:3px solid var(--link);outline-offset:2px;border-radius:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:var(--space-sm);background:var(--navy);color:var(--white);padding:var(--space-xs) var(--space-md);font-size:var(--text-small);font-weight:600;border-radius:0 0 4px 4px;text-decoration:none;z-index:9999;transition:top .2s}.skip-link:focus{top:0}.btn-primary,.btn-primary-outline,.btn-secondary,.btn-danger,.btn-danger-outline{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;height:36px;padding:0 18px;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1;border:1px solid transparent;border-radius:4px;background-color:transparent;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease}.btn-primary-sm,.btn-primary-outline-sm,.btn-secondary-sm,.btn-danger-sm,.btn-danger-outline-sm{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;height:28px;padding:0 12px;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1;border:1px solid transparent;border-radius:4px;background-color:transparent;cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color .12s ease,color .12s ease,border-color .12s ease,box-shadow .12s ease}.btn-primary,.btn-primary-sm{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover,.btn-primary-sm:hover{background-color:#001a62;border-color:#001a62}.btn-primary:active,.btn-primary-sm:active{background-color:#001250;border-color:#001250;box-shadow:inset 0 2px 5px #00001e52}.btn-primary-outline,.btn-primary-outline-sm{color:var(--color-primary);border-color:var(--color-primary)}.btn-primary-outline:hover,.btn-primary-outline-sm:hover{background-color:var(--color-primary);color:#fff}.btn-primary-outline:active,.btn-primary-outline-sm:active{background-color:#001a62;border-color:#001a62;color:#fff;box-shadow:inset 0 2px 5px #00001e52}.btn-secondary,.btn-secondary-sm{background-color:var(--color-bg-alt);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover,.btn-secondary-sm:hover{background-color:#eceef2;border-color:var(--color-primary);color:var(--color-primary)}.btn-secondary:active,.btn-secondary-sm:active{background-color:#dde1e8;border-color:var(--color-primary);color:var(--color-primary);box-shadow:inset 0 1px 3px #0000001f}.btn-danger,.btn-danger-sm{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover,.btn-danger-sm:hover{background-color:#b91c1c;border-color:#b91c1c}.btn-danger:active,.btn-danger-sm:active{background-color:#991b1b;border-color:#991b1b;box-shadow:inset 0 2px 5px #3c000052}.btn-danger-outline,.btn-danger-outline-sm{color:var(--color-error);border-color:var(--color-error)}.btn-danger-outline:hover,.btn-danger-outline-sm:hover{background-color:var(--color-error);color:#fff}.btn-danger-outline:active,.btn-danger-outline-sm:active{background-color:#b91c1c;border-color:#b91c1c;color:#fff;box-shadow:inset 0 2px 5px #3c000052}.btn-primary:focus-visible,.btn-primary-sm:focus-visible,.btn-primary-outline:focus-visible,.btn-primary-outline-sm:focus-visible,.btn-secondary:focus-visible,.btn-secondary-sm:focus-visible,.btn-danger:focus-visible,.btn-danger-sm:focus-visible,.btn-danger-outline:focus-visible,.btn-danger-outline-sm:focus-visible{outline:3px solid var(--link);outline-offset:2px}.btn-primary:disabled,.btn-primary-sm:disabled,.btn-primary-outline:disabled,.btn-primary-outline-sm:disabled,.btn-secondary:disabled,.btn-secondary-sm:disabled,.btn-danger:disabled,.btn-danger-sm:disabled,.btn-danger-outline:disabled,.btn-danger-outline-sm:disabled{opacity:.4;cursor:not-allowed;pointer-events:none;box-shadow:none}.action-btn{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:30px;height:30px;padding:0;color:var(--color-text);background:var(--color-bg-alt, #f9fafb);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:background .1s,color .1s,border-color .1s}.action-btn:hover:not(:disabled){background:#eaf7fc;color:var(--color-pool-blue, #0098d3);border-color:var(--color-pool-blue, #0098d3)}.action-btn:focus-visible{outline:3px solid var(--link);outline-offset:2px}.action-btn:disabled{opacity:.3;cursor:not-allowed}.badge{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:4px;font-size:.7rem;font-weight:500;line-height:1.4;white-space:nowrap}.badge-status--published,.badge-status--active{background:#dcfce7;color:#15803d}.badge-status--draft,.badge-status--inactive{background:#f3f4f6;color:var(--color-text-light)}.badge-status--archived,.badge-status--pending{background:#fef9c3;color:#854d0e}.badge-status--deleted{background:#fee2e2;color:var(--color-error)}.badge-loc--public{background:#cff8ff;color:#006080}.badge-loc--member{background:#e0e7ff;color:#3730a3}.badge-type{background:#e8eef8;color:var(--color-primary)}.confirm-row{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.confirm-row .confirm-text{font-size:.8rem;color:var(--color-error);font-weight:500;white-space:nowrap}.confirm-row form{display:inline-flex}.danger-zone{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border);display:flex;align-items:center;gap:.75rem;max-width:720px}.form-grid,.form-grid--3{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid--3{grid-template-columns:repeat(3,1fr)}.form-grid>*,.form-grid--3>*{min-width:0}@media(max-width:768px){.form-grid,.form-grid--3{grid-template-columns:1fr}.admin-content .page-header,.admin-content .header-actions{flex-wrap:wrap}.admin-shell input,.admin-shell select,.admin-shell textarea{font-size:16px!important}.admin-shell .btn-primary-sm,.admin-shell .btn-primary-outline-sm,.admin-shell .btn-secondary-sm,.admin-shell .btn-danger-sm,.admin-shell .btn-danger-outline-sm{height:40px}.admin-shell .action-btn{width:40px;height:40px}}.admin-content .field,.admin-content .form-grid>label:not(.checkbox):not(.checkbox-label),.admin-content .form-grid--3>label:not(.checkbox):not(.checkbox-label){display:flex;flex-direction:column;gap:.35rem;min-width:0}.admin-content .field-wide,.admin-content .full{grid-column:1 / -1}.admin-content .field-label,.admin-content .field>span:not(.field-hint),.admin-content .form-grid>label>span:not(.field-hint),.admin-content .form-grid--3>label>span:not(.field-hint){font-size:.875rem;font-weight:500;color:var(--color-text)}.admin-content .field-hint,.admin-content .form-grid small,.admin-content .form-grid--3 small{display:block;font-size:.78rem;color:var(--color-text-light)}.admin-content input[type=text],.admin-content input[type=email],.admin-content input[type=tel],.admin-content input[type=url],.admin-content input[type=search],.admin-content input[type=date],.admin-content input[type=time],.admin-content input[type=number],.admin-content input:not([type]),.admin-content select,.admin-content textarea{padding:.55rem .7rem;border:1px solid var(--color-input-border);border-radius:6px;background:var(--color-white);color:var(--color-text);font-family:inherit;font-size:.875rem;transition:border-color var(--transition-fast)}.admin-content input:focus,.admin-content select:focus,.admin-content textarea:focus{border-color:var(--color-primary)}.admin-content input:disabled,.admin-content select:disabled,.admin-content textarea:disabled{background:var(--color-bg-alt);color:var(--color-text-light);cursor:not-allowed}.admin-content textarea{resize:vertical}.admin-content .checkbox-label,.admin-content label.checkbox{display:flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:400;color:var(--color-text)}.admin-content input[type=checkbox],.admin-content input[type=radio]{width:1rem;height:1rem;accent-color:var(--color-primary);cursor:pointer}.admin-content .form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem}.admin-content .alert{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:6px;margin-bottom:1.25rem;font-size:.875rem}.admin-content .alert-error{background:var(--color-banner-error-bg);border-color:var(--color-banner-error-border);color:var(--color-error)}.admin-content .alert-success{background:var(--color-banner-success-bg);border-color:var(--color-success);color:var(--color-banner-success-text)}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--section-pad-x)}.rich-text{max-width:72rem;margin-inline:auto;font-size:var(--text-body);color:var(--graphite)}.rich-text>*{max-width:48rem;margin-inline:auto}.rich-text>:first-child{margin-top:0}.rich-text p{margin-block:0 1.15rem;line-height:1.75}.rich-text>p:first-child{font-size:1.2rem;font-weight:500;line-height:1.6;color:var(--navy)}.rich-text strong{font-weight:700;color:var(--navy)}.rich-text h2{font-family:var(--font-body);font-size:clamp(1.4rem,1.1rem + 1.3vw,1.75rem);font-weight:700;letter-spacing:-.01em;color:var(--navy);margin-block:3rem 1rem}.rich-text h2:after{content:"";display:block;width:32px;height:3px;margin-top:.6rem;background:var(--color-primary);border-radius:2px}.rich-text h2:first-child{margin-top:0}.rich-text h3{font-family:var(--font-body);font-size:1.25rem;font-weight:700;color:var(--navy);margin-block:2rem .6rem}.rich-text a{color:var(--link);text-decoration:underline;text-underline-offset:3px;transition:color .12s ease}.rich-text a:hover{color:var(--navy)}.rich-text ul,.rich-text ol{padding-left:1.5rem;margin-block:0 1.15rem}.rich-text li{line-height:1.7;margin-bottom:.35rem}.rich-text li::marker{color:var(--marker-red)}.rich-text blockquote{border-left:3px solid var(--marker-red);padding:.25rem 0 .25rem 1.25rem;margin-block:1.5rem;color:var(--color-text-light);font-style:italic}.rich-text hr{border:none;border-top:1px solid var(--color-border);margin-block:2rem}.rich-text img{border-radius:8px;margin-block:1.5rem;max-width:100%;height:auto}.rich-text table{width:fit-content;min-width:min(48rem,100%);max-width:100%;border-collapse:collapse;margin-block:1.5rem;font-size:.9rem}.rich-text th,.rich-text td{border:1px solid var(--color-border);padding:.5rem .75rem;text-align:left;vertical-align:top;line-height:1.55}.rich-text th{background:var(--sheet);color:var(--navy);font-weight:700}.rich-text td img{margin:.25rem 0}.rich-text iframe{display:block;width:min(100%,60rem);max-width:none;aspect-ratio:16 / 9;height:auto;border:0;border-radius:8px;margin-block:1.5rem}img[data-align=left]{float:left;margin:.5rem 1.5rem 1rem 0}img[data-align=center]{display:block;margin:.5rem auto}img[data-align=right]{float:right;margin:.5rem 0 1rem 1.5rem}
