.panel__head {
	display:grid;
	gap:var(--sp-3);
	margin-bottom:clamp(32px, 5vh, 64px);
	max-width:48rem;
}


.panel__index {
	display:flex;
	align-items:center;
	gap:0.8em;
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.panel__index b {
	font-weight:500;
	color:var(--accent);
}


.panel__index::after {

	content:"";
	flex:0 1 5rem;
	height:1px;
	background:var(--line);
}


.panel__title {
	font-size:var(--fs-h2);
}


.panel__intro {
	color:var(--muted);
	max-width:54ch;
}


.panel__foot {
	margin-top:clamp(28px, 4vh, 48px);
	display:flex;
	flex-wrap:wrap;

	align-items:center;
	gap:var(--sp-3) var(--sp-5);
}


.panel--alt {
	background:var(--plum);
}


.panel--deep {
	background:
		radial-gradient(90% 70% at 15% 20%, rgba(46, 34, 66, 0.55) 0%, rgba(26, 18, 36, 0) 70%),
		var(--plum-2);
}


.panel + .panel {
	border-top:var(--hair-mist);
}


.hero {
	overflow:hidden;
}


.hero__grid {
	display:grid;
	gap:clamp(32px, 5vw, 80px);
	grid-template-columns:minmax(0, 1fr);
	align-items:center;
}


.hero__grid > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.hero__grid {
		grid-template-columns:minmax(0, 1.05fr) minmax(0, 0.95fr);
	}
}


.hero__meta {
	display:flex;
	flex-wrap:wrap;
	gap:0.3em 0.9em;
	margin-bottom:clamp(20px, 3vh, 36px);
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	letter-spacing:var(--track-meta);
	color:var(--muted);
}


.hero__meta span + span::before {
	content:'·';
	margin-right:0.9em;
	color:var(--mist);
}


.hero__title {
	max-width:14ch;
}


.hero__title em {
	display:inline;
	color:var(--accent);
	font-style:italic;
}


.hero__definition {
	margin-top:clamp(24px, 4vh, 44px);
	padding-left:clamp(16px, 2vw, 28px);
	border-left:1px solid var(--accent);
}


.hero__qual {
	margin-top:var(--sp-4);
	display:grid;
	gap:0.35rem;
	color:var(--muted);
	max-width:52ch;
}


.hero__actions {
	margin-top:clamp(28px, 4vh, 44px);
	display:flex;
	flex-wrap:wrap;
	gap:var(--sp-3) var(--sp-4);
}


.hero__media {
	position:relative;
}


.hero__media .frame {
	aspect-ratio:4 / 5;
	box-shadow:var(--shadow-soft);
}


@media (max-width: 1099.98px) {
	.hero__media .frame {
		aspect-ratio:3 / 2;
	}
}


.hero__media .frame img {
	filter:saturate(0.9) contrast(1.03);
}


.hero__tick {
	position:absolute;
	left:calc(-1 * clamp(10px, 1.4vw, 22px));
	top:12%;
	bottom:12%;
	width:1px;
	background:linear-gradient(180deg, transparent, var(--mist) 20%, var(--mist) 80%, transparent);
	pointer-events:none;
}


.hero__media .frame__caption {
	display:flex;
	justify-content:space-between;
	gap:var(--sp-3);
	flex-wrap:wrap;
}


.hero__scroll {
	position:absolute;
	left:var(--gutter);
	bottom:clamp(18px, 3vh, 32px);
	display:none;
	align-items:center;
	gap:0.6em;
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


@media (min-width: 960px) and (min-height: 720px) {
	.hero__scroll {
		display:inline-flex;
	}
}


.panel--plate .plate {
	max-width:1180px;
}


.panel--plate .plate__stage {
	box-shadow:var(--shadow-doc);
}


.plate-legend {
	margin-top:var(--sp-5);
	display:flex;
	flex-wrap:wrap;
	gap:var(--sp-3) var(--sp-5);
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:var(--muted);
}


.plate-legend__dot {
	display:inline-block;
	width:8px;
	height:8px;
	margin-right:0.5em;
	border-radius:50%;
	background:var(--accent);
	vertical-align:0.05em;
}


.lookup-panel {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
	align-items:start;
}


.lookup-panel > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.lookup-panel {
		grid-template-columns:minmax(0, 1.2fr) minmax(0, 0.8fr);
	}
}


.lookup-panel__media .frame {
	aspect-ratio:3 / 2;
}


