@layer reset, tokens, base, layout, components, utilities;

@layer tokens {
  :root {
    --brand-navy:#0b1f33; --ink-950:var(--brand-navy); --ink-800:#18364f; --copper-500:#c66a2b;
    --paper:#fffdf9; --sand-100:#f3eee5; --gray-700:#475569; --gray-300:#cbd5e1; --white:#fff;
    --red-800:#8b1e1e; --red-700:#b42318; --red-050:#fff0ed; --green-700:#237a3b; --green-050:#edf8ef;
    --navy-muted:#cad3dc; --copper-soft:#efd0b4; --copper-line:#b5855b; --white-alpha-25:#ffffff40;
    --focus:#0b70c9; --container:72rem; --radius:0.5rem;
    --color-surface-page:var(--paper); --color-surface-subtle:var(--sand-100); --color-surface-inverse:var(--ink-950); --color-surface-card:var(--white);
    --color-text-primary:var(--ink-950); --color-text-secondary:var(--gray-700); --color-text-inverse:var(--white); --color-text-inverse-muted:var(--navy-muted);
    --color-action-primary:var(--ink-950); --color-action-hover:var(--ink-800); --color-action-text:var(--white); --color-focus:var(--focus); --color-border:var(--gray-300);
    --color-danger:var(--red-800); --color-danger-border:var(--red-700); --color-danger-surface:var(--red-050); --color-success-border:var(--green-700); --color-success-surface:var(--green-050);
    --color-brand-soft:var(--copper-soft); --color-brand-line:var(--copper-line); --color-logo-surface:var(--brand-navy); --color-border-inverse:var(--white-alpha-25);
  }
}
@layer tokens{:root{--duration-state:160ms;--opacity-disabled:.55}}
@layer tokens{
  :root[data-theme="dark"]{color-scheme:dark;--ink-950:#f8fafc;--ink-800:#67e8f9;--copper-500:#f59e0b;--paper:#171717;--sand-100:#242424;--gray-700:#dbe2ea;--gray-300:#94a3b8;--white:#202020;--navy-muted:#334155;--copper-soft:#78350f;--copper-line:#f59e0b;--white-alpha-25:#00000066;--focus:#38bdf8}
}
@layer base{
  :where(a,button,input,select,textarea){transition:color var(--duration-state) ease,background-color var(--duration-state) ease,border-color var(--duration-state) ease}
  :where(button,input,select,textarea):disabled,[aria-disabled="true"]{cursor:not-allowed;opacity:var(--opacity-disabled)}
  [aria-busy="true"]{cursor:progress}
  [aria-invalid="true"]{border-color:var(--color-danger-border)!important}
}
@layer components{
  .c-site-header nav a:hover,.c-site-header nav a:focus-visible,.c-site-header nav .current-menu-item>a,.c-site-header nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:.12em}
  .c-button:active{transform:translateY(1px)}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@layer reset { *,*::before,*::after{box-sizing:border-box} html{color-scheme:light} body{margin:0} img{max-width:100%;height:auto} }
@layer base {
  body{background:var(--color-surface-page);color:var(--color-text-primary);font:1rem/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}
  h1,h2,h3{line-height:1.12;text-wrap:balance} a{color:var(--color-action-hover);text-underline-offset:.18em}
  :focus-visible{outline:.2rem solid var(--color-focus);outline-offset:.2rem}
}
@layer layout { .l-container{width:min(100% - 2rem,var(--container));margin-inline:auto}.l-section{padding-block:clamp(3rem,8vw,7rem)} }
@layer components {
  .c-home-fees{border-top:1px solid var(--color-border);scroll-margin-top:2rem}
  .c-fees-table{width:100%;max-width:48rem;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums}
  .c-fees-table caption{text-align:left;padding-block:1rem;font-weight:600}
  .c-fees-table th,.c-fees-table td{padding:.85rem .65rem;border-bottom:1px solid var(--color-border);vertical-align:top;overflow-wrap:anywhere}
  .c-fees-table th{text-align:left}.c-fees-table thead{background:var(--color-surface-subtle)}
  .c-fees-table th:first-child{width:46%}.c-fees-table td,.c-fees-table thead th:not(:first-child){text-align:right}
  @media(max-width:25rem){.c-fees-table{font-size:.85rem}.c-fees-table th,.c-fees-table td{padding:.75rem .35rem}.c-fees-table th:first-child{width:40%}}
  .c-menu-toggle{display:none;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;padding:.6rem .8rem;border:1px solid var(--color-border);background:var(--color-surface-page);color:var(--color-text-primary);font:600 .9rem/1.4 system-ui,sans-serif}
  .c-theme-control{display:none;align-items:center;min-height:2.75rem;color:var(--color-text-primary)}
  .has-js .c-theme-control{display:flex}.c-theme-toggle{display:inline-flex;align-items:center;gap:.4rem;min-width:5.8rem;min-height:2.75rem;padding:.35rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-page);color:var(--color-text-primary);cursor:pointer}.c-theme-toggle__icon{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.55}.c-theme-toggle__track{position:relative;width:2.25rem;height:1.25rem;border:2px solid currentColor;border-radius:999px;background:var(--color-surface-subtle)}.c-theme-toggle__thumb{position:absolute;top:.125rem;left:.125rem;width:.75rem;height:.75rem;border-radius:50%;background:currentColor;transition:transform var(--duration-state) ease}.c-theme-toggle[aria-checked="false"] .c-theme-toggle__icon--sun,.c-theme-toggle[aria-checked="true"] .c-theme-toggle__icon--moon{opacity:1}.c-theme-toggle[aria-checked="true"] .c-theme-toggle__thumb{transform:translateX(1rem)}
  .c-site-brand__logo{display:block;width:4rem;height:4rem;object-fit:contain;flex-shrink:0;background:var(--color-logo-surface);border-radius:var(--radius)}
  .c-footer-logo{display:block;width:5rem;height:5rem;object-fit:contain;flex-shrink:0}
  .c-skip-link{position:fixed;z-index:100;top:.5rem;left:.5rem;transform:translateY(-200%);background:var(--color-surface-inverse);color:var(--color-text-inverse);padding:.75rem 1rem}
  .c-skip-link:focus{transform:none}.c-site-header{border-bottom:1px solid var(--color-border)}
  .c-site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:5rem}.c-site-brand{font-weight:800;text-decoration:none}
  .c-site-footer{margin-top:4rem;padding-block:3rem;background:var(--color-surface-inverse);color:var(--color-text-inverse)}.c-site-footer a{color:var(--color-text-inverse)}
  .c-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.82rem;font-weight:700;color:var(--color-text-secondary)}
  .c-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1.25rem}
  .c-member-card{padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-card)}.c-member-card__title{font-size:1.25rem}
  .c-member-card__logo{display:grid;place-items:center;aspect-ratio:16/9;background:var(--color-surface-subtle)}.c-member-card__logo img{max-height:7rem;width:auto}
  .c-prose{max-width:45rem}
  .c-news-card{display:flex;min-width:0;flex-direction:column;gap:.65rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-card)}
  .c-news-card h2,.c-news-card p{margin:0}
  .c-news-card h2{font-size:clamp(1.3rem,2vw,1.65rem);overflow-wrap:anywhere}
  .c-news-card time,.single-post main time{color:var(--color-text-secondary)}
  .c-news-card__image{display:block;width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;border-radius:var(--radius)}
  .c-news-featured{display:block;max-width:min(100%,45rem);height:auto;margin-block:1.5rem;border-radius:var(--radius)}
  .blog .pagination .nav-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
  .blog .pagination .page-numbers{display:inline-grid;min-width:2.75rem;min-height:2.75rem;place-items:center;padding:.25rem .5rem}
  .blog .pagination .current{border-bottom:2px solid currentColor;font-weight:700}
  .c-prose img{max-width:100%;height:auto}
  .c-event-card__image{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--color-surface-subtle);border-radius:var(--radius);margin-bottom:1rem}
  .c-event-image{display:block;width:100%;max-width:45rem;height:auto;border-radius:var(--radius);margin-block:2rem}
  .post-type-archive-igzm_event .c-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;margin-top:1.25rem}
  .post-type-archive-igzm_event .c-pagination a{display:inline-flex;align-items:center;min-height:2.75rem;padding:.25rem .5rem}
  .c-member-profile__header{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--color-border);padding-bottom:2rem;margin-bottom:2rem}.c-member-profile__logo{display:grid;place-items:center;min-width:min(16rem,40%);padding:1rem;background:var(--color-surface-subtle);border-radius:var(--radius)}.c-member-profile__logo img{max-height:8rem;width:auto}.c-term-list{color:var(--color-text-secondary)}
  .c-profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:2rem;margin-block:2rem}.c-contact-card{max-width:45rem;padding:1.5rem;border-left:.3rem solid var(--copper-500);background:var(--color-surface-subtle)}
  .c-filter-panel{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;align-items:end;gap:1rem;margin-block:2rem;padding:1.25rem;background:var(--color-surface-subtle)}.c-filter-panel label{display:block;font-weight:700}.c-filter-panel input,.c-filter-panel select{width:100%;min-height:2.75rem;padding:.5rem}.c-button{min-height:2.75rem;border:0;background:var(--color-action-primary);color:var(--color-action-text);padding:.6rem 1rem;font-weight:700}.c-empty-state{padding:2rem;border:1px dashed var(--color-text-secondary)}
  .l-subsection{margin-top:4rem}.c-event-card{padding:1.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-card)}.c-status,.c-alert{font-weight:800;color:var(--color-danger)}.c-alert{padding:1rem;border-left:.3rem solid var(--color-danger-border);background:var(--color-danger-surface)}.c-event-facts{display:grid;gap:1rem;max-width:45rem;margin-block:2rem}.c-event-facts div{display:grid;grid-template-columns:8rem 1fr;border-bottom:1px solid var(--color-border);padding-bottom:1rem}.c-event-facts dt{font-weight:800}
  .c-application-form{display:grid;gap:1.25rem;max-width:50rem}.c-form-field{display:grid;gap:.4rem}.c-form-field label{font-weight:700}.c-form-field input:not([type=checkbox]),.c-form-field textarea{width:100%;border:1px solid var(--color-text-secondary);padding:.7rem;font:inherit}.c-form-field textarea{min-height:8rem}.c-form-note{padding:1rem;background:var(--color-surface-subtle)}.u-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
  .c-field-error{margin:0;color:var(--color-danger);font-weight:700}.c-error-summary{max-width:50rem;margin-bottom:1.5rem;padding:1.25rem;border:.2rem solid var(--color-danger-border);background:var(--color-danger-surface)}.c-success{max-width:50rem;margin-bottom:1.5rem;padding:1.25rem;border-left:.3rem solid var(--color-success-border);background:var(--color-success-surface)}
  .c-document-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.c-document-actions form{margin:0}
}
@media(max-width:50rem){.c-filter-panel{grid-template-columns:1fr 1fr}.c-filter-panel>div:first-child{grid-column:1/-1}}
@media (max-width:40rem){.c-member-profile__header{align-items:flex-start;flex-direction:column}.c-member-profile__logo{width:100%;min-width:0}}

