
body {
  	margin: 0;
  	line-height: normal;
}

.law-25 {
  	width: 100%;
  	position: relative;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	text-align: left;
  	font-size: 48px;
  	color: #000319;
  	font-family: Manrope;
}
.header {
  	align-self: stretch;
  	background-color: #fff;
  	border-bottom: 1px solid #dfe5ed;
  	display: flex;
  	align-items: center;
  	justify-content: space-between;
  	padding: 16px 120px;
  	gap: 20px;
  	font-size: 16px;
  	font-family: Inter;
}
.image-1-icon {
  	width: 239px;
  	position: relative;
  	max-height: 100%;
  	object-fit: cover;
}
.home-parent {
  	display: flex;
  	align-items: center;
  	gap: 32px;
}
.home {
  	position: relative;
}
.products-parent {
  	display: flex;
  	align-items: center;
  	gap: 8px;
}
.vector-icon {
  	height: 5px;
  	width: 10px;
  	position: relative;
}
.button-parent {
  	display: flex;
  	align-items: center;
  	justify-content: flex-end;
  	gap: 24px;
  	color: #fff;
}
.button {
  	border-radius: 74px;
  	background-color: #008b00;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 16px 24px;
}

/* .request-a-demo {
  	position: relative;
  	font-weight: 500;
} */

/* .request-a-demo {
  position: relative;
  font-weight: 500;
  color: inherit;
  pointer-events: none;

} */

.button3 .request-a-demo,
.button6 .request-a-demo {
  color: inherit;
  text-decoration: none;
  pointer-events: none;
}

/* PA PATTERN - TOP RIGHT CORNER */
.pa-hero-pattern {
  position: absolute;
  top: 2px; /* negative of hero padding top */
  right: 0;
  width: 188px;
  height: auto;
  z-index: 0;
  pointer-events: none;
}

.lang-dropdown {
  position: relative;
}

.lang-menu {
  position: absolute;
  top: 100%;
  right: 0;
  display: none;
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
  min-width: 80px;
  z-index: 1000;
}

.lang-menu.open {
  display: block;
}

.lang-item {
  padding: 8px 12px;
  cursor: pointer;
  white-space: nowrap;
}

.lang-item:hover {
  background: #f2f2f2;
}