@media (min-width: 1100px) {
	.lookup-panel__media {
		position:sticky;
		top:40px;
	}
	.lookup-panel__media .frame {
		aspect-ratio:4 / 5;
	}
}


.lookup-hints {
	margin-top:var(--sp-4);
	display:flex;
	flex-wrap:wrap;
	gap:0.5rem;
}


.usage-grid {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
}


.usage-grid > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.usage-grid {
		grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr);
		align-items:start;
	}
}


.usage-grid .frame {
	aspect-ratio:3 / 2;
}


.usage-list {
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	gap:clamp(18px, 3vh, 30px);
}


.usage-list > li:nth-child(even) .usage-quote {
	margin-left:clamp(0px, 4vw, 56px);
}


.errors-list .numbered__item::before {
	font-size:clamp(2rem, 1.2rem + 3.4vw, 4.4rem);
	color:var(--violet-2);
	-webkit-text-stroke:1px var(--mist);
}


.errors-list .numbered__item:hover::before {
	color:var(--mist);
}


.errors-list .numbered__item::before {
	transition:color var(--dur) var(--ease-out);
}


.errors-list .numbered__title s {
	text-decoration-color:var(--danger);
	text-decoration-thickness:1px;
	color:var(--muted);
}


.services-layout {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
	align-items:start;
}


.services-layout > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.services-layout {
		grid-template-columns:minmax(0, 1fr) minmax(220px, 0.36fr);
	}
	.services-layout__media {
		position:sticky;
		top:40px;
		order:2;
	}
}


.services-layout__media .frame {
	aspect-ratio:2 / 3;

	max-height:78vh;
}


@media (max-width: 1099.98px) {
	.services-layout__media .frame {
		aspect-ratio:16 / 9;
	}
	.services-layout__media .frame img {
		object-position:50% 40%;
	}
}


.services-note {
	margin-top:var(--sp-4);
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:0.04em;
	color:var(--muted);
}


.method {
	display:grid;
	gap:clamp(32px, 5vw, 80px);
	grid-template-columns:minmax(0, 1fr);
}


.method > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.method {
		grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
		align-items:center;
	}
}


.method .frame {
	aspect-ratio:3 / 2;
}


.method__cols {
	display:grid;
	gap:var(--sp-5);
	grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 1fr));
	margin-top:var(--sp-6);
}


.method__cols > * {
	min-width:0;
}


.method__col h3 {
	font-size:var(--fs-h4);
	margin-bottom:0.4rem;
}


.method__col p {
	color:var(--muted);
}


.people {
	list-style:none;
	margin:var(--sp-5) 0 0;
	padding:0;
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
}


.person {
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:0.2rem;
	padding:var(--sp-4) var(--sp-5);
	background:var(--plum-2);
}


.person__role {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.person__name {
	font-family:var(--wese-9dd);
	font-size:var(--fs-h4);
	font-weight:600;
}


.ask {
	display:grid;
	gap:clamp(32px, 5vw, 80px);
	grid-template-columns:minmax(0, 1fr);
}


.ask > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.ask {
		grid-template-columns:minmax(0, 1.25fr) minmax(0, 0.75fr);
	}
}


.ask__form {
	padding:clamp(20px, 3vw, 40px);
	border:var(--hair);
	border-radius:var(--radius);
	background:var(--plum);
}


.ask__aside address {
	font-style:normal;
	color:var(--paper-dim);
	line-height:1.7;
}


.page-head {
	position:relative;
	padding-block:clamp(48px, 9vh, 112px) clamp(40px, 7vh, 88px);
	border-bottom:var(--hair-mist);
}


.page-head__grid {
	display:grid;
	gap:clamp(28px, 4vw, 64px);
	grid-template-columns:minmax(0, 1fr);
	align-items:end;
}


.page-head__grid > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.page-head__grid {
		grid-template-columns:minmax(0, 1.15fr) minmax(0, 0.85fr);
	}
}


.page-head__title {
	margin-top:var(--sp-3);
	max-width:18ch;
}


.page-head__lede {
	margin-top:var(--sp-5);
}


.page-head__meta {
	margin-top:var(--sp-5);
	display:flex;
	flex-wrap:wrap;
	gap:0.5rem;
}


.page-head__media .frame {
	aspect-ratio:3 / 2;
}


.article {
	display:grid;
	gap:clamp(32px, 5vw, 80px);
	grid-template-columns:minmax(0, 1fr);
}


.article > * {
	min-width:0;
}


