@font-face{font-family:"Noto Serif JP";src:url("assets/noto-serif-jp.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Noto Sans JP";src:url("assets/noto-sans-jp.woff2") format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Chong Xi Small Seal";src:url("assets/chongxi_seal_subset.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+5357,U+8588,U+9580}
:root{
  --brand:#712b7d;--brand-hover:#572060;--ink:#35173c;--text:#463c49;--muted:#716575;
  --wash:#f5eff7;--line:#e2d7e6;--paper:#fff;--footer:#42b7e3;--error:#ad283b;--success:#286047;
  --font-body:"Noto Sans JP","Yu Gothic",sans-serif;--font-heading:"Noto Serif JP","Yu Mincho",serif;
  --display:3.125rem;--h1:2.625rem;--detail:2.25rem;--h2:1.875rem;--h3:1.5rem;
  --body:1.25rem;--label:1.125rem;--meta:1rem;--space:8px;--container:1248px;
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--brand) var(--wash)}body{margin:0;color:var(--text);background:var(--paper);font-family:var(--font-body);font-size:var(--body);line-height:1.9;-webkit-font-smoothing:antialiased}::selection{background:#e2cde8;color:var(--ink)}
button,input,select,textarea{font:inherit}button,a,input,summary{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:var(--brand);text-decoration:none;text-underline-offset:5px}a:hover{text-decoration:underline}button{cursor:pointer}button:disabled{cursor:not-allowed}
:focus-visible{outline:3px solid var(--brand);outline-offset:4px}h1[tabindex="-1"]:focus{outline:none}input{caret-color:var(--brand)}
h1,h2,h3,h4,p,figure,dl{margin:0}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--ink);font-weight:600;line-height:1.55;overflow-wrap:anywhere}h1{font-size:var(--h1)}h2{font-size:var(--h2)}h3{font-size:var(--h3)}p{max-width:72ch}img{display:block;max-width:100%}svg{display:block;flex-shrink:0}small,.meta{font-size:var(--meta);color:var(--muted)}
.wrap{width:min(calc(100% - 112px),var(--container));margin-inline:auto}.narrow{max-width:1040px}.reading{max-width:800px}.muted{color:var(--muted)}.purple{color:var(--brand)}.serif{font-family:var(--font-heading)}.tabular{font-variant-numeric:tabular-nums}.prose p+p{margin-top:16px}.prose h3{margin:32px 0 16px}.flow>*+*{margin-top:24px}.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.skip-link{position:fixed;left:16px;top:-80px;padding:12px 20px;background:white;z-index:100}.skip-link:focus{top:12px}
.topbar{background:var(--brand);color:#fff;font-size:var(--meta)}.topbar .wrap{display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:128px}.topbar p{font-size:var(--meta);letter-spacing:.08em}.topbar a{color:white;display:flex;gap:8px;align-items:center;min-height:48px}
.masthead{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:10}.nav-inner{display:flex;min-height:96px;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;color:var(--brand);flex-shrink:0}.brand:hover{text-decoration:none}.brand-seal{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;outline:1px solid currentColor;outline-offset:-5px;font-family:var(--font-heading);font-size:18px}.brand-name{font-family:var(--font-heading);font-size:21px;line-height:1.45;font-weight:600}.brand-name small{display:block;font-family:var(--font-body);font-size:12px;font-weight:400;color:inherit;letter-spacing:.08em}.heritage-mark{font-family:var(--font-heading);font-size:24px;font-weight:600;letter-spacing:.18em;color:var(--brand);white-space:nowrap}.desktop-nav{display:flex;align-items:center;gap:26px}.desktop-nav>a{font-size:var(--label);color:var(--text);padding:14px 0;position:relative;white-space:nowrap}.desktop-nav>a[aria-current=page]{color:var(--brand)}.desktop-nav>a[aria-current=page]:after{content:"";position:absolute;bottom:4px;height:2px;background:var(--brand);inset-inline:0}.desktop-nav .button{padding:12px 20px;color:white;min-height:48px}.menu-toggle{display:none;background:transparent;border:0;color:var(--brand);padding:12px;min-width:48px;min-height:48px}.mobile-nav{display:none}
.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;background:var(--brand);border:1px solid var(--brand);color:#fff;min-height:52px;padding:12px 28px;font-size:var(--label);font-weight:500;line-height:1.6;transition:background .2s var(--ease),border-color .2s var(--ease)}.button:hover{text-decoration:none;background:var(--brand-hover);border-color:var(--brand-hover)}.button.secondary{background:transparent;color:var(--brand)}.button.secondary:hover{background:var(--wash)}.button:disabled,.button.disabled{background:#eee8ef;color:#796b7d;border-color:#ded4e1}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:var(--label);min-height:44px}.button-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}.button.block{width:100%}
.footer{background:var(--footer);color:var(--ink);margin-top:0}.footer .wrap{padding-block:16px 10px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:28px}.footer .brand{color:var(--ink)}.footer .brand-seal{width:36px;height:36px;font-size:14px}.footer .brand-name{font-size:16px}.footer .brand-name small{font-size:10px}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a{font-size:16px;color:var(--ink);min-height:36px;display:inline-flex;align-items:center}.copyright{border-top:1px solid rgba(53,23,60,.25);margin-top:12px;padding-top:8px;font-size:14px;color:var(--ink)}
.home-hero{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center;padding-block:72px}.hero-copy h1{font-size:var(--display);line-height:1.6;letter-spacing:.035em}.hero-copy p{margin-top:40px;color:var(--muted)}.hero-copy .button{margin-top:28px;min-width:0;min-height:48px;padding:10px 22px}.hero-photo{margin:0}.hero-photo figcaption{padding:14px 20px;background:var(--wash);font-size:var(--meta);color:var(--brand);display:flex;justify-content:space-between;gap:12px}.photo-window{position:relative;width:100%;overflow:hidden;background:var(--wash)}.photo-window img{position:absolute;max-width:none;width:var(--iw);height:auto;left:0;top:0;transform:translate(var(--ix),var(--iy))}.photo-window.native img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
.motto{background:var(--wash)}.motto .wrap{padding-block:20px;display:flex;align-items:center;gap:40px;justify-content:space-between}.motto-title{font-size:24px;color:var(--brand);letter-spacing:.12em;white-space:nowrap}.motto p{color:var(--muted);font-size:var(--label);flex:1}.section{padding-block:64px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:32px}.section-heading p{font-size:var(--label);color:var(--muted)}.news-row{display:grid;grid-template-columns:112px 94px 1fr 24px;gap:24px;align-items:center;padding-block:22px;border-top:1px solid var(--line);color:var(--text);min-height:88px}.news-row:last-child{border-bottom:1px solid var(--line)}.news-row:hover{background:var(--wash);text-decoration:none}.news-row time,.news-row .date{font-size:var(--meta);color:var(--muted);font-variant-numeric:tabular-nums}.tag{display:inline-flex;justify-content:center;align-items:center;padding:3px 10px;min-height:28px;font-size:var(--meta);color:var(--brand);border:1px solid var(--line);white-space:nowrap}.news-row svg{color:var(--brand)}.news-title{font-size:var(--body)}
.page-title{background:var(--wash)}.page-title .wrap{display:grid;grid-template-columns:1fr .65fr;gap:48px;align-items:center;min-height:180px;padding-block:32px}.page-title p{color:var(--muted);font-size:var(--label)}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 14px;font-size:var(--meta);align-items:center}.breadcrumb a{color:var(--muted)}.breadcrumb li:last-child{color:var(--brand)}
.split{display:grid;grid-template-columns:.76fr 1.24fr;gap:80px}.statement{font-size:38px;line-height:1.8}.organization-name{font-size:24px}.english-name{font-size:var(--meta);color:var(--muted);margin:8px 0 28px}.quote{background:var(--wash);padding:24px 28px;margin:32px 0;font-family:var(--font-heading);font-size:20px;color:var(--brand)}.facts{margin-top:24px}.facts>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}.facts dt{font-size:var(--label);color:var(--muted)}.facts dd{margin:0;font-size:var(--body);overflow-wrap:anywhere}.principles{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:64px}.principles>div{padding-top:24px;border-top:1px solid var(--line)}.principles h3{margin-bottom:8px}.principles p{font-size:var(--label);color:var(--muted)}
.history-lead{display:grid;grid-template-columns:1.12fr .88fr;gap:64px;align-items:start}.history-date{font-size:var(--label);color:var(--brand);display:block;margin-bottom:12px}.history-lead h2{margin-bottom:24px}.photo-caption{font-size:var(--meta);color:var(--muted);margin-top:12px}.year{font-family:var(--font-heading);font-size:72px;line-height:1.3;color:#97759f;margin-bottom:20px}.history-copy{padding-top:64px}.history-copy h3{font-size:24px;line-height:1.8;margin-bottom:24px}.timeline{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.timeline>article{border-top:1px solid var(--line);padding-top:24px}.timeline time{color:var(--brand);font-size:var(--label);display:block;margin:16px 0 4px}.timeline h3{font-size:18px}.timeline p{font-size:var(--label);color:var(--muted);margin-top:12px}.timeline .photo-window{aspect-ratio:1.48}
.article-meta{display:flex;align-items:center;gap:24px;margin-bottom:24px;font-size:var(--meta);color:var(--muted)}.article-title{font-size:var(--detail);margin-bottom:24px}.article-intro{font-size:18px;color:var(--brand);line-height:1.9;margin-bottom:40px}.article-body{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}.article-body h3{font-size:24px;margin-bottom:16px}.notice{padding:20px 24px;background:var(--wash);color:var(--muted);font-size:var(--label);margin-top:32px}.article-back{margin-top:40px;border-top:1px solid var(--line);padding-top:20px}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.event-grid .photo-window{aspect-ratio:410/215!important}.event-card{min-width:0}.event-card h3{font-size:22px;margin:18px 0 12px}.event-card .tag{margin-top:20px}.event-card p{color:var(--muted);font-size:var(--label)}.event-card .event-info{border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.event-card>a{display:block;color:inherit}.event-card>a:hover{text-decoration:none}.event-card>a:hover h3{text-decoration:underline;text-underline-offset:6px}.event-layout{display:grid;grid-template-columns:1fr .85fr;gap:64px}.event-layout .event-title{font-size:var(--detail);margin:20px 0 28px}.event-layout .facts{margin-top:32px}
.membership-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.membership-copy p{margin-top:28px;color:var(--muted)}.membership-docs{margin-top:44px;padding-top:24px;border-top:1px solid var(--line)}.membership-docs h3{margin-bottom:16px}.document-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--brand);font-size:var(--label)}.document-link small{font-size:var(--meta);white-space:nowrap}.steps{display:flex;gap:0;list-style:none;padding:0;margin:0 0 36px;border-bottom:1px solid var(--line)}.steps li{flex:1;padding:0 8px 16px;text-align:center;font-size:var(--label);color:var(--muted);border-bottom:2px solid transparent}.steps li.active{color:var(--brand);border-color:var(--brand);font-weight:600}.steps span{display:block;font-size:var(--meta);margin-bottom:4px}.form-panel{border:1px solid var(--line);padding:32px}.form-panel h2{margin-bottom:8px}.form-note{font-size:var(--label);color:var(--muted);margin-bottom:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field.full{grid-column:1/-1}.field label{display:block;font-size:var(--label);font-weight:500;margin-bottom:8px}.required{color:var(--brand);font-size:var(--meta);margin-left:8px}.optional{font-size:var(--meta);color:var(--muted);margin-left:8px}input[type=text],input[type=email]{display:block;width:100%;height:52px;background:#fff;border:1px solid #8ccce2;border-radius:0;padding:10px 12px;font-size:18px;color:var(--text)}input::placeholder{color:var(--muted);opacity:1}input:hover{border-color:var(--brand)}input[aria-invalid=true]{border-color:var(--error);background:#fff7f7}.field-error{color:var(--error);font-size:var(--label);line-height:1.6;margin-top:8px}.error-summary{background:#fff2f3;border:1px solid var(--error);padding:16px 20px;margin-bottom:24px;color:var(--error);font-size:var(--label)}.bank-details{margin-top:32px;padding:24px;background:var(--wash);border:1px solid var(--line)}.bank-details h3{margin-bottom:14px}.bank-details dl{margin:0}.bank-details dl>div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:10px 0;border-top:1px solid var(--line)}.bank-details dt{font-size:var(--label);color:var(--muted)}.bank-details dd{margin:0;font-size:var(--label);color:var(--ink)}.check-label{display:flex;align-items:flex-start;gap:12px;font-size:var(--label);margin-top:24px;cursor:pointer}.check-label input{accent-color:var(--brand);width:20px;height:20px;margin:4px 0;flex-shrink:0}.privacy{margin-top:24px;font-size:var(--label);color:var(--muted)}.privacy summary{cursor:pointer;color:var(--brand);min-height:44px}.privacy p{padding-top:8px}.prototype-note{margin-top:20px;font-size:var(--meta);color:var(--muted)}.confirmation{max-width:820px;margin-inline:auto}.confirmation .form-panel{padding:40px}.confirmation h2{margin-bottom:16px}.confirmation .facts{margin-top:28px}.confirmation .button-row{margin-top:32px}.confirmation .button-row>*{flex:1}.status-panel{text-align:center;padding:48px 40px;border:1px solid var(--line);max-width:820px;margin:auto}.status-panel h2{margin-top:20px}.status-panel>p{margin:20px auto 0}.status-symbol{color:var(--success);margin:auto;display:flex;justify-content:center}.status-panel .button-row{justify-content:center}.failure .status-symbol{color:var(--error)}.spinner{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.officers{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:28px 0 48px}.officers>div{background:var(--wash);padding:24px}.officers h3{margin-bottom:12px}.people{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:28px}.people h3{margin-top:16px}.people p{font-size:var(--label);color:var(--muted);margin-top:4px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact-list{margin-top:36px}.contact-item{border-top:1px solid var(--line);padding:22px 0}.contact-item dt{font-size:var(--label);color:var(--muted);margin-bottom:8px}.contact-item dd{margin:0;font-size:20px;color:var(--brand);overflow-wrap:anywhere}.wechat-panel{background:var(--wash);padding:40px}.wechat-panel h3{font-size:24px;margin-bottom:20px}.wechat-pending{border:1px solid #c4b2ca;background:white;aspect-ratio:1;max-width:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--brand);margin:28px 0;font-size:var(--label);gap:12px}.copy-action{border:0;background:none;color:var(--brand);font-size:var(--label);text-decoration:underline;padding:8px 0;min-height:44px}.copy-status{font-size:var(--label);min-height:28px;color:var(--success)}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}.gallery-item{margin:0}.gallery-item.featured{grid-column:span 2}.gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--wash)}.gallery-item.featured img{aspect-ratio:16/9}.gallery-item figcaption{display:flex;gap:14px;align-items:baseline;padding-top:12px;color:var(--muted);font-size:var(--label)}.gallery-item figcaption span{color:var(--brand);font-size:var(--meta);font-variant-numeric:tabular-nums}
.gallery-item figcaption .gallery-caption-text{color:var(--muted);font-size:var(--label);font-variant-numeric:normal}.editor-gallery-add{width:100%;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;border:1px dashed #a889b0;border-radius:12px;background:var(--wash);color:var(--brand);font:inherit;text-align:center;transition:background .18s var(--ease),border-color .18s var(--ease)}.editor-gallery-add strong{font-size:16px}.editor-gallery-add span{font-size:13px;color:var(--muted)}.editor-gallery-add:hover{background:#eee3f1;border-color:var(--brand)}.editor-gallery-add:focus-visible{outline:3px solid rgba(113,43,125,.28);outline-offset:3px}
.spec-section{padding-block:40px;border-bottom:1px solid var(--line)}.spec-section h2{margin-bottom:24px}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}.swatch-chip{height:80px;border:1px solid var(--line);margin-bottom:12px}.spec-table{width:100%;border-collapse:collapse;font-size:var(--label)}.spec-table th,.spec-table td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}.spec-table th{background:var(--wash);color:var(--ink);font-weight:500}.spec-demo{display:flex;gap:20px;flex-wrap:wrap;align-items:center}.spec-demo .field{width:280px}.diagram{white-space:pre-wrap;font-family:var(--font-body);font-size:16px;line-height:2;color:var(--ink);background:var(--wash);padding:28px}.spec-title{color:var(--brand);font-size:16px;margin:24px 0 12px}
/* v1.5 client refinements: doubled purple top band, light-blue footer and expanded gallery. */
::selection{background:#e2cde8;color:var(--ink)}
.heritage-mark{font-family:"Chong Xi Small Seal",var(--font-heading);font-size:50pt;font-weight:400;letter-spacing:-.14em;line-height:1;white-space:nowrap}
.nav-inner{gap:14px}
.desktop-nav{gap:16px}
.button{border-radius:10px}
.tag{border-radius:7px}
.footer-links a{color:var(--ink)}
.copyright{color:var(--ink)}
input[type=text],input[type=email]{border-color:#aa95b0}
.event-card .tag{margin-top:14px}
.event-card:first-child .photo-window.native img{object-position:center 55%}
.editor-entry{opacity:.72}
.editor-mode-control{position:fixed;right:18px;bottom:18px;z-index:1001;display:flex;align-items:center;gap:14px;padding:10px 12px 10px 16px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 36px rgba(53,23,60,.18)}
.editor-mode-control span:first-child{display:flex;flex-direction:column;line-height:1.3}.editor-mode-control strong{font-size:13px;letter-spacing:.08em}.editor-mode-control small{font-size:11px;color:var(--muted)}
.editor-mode-control button[role=switch]{width:48px;height:28px;border:0;border-radius:999px;background:#c9bdcc;padding:3px;transition:background .2s var(--ease)}.editor-mode-control button[role=switch] span{display:block;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 3px 8px rgba(53,23,60,.22);transition:transform .2s var(--ease)}.editor-mode-control button[aria-checked=true]{background:var(--brand)}.editor-mode-control button[aria-checked=true] span{transform:translateX(20px)}
.editor-toolbar{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;display:grid;grid-template-columns:minmax(250px,1fr) auto auto;gap:18px;align-items:center;padding:14px 16px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px rgba(53,23,60,.22)}.editor-toolbar-copy{display:flex;flex-direction:column;min-width:0;line-height:1.35}.editor-toolbar-copy strong{font-size:13px;letter-spacing:.12em;color:var(--brand)}.editor-toolbar-copy span{font-size:13px}.editor-toolbar-copy small{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.editor-toolbar-copy small[data-error=true]{color:var(--error)}
.editor-format,.editor-actions{display:flex;gap:8px;align-items:center}.editor-toolbar button,.editor-toolbar a{min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font-size:13px;line-height:1.4;white-space:nowrap}.editor-toolbar button:hover,.editor-toolbar a:hover{background:var(--wash);text-decoration:none}.editor-toolbar button:disabled{opacity:.42}.editor-actions a{display:inline-flex;align-items:center;background:var(--brand);border-color:var(--brand);color:#fff}
.editor-actions a:hover{background:var(--brand-hover);border-color:var(--brand-hover);color:#fff}
.editor-active{padding-bottom:100px}.editor-active [data-edit-key]{cursor:text;border-radius:4px;outline:1px dashed transparent;outline-offset:4px;transition:outline-color .18s var(--ease),background .18s var(--ease)}.editor-active [data-edit-key]:hover{outline-color:#a889b0;background:rgba(245,239,247,.68)}.editor-active [data-edit-key].editor-selected{outline:2px solid var(--brand);background:#fff7ff}
.editor-active .editor-mode-control{bottom:94px}
.editor-image-target{position:relative}.editor-image-action{position:absolute;right:12px;top:12px;z-index:6;min-height:40px;padding:8px 12px;border:1px solid rgba(255,255,255,.65);border-radius:9px;background:rgba(53,23,60,.9);color:#fff;font-size:13px;box-shadow:0 8px 22px rgba(53,23,60,.24)}.editor-image-action:hover{background:var(--brand)}
@media(max-width:980px){.editor-toolbar{grid-template-columns:1fr;gap:10px;max-height:46vh;overflow:auto}.editor-format,.editor-actions{flex-wrap:wrap}.editor-active{padding-bottom:250px}.editor-mode-control{right:10px;bottom:10px}.editor-active .editor-mode-control{bottom:calc(46vh + 18px)}.editor-toolbar{left:8px;right:8px;bottom:8px}.editor-toolbar button,.editor-toolbar a{flex:1}.editor-toolbar-copy small{white-space:normal}}
@media(prefers-reduced-motion:reduce){.editor-mode-control button span,.editor-active [data-edit-key]{transition:none}}
@media(min-width:1600px){.wrap{max-width:1328px}.home-hero{gap:80px}}
@media(max-width:1199px){.wrap{width:calc(100% - 64px)}.desktop-nav{gap:14px}.desktop-nav>a{font-size:15px}.brand-name{font-size:19px}.heritage-mark{font-size:19px}.home-hero{gap:48px}.hero-copy h1{font-size:44px}.membership-layout,.split{gap:48px}.event-layout,.contact-layout{gap:40px}.desktop-nav .button{padding-inline:12px}}
@media(max-width:1023px){.desktop-nav{display:none}.menu-toggle{display:flex;align-items:center;justify-content:center}.mobile-nav:not([hidden]){display:block;background:white;border-top:1px solid var(--line);padding:16px 32px 24px}.mobile-nav a{display:block;padding:12px 4px;border-bottom:1px solid var(--line);font-size:18px}.mobile-nav a[aria-current=page]{font-weight:600;background:var(--wash)}.mobile-nav .button{margin-top:16px;border-bottom:0}.nav-inner{min-height:84px}.home-hero{grid-template-columns:.9fr 1.1fr;gap:32px}.hero-copy h1{font-size:40px}.motto .wrap{flex-wrap:wrap;gap:12px 24px}.motto p{display:none}.page-title .wrap{grid-template-columns:1fr .75fr;gap:28px}.page-title h1{font-size:36px}.event-grid{gap:24px}.event-card h3{font-size:22px}.membership-layout{grid-template-columns:1fr}.membership-copy .statement{font-size:32px}.membership-copy p{margin-top:16px}.split{grid-template-columns:.75fr 1.25fr;gap:40px}.statement{font-size:30px}.history-lead{gap:40px}.footer-top{align-items:flex-start}.footer-links{max-width:460px;gap:8px 20px}.swatches{grid-template-columns:repeat(3,1fr)}}
@media(max-width:767px){
 :root{--display:2.125rem;--h1:1.875rem;--detail:1.75rem;--h2:1.5rem;--h3:1.25rem}
 .wrap{width:calc(100% - 40px)}.topbar .wrap{min-height:96px}.topbar p{font-size:12px;letter-spacing:.03em}.topbar a{display:none}.nav-inner{min-height:80px;gap:8px}.brand{gap:10px}.brand-seal{width:38px;height:38px;font-size:15px}.brand-name{font-size:16px}.brand-name small{font-size:10px}.heritage-mark{font-size:18px;letter-spacing:.1em;margin-left:auto}.menu-toggle{padding:10px}.mobile-nav:not([hidden]){padding-inline:20px}
 .home-hero{display:flex;flex-direction:column;gap:36px;padding-block:48px}.hero-copy{width:100%}.hero-copy h1{font-size:var(--display);line-height:1.6;letter-spacing:.015em}.hero-copy p{margin-top:24px;line-height:1.9}.hero-copy .button{margin-top:24px;min-width:0;align-self:flex-start}.hero-photo{width:100%}.hero-photo figcaption{padding:12px;font-size:14px}.hero-photo figcaption span:last-child{display:none}.motto .wrap{padding-block:20px;gap:8px}.motto-title{font-size:20px;letter-spacing:.08em}.motto .text-link{width:100%}.section{padding-block:40px}.section-heading{display:block;margin-bottom:24px}.section-heading p{margin-top:12px}.section-heading .text-link{margin-top:8px}.news-row{grid-template-columns:110px 1fr 20px;gap:8px 16px;padding:20px 0}.news-row .tag{justify-self:start}.news-title{grid-column:1/3;grid-row:2}.news-row>svg{grid-column:3;grid-row:1/3}.page-title .wrap{display:block;min-height:0;padding-block:24px 28px}.page-title h1{font-size:var(--h1)}.page-title p{margin-top:14px}.breadcrumb{font-size:14px;margin-bottom:14px;gap:8px}.breadcrumb li:last-child{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .split,.history-lead,.article-body,.event-layout,.contact-layout{grid-template-columns:1fr;gap:32px}.statement{font-size:28px;line-height:1.8}.organization-name{font-size:22px}.quote{font-size:18px;padding:20px;margin-block:24px}.facts>div{grid-template-columns:90px 1fr;gap:16px;padding-block:16px}.principles{grid-template-columns:1fr 1fr;gap:24px;margin-top:40px}.principles h3{font-size:20px}.history-copy{padding-top:0}.year{font-size:56px;margin-bottom:16px}.history-copy h3{font-size:22px}.timeline{grid-template-columns:1fr;gap:32px;margin-top:32px}.timeline .photo-window{max-width:100%;aspect-ratio:1.48}.timeline h3{font-size:20px}.article-title{font-size:var(--detail);line-height:1.6}.article-intro{font-size:16px;margin-bottom:28px}.article-body h3{font-size:22px}.notice{padding:20px;margin-top:28px}.article-meta{gap:16px;margin-bottom:20px}.event-grid{grid-template-columns:1fr;gap:36px}.event-card h3{font-size:22px}.event-layout .event-title{font-size:var(--detail)}.event-layout>.photo-window{aspect-ratio:1.15!important}.event-layout .facts{margin-top:24px}
 .membership-layout{gap:32px}.membership-copy .statement{font-size:28px}.membership-docs{margin-top:32px}.form-panel{padding:24px 20px}.form-grid{grid-template-columns:1fr;gap:20px}.field.full{grid-column:auto}.bank-details{padding:20px}.bank-details dl>div{grid-template-columns:1fr;gap:2px}.steps{margin-bottom:28px}.steps li{font-size:15px;padding-inline:2px}.steps span{font-size:14px}.confirmation .form-panel{padding:24px 20px}.confirmation .facts>div{grid-template-columns:1fr;gap:4px}.button-row{flex-direction:column;gap:12px;margin-top:24px}.button-row>*{width:100%}.status-panel{padding:32px 24px}.officers{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}.officers>div{padding:20px 16px}.officers h3{font-size:18px}.people{grid-template-columns:1fr;gap:32px}.people h3{font-size:20px}.gallery-grid{grid-template-columns:1fr;gap:28px}.gallery-item.featured{grid-column:auto}.gallery-item img,.gallery-item.featured img{aspect-ratio:4/3}.contact-list{margin-top:28px}.contact-item dd{font-size:18px}.wechat-panel{padding:28px 24px}.wechat-pending{max-width:200px}.footer .wrap{padding-block:14px 10px}.footer-top{display:block}.footer-links{margin-top:14px;gap:4px 18px}.copyright{font-size:12px;margin-top:10px}.spec-table{font-size:13px}.spec-table th,.spec-table td{padding:10px 6px}.swatches{grid-template-columns:1fr 1fr}.diagram{font-size:14px;padding:20px;line-height:2.1}.spec-section{padding-block:28px}
}
@media(max-width:767px){.membership-copy p+p{display:none}}
@media(max-width:359px){.wrap{width:calc(100% - 32px)}.brand-name{font-size:14px}.hero-copy h1{font-size:29px}.topbar p{font-size:9px}.form-panel{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.skip-link,.menu-toggle{display:none}.footer{break-inside:avoid}.section{break-inside:auto}}
@media(max-width:1199px){.heritage-mark{font-size:32pt}}
@media(max-width:767px){.heritage-mark{font-size:23pt;letter-spacing:-.16em}}
@media(max-width:359px){.heritage-mark{font-size:19pt}}