.en-parent {
  	display: flex;
  	align-items: center;
  	gap: 8px;
  	color: #000319;
}
.how-to-setup {
  	align-self: stretch;
  	background-color: #fff;
  	overflow: hidden;
  	display: flex;
  	align-items: flex-start;
  	justify-content: center;
  	padding: 188px 120px 96px;
  	position: relative;
  	isolation: isolate;
  	gap: 45px;
  	font-size: 64px;
}
.background {
  	height: 1097px;
  	width: 1439px;
  	position: absolute;
  	margin: 0 !important;
  	top: calc(50% - 549px);
  	left: calc(50% - 720px);
  	overflow: hidden;
  	flex-shrink: 0;
  	display: none;
  	opacity: 0.3;
  	z-index: 0;
}
.rectangle-parent {
  	position: absolute;
  	top: 0px;
  	left: 0px;
  	width: 1439px;
  	display: flex;
  	align-items: center;
  	justify-content: space-between;
  	gap: 20px;
}
.frame-child {
  	height: 955px;
  	width: 1px;
  	position: relative;
  	background-color: #e9e9e9;
}
.background-child {
  	position: absolute;
  	top: 1097px;
  	left: 0px;
  	width: 1439px;
  	height: 1038px;
  	object-fit: contain;
}
.background-item {
  	position: absolute;
  	top: 726px;
  	left: 145px;
  	background-color: #cee3e8;
  	width: 70px;
  	height: 74px;
}
.background-inner {
  	position: absolute;
  	top: 208px;
  	left: 217px;
  	background-color: #cee3e8;
  	width: 72px;
  	height: 73px;
}
.background-child2 {
  	position: absolute;
  	top: 657.97px;
  	left: 925px;
  	background-color: #cee3e8;
  	width: 66px;
  	height: 59px;
}
.background-child3 {
  	position: absolute;
  	top: 282px;
  	left: 1152px;
  	background-color: #cee3e8;
  	width: 70px;
  	height: 73px;
}
.background-child4 {
  	position: absolute;
  	top: 728px;
  	left: 1224px;
  	background-color: #cee3e8;
  	width: 70px;
  	height: 73px;
}
.how-to-setup-child {
  	height: 204.6px;
  	width: 188px;
  	position: absolute;
  	margin: 0 !important;
  	top: 0px;
  	right: 0px;
  	object-fit: cover;
  	z-index: 1;
  	flex-shrink: 0;
}
.frame-parent {
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	gap: 32px;
  	z-index: 2;
  	flex-shrink: 0;
}
.automate-quebecs-law-25-and-i-parent {
  	align-self: stretch;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	gap: 24px;
}
.automate-quebecs-law-container {
  	align-self: stretch;
  	position: relative;
  	letter-spacing: -0.05em;
}
.automate-quebecs-law {
  	font-weight: 500;
}
.improve-compliance {
  	font-family: 'Playfair Display';
  	color: #d78c00;
  	white-space: pre-wrap;
}
.law-25-grants {
  	align-self: stretch;
  	position: relative;
  	font-size: 20px;
  	line-height: 140%;
  	font-family: Inter;
}
.law-25-promo-image-1 {
  	align-self: stretch;
  	position: relative;
  	max-width: 100%;
  	overflow: hidden;
  	max-height: 100%;
  	object-fit: cover;
}
.request-a-demo-to-get-started-parent {
  	width: 547px;
  	border-radius: 12px;
  	background-color: #f1f6f7;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	padding: 24px;
  	box-sizing: border-box;
  	gap: 24px;
  	z-index: 3;
  	flex-shrink: 0;
  	font-size: 32px;
  	font-family: Inter;
}
.request-a-demo2 {
  	position: relative;
  	letter-spacing: -0.05em;
  	font-weight: 500;
  	font-family: Manrope;
}
.frame-group {
  	align-self: stretch;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 12px;
  	font-size: 14px;
}
.frame-container {
  	align-self: stretch;
  	display: flex;
  	align-items: flex-start;
  	gap: 12px;
}
.form-field-wrapper {
  	flex: 1;
  	display: flex;
  	align-items: center;
}
.form-field {
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 8px;
}
.first-name {
  	align-self: stretch;
  	position: relative;
}
.form-field2 {
  	align-self: stretch;
  	box-shadow: 0px 3px 0px #e9e9e9;
  	border-radius: 8px;
  	background-color: #fff;
  	border: 1px solid #dfe5ed;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 16px 12px;
}
.nasser {
  	flex: 1;
  	position: relative;
  	opacity: 0;
}
.form-field-wrapper3 {
  	align-self: stretch;
  	display: flex;
  	align-items: center;
}
.form-field10 {
  	align-self: stretch;
  	height: 49px;
  	box-shadow: 0px 3px 0px #e9e9e9;
  	border-radius: 8px;
  	background-color: #fff;
  	border: 1px solid #dfe5ed;
  	box-sizing: border-box;
  	display: flex;
  	align-items: center;
  	justify-content: space-between;
  	padding: 16px 12px;
  	gap: 0px;
}
.select-country {
  	flex: 1;
  	position: relative;
  	opacity: 0.4;
  	flex-shrink: 0;
}
.gridiconsdropdown {
  	width: 24px;
  	position: relative;
  	max-height: 100%;
  	flex-shrink: 0;
}
.form-field16 {
  	align-self: stretch;
  	height: 103px;
  	box-shadow: 0px 3px 0px #e9e9e9;
  	border-radius: 8px;
  	background-color: #fff;
  	border: 1px solid #dfe5ed;
  	box-sizing: border-box;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-end;
  	justify-content: flex-end;
  	padding: 16px 12px;
}
.vector-icon4 {
  	width: 12px;
  	position: relative;
  	max-height: 100%;
  	opacity: 0.2;
}
.image-15-icon {
  	width: 282px;
  	position: relative;
  	max-height: 100%;
  	object-fit: cover;
}
.frame-parent2 {
  	align-self: stretch;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	gap: 12px;
  	font-size: 16px;
  	color: #000;
}
.checkbox-parent {
  	align-self: stretch;
  	display: flex;
  	align-items: center;
  	gap: 8px;
  	font-size: 13px;
}
.checkbox-icon {
  	width: 24px;
  	position: relative;
  	border-radius: 4px;
  	max-height: 100%;
}
.by-submitting-i {
  	flex: 1;
  	position: relative;
  	opacity: 0.4;
}
.button2 {
  	align-self: stretch;
  	border-radius: 74px;
  	background-color: #008b00;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 16px 24px;
  	color: #fff;
}
.login2 {
  	text-decoration: underline;
  	color: #008b00;
}
.how-to-setup2 {
  	align-self: stretch;
  	background-color: #f1f6f7;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	justify-content: center;
  	padding: 96px 120px;
  	gap: 48px;
}
.how-to-setup-inner {
  	width: 586px;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	text-align: center;
}
.assess-your-compliance-in-just-parent {
  	width: 100%;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	gap: 24px;
  	max-width: 100%;
}
.assess-your-compliance-container {
  	align-self: stretch;
  	position: relative;
  	letter-spacing: -0.05em;
  	line-height: 120%;
  	font-weight: 500;
}
.just-a-few {
  	color: #008b00;
}
.with-our-ai-powered {
  	align-self: stretch;
  	position: relative;
  	font-size: 16px;
  	line-height: 140%;
  	font-family: Inter;
  	color: #000318;
}
.smart-questionnaires-parent {
  	width: 400px;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 12px;
}
.smart-questionnaires {
  	position: relative;
  	letter-spacing: -0.05em;
  	line-height: 120%;
  	font-weight: 600;
}
.our-ai-powered-tool-container {
  	align-self: stretch;
  	position: relative;
  	font-size: 16px;
  	line-height: 140%;
  	font-family: Inter;
  	color: rgba(0, 3, 24, 0.5);
}
.button3 {
  	border-radius: 74px;
  	background-color: #008b00;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 16px 24px;
  	font-size: 16px;
  	color: #fff;
  	font-family: Inter;
	cursor: pointer;
	text-decoration: none;
}

