:root {
	--paper:#f6f5ef;
	--surface:#eeeee4;
	--ink:#283c34;
	--muted:#617067;
	--deep:#263e35;
	--lime:#dfe8bd;
	--line:#d5dcd0;
	--rust:#a96043;
	--max:1320px;
	--space:100px;
	--serif:Georgia,'Times New Roman',serif;
}
* {
	box-sizing:border-box;
}
html {
	scroll-behavior:smooth;
	scroll-padding-top:110px;
}
body {
	margin:0;
	background:var(--paper);
	color:var(--ink);
	font-family:Arial,'Noto Sans KR','Apple SD Gothic Neo','Malgun Gothic',sans-serif;
	word-break:keep-all;
	overflow-wrap:break-word;
}
button,input,select,textarea {
	font:inherit;
}
button,a {
	-webkit-tap-highlight-color:transparent;
}
button {
	cursor:pointer;
}
a {
	color:inherit;
	text-decoration:none;
}
img {
	display:block;
	max-width:100%;
	width:100%;
	object-fit:cover;
}
h1,h2,h3,h4,p {
	margin:0;
}
h1,h2,h3 {
	font-weight:500;
	letter-spacing:-.065em;
}
p {
	line-height:1.9;
}
a,button {
	touch-action:manipulation;
}
button {
	color:inherit;
}
::selection {
	background:var(--lime);
	color:var(--deep);
}
:focus-visible {
	outline:3px solid var(--rust);
	outline-offset:5px;
}
.skip {
	position:fixed;
	top:-100px;
	left:20px;
	z-index:200;
	background:var(--lime);
	padding:16px;
}
.skip:focus {
	top:15px;
}
.wrap {
	width:min(calc(100% - 96px),var(--max));
	margin:auto;
}
.section {
	padding-block:var(--space);
}
.section.tinted {
	background:var(--surface);
}
.section.dark {
	background:var(--deep);
	color:var(--paper);
}
.section.dark .lead,.section.dark .muted {
	color:#ced9ce;
}
.section.dark .kicker {
	color:var(--lime);
}
.kicker {
	display:flex;
	align-items:center;
	gap:12px;
	color:#58715f;
	font:700 11px/1.4 Arial,sans-serif;
	letter-spacing:.17em;
	text-transform:uppercase;
}
.kicker:before {
	content:'';
	width:24px;
	height:1px;
	background:currentColor;
}
.section-title {
	font-size:clamp(30px,3.4vw,48px);
	line-height:1.35;
	margin-top:18px;
}
.lead {
	font-size:16px;
	line-height:1.95;
	color:var(--muted);
	max-width:570px;
	margin-top:22px;
}
.muted {
	color:var(--muted);
}
.split-head {
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:44px;
	margin-bottom:42px;
}
.split-head .lead {
	max-width:410px;
}
.btn {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:26px;
	padding:16px 24px;
	min-height:52px;
	border:1px solid var(--deep);
	border-radius:3px;
	background:var(--deep);
	color:#fff;
	font-size:13px;
	font-weight:700;
	transition:transform .25s,background .25s;
}
.btn:hover {
	background:#385847;
	transform:translateY(-3px);
}
.btn.light {
	color:var(--deep);
	background:var(--lime);
	border-color:var(--lime);
}
.btn.outline {
	color:var(--ink);
	background:transparent;
	border-color:var(--line);
}
.dark .btn.outline,.hero-photo .btn.outline {
	color:#fff;
	border-color:#ffffff70;
}
.text-link {
	display:inline-flex;
	gap:22px;
	align-items:center;
	font-size:13px;
	font-weight:700;
	padding-bottom:8px;
	border-bottom:1px solid currentColor;
}
.arrow {
	display:inline-block;
	transition:transform .25s;
}
.btn:hover .arrow,.text-link:hover .arrow,.entry-card:hover .arrow,.topic:hover .arrow {
	transform:translate(4px,-3px);
}
.actions {
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:14px;
	margin-top:32px;
}
.tag {
	display:inline-flex;
	align-items:center;
	border:1px solid var(--line);
	border-radius:99px;
	padding:7px 12px;
	font-size:11px;
	line-height:1.3;
	letter-spacing:.02em;
}
.tag.solid {
	background:var(--lime);
	border-color:var(--lime);
}
.tags {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:26px;
}
.site-header {
	position:sticky;
	top:0;
	z-index:70;
	background:#f6f5eff2;
	border-bottom:1px solid var(--line);
	backdrop-filter:blur(16px);
}
.header-inner {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:24px;
	height:88px;
}
.brand {
	display:flex;
	align-items:center;
	gap:8px;
	white-space:nowrap;
	font-size:28px;
	font-weight:800;
	letter-spacing:-.075em;
}
.brand-mark {
	width:26px;
	height:26px;
	border:2px solid currentColor;
	border-radius:50%;
	display:inline-flex;
	align-items:center;
	justify-content:center;
}
.brand-mark:after {
	content:'';
	height:2px;
	width:14px;
	transform:rotate(-38deg);
	background:currentColor;
}
.brand-dot {
	color:#819259;
}
.nav {
	display:flex;
	align-items:center;
	gap:25px;
}
.nav-item {
	position:relative;
	display:flex;
	align-items:center;
	gap:7px;
	min-height:88px;
	font-size:13px;
	font-weight:700;
}
.nav-item>a {
	padding-block:22px;
}
.nav-item>a[aria-current] {
	color:#586b38;
}
.drop-toggle {
	border:0;
	background:transparent;
	padding:9px 5px;
	font-size:12px;
}
.dropdown {
	position:absolute;
	top:calc(100% - 5px);
	left:-24px;
	background:var(--paper);
	border:1px solid var(--line);
	width:216px;
	padding:14px;
	box-shadow:0 18px 35px #263e3514;
	visibility:hidden;
	opacity:0;
	transform:translateY(8px);
	transition:.2s;
}
.dropdown a {
	display:block;
	padding:12px 10px;
	font-weight:500;
	line-height:1.4;
	border-radius:2px;
}
.dropdown a:hover {
	background:var(--surface);
}
.nav-item:hover .dropdown,.nav-item:focus-within .dropdown,.nav-item.open .dropdown {
	visibility:visible;
	opacity:1;
	transform:none;
}
.nav-join {
	border:1px solid var(--line);
	padding:12px 16px;
	font-size:12px;
	font-weight:700;
}
.menu-toggle {
	display:none;
	border:0;
	background:transparent;
	font-size:23px;
	padding:12px;
}
.breadcrumb {
	font-size:11px;
	color:var(--muted);
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-bottom:32px;
}
.breadcrumb span {
	color:#819181;
}
.hero {
	position:relative;
	overflow:hidden;
	min-height:590px;
}
.hero .wrap {
	position:relative;
	z-index:2;
}
.hero h1 {
	font-size:clamp(42px,5.4vw,76px);
	line-height:1.2;
	max-width:800px;
	margin-top:25px;
}
.hero h1 em {
	color:#8a9868;
	font-style:normal;
}
.hero-copy {
	max-width:720px;
}
.hero-grid {
	display:grid;
	grid-template-columns:1.18fr 1fr;
	gap:60px;
	align-items:center;
}
.hero-photo {
	background:var(--deep);
	color:white;
	min-height:700px;
	display:flex;
	align-items:center;
}
.hero-photo .breadcrumb,.hero-photo .lead {
	color:#e1e7dc;
}
.hero-photo .kicker {
	color:var(--lime);
}
.hero-photo h1 em {
	color:var(--lime);
}
.hero-bg {
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	z-index:0;
}
.hero-photo:after {
	content:'';
	position:absolute;
	inset:0;
	z-index:1;
	background:linear-gradient(90deg,#18362ef2 0%,#1b3a31a8 42%,#1b3a3133 85%);
}
.hero-split .hero-visual {
	position:relative;
	margin-left:20px;
}
.hero-visual img {
	aspect-ratio:4/4.4;
	border-radius:2px;
}
.photo-caption {
	font-size:11px;
	color:var(--muted);
	margin-top:12px;
}
.float-note {
	position:absolute;
	bottom:32px;
	left:-40px;
	background:var(--lime);
	padding:28px 33px;
	min-width:240px;
	transform:rotate(-3deg);
	box-shadow:0 14px 30px #263e351a;
}
.float-note small {
	display:block;
	font-size:9px;
	letter-spacing:.17em;
}
.float-note strong {
	display:block;
	font-size:27px;
	font-family:var(--serif);
	font-weight:400;
	line-height:1.2;
	margin-top:14px;
	letter-spacing:-.04em;
}
.hero-editorial {
	text-align:center;
	background:var(--surface);
}
.hero-editorial .kicker {
	justify-content:center;
}
.hero-editorial h1,.hero-editorial .lead {
	margin-inline:auto;
}
.hero-editorial .actions {
	justify-content:center;
}
.hero-editorial .breadcrumb {
	justify-content:center;
}
.hero-orbit {
	width:165px;
	height:165px;
	border:1px solid #859778;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:15px;
	line-height:1.5;
	color:var(--deep);
	margin:35px auto 0;
	transform:rotate(-12deg);
}
.hero-number {
	font-family:var(--serif);
	font-size:clamp(180px,25vw,340px);
	line-height:.8;
	color:#d8e0cc;
	letter-spacing:-.09em;
	margin:20px 0 0;
}
.hero-quiet .hero-grid {
	grid-template-columns:1fr 1fr;
}
.hero-quiet .quiet-stack {
	display:grid;
	gap:14px;
	position:relative;
}
.quiet-tile {
	border:1px solid var(--line);
	padding:26px 32px;
	display:flex;
	gap:22px;
	align-items:center;
	background:var(--surface);
}
.quiet-tile:nth-child(2) {
	margin-left:40px;
	background:var(--lime);
}
.quiet-tile small {
	font:italic 28px var(--serif);
}
.quiet-tile h3 {
	font-size:19px;
	line-height:1.5;
}
.quiet-tile p {
	font-size:12px;
	color:var(--muted);
	margin-top:6px;
}
.explore-row {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:22px;
}
.explore-row.four {
	grid-template-columns:repeat(4,1fr);
}
.topic {
	display:flex;
	flex-direction:column;
	border-top:1px solid var(--line);
	padding:28px 0 18px;
	transition:background .3s,padding .3s;
}
.topic:hover {
	background:#e9ebdf;
	padding-inline:17px;
}
.topic-index {
	font:italic 34px var(--serif);
	color:#8b9d71;
	line-height:1;
}
.topic h3 {
	font-size:23px;
	margin:24px 0 12px;
}
.topic p {
	font-size:13px;
	color:var(--muted);
	max-width:300px;
}
.topic .topic-end {
	display:flex;
	justify-content:space-between;
	margin-top:auto;
	padding-top:24px;
	font-size:11px;
	font-weight:700;
}
.entry-grid {
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:26px;
}
.entry-grid.two {
	grid-template-columns:repeat(2,minmax(0,1fr));
}
.entry-grid.magazine {
	grid-template-columns:1.2fr 1fr 1fr;
}
.entry-card {
	display:block;
	min-width:0;
	background:#fffef9;
	border:1px solid var(--line);
	transition:transform .3s,box-shadow .3s;
}
.entry-card:hover {
	transform:translateY(-6px);
	box-shadow:0 20px 40px #263e350f;
}
.card-media {
	overflow:hidden;
	position:relative;
	aspect-ratio:1.48;
	background:#dce4d2;
}
.card-media img {
	height:100%;
	transition:transform .6s;
}
.entry-card:hover img {
	transform:scale(1.045);
}
.card-media .image-label {
	position:absolute;
	bottom:15px;
	left:15px;
	font-size:9px;
	letter-spacing:.06em;
	background:#f6f5efd9;
	color:var(--deep);
	padding:6px 8px;
}
.card-art {
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	position:relative;
	background:var(--surface);
	overflow:hidden;
}
.card-art.work {
	background:#dce3d3;
}
.card-art.rest {
	background:#e9dbc8;
}
.card-art.community {
	background:#d4ded9;
}
.card-art.about {
	background:#dde0ca;
}
.card-art .art-circle {
	position:absolute;
	width:170px;
	height:170px;
	border:1px solid #778c7659;
	border-radius:50%;
	top:18%;
	left:29%;
}
.card-art .art-circle:after {
	content:'';
	position:absolute;
	width:100%;
	height:100%;
	border:1px solid #778c7659;
	border-radius:50%;
	left:30px;
	top:18px;
}
.art-word {
	font:italic 35px var(--serif);
	z-index:1;
	color:#516b55;
	transform:rotate(-5deg);
}
.art-label {
	position:relative;
	font-size:9px;
	letter-spacing:.2em;
	margin-top:20px;
	color:#587060;
}
.card-body {
	padding:25px 26px;
}
.card-meta {
	display:flex;
	gap:9px;
	align-items:center;
	color:#60715b;
	font-size:10px;
	line-height:1.5;
	margin-bottom:14px;
}
.card-body h3 {
	font-size:22px;
	line-height:1.48;
	min-height:65px;
}
.card-body p {
	font-size:13px;
	color:var(--muted);
	margin-top:14px;
}
.card-footer {
	display:flex;
	justify-content:space-between;
	gap:12px;
	border-top:1px solid var(--line);
	margin-top:24px;
	padding-top:17px;
	font-size:10px;
	color:#637163;
}
.filter-bar {
	display:flex;
	gap:10px;
	flex-wrap:wrap;
	align-items:center;
	margin-bottom:30px;
}
.filter-btn {
	border:1px solid var(--line);
	background:transparent;
	border-radius:99px;
	padding:11px 18px;
	font-size:12px;
	min-height:42px;
}
.filter-btn[aria-pressed=true] {
	background:var(--deep);
	border-color:var(--deep);
	color:white;
}
.search-box {
	position:relative;
	margin-left:auto;
}
.search-box input {
	border:1px solid var(--line);
	background:transparent;
	min-height:43px;
	width:260px;
	padding:11px 14px;
	border-radius:3px;
	font-size:12px;
}
.count {
	font-size:11px;
	color:var(--muted);
	margin:-10px 0 26px;
}
.empty-results {
	background:var(--surface);
	padding:45px;
	text-align:center;
	border:1px solid var(--line);
	margin-top:25px;
}
.intro-grid {
	display:grid;
	grid-template-columns:1fr 1.1fr;
	gap:90px;
	align-items:center;
}
.intro-grid.reverse .intro-visual {
	order:2;
}
.intro-visual {
	position:relative;
}
.intro-visual img {
	aspect-ratio:1.05;
}
.image-strip {
	border:1px solid var(--line);
	padding:17px 21px;
	font-size:11px;
	display:flex;
	justify-content:space-between;
}
.intro-copy .section-title {
	max-width:560px;
}
.intro-copy .lead {
	margin-bottom:30px;
}
.quote {
	font:italic 25px/1.55 var(--serif);
	letter-spacing:-.04em;
	border-left:2px solid #9daf78;
	margin:28px 0;
	padding-left:22px;
}
.note-board {
	position:relative;
	min-height:395px;
	border:1px solid #becab5;
	background:#e3e7d6;
	padding:40px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.note-paper {
	width:83%;
	background:#fffef6;
	padding:32px 34px;
	box-shadow:0 20px 45px #263e351a;
	transform:rotate(-4deg);
	position:relative;
}
.note-paper:before {
	content:'';
	width:80px;
	height:20px;
	background:#afbe9890;
	position:absolute;
	top:-9px;
	left:calc(50% - 40px);
	transform:rotate(8deg);
}
.note-paper small {
	font-size:10px;
	letter-spacing:.14em;
}
.note-paper h3 {
	font-size:29px;
	line-height:1.5;
	margin:18px 0;
}
.note-lines {
	display:grid;
	gap:19px;
	margin-top:25px;
}
.note-lines span {
	height:1px;
	background:var(--line);
}
.steps {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:32px;
}
.step {
	border-top:1px solid var(--line);
	padding-top:28px;
}
.step .num {
	font:italic 42px var(--serif);
	color:#899d6a;
}
.step h3 {
	font-size:25px;
	line-height:1.4;
	margin:20px 0 14px;
}
.step p {
	color:var(--muted);
	font-size:14px;
}
.steps.vertical {
	grid-template-columns:1fr;
	gap:0;
}
.steps.vertical .step {
	display:grid;
	grid-template-columns:65px 1fr 1.2fr;
	gap:30px;
	padding:26px 0;
}
.steps.vertical .step h3 {
	margin:5px 0;
}
.steps.vertical .step p {
	padding-top:7px;
}
.framework-split {
	display:grid;
	grid-template-columns:.9fr 1.2fr;
	gap:70px;
}
.framework-split .split-head {
	display:block;
	margin:0;
}
.table-wrap {
	overflow-x:auto;
}
.comparison {
	width:100%;
	border-collapse:collapse;
	min-width:570px;
	font-size:13px;
}
.comparison th {
	text-align:left;
	font-weight:700;
	background:#e5e8d8;
}
.comparison th,.comparison td {
	padding:23px 22px;
	border-bottom:1px solid var(--line);
	line-height:1.7;
}
.comparison td:first-child {
	font-weight:700;
}
.toolkit {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:60px;
	align-items:start;
}
.checklist {
	border:1px solid var(--line);
	padding:30px 34px;
	background:#fffef8;
}
.checklist h3 {
	font-size:25px;
	margin-bottom:8px;
}
.checklist .helper {
	font-size:11px;
	color:var(--muted);
	margin-bottom:25px;
}
.check-item {
	display:flex;
	gap:14px;
	border-top:1px solid var(--line);
	padding:19px 0;
	font-size:14px;
	line-height:1.7;
	cursor:pointer;
}
.check-item input {
	width:18px;
	height:18px;
	accent-color:var(--deep);
	flex:none;
	margin-top:3px;
}
.check-item:has(input:checked) span {
	color:#7c896e;
	text-decoration:line-through;
}
.check-progress {
	display:flex;
	gap:20px;
	align-items:center;
	margin-top:15px;
	font-size:11px;
	color:var(--muted);
}
progress {
	width:100%;
	height:6px;
	accent-color:var(--deep);
}
.tool-note {
	border-top:1px solid var(--line);
	margin-top:30px;
	padding-top:20px;
	font-size:13px;
	line-height:1.8;
	color:var(--muted);
}
.wide-story {
	min-height:510px;
	position:relative;
	display:flex;
	align-items:flex-end;
	color:white;
	background:var(--deep);
}
.wide-story .cover-image {
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}
.wide-story:before {
	content:'';
	position:absolute;
	inset:0;
	background:linear-gradient(90deg,#18382ee6,#18382e54);
	z-index:1;
}
.wide-story .wrap {
	position:relative;
	z-index:2;
}
.wide-story .kicker {
	color:#dfe9bd;
}
.wide-story h2 {
	font-size:clamp(34px,4.2vw,60px);
	line-height:1.35;
	max-width:850px;
	margin:24px 0;
}
.wide-story p {
	color:#e0e7dc;
	max-width:570px;
	font-size:15px;
}
.text-banner {
	position:relative;
	overflow:hidden;
}
.text-banner h2 {
	font-size:clamp(35px,4.6vw,66px);
	line-height:1.4;
	margin:24px 0;
}
.text-banner h2 span {
	color:var(--lime);
}
.text-banner .wrap {
	position:relative;
}
.stamp {
	position:absolute;
	right:0;
	top:0;
	border:1px solid #a7b994;
	width:150px;
	height:150px;
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:13px;
	text-align:center;
	line-height:1.8;
	color:var(--lime);
	transform:rotate(-15deg);
}
.text-banner p {
	max-width:690px;
	color:#d5dfd4;
	font-size:15px;
}
.connected {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:40px;
}
.connected-card {
	border:1px solid var(--line);
	padding:34px;
	position:relative;
	background:var(--surface);
	transition:background .3s;
}
.connected-card:hover {
	background:#e2e7d5;
}
.connected-card small {
	font-size:10px;
	letter-spacing:.12em;
	color:var(--muted);
}
.connected-card h3 {
	font-size:27px;
	margin:19px 0 15px;
}
.connected-card p {
	font-size:13px;
	color:var(--muted);
	max-width:400px;
}
.connected-card .arrow {
	position:absolute;
	right:30px;
	top:32px;
	font-size:23px;
}
.faq-layout {
	display:grid;
	grid-template-columns:.8fr 1.2fr;
	gap:75px;
}
.faq details {
	border-top:1px solid var(--line);
	padding:24px 0;
}
.faq details:last-child {
	border-bottom:1px solid var(--line);
}
.faq summary {
	cursor:pointer;
	list-style:none;
	font-size:17px;
	line-height:1.65;
	display:flex;
	justify-content:space-between;
	gap:30px;
}
.faq summary::-webkit-details-marker {
	display:none;
}
.faq summary:after {
	content:'+';
	font-size:25px;
	color:#758869;
}
.faq details[open] summary:after {
	content:'−';
}
.faq details p {
	font-size:14px;
	color:var(--muted);
	padding:22px 35px 0 0;
}
.cta {
	background:#e6ead9;
}
.cta-layout {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:50px;
}
.cta .section-title {
	max-width:730px;
}
.cta .actions {
	flex:none;
	margin:0;
}
.site-footer {
	padding:70px 0 28px;
	background:#20362d;
	color:var(--paper);
}
.footer-grid {
	display:grid;
	grid-template-columns:1.7fr 1fr 1fr;
	gap:60px;
}
.footer-grid p {
	font-size:13px;
	color:#c6d2c0;
	margin-top:24px;
}
.footer-col h2 {
	font-size:11px;
	font-weight:700;
	letter-spacing:.13em;
	margin:8px 0 22px;
}
.footer-col a {
	display:block;
	font-size:12px;
	margin-top:15px;
	color:#d4dccf;
}
.footer-bottom {
	display:flex;
	justify-content:space-between;
	gap:25px;
	border-top:1px solid #ffffff28;
	margin-top:60px;
	padding-top:24px;
	font-size:10px;
	color:#a9b9a1;
}
.utility-note {
	font-size:11px;
	line-height:1.8;
	color:var(--muted);
	margin-top:18px;
}
.draft-note {
	display:inline-flex;
	gap:8px;
	color:#67725e;
	font-size:11px;
	line-height:1.7;
	margin-top:18px;
}
.article-hero .section-title {
	font-size:clamp(37px,4.6vw,65px);
	line-height:1.34;
	max-width:1000px;
}
.article-meta {
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	font-size:12px;
	color:var(--muted);
	margin-top:28px;
}
.article-cover {
	height:490px;
	overflow:hidden;
	border-bottom:1px solid var(--line);
}
.article-cover>img,.article-cover>.card-art {
	height:100%;
}
.article-cover .art-word {
	font-size:70px;
}
.reading-layout {
	display:grid;
	grid-template-columns:230px minmax(0,720px);
	gap:75px;
	justify-content:center;
}
.article-aside {
	position:sticky;
	top:120px;
	align-self:start;
	border-top:1px solid var(--line);
	padding-top:24px;
}
.article-aside h2 {
	font-size:12px;
	letter-spacing:0;
	font-weight:700;
	margin-bottom:20px;
}
.article-aside a {
	display:block;
	font-size:12px;
	color:var(--muted);
	padding:11px 0;
	line-height:1.6;
}
.article-aside .save-button {
	width:100%;
	margin-top:25px;
	border:1px solid var(--line);
	background:transparent;
	padding:14px;
	font-size:12px;
}
.article-aside .save-button[aria-pressed=true] {
	background:var(--lime);
}
.article-body .article-chapter {
	margin-bottom:65px;
	scroll-margin-top:130px;
}
.article-body .article-chapter:last-child {
	margin:0;
}
.article-body h2 {
	font-size:29px;
	line-height:1.5;
	margin-bottom:24px;
}
.article-body p {
	font-size:16px;
	line-height:2.15;
	margin-bottom:23px;
}
.article-body p:last-child {
	margin:0;
}
.article-body ul {
	padding-left:22px;
	line-height:2.1;
	font-size:15px;
}
.article-callout {
	background:var(--surface);
	padding:30px;
	border-left:3px solid #8fa477;
	margin:30px 0;
}
.article-callout strong {
	font-size:16px;
	font-weight:500;
}
.article-callout p {
	font-size:14px;
	margin-top:15px;
}
.question-box {
	padding:40px;
	background:var(--lime);
	margin-top:35px;
}
.question-box h3 {
	font-size:24px;
	margin-bottom:18px;
}
.question-box p {
	font-size:14px;
}
.meeting-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:35px;
}
.meeting-info {
	border:1px solid var(--line);
	padding:32px;
}
.meeting-info dl {
	display:grid;
	grid-template-columns:100px 1fr;
	gap:18px;
	margin:0;
	font-size:13px;
	line-height:1.8;
}
.meeting-info dt {
	color:var(--muted);
}
.meeting-info dd {
	margin:0;
}
.contact-form {
	border:1px solid var(--line);
	padding:32px;
	background:#fffef8;
}
.contact-form h3 {
	font-size:24px;
	margin-bottom:23px;
}
.contact-form label {
	display:block;
	font-size:12px;
	margin-top:20px;
}
.contact-form input,.contact-form select,.contact-form textarea {
	display:block;
	width:100%;
	margin-top:9px;
	border:1px solid var(--line);
	background:transparent;
	padding:14px;
	font-size:14px;
	border-radius:2px;
}
.contact-form textarea {
	resize:vertical;
	min-height:160px;
}
.contact-form .btn {
	margin-top:24px;
}
.contact-form .form-status {
	font-size:12px;
	color:#6c765e;
	margin-top:16px;
}
.contact-form input[readonly] {
	background:var(--surface);
}
.visually-hidden {
	position:absolute;
	width:1px;
	height:1px;
	overflow:hidden;
	clip:rect(0,0,0,0);
	white-space:nowrap;
}
.reveal {
	opacity:1;
	transform:none;
}
.motion-ready .reveal {
	opacity:0;
	transform:translateY(24px);
	transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.3,1);
}
.motion-ready .reveal.in-view {
	opacity:1;
	transform:none;
}
.reveal.delay-1 {
	transition-delay:80ms;
}
.reveal.delay-2 {
	transition-delay:160ms;
}
.reading-bar {
	height:3px;
	position:fixed;
	left:0;
	top:0;
	z-index:100;
	width:0;
	background:#93a574;
}
.backtop {
	position:fixed;
	bottom:28px;
	right:26px;
	z-index:60;
	border:1px solid var(--line);
	background:var(--paper);
	color:var(--deep);
	width:44px;
	height:44px;
	border-radius:50%;
	box-shadow:0 8px 25px #263e350f;
}
.topic-rail {
	display:flex;
	gap:12px;
	flex-wrap:wrap;
	margin-top:30px;
}
.topic-rail a {
	font-size:12px;
	padding:10px 15px;
	border:1px solid var(--line);
	border-radius:99px;
}
.topic-rail a[aria-current] {
	background:var(--deep);
	color:#fff;
}
.big-number-row {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:40px;
}
.big-number-row b {
	font:italic 64px var(--serif);
	font-weight:400;
	color:#899b70;
}
.big-number-row h3 {
	font-size:23px;
	margin-top:22px;
}
.big-number-row p {
	font-size:13px;
	color:var(--muted);
	margin-top:15px;
}
.pillars {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:25px;
}
.pillar {
	padding:30px;
	border:1px solid var(--line);
	background:#fffef8;
}
.pillar h3 {
	font-size:23px;
	margin-top:24px;
}
.pillar p {
	font-size:13px;
	color:var(--muted);
	margin-top:16px;
}
.pillar-icon {
	font:italic 36px var(--serif);
	color:#8a9b70;
}
.home-hero {
	min-height:750px;
}
.home-hero h1 {
	font-size:clamp(48px,6vw,86px);
}
.home-hero .lead {
	font-size:17px;
}
.home-hero:after {
	background:linear-gradient(90deg,#18362eec 0%,#1b3a31a1 48%,#1b3a3117 90%);
}
.hero-footnote {
	margin-top:55px;
	display:flex;
	gap:15px;
	align-items:center;
	font-size:11px;
	color:#d9e3d0;
}
.hero-footnote:before {
	content:'';
	width:35px;
	height:1px;
	background:currentColor;
}
.mosaic {
	display:grid;
	grid-template-columns:1.25fr .75fr;
	gap:25px;
}
.mosaic .feature-rest {
	background:var(--deep);
	color:var(--paper);
	padding:45px;
	min-height:430px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}
.feature-rest small {
	font-size:10px;
	color:var(--lime);
	letter-spacing:.14em;
}
.feature-rest h3 {
	font-size:40px;
	line-height:1.4;
}
.feature-rest p {
	font-size:13px;
	color:#cfdbc9;
	margin-top:20px;
	max-width:410px;
}
.side-rest {
	display:grid;
	gap:25px;
}
.rest-link {
	padding:32px;
	background:#e7e9d9;
	border:1px solid var(--line);
	display:flex;
	justify-content:space-between;
	gap:20px;
	flex-direction:column;
	transition:background .3s;
}
.rest-link:hover {
	background:#dbe3c8;
}
.rest-link small {
	font-size:10px;
	letter-spacing:.1em;
	color:var(--muted);
}
.rest-link h3 {
	font-size:26px;
	margin-top:18px;
}
.text-post-grid {
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:24px;
}
.text-post {
	background:#fffef8;
	padding:32px;
	border:1px solid var(--line);
	transition:transform .3s;
}
.text-post:hover {
	transform:translateY(-4px);
}
.text-post h3 {
	font-size:23px;
	line-height:1.5;
	margin:22px 0 18px;
}
.text-post p {
	font-size:13px;
	color:var(--muted);
}
.text-post .card-footer {
	margin-top:28px;
}
.home-explore .topic {
	padding-top:32px;
}
.notice {
	border:1px solid var(--line);
	padding:20px 24px;
	background:var(--surface);
	font-size:13px;
	line-height:1.9;
	color:var(--muted);
	margin-top:30px;
}
@media(min-width:1500px) {
	:root {
		--max:1400px;
	}
}
@media(max-width:1150px) {
	.nav {
		gap:14px;
	}
	.nav-item {
		font-size:12px;
	}
	.nav-join {
		display:none;
	}
	.hero-grid {
		gap:35px;
	}
	.intro-grid {
		gap:50px;
	}
	.wrap {
		width:calc(100% - 64px);
	}
	.stamp {
		width:120px;
		height:120px;
	}
	.text-banner h2 {
		max-width:80%;
	}
	.entry-grid.magazine {
		grid-template-columns:repeat(3,minmax(0,1fr));
	}
	.card-body {
		padding:22px;
	}
	.explore-row.four {
		grid-template-columns:repeat(2,1fr);
	}
}
@media(max-width:900px) {
	.menu-toggle {
		display:block;
	}
	.nav {
		display:none;
		position:absolute;
		top:88px;
		left:0;
		right:0;
		max-height:calc(100vh - 88px);
		overflow:auto;
		background:var(--paper);
		padding:18px 32px 28px;
		border-bottom:1px solid var(--line);
	}
	.nav.open {
		display:block;
	}
	.nav-item {
		min-height:0;
		flex-wrap:wrap;
		justify-content:space-between;
		border-bottom:1px solid var(--line);
	}
	.nav-item>a {
		padding:19px 0;
		flex:1;
	}
	.drop-toggle {
		padding:16px 10px;
	}
	.dropdown {
		position:static;
		display:none;
		visibility:visible;
		opacity:1;
		transform:none;
		width:100%;
		box-shadow:none;
		border:0;
		background:var(--surface);
		margin-bottom:15px;
	}
	.nav-item:hover .dropdown,.nav-item:focus-within .dropdown {
		display:none;
	}
	.nav-item.open .dropdown {
		display:block;
	}
	.nav-join {
		display:inline-flex;
		margin-top:22px;
	}
	.hero-grid,.hero-quiet .hero-grid {
		grid-template-columns:1fr 1fr;
		gap:28px;
	}
	.hero h1 {
		font-size:48px;
	}
	.intro-grid,.framework-split,.toolkit,.faq-layout {
		gap:40px;
	}
	.entry-grid {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.entry-grid.magazine {
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.entry-grid .entry-card:last-child:nth-child(odd) {
		grid-column:auto;
	}
	.reading-layout {
		grid-template-columns:180px minmax(0,1fr);
		gap:40px;
	}
	.explore-row {
		gap:20px;
	}
	.cta-layout {
		align-items:flex-start;
		flex-direction:column;
		gap:32px;
	}
	.steps.vertical .step {
		grid-template-columns:50px 1fr;
		gap:20px;
	}
	.steps.vertical .step p {
		grid-column:2;
	}
	.text-post-grid {
		grid-template-columns:1fr 1fr;
	}
	.search-box {
		margin-left:0;
	}
	.float-note {
		left:-15px;
		padding:24px;
		min-width:190px;
	}
	.float-note strong {
		font-size:24px;
	}
}
@media(max-width:640px) {
	.wrap {
		width:calc(100% - 40px);
	}
	.header-inner {
		height:74px;
	}
	.brand {
		font-size:25px;
	}
	.nav {
		top:74px;
		padding-inline:20px;
		max-height:calc(100vh - 74px);
	}
	.section {
		padding-block:100px;
	}
	.hero {
		min-height:0;
	}
	.hero-photo {
		min-height:630px;
	}
	.hero-photo:after {
		background:linear-gradient(90deg,#18362eeb,#18362e89);
	}
	.hero-grid,.hero-quiet .hero-grid {
		grid-template-columns:1fr;
		gap:48px;
	}
	.hero h1 {
		font-size:43px;
		line-height:1.25;
	}
	.hero .lead {
		font-size:15px;
	}
	.hero-split .hero-visual {
		margin:0 0 0 15px;
	}
	.hero-visual img {
		aspect-ratio:1.2;
	}
	.hero-photo .breadcrumb {
		margin-bottom:40px;
	}
	.hero-copy .actions {
		gap:10px;
	}
	.hero-copy .btn {
		gap:17px;
		padding-inline:18px;
	}
	.home-hero {
		min-height:700px;
	}
	.home-hero h1 {
		font-size:45px;
	}
	.hero-footnote {
		margin-top:45px;
		max-width:250px;
		line-height:1.7;
	}
	.hero-number {
		font-size:200px;
		margin-top:5px;
	}
	.hero-quiet .quiet-stack {
		gap:10px;
	}
	.quiet-tile {
		padding:23px;
	}
	.quiet-tile:nth-child(2) {
		margin-left:20px;
	}
	.split-head {
		display:block;
		gap:0;
	}
	.split-head>.lead {
		margin-top:22px;
	}
	.split-head>.text-link {
		margin-top:25px;
	}
	.section-title {
		font-size:32px;
	}
	.lead {
		font-size:15px;
	}
	.explore-row,.explore-row.four,.entry-grid,.entry-grid.two,.entry-grid.magazine,.steps,.intro-grid,.framework-split,.toolkit,.connected,.faq-layout,.footer-grid,.meeting-grid,.reading-layout,.mosaic,.text-post-grid,.big-number-row,.pillars {
		grid-template-columns:1fr;
	}
	.topic {
		padding-top:25px;
	}
	.topic h3 {
		font-size:24px;
		margin:18px 0 11px;
	}
	.topic-index {
		font-size:29px;
	}
	.topic .topic-end {
		padding-top:20px;
	}
	.entry-grid {
		gap:26px;
	}
	.card-media {
		aspect-ratio:1.55;
	}
	.card-body h3 {
		min-height:0;
		font-size:23px;
	}
	.intro-grid {
		gap:40px;
	}
	.intro-grid.reverse .intro-visual {
		order:0;
	}
	.intro-visual img {
		aspect-ratio:1.2;
	}
	.note-board {
		min-height:330px;
		padding:28px;
	}
	.note-paper {
		padding:26px;
		width:91%;
	}
	.note-paper h3 {
		font-size:25px;
	}
	.framework-split .split-head {
		margin-bottom:0;
	}
	.toolkit {
		gap:35px;
	}
	.checklist {
		padding:27px 24px;
	}
	.steps {
		gap:40px;
	}
	.step {
		padding-top:25px;
	}
	.steps.vertical .step {
		grid-template-columns:48px 1fr;
	}
	.stamp {
		position:static;
		margin-top:35px;
		width:115px;
		height:115px;
		font-size:11px;
	}
	.text-banner h2 {
		max-width:100%;
		font-size:39px;
	}
	.wide-story {
		min-height:500px;
	}
	.wide-story h2 {
		font-size:39px;
	}
	.wide-story p {
		font-size:14px;
	}
	.connected {
		gap:22px;
	}
	.connected-card {
		padding:30px;
	}
	.connected-card h3 {
		max-width:88%;
	}
	.faq-layout {
		gap:35px;
	}
	.faq summary {
		font-size:16px;
	}
	.cta-layout {
		gap:30px;
	}
	.cta .actions {
		gap:12px;
	}
	.footer-grid {
		gap:35px;
	}
	.footer-grid .footer-col {
		border-top:1px solid #ffffff20;
		padding-top:22px;
	}
	.site-footer {
		padding-top:60px;
	}
	.footer-bottom {
		flex-direction:column;
		gap:15px;
		margin-top:40px;
		line-height:1.8;
	}
	.article-cover {
		height:300px;
	}
	.article-hero .section-title {
		font-size:38px;
	}
	.article-meta {
		font-size:11px;
		gap:13px;
	}
	.article-aside {
		position:static;
		padding:22px;
		border:1px solid var(--line);
		background:var(--surface);
	}
	.article-aside a {
		padding:7px 0;
	}
	.article-aside .save-button {
		margin-top:18px;
	}
	.reading-layout {
		gap:42px;
	}
	.article-body h2 {
		font-size:27px;
	}
	.article-body p {
		font-size:15px;
		line-height:2.1;
	}
	.article-body .article-chapter {
		margin-bottom:50px;
	}
	.article-callout,.question-box {
		padding:25px;
	}
	.article-cover .art-word {
		font-size:48px;
	}
	.filter-bar {
		gap:8px;
	}
	.filter-btn {
		padding:10px 13px;
		font-size:11px;
	}
	.search-box {
		width:100%;
		margin-top:12px;
	}
	.search-box input {
		width:100%;
	}
	.mosaic .feature-rest {
		padding:30px;
		min-height:390px;
	}
	.feature-rest h3 {
		font-size:35px;
	}
	.meeting-info,.contact-form {
		padding:27px 24px;
	}
	.meeting-info dl {
		grid-template-columns:80px 1fr;
	}
	.backtop {
		width:40px;
		height:40px;
		right:15px;
		bottom:18px;
	}
	.big-number-row {
		gap:35px;
	}
	.big-number-row b {
		font-size:52px;
	}
	.topic-rail {
		gap:8px;
	}
	.topic-rail a {
		padding:9px 12px;
		font-size:11px;
	}
}
@media(prefers-reduced-motion:reduce) {
	html {
		scroll-behavior:auto;
	}
	*,*:before,*:after {
		transition:none!important;
		animation:none!important;
	}
	.motion-ready .reveal {
		opacity:1;
		transform:none;
	}
	.float-note,.note-paper,.stamp {
		transform:none;
	}
}
@media print {
	.site-header,.site-footer,.backtop,.reading-bar,.article-aside {
		display:none;
	}
	.section {
		padding:35px 0;
	}
	.wrap {
		width:100%;
	}
	.motion-ready .reveal {
		opacity:1;
		transform:none;
	}
	.article-body {
		font-size:12pt;
	}
	a {
		color:inherit;
	}
	.hero-bg {
		opacity:.35;
	}
	.hero-photo {
		color:var(--ink);
	}
	.hero-photo:after {
		display:none;
	}
}
[hidden] {
	display:none!important;
}