@media (min-width: 1200px) {
	.article {
		grid-template-columns:minmax(0, 1fr) minmax(220px, 300px);
	}
	.article__aside {
		position:sticky;
		top:40px;
		align-self:start;
	}
}


.article__aside {
	display:grid;
	gap:var(--sp-4);
}


.aside-card {
	padding:var(--sp-5);
	border:var(--hair);
	border-radius:var(--radius);
	background:var(--plum);
}


.aside-card__title {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
	margin-bottom:var(--sp-3);
}


.aside-card__price {
	font-family:var(--wese-593);
	font-size:1.05rem;
	color:var(--paper);
}


.etym {
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
}


.etym__item {
	display:grid;
	grid-template-columns:minmax(0, 1fr);
	gap:var(--sp-3) var(--sp-5);
	padding:var(--sp-5);
	background:var(--ground);
}


@media (min-width: 720px) {
	.etym__item {
		grid-template-columns:minmax(7rem, 0.3fr) minmax(0, 1fr);
	}
}


.etym__word {
	font-family:var(--wese-9dd);
	font-style:italic;
	font-size:clamp(1.8rem, 1.3rem + 2vw, 3rem);
	line-height:1;
	color:var(--accent);
}


.etym__body {
	color:var(--paper-dim);
}


.timeline {
	list-style:none;
	margin:0;
	padding:0;
	position:relative;
}


.timeline::before {
	content:"";
	position:absolute;
	left:5.6rem;
	top:0.6rem;
	bottom:0.6rem;
	width:1px;
	background:var(--line);
}


.timeline__item {
	position:relative;
	display:grid;
	grid-template-columns:5rem minmax(0, 1fr);
	gap:var(--sp-5);
	padding:var(--sp-4) 0;
}


.timeline__item::before {
	content:"";
	position:absolute;
	left:calc(5.6rem - 4px);
	top:calc(var(--sp-4) + 0.5rem);
	width:9px;
	height:9px;
	border-radius:50%;
	background:var(--ground);
	border:1px solid var(--mist);
}


.timeline__item--key::before {
	background:var(--accent);
	border-color:var(--accent);
}


.timeline__decade {
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	letter-spacing:0.04em;
	color:var(--paper);
	padding-top:0.2rem;
}


.timeline__body {
	padding-left:var(--sp-3);
	color:var(--paper-dim);
}


.timeline__body h3 {
	font-size:var(--fs-h4);
	margin-bottom:0.3rem;
}


@media (max-width: 479.98px) {
	.timeline::before {
		left:4px;
	}
	.timeline__item {
		grid-template-columns:minmax(0, 1fr);
		gap:0.3rem;
		padding-left:1.6rem;
	}
	.timeline__item::before {
		left:0;
	}
	.timeline__body {
		padding-left:0;
	}
}


.examples {
	list-style:none;
	margin:0;
	padding:0;
	counter-reset:ex;
	border-top:var(--hair);
}


.example {
	counter-increment:ex;
	display:grid;
	grid-template-columns:2.6rem minmax(0, 1fr);
	gap:var(--sp-4);
	padding:var(--sp-5) 0;
	border-bottom:var(--hair);
}


.example::before {
	content:counter(ex, decimal-leading-zero);
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--mist);
	padding-top:0.45rem;
}


.example__text {
	font-family:var(--wese-9dd);
	font-style:italic;
	font-size:clamp(1.2rem, 1.05rem + 0.6vw, 1.55rem);
	line-height:1.32;
	color:var(--paper);
}


.example__note {
	margin-top:0.5rem;
	display:flex;
	flex-wrap:wrap;
	gap:0.4rem 0.8rem;
	align-items:center;
	color:var(--muted);
	font-size:var(--fs-small);
}


.misreading {
	display:grid;
	gap:var(--sp-4);
	grid-template-columns:minmax(0, 1fr);
	padding:clamp(24px, 4vh, 40px) 0;
	border-top:var(--hair);
}


@media (min-width: 900px) {
	.misreading {
		grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
		gap:var(--sp-5);
	}
}


.misreading > * {
	min-width:0;
}