.button3,
.button3:link,
.button3:visited,
.button3:hover,
.button3:active,
.button6,
.button6:link,
.button6:visited,
.button6:hover,
.button6:active {
  text-decoration: none;
}

.how-to-setup3 {
  	align-self: stretch;
  	background-color: #fff;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	justify-content: center;
  	padding: 96px 120px;
  	gap: 48px;
}
.thanks-to-our {
  	align-self: stretch;
  	position: relative;
  	font-size: 16px;
  	line-height: 140%;
  	font-family: Inter;
}
.smart-questionnaire-2-1-parent {
  	align-self: stretch;
  	border-radius: 12px;
  	display: flex;
  	align-items: center;
  	gap: 24px;
  	font-size: 32px;
  	color: #d78c00;
}
.confidentiality-breach-inciden {
  	flex: 1;
  	position: relative;
  	max-width: 100%;
  	overflow: hidden;
  	max-height: 100%;
  	object-fit: cover;
}
.how-to-setup5 {
  	align-self: stretch;
  	background-color: #fff;
  	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	justify-content: center;
  	padding: 96px 120px;
  	gap: 48px;
  	text-align: center;
}
.how-to-setup5 .how-to-setup-inner4 {
  	width: 586px;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
}
.how-to-setup5 .what-is-quebecs-law-25-wrapper {
  	width: 100%;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	max-width: 100%;
}
.how-to-setup5 .frame-parent5 {
  	align-self: stretch;
  	border-radius: 12px;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	gap: 24px;
  	text-align: left;
  	font-size: 16px;
  	font-family: Inter;
}
.how-to-setup5 .quebecs-law-25-formerly-bill-parent {
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	justify-content: center;
  	gap: 24px;
}
.how-to-setup5 .core-obligations-for {
  	align-self: stretch;
  	position: relative;
  	font-size: 24px;
  	letter-spacing: -0.05em;
  	line-height: 140%;
  	font-weight: 600;
  	font-family: Manrope;
}
.how-to-setup5 .frame-parent6 {
  	align-self: stretch;
  	border-radius: 12px;
  	background-color: #f1f6f7;
  	border: 1px solid #dfe5ed;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	justify-content: center;
  	padding: 12px 24px;
}
.how-to-setup5 .arrow-left-02-parent {
  	align-self: stretch;
  	border-bottom: 1px solid #dfe5ed;
  	display: flex;
  	align-items: flex-start;
  	padding: 12px 0px;
  	gap: 10px;
}
.how-to-setup5 .arrow-left-02-icon {
  	width: 22px;
  	position: relative;
  	max-height: 100%;
  	object-fit: contain;
}
.how-to-setup5 .appoint-a-privacy-officer-parent {
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	justify-content: center;
  	gap: 10px;
}
.how-to-setup5 .appoint-a-privacy {
  	align-self: stretch;
  	position: relative;
  	line-height: 140%;
  	font-weight: 600;
}
.how-to-setup5 .designate-a-person-container {
  	align-self: stretch;
  	position: relative;
  	line-height: 140%;
  	color: rgba(0, 3, 24, 0.5);
}
.how-to-setup5 .designate-a-person-in-charge-o {
  	margin: 0;
  	font-family: inherit;
  	font-size: inherit;
  	padding-left: 21px;
}
.how-to-setup5 .designate-a-person {
  	margin-bottom: 12px;
}
.how-to-setup5 .weuiarrow-outlined-icon {
  	width: 24px;
  	position: relative;
  	max-height: 100%;
  	object-fit: contain;
}
.how-to-setup5 .arrow-left-02-group {
  	align-self: stretch;
  	border-bottom: 1px solid #dfe5ed;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 12px 0px;
  	gap: 10px;
}
.how-to-setup5 .arrow-left-02-icon2 {
  	width: 16px;
  	position: relative;
  	max-height: 100%;
  	object-fit: contain;
}
.how-to-setup5 .implement-privacy-governance {
  	flex: 1;
  	position: relative;
  	line-height: 140%;
  	font-weight: 600;
}
.how-to-setup5 .arrow-left-02-parent10 {
  	align-self: stretch;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 12px 0px;
  	gap: 10px;
}
.how-to-setup5 .law-25-promo-image-2-parent {
  	height: 744.6px;
  	width: 731.3px;
  	position: relative;
}
.how-to-setup5 .law-25-promo-image-2 {
  	position: absolute;
  	top: 143.37px;
  	left: 0px;
  	border-radius: 6.93px;
  	width: 325.8px;
  	height: 231.3px;
  	object-fit: cover;
}
.how-to-setup5 .text-area-to {
  	position: absolute;
  	top: 115.79px;
  	left: 8.34px;
  	line-height: 140%;
  	font-weight: 600;
  	display: inline-block;
  	width: 330.7px;
}
.how-to-setup5 .smart-questionnaire-2-2 {
  	position: absolute;
  	top: 487.01px;
  	left: 347.34px;
  	border-radius: 6.75px;
  	width: 369.8px;
  	height: 257.6px;
  	object-fit: cover;
}
.how-to-setup5 .smart-questionnaire-2 {
  	position: absolute;
  	top: 2.37px;
  	left: 377px;
  	border-radius: 6.55px;
  	width: 354.3px;
  	height: 246.8px;
  	object-fit: cover;
}
.how-to-setup5 .rectangle-group {
  	position: absolute;
  	top: 391.79px;
  	left: 281.34px;
  	width: 162px;
  	height: 57px;
}
.how-to-setup5 .group-child {
  	position: absolute;
  	top: 0px;
  	left: 0px;
  	border-radius: 5.55px;
  	background-color: #fff;
  	border: 1px solid #dfe5ed;
  	box-sizing: border-box;
  	width: 162px;
  	height: 57px;
}
.how-to-setup5 .image-30-icon {
  	position: absolute;
  	top: 20px;
  	left: 8px;
  	width: 145px;
  	height: 20px;
  	object-fit: cover;
}
.how-to-setup5 .group-item {
  	position: absolute;
  	top: 358.79px;
  	left: 192.34px;
  	border-radius: 12px;
  	width: 89px;
  	height: 65px;
}
.how-to-setup5 .group-inner {
  	position: absolute;
  	top: 448.6px;
  	left: 336.34px;
  	border-radius: 12px;
  	width: 30px;
  	height: 159px;
}
.how-to-setup5 .group-child2 {
  	position: absolute;
  	top: 223.79px;
  	left: 443.34px;
  	border-radius: 12px;
  	width: 89px;
  	height: 200px;
  	object-fit: contain;
}
.how-to-setup5 .text-area-to2 {
  	position: absolute;
  	top: 0px;
  	left: 400.34px;
  	line-height: 140%;
  	font-weight: 600;
  	display: inline-block;
  	width: 330.7px;
}
.how-to-setup5 .text-area-to3 {
  	position: absolute;
  	top: 471.6px;
  	left: 367.68px;
  	line-height: 140%;
  	font-weight: 600;
  	display: inline-block;
  	width: 330.7px;
}