@layer components {
  .c-site-header__inner{min-height:7rem;gap:1.5rem}.c-site-brand{display:flex;align-items:center;gap:1rem;flex-shrink:0}.c-site-brand__mark{font-size:2.3rem;letter-spacing:-.07em;line-height:1}.c-site-brand__mark>span{color:var(--copper-500)}.c-site-brand__name{border-left:1px solid var(--color-border);padding-left:1rem;font-size:.75rem;line-height:1.4;font-weight:500}
  .c-site-header nav ul{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;list-style:none;margin:0;padding:0}.c-site-header nav a{display:inline-flex;align-items:center;gap:.75rem;min-height:2.75rem;text-decoration:none;font-size:.9rem;font-weight:600}.c-site-header nav a:hover{text-decoration:underline}
  .c-button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.75rem;text-decoration:none;padding:.9rem 1.25rem;font:600 .9rem/1.4 system-ui,sans-serif}.c-button:hover{background:var(--color-action-hover)}.c-button-group{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}
  .c-home-hero{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding-block:4rem 5rem}.c-home-hero h1{font:normal clamp(2.9rem,5.1vw,4.6rem)/1.05 Georgia,serif;letter-spacing:-.055em;margin:1.5rem 0}.c-home-hero h1 em{font-weight:normal;color:var(--color-action-hover)}.c-home-lead{max-width:34rem;color:var(--color-text-secondary);font-size:1.05rem;line-height:1.8}.c-home-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.75rem;margin-top:2rem}.c-text-link{display:inline-flex;align-items:center;min-height:2.75rem;gap:1rem;font-size:.9rem;font-weight:600}
  .c-region-panel{position:relative;overflow:hidden;min-height:29rem;background:var(--color-surface-inverse);color:var(--color-text-inverse);padding:2rem;display:flex;flex-direction:column;justify-content:space-between}.c-region-panel__label{font-size:.7rem;line-height:1.5;letter-spacing:.13em}.c-region-panel p{font:normal 1.75rem/1.25 Georgia,serif;z-index:1;margin-top:11rem}.c-region-panel p em{color:var(--color-brand-soft)}.c-region-panel__bottom{border-top:1px solid var(--color-border-inverse);padding-top:1rem;font-size:.75rem;display:flex;justify-content:space-between;gap:1rem}.c-region-art{position:absolute;inset:5rem 0 auto;height:12rem}.c-region-art i{position:absolute;width:15rem;height:15rem;border:1px solid var(--color-brand-line);transform:rotate(45deg);left:calc(50% - 7.5rem);top:1rem}.c-region-art i:nth-child(2){transform:rotate(45deg) scale(.72)}.c-region-art i:nth-child(3){transform:rotate(45deg) scale(.44)}.c-region-art>span{position:absolute;inset:3.5rem 0 auto;text-align:center;font-size:4.5rem;letter-spacing:-.075em;font-weight:800;color:var(--color-text-inverse);background:var(--color-surface-inverse);line-height:1.15}
  .c-home-about{padding-block:4rem;background:var(--sand-100);scroll-margin-top:2rem}.c-home-about__grid{display:grid;grid-template-columns:1fr 2fr;gap:2rem}.c-home-about h2,.c-home-section-heading h2,.c-home-membership h2{font:normal clamp(2rem,3.5vw,3rem)/1.1 Georgia,serif;letter-spacing:-.035em;margin:0 0 1.5rem}.c-home-about p:not(.c-eyebrow){max-width:39rem;color:var(--gray-700);margin-bottom:0}.c-home-section-heading{margin-bottom:2.5rem}.c-home-paths{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.c-home-path{display:flex;flex-direction:column;border:1px solid var(--gray-300);padding:2.5rem;color:var(--ink-950);text-decoration:none}.c-home-path--sand{background:var(--sand-100);border-color:var(--sand-100)}.c-home-path:hover{border-color:var(--ink-800)}.c-home-path h3{font:normal clamp(1.8rem,3vw,2.5rem)/1.15 Georgia,serif;letter-spacing:-.03em;margin:2rem 0 1rem}.c-home-path p{color:var(--gray-700);max-width:25rem;margin:0 0 2.5rem}.c-home-path__link{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--gray-300);padding-top:1rem;margin-top:auto;font-weight:600;font-size:.9rem}
  .c-home-membership{border-top:1px solid var(--color-border);padding-block:4rem;scroll-margin-top:2rem}.c-home-membership__inner{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.c-home-membership p:not(.c-eyebrow){max-width:29rem}.c-home-note{color:var(--color-text-secondary);font-size:.8rem}.home .c-site-footer{margin-top:0}.c-footer-heading{display:flex;align-items:center;gap:2rem;margin-bottom:3rem}.c-footer-heading p{line-height:1.4;font-size:.9rem}.c-footer-mark{font-size:3rem;font-weight:800;letter-spacing:-.07em}.c-site-footer>.l-container>p{font-size:.8rem;color:var(--color-text-inverse-muted)}
  @media(max-width:60rem){.c-site-header__inner{flex-wrap:wrap;padding-block:1rem;gap:1rem}.c-theme-control{order:1;margin-left:auto}.c-menu-toggle{order:2}.c-primary-navigation{order:3}.c-home-hero{gap:2rem}.c-region-panel{padding:1.5rem}.c-home-hero h1{font-size:3.2rem}}
  @media(max-width:44rem){.c-home-hero{grid-template-columns:1fr;padding-block:2.5rem 3rem}.c-home-hero h1{font-size:clamp(2.6rem,10vw,3.8rem)}.c-region-panel{min-height:27rem}.c-home-about__grid,.c-home-paths,.c-home-membership__inner{grid-template-columns:1fr;gap:1.5rem}.c-home-path{padding:1.5rem}.has-js .c-menu-toggle{display:inline-flex;margin-left:auto}.has-js .c-primary-navigation{display:none;width:100%}.has-js .c-primary-navigation[data-open]{display:block}.c-site-header nav ul{display:grid;gap:.25rem}.c-site-header nav a{width:100%;font-size:.9rem}.c-site-brand__name{font-size:.7rem}.c-home-about,.c-home-membership{padding-block:3rem}}
}

@media (forced-colors: active) {
  :focus-visible{outline-color:Highlight}
  .c-button,.c-menu-toggle{border:2px solid ButtonText;background:ButtonFace;color:ButtonText}
  .c-theme-control,.c-theme-toggle{color:CanvasText}.c-theme-toggle{border-color:ButtonText;background:ButtonFace}.c-theme-toggle__track{background:Canvas}
  :where(button,input,select,textarea):disabled,[aria-disabled="true"]{border-color:GrayText;color:GrayText;opacity:1}
  .c-alert,.c-error-summary,.c-success,.c-contact-card{border-color:CanvasText;background:Canvas;color:CanvasText}
  .c-member-card,.c-home-path,.c-empty-state,.c-fees-table th,.c-fees-table td{border-color:CanvasText}
  .c-region-panel,.c-site-footer{background:Canvas;color:CanvasText;border:1px solid CanvasText}
  .c-site-footer a{color:LinkText}.c-region-art{display:none}
}