.misreading__label {
	display:block;
	margin-bottom:0.4rem;
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.misreading__wrong .misreading__label {
	color:var(--danger);
}


.misreading__right .misreading__label {
	color:var(--accent);
}


.misreading__wrong p {
	font-family:var(--wese-9dd);
	font-style:italic;
	font-size:1.25rem;
	color:var(--muted);
}


.compare th:first-child,
.compare td:first-child {
	position:sticky;
	left:0;
	background:var(--plum);
	z-index:1;
}


.compare thead th:first-child {
	z-index:2;
}


.compare .is-focus {
	color:var(--accent);
}


.collocations td:first-child {
	font-family:var(--wese-9dd);
	font-style:italic;
	font-size:1.12rem;
	color:var(--paper);
}


.az-bar {
	display:flex;
	flex-wrap:wrap;
	gap:4px;
	margin-bottom:var(--sp-6);
}


.az-bar a {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:44px;
	min-height:44px;
	padding:0 0.5rem;
	border:var(--hair);
	border-radius:var(--radius);
	font-family:var(--wese-9dd);
	font-size:1.3rem;
	font-weight:600;
	color:var(--paper-dim);
	text-decoration:none;
	transition:background-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);
}


.az-bar a:hover {
	background:var(--violet);
	border-color:var(--mist);
	color:var(--paper);
}


.az-bar a:active {
	background:var(--accent);
	border-color:var(--accent);
	color:var(--accent-ink);
}


.az-bar a:focus-visible {
	outline:none;
	box-shadow:var(--focus-ring);
}


.az-index {
	display:grid;
	gap:var(--sp-6) var(--sp-5);
	grid-template-columns:repeat(auto-fill, minmax(min(100%, 230px), 1fr));
}


.az-index > * {
	min-width:0;
}


.az-group {
	border-top:1px solid var(--mist);
	padding-top:var(--sp-3);
}


.az-letter {
	font-family:var(--wese-9dd);
	font-style:italic;
	font-size:clamp(2.4rem, 1.8rem + 2vw, 3.4rem);
	line-height:1;
	color:var(--accent);
	margin-bottom:var(--sp-3);
}


.az-terms {
	list-style:none;
	margin:0;
	padding:0;
}


.az-terms a {
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:var(--sp-3);
	min-height:44px;
	padding:0.55rem 0;
	border-bottom:var(--hair);
	color:var(--paper-dim);
	text-decoration:none;
	transition:color var(--dur) var(--ease-out), padding-left var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);
}


.az-terms a span:last-child {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	color:var(--mist);
	flex:none;
}


.az-terms a:hover {
	color:var(--paper);
	padding-left:6px;
}


.az-terms a:active {
	color:var(--accent);
}


.az-terms a:focus-visible {
	outline:none;
	box-shadow:inset 0 0 0 2px var(--accent);
}


.tool-stage {
	padding:clamp(22px, 4vw, 48px);
	border:var(--hair);
	border-radius:var(--radius);
	background:var(--plum);
}


.tool-stage .lookup {
	max-width:none;
}


.steps {
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
	grid-template-columns:repeat(auto-fit, minmax(min(100%, 220px), 1fr));
}


.step {
	min-width:0;
	padding:var(--sp-5);
	background:var(--ground);
}


.step__n {
	display:block;
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:var(--accent);
	margin-bottom:var(--sp-3);
}


.step__title {
	font-family:var(--wese-9dd);
	font-size:var(--fs-h4);
	font-weight:600;
	line-height:1.2;
}


.step p {
	margin-top:0.4rem;
	color:var(--muted);
	font-size:var(--fs-small);
}


.specimen {
	position:relative;
	padding:clamp(24px, 4vw, 52px);
	background:var(--paper);
	color:#241A30;
	border-radius:var(--radius);
	box-shadow:var(--shadow-doc);
}


.specimen::before {
	content:"";
	position:absolute;
	left:clamp(10px, 2vw, 22px);
	top:0;
	bottom:0;
	width:1px;
	background:rgba(200, 80, 120, 0.4);
}


.specimen__head {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:0.4rem var(--sp-4);
	padding-bottom:var(--sp-3);
	margin-bottom:var(--sp-4);
	border-bottom:1px solid rgba(36, 26, 48, 0.2);
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:#5A4B6E;
}


.specimen h3,
.specimen h4 {
	color:#1A1224;
}


.specimen p {
	color:#2E2242;
}


.specimen p + p {
	margin-top:0.8em;
}


.specimen .source {
	color:#5A4B6E;
}


.specimen .source__decade {
	color:#1E2D00;
	background:rgba(200, 242, 80, 0.55);
	padding:0 0.3em;
}


.price-strip {
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
	grid-template-columns:repeat(auto-fit, minmax(min(100%, 200px), 1fr));
}


.price-strip > div {
	min-width:0;
	padding:var(--sp-4) var(--sp-5);
	background:var(--plum);
}