/* =========================================
   HOW TO SETUP 5 - Desktop accordion styles
   Scoped only to this section
   ========================================= */

/* =========================================
   HOW TO SETUP 5 - Desktop accordion styles
   Scoped only to this section
   ========================================= */

.how-to-setup5 .arrow-left-02-parent {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #ffffff;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.how-to-setup5 .arrow-left-02-parent:hover {
  border-color: #d1d5db;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.how-to-setup5 .arrow-left-02-parent.obligation-open {
  border-color: #dbe4d8;
}

.how-to-setup5 .arrow-left-02-group {
  position: relative;
  display: block;
  width: 100%;
  padding: 24px 92px 24px 28px;
  cursor: pointer;
  user-select: none;
}

.how-to-setup5 .arrow-left-02-group:focus-visible {
  outline: 2px solid #2563eb;
  outline-offset: 2px;
}

.how-to-setup5 .implement-privacy-governance {
  display: block;
  min-width: 0;
  color: #0f172a;
  font-size: 32px;
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.how-to-setup5 .accordion-toggle-icon {
  position: absolute;
  top: 50%;
  right: 28px;
  transform: translateY(-50%);

  width: 44px;
  height: 44px;
  min-width: 44px;

  display: flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;
  border-radius: 12px;
  background: #f3f4f6;
  color: #0f172a;

  font-size: 28px;
  line-height: 1;
  font-weight: 500;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;

  pointer-events: none;
  user-select: none;
  transition: background 0.2s ease, color 0.2s ease;
}

.how-to-setup5 .arrow-left-02-parent.obligation-open .accordion-toggle-icon {
  background: #16a34a;
  color: #ffffff;
}

.how-to-setup5 .appoint-a-privacy-officer-parent {
  padding: 0 28px 24px 28px;
}

.how-to-setup5 .appoint-a-privacy {
  color: #111827;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 500;
  margin-bottom: 14px;
}

.how-to-setup5 .designate-a-person-container {
  color: #475569;
  font-size: 18px;
  line-height: 1.7;
}

.how-to-setup5 .designate-a-person-in-charge-o {
  margin: 0;
  padding-left: 24px;
}

.how-to-setup5 .designate-a-person-in-charge-o li {
  margin-bottom: 10px;
}

.how-to-setup5 .designate-a-person-in-charge-o li:last-child {
  margin-bottom: 0;
}



.how-to-setup6 {
  	align-self: stretch;
  	background-color: #008b00;
  	overflow: hidden;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	padding: 96px 120px;
  	gap: 48px;
  	font-size: 56px;
  	color: #fff;
}
.how-to-setup-inner5 {
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	text-align: center;
}
.features {
  	width: 654px;
  	position: relative;
  	letter-spacing: -0.05em;
  	line-height: 120%;
  	font-weight: 500;
  	display: inline-block;
}
.frame-parent7 {
  	align-self: stretch;
  	display: flex;
  	align-items: flex-start;
  	gap: 32px;
  	font-size: 24px;
}
.frame-wrapper {
  	height: 237px;
  	flex: 1;
  	backdrop-filter: blur(20px);
  	border-radius: 30px 4px 30px 4px;
  	background-color: rgba(255, 255, 255, 0.1);
  	border: 1px solid rgba(255, 255, 255, 0.2);
  	box-sizing: border-box;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	padding: 24px;
}
.frame-parent8 {
  	align-self: stretch;
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 12px;
}
.frame-icon {
  	width: 72px;
  	height: 72px;
  	position: relative;
}
.mutual-partnership {
  	align-self: stretch;
  	position: relative;
  	letter-spacing: -0.05em;
  	line-height: 140%;
  	font-weight: 600;
}
.we-take-pride {
  	align-self: stretch;
  	position: relative;
  	font-size: 16px;
  	line-height: 120%;
  	font-family: Inter;
  	opacity: 0.6;
}
.frame-wrapper2 {
  	align-self: stretch;
  	flex: 1;
  	backdrop-filter: blur(20px);
  	border-radius: 30px 4px 30px 4px;
  	background-color: rgba(255, 255, 255, 0.1);
  	border: 1px solid rgba(255, 255, 255, 0.2);
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	padding: 24px;
}
.frame-parent9 {
  	align-self: stretch;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 12px;
}
.button6 {
  	border-radius: 74px;
  	background-color: #fff;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	padding: 16px 24px;
  	font-size: 16px;
  	color: #008b00;
  	font-family: Inter;
	cursor: pointer;
}
.how-to-setup7 {
  	align-self: stretch;
  	background-color: #fff;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	justify-content: center;
  	padding: 96px 120px;
  	gap: 48px;
  	font-size: 56px;
  	color: #000318;
}
.how-to-setup-inner6 {
  	align-self: stretch;
  	border-radius: 12px;
  	background-color: #e8ffee;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	padding: 16px;
}
.frame-parent11 {
  	align-self: stretch;
  	box-shadow: 0px 5px 15.4px rgba(26, 102, 35, 0.1);
  	border-radius: 12px;
  	background-color: #fff;
  	border: 1px solid #e7e7e7;
  	display: flex;
  	align-items: center;
  	padding: 48px 24px;
  	gap: 48px;
}
.frame-wrapper4 {
  	flex: 1;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
}
.parent {
  	width: 100%;
  	display: flex;
  	flex-direction: column;
  	align-items: center;
  	gap: 16px;
  	max-width: 100%;
}
.div {
  	align-self: stretch;
  	position: relative;
  	letter-spacing: -0.05em;
  	line-height: 120%;
  	font-weight: 500;
  	background: linear-gradient(90deg, #008b00, #aee166);
  	-webkit-background-clip: text;
  	-webkit-text-fill-color: transparent;
}
.return-over-investment {
  	align-self: stretch;
  	position: relative;
  	font-size: 17px;
  	letter-spacing: -0.05em;
  	line-height: 120%;
  	font-weight: 600;
}
.privassistance-customers-repor {
  	align-self: stretch;
  	position: relative;
  	font-size: 16px;
  	line-height: 120%;
  	font-family: Inter;
  	color: #000319;
  	opacity: 0.5;
}
.footer {
  	width: 1440px;
  	background: linear-gradient(156.49deg, #285dba, #122a54);
  	overflow: hidden;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	padding: 96px 120px;
  	box-sizing: border-box;
  	position: relative;
  	isolation: isolate;
  	gap: 48px;
  	font-size: 16px;
  	color: #fff;
  	font-family: Inter;
}
.frame-parent12 {
  	align-self: stretch;
  	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  	display: flex;
  	align-items: flex-start;
  	justify-content: space-between;
  	padding: 0px 0px 48px;
  	gap: 20px;
  	z-index: 0;
  	flex-shrink: 0;
}
.vector-parent {
  	width: 373px;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 24px;
}
.frame-child21 {
  	width: 80.2px;
  	height: 91.6px;
  	position: relative;
}
.your-data-privacy {
  	align-self: stretch;
  	position: relative;
  	line-height: 130%;
  	opacity: 0.7;
}
.frame-parent13 {
  	display: flex;
  	align-items: flex-start;
  	gap: 48px;
}
.useful-links-parent {
  	height: 148px;
  	width: 170px;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 16px;
}
.useful-links {
  	align-self: stretch;
  	position: relative;
  	line-height: 120%;
  	font-family: Manrope;
}
/* .about-us {
  	align-self: stretch;
  	position: relative;
  	line-height: 120%;
  	opacity: 0.7;
} */

.about-us {
  	align-self: stretch;
  	position: relative;
  	line-height: 120%;
  	opacity: 0.7;
  	text-decoration: none;
  	color: inherit;
  	cursor: pointer;
  	display: block;
}

.products-group {
  	height: 105px;
  	width: 170px;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 16px;
}
.contact-us-parent {
  	width: 192px;
  	display: flex;
  	flex-direction: column;
  	align-items: flex-start;
  	gap: 16px;
}
.fa7-brandsfacebook-parent {
  	display: flex;
  	align-items: flex-start;
  	gap: 24px;
}
.fa7-brandsfacebook-icon {
  	width: 48px;
  	position: relative;
  	border-radius: 100px;
  	max-height: 100%;
}
.line-mdyoutube-filled-icon {
  	width: 48px;
  	position: relative;
  	border-radius: 100px;
  	max-height: 100%;
  	object-fit: cover;
}
.background2 {
  	width: 1439.5px;
  	height: 955px;
  	position: absolute;
  	margin: 0 !important;
  	top: calc(50% - 240.3px);
  	left: calc(50% - 720px);
  	overflow: hidden;
  	flex-shrink: 0;
  	opacity: 0.03;
  	z-index: 1;
}
.rectangle-container {
  	position: absolute;
  	top: -0.03px;
  	left: 59px;
  	width: 1334px;
  	display: flex;
  	align-items: center;
  	justify-content: space-between;
  	gap: 20px;
}
.background-child5 {
  	position: absolute;
  	top: 58.81px;
  	left: 0px;
  	width: 1439.5px;
  	height: 837.3px;
  	object-fit: contain;
}
.background-child6 {
  	position: absolute;
  	top: 596.97px;
  	left: 193px;
  	background-color: #d9d9d9;
  	width: 66px;
  	height: 59px;
}
.background-child7 {
  	position: absolute;
  	top: 237.97px;
  	left: 259px;
  	background-color: #d9d9d9;
  	width: 66px;
  	height: 59px;
}
.background-child8 {
  	position: absolute;
  	top: 657.97px;
  	left: 925px;
  	background-color: #d9d9d9;
  	width: 66px;
  	height: 59px;
}
.background-child9 {
  	position: absolute;
  	top: 238.97px;
  	left: 1125px;
  	background-color: #d9d9d9;
  	width: 66px;
  	height: 59px;
}


.footer-child {
  	width: 296.7px;
  	height: 107.7px;
  	position: absolute;
  	margin: 0 !important;
  	bottom: 458.59px;
  	left: 9.79px;
  	filter: blur(80px);
  	border-radius: 50%;
  	background-color: #75c9e3;
  	z-index: 2;
  	flex-shrink: 0;
}
.privassistant-all-rights-reser-parent {
  	align-self: stretch;
  	display: flex;
  	align-items: flex-start;
  	justify-content: space-between;
  	gap: 20px;
  	z-index: 3;
  	flex-shrink: 0;
}
.privassistant-all-rights {
  	position: relative;
  	opacity: 0.7;
}
.privacy-policy-parent {
  	display: flex;
  	align-items: center;
  	gap: 24px;
}


/* ==================================================
   LAW 25 - RESPONSIVE ADD-ON (PRODUCTION)
   Place AFTER the original page CSS
   ================================================== */

/* ==================================================
   1) GLOBAL SAFETY / FIGMA WIDTH RESETS
   ================================================== */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  margin: 0;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Main page sections */
.how-to-setup,
.how-to-setup2,
.how-to-setup3,
.how-to-setup5,
.how-to-setup6,
.how-to-setup7,
.footer {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
}

/* Fixed-width Figma exports made fluid */
.features,
.how-to-setup-inner,
.how-to-setup-inner4,
.request-a-demo-to-get-started-parent,
.law-25-promo-image-2-parent {
  width: 100%;
  max-width: 100%;
}

/* Hero layout base */
.how-to-setup {
  flex-wrap: wrap;
  align-items: center;
}

/* Hero content widths */
.frame-parent {
  width: 100%;
  max-width: 700px;
}

.request-a-demo-to-get-started-parent {
  width: 100%;
  max-width: 520px;
}

/* Hero title scaling */
.automate-quebecs-law-container {
  font-size: clamp(28px, 5vw, 64px);
  line-height: 1.2;
  text-align: center;
}

.improve-compliance {
  font-size: inherit;
  line-height: inherit;
}

/* Generic section title scaling */
.assess-your-compliance-container,
.features {
  line-height: 1.2;
}

/* Features cards base */
.frame-parent7 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px;
}

.frame-wrapper,
.frame-wrapper2 {
  flex: 1 1 300px;
  max-width: 420px;
}

/* Text + image content block */
.frame-parent5 {
  display: flex;
  align-items: center;
  gap: 24px;
}

/* Large absolute-positioned illustration wrapper */
.law-25-promo-image-2-parent {
  height: auto;
}

/* Footer base */
.footer {
  width: 100%;
}

.frame-parent12 {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.frame-parent13 {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}

.vector-parent {
  width: 100%;
  max-width: 400px;
}

/* ==================================================
   2) SMALL LAPTOPS / LARGE TABLETS
   1024px - 1279px
   ================================================== */

@media (min-width: 1024px) and (max-width: 1279px) {
  .header {
    padding: 16px 64px;
  }

  .how-to-setup {
    flex-direction: column;
    text-align: center;
    padding: 160px 64px 80px;
    gap: 40px;
  }

  .frame-parent {
    max-width: 750px;
  }

  .request-a-demo-to-get-started-parent {
    max-width: 620px;
  }

  .automate-quebecs-law-container {
    font-size: clamp(36px, 4.2vw, 52px);
  }

  .law-25-grants {
    font-size: 18px;
  }

  .features {
    font-size: 40px;
  }

  .assess-your-compliance-container {
    font-size: 36px;
  }

  .core-obligations-for {
    font-size: 22px;
  }

  .frame-parent5 {
    flex-direction: column;
    align-items: center;
    gap: 40px;
  }

  .law-25-promo-image-2,
  .smart-questionnaire-2,
  .smart-questionnaire-2-2 {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: auto;
  }

  .footer {
    padding: 80px 64px;
  }

  .useful-links-parent,
  .products-group,
  .contact-us-parent {
    width: 45%;
  }
}

/* ==================================================
   3) TABLETS
   768px - 1023px
   ================================================== */

@media (min-width: 768px) and (max-width: 1023px) {
  .law-25 {
    font-size: 44px;
  }

  .header {
    padding: 16px 32px;
  }

  .how-to-setup {
    flex-direction: column;
    text-align: center;
    padding: 140px 48px 64px;
    gap: 36px;
  }

  .frame-parent {
    max-width: 720px;
  }

  .request-a-demo-to-get-started-parent {
    max-width: 620px;
  }

  .automate-quebecs-law-container {
    font-size: clamp(34px, 4.8vw, 46px);
  }

  .law-25-grants {
    font-size: 18px;
  }

  .how-to-setup2,
  .how-to-setup3,
  .how-to-setup5,
  .how-to-setup6,
  .how-to-setup7 {
    padding-left: 48px;
    padding-right: 48px;
  }

  .frame-container {
    flex-direction: column;
  }

  .form-field-wrapper {
    width: 100%;
  }

  .frame-parent5 {
    flex-direction: column;
    align-items: center;
    gap: 36px;
  }

  .law-25-promo-image-2,
  .smart-questionnaire-2,
  .smart-questionnaire-2-2 {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: auto;
  }

  .frame-parent7 {
    gap: 24px;
  }

  .frame-wrapper,
  .frame-wrapper2 {
    flex: 1 1 320px;
    max-width: 420px;
  }

  .features {
    font-size: 38px;
    text-align: center;
  }

  .assess-your-compliance-container {
    font-size: 34px;
    text-align: center;
  }

  .core-obligations-for {
    font-size: 22px;
  }

  .footer {
    padding: 64px 48px;
  }

  .frame-parent12 {
    gap: 40px;
  }

  .frame-parent13 {
    gap: 28px;
  }

  .useful-links-parent,
  .products-group,
  .contact-us-parent {
    width: 45%;
  }

  .privassistant-all-rights-reser-parent {
    gap: 24px;
  }
}

/* ==================================================
   4) MOBILE / PHONES
   up to 767px
   ================================================== */

@media (max-width: 767px) {
  .law-25 {
    font-size: 32px;
  }

  .header {
    padding: 12px 16px;
  }

  .image-1-icon {
    width: 170px;
  }

  .how-to-setup,
  .how-to-setup2,
  .how-to-setup3,
  .how-to-setup5,
  .how-to-setup6,
  .how-to-setup7 {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }

  .how-to-setup {
    flex-direction: column;
    text-align: center;
    padding-top: 110px;
    padding-bottom: 40px;
    gap: 28px;
  }

  .automate-quebecs-law-container {
    font-size: clamp(26px, 7vw, 36px);
    padding-left: 10px;
    padding-right: 10px;
  }

  .law-25-grants {
    font-size: 15px;
  }

  .frame-parent {
    max-width: 100%;
  }

  .request-a-demo-to-get-started-parent {
    max-width: 100%;
    padding: 20px;
    font-size: 20px;
  }

  .frame-container {
    flex-direction: column;
  }

  .form-field-wrapper {
    width: 100%;
  }

  .frame-parent5 {
    flex-direction: column;
    gap: 24px;
    align-items: center;
  }

  .law-25-promo-image-2-parent {
    width: 100%;
    height: auto;
  }

  .law-25-promo-image-2,
  .smart-questionnaire-2,
  .smart-questionnaire-2-2 {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: auto;
  }

  .frame-parent7 {
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  .frame-wrapper,
  .frame-wrapper2 {
    width: 100%;
    max-width: 420px;
  }

  .features,
  .assess-your-compliance-container {
    font-size: 28px;
    text-align: center;
  }

  .core-obligations-for {
    font-size: 20px;
  }

  .button,
  .button2,
  .button3,
  .button6 {
    width: 100%;
  }

  .footer {
    padding: 40px 20px;
  }

  .frame-parent12,
  .frame-parent13,
  .privassistant-all-rights-reser-parent {
    flex-direction: column;
  }

  .frame-parent12 {
    gap: 30px;
  }

  .frame-parent13 {
    gap: 20px;
  }

  .privassistant-all-rights-reser-parent {
    gap: 20px;
  }

  .vector-parent,
  .useful-links-parent,
  .products-group,
  .contact-us-parent {
    width: 100%;
    max-width: 100%;
  }
}

/* ==================================================
   5) SMALL PHONES
   up to 480px
   ================================================== */

@media (max-width: 480px) {
  .law-25 {
    font-size: 28px;
  }

  .how-to-setup {
    padding-top: 100px;
    font-size: 30px;
  }

  .automate-quebecs-law-container,
  .features,
  .assess-your-compliance-container {
    font-size: 26px;
  }

  .footer {
    padding: 40px 16px;
  }
}

/* Make footer links clickable and remove underline */


/* Footer clickable links */
.background2,
.footer-child,
.rectangle-container,
.background-child5,
.background-child6,
.background-child7,
.background-child8,
.background-child9 {
  pointer-events: none;
}


/* =========================================
   Compact form labels inside fields
   Additions for placeholder-style form UI
   ========================================= */

/* Visually hide labels but keep them accessible for screen readers */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* Ensure the field wrapper can contain absolutely-positioned elements if needed later */
.form-field {
  position: relative;
}

/* Placeholder color for text inputs and textarea */
.form-field2::placeholder,
.form-field16::placeholder {
  color: #b3b3b3;
  opacity: 1;
}

/* Optional: slightly darker placeholder on focus for better readability */
.form-field2:focus::placeholder,
.form-field16:focus::placeholder {
  color: #c2c2c2;
}

/* Make the default unselected select text appear light grey */
.form-field2:required:invalid,
.form-field10:required:invalid {
  color: #b3b3b3;
}

/* Real dropdown options should appear normal/dark */
.form-field2 option,
.form-field10 option {
  color: #000;
}

/* Keep the empty prompt option grey in the dropdown list */
.form-field2 option[value=""],
.form-field10 option[value=""] {
  color: #b3b3b3;
}

/* Improves consistency across browsers for selects */
select.form-field2,
select.form-field10 {
  color: #000;
}

/* When select is still on placeholder option, force grey text */
select.form-field2:required:invalid,
select.form-field10:required:invalid {
  color: #b3b3b3;
}

/* Optional: smoother visual polish */
.form-field2,
.form-field10,
.form-field16 {
  transition: color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Optional: keep typed text clearly readable */
.form-field2,
.form-field10,
.form-field16 {
  color: #111;
}

/* Autofill cleanup for WebKit browsers */
input.form-field2:-webkit-autofill,
input.form-field2:-webkit-autofill:hover,
input.form-field2:-webkit-autofill:focus,
textarea.form-field16:-webkit-autofill,
textarea.form-field16:-webkit-autofill:hover,
textarea.form-field16:-webkit-autofill:focus {
  -webkit-text-fill-color: #111;
  transition: background-color 9999s ease-in-out 0s;
}