.toc {
	position: sticky;
	top: 100px;
	padding: 1em;
	background: #f4f4f4;
	border-right: 1px solid #ddd;
	min-width: 200px;
	max-height: calc(100vh - 100px);
	overflow-y: auto;
}
.toc ul {
	list-style: none;
	padding: 0;
}
.toc li {
	margin: 0.5em 0;
}
.toc a {
	text-decoration: none;
	color: #0A1F44;
	font-weight: bold;
}
main section {
	scroll-margin-top: 100px;
	margin: 0.5em auto;
}
html {
	scroll-behavior: smooth;
}
.page-layout {
	display: flex;
	align-items: flex-start;
	gap: 2rem;
	padding: 20px;
}
.language-selector {
	text-align: right;
	font-size: 0.9rem;
	padding: 6px 20px;
	background: white;
}

.transitional-note {
	background-color: #fff4d6;
	border-left: 4px solid #d97d00;
	padding: 15px 20px;
	margin: 20px auto;
	max-width: 800px;
	font-size: 0.95rem;
	line-height: 1.5;
	color: #4a3b0c;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

.clause {
  margin-bottom: 0.5em;
}

.content article {
	color: #636466;
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px 10px;
	text-align: left;
}

.content article section {
	padding: 10px 10px;
	margin: 0 auto;
	max-width: 1000px;
	text-align: left;
}

.content article h1 {
	font-family: 'Playfair Display SC', serif;
	color: #636466;
	font-weight: 900;
	font-size: 48px;
	text-align: center;
	margin-top: 40px;
}
.content article h2 {
	font-family: 'Inter', sans-serif;
	font-weight: 900; /* Black */
	font-size: 24pt;
	margin-bottom: 0.5em;
	padding: 10px 0px;
}

.content article h3 {
	font-family: 'Inter', sans-serif;
	font-weight: 600; /* SemiBold */
	font-size: 18pt;
	margin: 0.5em auto;
	padding: 10px 0px;
}

.content article p {
	font-family: 'Inter', sans-serif;
	font-size: 12pt;
	line-height: 1.6;
	margin-bottom: 0.5em auto;
}

.separator {
  width: 50%;
  margin: 1em auto;
  border: none;
  border-top: 1px solid #636466;
}

/* Common styles for all legal lists */
.legal-list {
  list-style-type: square;
  margin: 2em auto;
  padding-left: 2em;
}

.legal-list li {
  margin-bottom: 0.6em;
  font-size: 0.95rem;
  line-height: 1.5;
}

.article-intro {
  background-color: #f8f8f8;
  border-left: 4px solid #999;
  padding: 15px 20px;
  margin: 1.5em 0;
  font-style: italic;
  font-size: 0.95rem;
  line-height: 1.6;
  box-shadow: 0 2px 4px rgba(0,0,0,0.03);
}

.principles-list {
  padding-left: 1.5em;
}

.clause-list {
  padding-left: 2.5em;
}

.clause-number {
  margin-right: 0.2em;
  font-weight: 700;
}

.clause-branches {
  margin-right: 0.2em;
  font-weight: 700;
}

.mobile-break {
  display: none;
}

@media screen and (max-width: 600px) {
  .mobile-break {
    display: block;
  }
}

.oath-box {
  background-color: #f9f9f9;
  border-left: 4px solid #444;
  padding: 15px 20px;
  margin: 1em 0;
  font-style: italic;
  font-size: 0.95rem;
  line-height: 1.6;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.add-clause-button {
	width: 28px;
	height: 28px;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border-radius: 50%;
	border: none;
	background: #999999;
	color: white;
	cursor: pointer;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.add-clause-button:hover {
	background: #005C99;
}

.document-end {
  text-align: center;
  margin: 4rem 0 2rem;
  font-size: 1.1rem;
  color: #555;
}