.price-strip dt {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.price-strip dd {
	margin:0.35rem 0 0;
	font-family:var(--wese-593);
	font-size:1.05rem;
	color:var(--paper);
}


.faq {
	border-top:var(--hair);
}


.faq__item {
	border-bottom:var(--hair);
}


.faq__q {
	position:relative;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--sp-4);
	min-height:56px;
	padding:var(--sp-4) 0.4rem var(--sp-4) 0;
	cursor:pointer;
	list-style:none;
	font-family:var(--wese-9dd);
	font-size:clamp(1.2rem, 1.05rem + 0.6vw, 1.5rem);
	font-weight:600;
	line-height:1.25;
	color:var(--paper);
	transition:color var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);
}


.faq__q::-webkit-details-marker {
	display:none;
}


.faq__q::after {
	content:'+';
	flex:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	border:var(--hair);
	border-radius:50%;
	font-family:var(--wese-593);
	font-size:1rem;
	color:var(--paper-dim);
	transition:transform var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out);
}


.faq__item[open] > .faq__q::after {
	transform:rotate(45deg);
	border-color:var(--accent);
	color:var(--accent);
}


.faq__q:hover {
	color:var(--accent);
}


.faq__q:hover::after {
	border-color:var(--mist);
}


.faq__q:active {
	background:rgba(46, 34, 66, 0.45);
}


.faq__q:focus-visible {
	outline:none;
	box-shadow:inset 0 0 0 2px var(--accent);
}


.faq__item:not([open]) > .faq__a {
	display:none;
}


.faq__a {
	position:relative;
	padding:0 0 var(--sp-5);
	max-width:var(--measure);
	color:var(--paper-dim);
}


.faq__a > * + * {
	margin-top:0.8em;
}


.disclosures-wrap {
	display:grid;
	gap:clamp(28px, 4vw, 56px);
	grid-template-columns:minmax(0, 1fr);
}


.disclosures-wrap > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.disclosures-wrap {
		grid-template-columns:minmax(0, 1fr) minmax(240px, 0.42fr);
	}
	.disclosures-wrap__side {
		position:sticky;
		top:40px;
		align-self:start;
	}
}


.disclosures-wrap__side .frame {
	aspect-ratio:3 / 2;
}


.disclosures__tools {
	position:sticky;
	top:calc(var(--mobile-bar-h) + 8px);
	z-index:3;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--sp-3);
	margin-bottom:var(--sp-4);
	padding:0.6rem 0.7rem;
	border:var(--hair);
	border-radius:var(--radius);
	background:rgba(26, 18, 36, 0.97);
}


@media (min-width: 960px) {
	.disclosures__tools {
		top:16px;
	}
}


.disclosures__count {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:var(--muted);
}


.disclosures__buttons {
	display:flex;
	flex-wrap:wrap;
	gap:0.5rem;
}


.disclosures {
	counter-reset:disc;
	display:grid;
	gap:8px;
}


.disclosure {
	counter-increment:disc;
	border:var(--hair);
	border-radius:var(--radius);
	background:var(--plum);
	transition:border-color var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out);
}


.disclosure[open] {
	border-color:var(--mist);
	background:var(--ground);
}


.disclosure:target {
	border-color:var(--accent);
}


.disclosure__summary {
	display:grid;
	grid-template-columns:2.6rem minmax(0, 1fr) 36px;
	gap:var(--sp-3);
	align-items:start;
	min-height:56px;
	padding:var(--sp-4) var(--sp-4) var(--sp-4) var(--sp-4);
	cursor:pointer;
	list-style:none;
	border-radius:var(--radius);
	transition:background-color var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out);
}


.disclosure__summary::-webkit-details-marker {
	display:none;
}


.disclosure__summary::before {
	content:counter(disc, decimal-leading-zero);
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--mist);
	padding-top:0.3rem;
}


.disclosure__summary::after {
	content:'+';
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	border:var(--hair);
	border-radius:50%;
	font-family:var(--wese-593);
	color:var(--paper-dim);
	transition:transform var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);
}


.disclosure[open] > .disclosure__summary::after {
	transform:rotate(45deg);
	color:var(--accent);
	border-color:var(--accent);
}


.disclosure[open] > .disclosure__summary::before {
	color:var(--accent);
}


.disclosure__summary:hover {
	background:rgba(46, 34, 66, 0.55);
}


.disclosure__summary:active {
	background:var(--violet);
}


.disclosure__summary:focus-visible {
	outline:none;
	box-shadow:inset 0 0 0 2px var(--accent);
}


.disclosure__summary > .disclosure__title {
	grid-column:2;
}


@media (max-width: 559.98px) {
	.disclosure__summary > .disclosure__title {
		grid-column:1;
	}
}


.disclosure__title {
	font-family:var(--wese-9dd);
	font-size:clamp(1.18rem, 1.02rem + 0.6vw, 1.5rem);
	font-weight:600;
	line-height:1.28;
	color:var(--paper);
	text-wrap:pretty;
}


.disclosure:not([open]) > .disclosure__body {
	display:none;
}


.disclosure__body {
	position:relative;
	padding:0 var(--sp-5) var(--sp-5) calc(2.6rem + var(--sp-3) + var(--sp-4));
	max-width:calc(var(--measure) + 6rem);
	color:var(--paper-dim);
}


.disclosure__body > * + * {
	margin-top:0.9em;
}


.disclosure__body a {
	color:var(--paper);
	text-decoration-color:var(--mist);
	transition:color var(--dur) var(--ease-out);
}


.disclosure__body a:hover {
	color:var(--accent);
}


.disclosure__body ul {
	padding-left:1.2em;
}


.disclosure__body li + li {
	margin-top:0.4em;
}


.disclosure__body li::marker {
	color:var(--mist);
}


@media (max-width: 559.98px) {
	.disclosure__summary {
		grid-template-columns:minmax(0, 1fr) 36px;
		padding:var(--sp-3) var(--sp-3) var(--sp-3) var(--sp-4);
	}
	.disclosure__summary::before {
		grid-column:1 / -1;
		padding-top:0;
	}
	.disclosure__body {
		padding:0 var(--sp-4) var(--sp-4);
	}
	.disclosures__tools {
		flex-direction:column;
		align-items:stretch;
	}
	.disclosures__buttons .btn {
		flex:1 1 0;
	}
}


.dsar {
	margin-top:var(--sp-5);
	padding:var(--sp-5);
	border:var(--hair);
	border-left:2px solid var(--accent);
	border-radius:var(--radius);
	background:var(--plum);
}


.signal-list {
	list-style:none;
	margin:0;
	padding:0;
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
}


.signal-list li {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:0.3rem var(--sp-4);
	padding:0.75rem 1rem;
	background:var(--ground);
}


.signal-list code {
	color:var(--paper);
}


.signal-list span {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:var(--muted);
}


.qa {
	max-width:920px;
}


.qa__item {
	padding-block:clamp(44px, 8vh, 96px);
	border-top:var(--hair-mist);
}


.qa__item:first-child {
	border-top:0;
	padding-top:clamp(24px, 4vh, 48px);
}


.qa__q {
	font-family:var(--wese-9dd);
	font-size:clamp(2rem, 1.2rem + 3.4vw, 4.2rem);
	font-weight:500;
	font-style:italic;
	line-height:1.04;
	letter-spacing:-0.016em;
	color:var(--paper);
	max-width:18ch;
	hanging-punctuation:first last;
}


.qa__q::after {
	content:"";
	display:block;
	width:3.2rem;
	height:1px;
	margin-top:clamp(18px, 3vh, 30px);
	background:var(--accent);
}


.qa__a {
	margin-top:clamp(18px, 3vh, 30px);
	max-width:var(--measure);
	font-size:clamp(1.02rem, 0.98rem + 0.25vw, 1.14rem);
	line-height:1.7;
	color:var(--paper-dim);
}


.qa__a > * + * {
	margin-top:1em;
}


.qa__a a {
	color:var(--paper);
	text-decoration-color:var(--mist);
	transition:color var(--dur) var(--ease-out);
}


.qa__a a:hover {
	color:var(--accent);
}


.qa__a ul {
	padding-left:1.2em;
}


.qa__a li + li {
	margin-top:0.4em;
}


.qa__figure {
	margin-top:clamp(24px, 4vh, 44px);
	max-width:var(--measure);
}


.qa__figure .frame {
	aspect-ratio:3 / 2;
}


.qa__controls {
	margin-top:var(--sp-5);
	display:flex;
	flex-wrap:wrap;
	gap:var(--sp-3);
}


.cookie-table td:first-child code,
.legal-table td:first-child code {
	white-space:normal;
	overflow-wrap:anywhere;
}


.cookie-table td,
.legal-table td {
	font-size:0.92rem;
}


.cookie-table .is-off {
	color:var(--muted);
}


.cookie-table .is-on {
	color:var(--accent);
}


.doc-wrap {
	display:grid;
	gap:clamp(28px, 4vw, 56px);
	grid-template-columns:minmax(0, 1fr);
	padding-block:clamp(40px, 7vh, 96px) var(--section);
}


.doc-wrap > * {
	min-width:0;
}


@media (min-width: 1200px) {
	.doc-wrap {
		grid-template-columns:minmax(0, 1fr) minmax(200px, 280px);
		align-items:start;
	}
	.doc-wrap__side {
		position:sticky;
		top:40px;
	}
}


.doc-wrap__side .frame {
	aspect-ratio:3 / 2;
}


@media (min-width: 1200px) {
	.doc-wrap__side .frame {
		aspect-ratio:4 / 5;
	}
}


.doc {
	position:relative;
	max-width:860px;
	background:
		linear-gradient(180deg, rgba(236, 230, 241, 0.025), rgba(236, 230, 241, 0) 30%),
		var(--plum);
	border:1px solid var(--line);
	border-radius:var(--radius);
	box-shadow:var(--shadow-doc);
}


.doc::before {
	content:"";
	position:absolute;
	inset:8px;
	border:1px solid var(--line-soft);
	pointer-events:none;
}


.doc__masthead {
	position:relative;
	padding:clamp(28px, 5vw, 64px) clamp(22px, 6vw, 80px) clamp(22px, 3.4vw, 40px);
	border-bottom:1px solid var(--line);
}


.doc__kicker {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.doc__title {
	margin-top:var(--sp-3);
	font-size:clamp(2rem, 1.3rem + 3vw, 4rem);
	line-height:1.04;
}


.doc__facts {
	margin:var(--sp-5) 0 0;
	display:flex;
	flex-wrap:wrap;
	gap:var(--sp-3) var(--sp-6);
}


.doc__facts div {
	min-width:0;
}


.doc__facts dt {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
}


.doc__facts dd {
	margin:0.2rem 0 0;
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--paper);
}


.doc__body {
	position:relative;
	padding:clamp(24px, 4vw, 52px) clamp(22px, 6vw, 80px) clamp(32px, 5vw, 72px);
	counter-reset:clause;
	color:var(--paper-dim);
}


.clause {
	counter-increment:clause;
	position:relative;
	padding-top:clamp(24px, 4vh, 40px);
	scroll-margin-top:24px;
}


.clause + .clause {
	margin-top:clamp(20px, 3vh, 32px);
	border-top:1px dashed var(--line);
}


.clause__head {
	display:grid;
	grid-template-columns:3.2rem minmax(0, 1fr);
	gap:var(--sp-3);
	align-items:baseline;
}


.clause__head::before {
	content:'§ ' counter(clause);
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--accent);
	letter-spacing:0.02em;
}


.clause__title {
	font-size:clamp(1.4rem, 1.15rem + 1vw, 2rem);
	font-weight:600;
	line-height:1.15;
}


.clause__text {
	margin-top:var(--sp-3);
	padding-left:calc(3.2rem + var(--sp-3));
	max-width:calc(var(--measure) + 4rem);
}


.clause__text > * + * {
	margin-top:0.9em;
}


.clause__text ol {
	list-style:none;
	padding:0;
	counter-reset:sub;
}


.clause__text ol > li {
	counter-increment:sub;
	position:relative;
	padding-left:3rem;
}


.clause__text ol > li + li {
	margin-top:0.6em;
}


.clause__text ol > li::before {
	content:counter(clause) '.' counter(sub);
	position:absolute;
	left:0;
	top:0.2em;
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	color:var(--mist);
}


.clause__text a {
	color:var(--paper);
	text-decoration-color:var(--mist);
	transition:color var(--dur) var(--ease-out);
}


.clause__text a:hover {
	color:var(--accent);
}


.clause:target .clause__title {
	color:var(--accent);
}


.doc__sign {
	margin-top:clamp(32px, 5vh, 56px);
	padding-top:var(--sp-4);
	border-top:1px solid var(--line);
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	gap:var(--sp-3);
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-meta);
	color:var(--muted);
}


@media (max-width: 559.98px) {
	.doc::before {
		inset:5px;
	}
	.clause__head {
		grid-template-columns:minmax(0, 1fr);
		gap:0.2rem;
	}
	.clause__text {
		padding-left:0;
	}
	.clause__text ol > li {
		padding-left:2.6rem;
	}
}


.contact-layout {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
}


.contact-layout > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.contact-layout {
		grid-template-columns:minmax(0, 0.85fr) minmax(0, 1.15fr);
		align-items:start;
	}
}


.contact-card {
	display:grid;
	gap:1px;
	background:var(--line);
	border:var(--hair);
	border-radius:var(--radius);
}


.contact-block {
	padding:var(--sp-5);
	background:var(--plum);
}


.contact-block__label {
	font-family:var(--wese-593);
	font-size:var(--fs-micro);
	letter-spacing:var(--track-caps);
	text-transform:uppercase;
	color:var(--mist);
	margin-bottom:0.4rem;
}


.contact-block address,
.contact-block__value {
	font-style:normal;
	font-family:var(--wese-9dd);
	font-size:clamp(1.25rem, 1.1rem + 0.5vw, 1.55rem);
	line-height:1.3;
	color:var(--paper);
	overflow-wrap:anywhere;
}


.contact-block .frame {
	aspect-ratio:3 / 2;
	margin-top:var(--sp-4);
}


.hours {
	list-style:none;
	margin:0;
	padding:0;
}


.hours li {
	display:flex;
	justify-content:space-between;
	gap:var(--sp-3);
	padding:0.5rem 0;
	border-bottom:var(--hair);
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--paper-dim);
}


.hours li:last-child {
	border-bottom:0;
}


.notfound {
	min-height:calc(100svh - 120px);
	display:grid;
	align-items:center;
	padding-block:var(--section);
}


.notfound__grid {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
	align-items:center;
}


.notfound__grid > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.notfound__grid {
		grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
	}
}


.notfound__code {
	font-family:var(--wese-593);
	font-size:clamp(3.2rem, 2rem + 6vw, 7rem);
	line-height:1;
	color:var(--violet-2);
	-webkit-text-stroke:1px var(--mist);
	letter-spacing:-0.04em;
}


.notfound .frame {
	aspect-ratio:3 / 2;
}


.notfound .lookup {
	margin-top:var(--sp-5);
}


.thanks {
	padding-block:var(--section);
}


.thanks__grid {
	display:grid;
	gap:clamp(32px, 5vw, 72px);
	grid-template-columns:minmax(0, 1fr);
	align-items:start;
}


.thanks__grid > * {
	min-width:0;
}


@media (min-width: 1100px) {
	.thanks__grid {
		grid-template-columns:minmax(0, 1.1fr) minmax(0, 0.9fr);
	}
}


.thanks .frame {
	aspect-ratio:3 / 2;
}


.thanks__mark {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:56px;
	height:56px;
	margin-bottom:var(--sp-4);
	border:1px solid var(--accent);
	border-radius:50%;
	color:var(--accent);
}


.thanks__mark .icon {
	width:1.5rem;
	height:1.5rem;
}


.next-steps {
	list-style:none;
	margin:var(--sp-5) 0 0;
	padding:0;
	border-top:var(--hair);
}


.next-steps li {
	display:grid;
	grid-template-columns:auto minmax(0, 1fr);
	gap:var(--sp-4);
	padding:var(--sp-4) 0;
	border-bottom:var(--hair);
	color:var(--paper-dim);
}


.next-steps li > span:first-child {
	font-family:var(--wese-593);
	font-size:var(--fs-meta);
	color:var(--accent);
}


@media (max-width: 419.98px) {
	.next-steps li {
		grid-template-columns:minmax(0, 1fr);
		gap:0.2rem;
	}
}


.cta-band {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	gap:var(--sp-4) var(--sp-6);
	padding:clamp(24px, 4vw, 48px);
	border:var(--hair);
	border-left:2px solid var(--accent);
	border-radius:var(--radius);
	background:var(--plum);
}


.cta-band__text {
	flex:1 1 320px;
	min-width:0;
	font-family:var(--wese-9dd);
	font-size:clamp(1.4rem, 1.15rem + 1vw, 2rem);
	line-height:1.2;
	color:var(--paper);
}


@media print {
	.disclosure,
	.doc,
	.specimen {
		box-shadow:none;
		background:#FFF;
		border-color:#999;
		color:#111;
	}
	.disclosures__tools,
	.disclosures-wrap__side,
	.doc-wrap__side,
	.qa__controls {
		display:none !important;
	}
	.disclosure__body,
	.clause__text,
	.qa__a {
		color:#222;
	}
	.disclosure__summary::after {
		display:none;
	}
	.doc::before {
		display:none;
	}
}
