img {
	max-width: 100%;
}

body {
	font-family: 'Noto Sans TC', sans-serif;
	color: #163a6b;
	background: #f3f3f3;
}

a {
	text-decoration: none;
	color: inherit;
}

@media (min-width: 1200px) {
	.container {
		max-width: min(86.25%, 1320px);
	}
}

.mobile-only {
	display: none;
}

.main-bg {
	position: relative;
	background: #f3f3f3 url('../img/body_bg_1a.png') bottom center / 100% auto no-repeat;
}

.hero {
	position: relative;
	padding: 0px 6.875% 0;
	overflow: visible;
	max-width: 1600px;
	margin: 0 auto;
}
 
.hero-slider {
	position: relative;
}

.hero-slider .slider-item {
	opacity: 0;
	pointer-events: none;
}

.hero-slider .slider-item.is-on {
	opacity: 1;
	pointer-events: auto;
	z-index: 2;
}

.hero-slider .slider-item.is-on.is-fade {
	animation: heroFade .45s ease;
}

@keyframes heroFade {
	from { opacity: 0; }
	to { opacity: 1; }
}

.hero-slider .slider-item:not(:first-child) {
	position: absolute;
	inset: 0;
}

.hero-banner {
	display: block;
	height: 100%;
}

.hero-banner img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.hero-slider .dots-box {
	position: absolute;
	right: 2.5%;
	bottom: 14%;
	z-index: 12;
	display: flex;
	align-items: center;
	gap: 2px;
	pointer-events: auto;
}

.hero-slider .dots {
	display: flex;
	align-items: center;
}

.hero-slider .dots button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	cursor: pointer;
}

.hero-slider .dots button::after {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #777;
	box-shadow: 0 0 2px rgba(0, 0, 0, .55);
}

.hero-slider .dots button.current::after {
	background: #56FFFF;
}

.banner-pause {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: 0;
	background: transparent;
	padding: 0;
	color: #777;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	filter: drop-shadow(0 0 2px rgba(0, 0, 0, .55));
}

.banner-pause.is-paused {
	color: #56FFFF;
}

.hero-frame {
	position: relative;
}

.hero-campus {
	width: 100%;
}

.hero-students {
	position: absolute;
	left: 28%;
	bottom: 2.3%;
	width: 54%;
	z-index: 2;
	pointer-events: none;
	visibility: visible;
	display: flex;
	align-items: flex-end;
	animation: heroStudentsIn 1s ease-out both;
}

.hero-student-boy {
	width: 37.3%;
}

.hero-student-girl {
	width: 62.7%;
}

.last-pill {
	margin-bottom: 3%;
}

@keyframes heroStudentsIn {
	from {
		transform: translateY(36px) scale(0.92);
	}
	to {
		transform: translateY(0) scale(1);
	}
}

.top-nav {
	z-index: 20;
	padding: 30px 0 0;
	background: transparent;
}

.top-nav.scrolling {
	background: rgba(255, 255, 255, 0.94);
	padding: 8px 0;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.top-nav.scrolling .logo-row {
	align-items: center;
}

.top-nav.scrolling .logo {
	width: 30%;
}

.top-nav.scrolling .inst-names {
	display: grid;
	grid-template-columns: auto auto;
	column-gap: 14px;
	color: #333;
	font-size: 14px;
	line-height: 1.4;
	margin-left: 14px;
	margin-bottom: 0;
}

.top-nav.scrolling .inst-names span + span::before {
	content: none;
}

.top-nav.scrolling .nav-tagline {
	display: block;
}

.top-nav .container {
	max-width: 1320px;
	width: 86.25%;
}

.hero-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.nav-brand {
	position: relative;
	display: flex;
	align-items: center;
	min-width: 0;
	margin-left: 4%;
}

.nav-lang {
	position: absolute;
	right: calc(100% - 2% + 8px);
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 28px;
	color: #9aa3ad;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.15;
}

.nav-lang .on {
	color: #163a6b;
}

.nav-lang span + span {
	border-top: 1px solid #c5c9d0;
	margin-top: 3px;
	padding-top: 3px;
}

.logo-row {
	display: flex;
	align-items: flex-end;
	color: #3d4a5c;
	margin-left: 2%;
}

.logo {
	width: 38%;
}

.inst-names {
	font-size: 17px;
	color: #fff;
	margin-left: 7%;
	white-space: nowrap;
}

.top-nav.on-banner3 .inst-names {
	color: #333;
}

@media (min-width: 992px) {
	.hero:has(.slider-item.is-on img[src*="TopBanner3_desktop"]) .inst-names {
		color: #333;
	}
}

.inst-names span + span::before {
	content: " | ";
}

.reg-btn {
	position: relative;
	display: inline-block;
	left: 3%;
	width: 14%;
	flex-shrink: 0;
	aspect-ratio: 357 / 106;
	overflow: hidden;
	border-radius: 20px;
	background: linear-gradient(90deg, #4376e0 0%, #02b0d4 42%, #59c8d4 78%, #39c0d4 100%);
	box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
}

.reg-btn::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, #48459c 0%, #5f58dd 32%, #3384dd 68%, #2293da 100%);
	transform: translateX(-100%);
	transition: transform .4s cubic-bezier(.16, 1, .3, 1);
}

.reg-btn:hover::before {
	transform: translateX(0);
}

.reg-inner {
	position: absolute;
	inset: 0 8% 0 8%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	z-index: 1;
}

.reg-label {
	width: 75%;
}

.reg-btn .icon-box,
.reg-btn .icon-box img {
	width: 2rem;
}

.icon-box {
	position: relative;
	flex-shrink: 0;
	display: inline-block;
	width: 1.1rem;
	height: 1.1rem;
	overflow: hidden;
	top: 1px;
}

.icon-box img {
	position: absolute;
	width: 1.1rem;
	height: auto;
	inset: 0;
	margin: auto;
	transition: transform .4s cubic-bezier(.16, 1, .3, 1);
	opacity: 1;
}

.icon-box img:last-of-type {
	transform: translate3d(-300%, 0, 0);
}

.action-btn:hover .icon-box img:first-of-type {
	opacity: 0;
}

.action-btn:hover .icon-box img:last-of-type {
	transform: translate3d(0, 0, 0);
}

.hero-tagline {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 15%;
	width: 48%;
	z-index: 2;
	pointer-events: none;
}

.hero-infoday {
	position: absolute;
	left: -2.5%;
	bottom: -3%;
	width: 38%;
	z-index: 5;
	pointer-events: none;
}

.hero-pills {
	position: absolute;
	right: 2%;
	bottom: -5%;
	display: flex;
	align-items: center;
	z-index: 6;
	width: 53%;
}

.hero-pill {
	position: relative;
	display: inline-block;
	width: 31%;
	margin-right: -3%;
	z-index: 5;
}

.hero-pill-wide {
	width: 36%;
}

.first-pill {
	width: 34%;
	z-index: 6;
}

.hero-pill .pill-bg {
	width: 100%;
}

.hero-pill .pill-label {
	position: absolute;
	left: 50%;
	top: 46%;
	transform: translate(-50%, -50%);
	width: 60%;
}

.hero-pill-wide .pill-label {
	width: 82%;
}

.pill-star {
	position: absolute;
	width: 16px;
	pointer-events: none;
	z-index: 7;
}

.pill-star-1 {
	left: -3%;
	top: 22%;
	width: 23px;
}

.pill-star-2 {
	left: 26%;
	top: 0;
	width: 17px;
}

.hero-tear {
	position: absolute;
	left: 8%;
	bottom: -13%;
	width: 90%;
	z-index: 3;
	pointer-events: none;
}

.section-campus,
.section-talk {
	position: relative;
	margin-top: 5%;
}

.section-campus::after,
.section-talk::after {
	content: '';
	display: block;
	width: 100%;
	height: 5px;
	margin-top: 20px;
	background-image: radial-gradient(circle, #8a9b93 2.5px, transparent 2.6px);
	background-size: 14px 8px;
	background-repeat: repeat-x;
	background-position: center;
}

.section-title-img {
	display: block;
	margin-left: 4%;
    width: 19%;
	margin-bottom: 3%;
	position: relative;
	right: 20px;
}

.campus-title-img {
	width: 22%;
}

.campus-row {
	display: flex;
	align-items: flex-start;
	gap: 5%;
}

.campus-boy {
	width: 10%;
	position: relative;
    right: 2%;
}

.campus-date {
	width: 60%;
	display: block;
}

.campus-col {
	margin-top: 2%;
}

.campus-time {
	width: 36%;
    margin: 3% 0;
	max-width: 180px;
}

.campus-list {
	border-top: 2px solid #fff;
	padding-top: 2%;
}

.campus-line {
	display: block;
	margin: 0 0 6px;
}

.campus-list span {
	display: inline-block;
	margin: 2px 18px 2px 0;
	font-weight: 700;
	font-size: 19px;
	color: #333;
	white-space: nowrap;
}

.campus-list a:hover {
	color: #2bb8d9;
}

.campus-list img {
	width: 17px;
	margin-right: 6px;
}

.talk-title-img {
	width: 225px;
}

.talk-row {
	display: flex;
	align-items: flex-start;
	padding-bottom: 20px;
	padding-left: 5%;
}

.talk-left,
.talk-right {
	flex: 0 0 auto;
}

.talk-left {
	width: 475px;
}

.talk-right {
	padding-left: 5%;
}

.talk-heading {
	width: 52%;
	margin-bottom: 15px;
}

.talk-datetime {
	width: 65%;
	display: block;
}

.talk-venue {
	width: 45%;
	display: block;
	margin: 8px 0 22px;
}

.talk-item {
	margin-bottom: 16px;
}

.talk-item-title {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.4;
	color: #1a3d7c;
	margin-bottom: 10px;
}

.talk-item-title i {
	color: #5b7fe8;
	margin-right: 8px;
	display: none;
}

.talk-item p {
	font-size: 21px;
	color: #333;
	margin-bottom: 0;
}

.talk-item p.subtitle {
	font-size: 19px;
}

.talk-graduate {
	position: absolute;
	right: -5%;
	bottom: -10%;
	width: 19%;
	z-index: 3;
	pointer-events: none;
	visibility: visible;
}

.acts-title-img {
	width: 320px;
	margin-left: 2%;
	right: 0;
}

.acts-row {
	display: flex;
	gap: 28px;
}

.act-card {
	flex: 1 1 0;
	min-width: 0;
	position: relative;
}

.act-card .owl-carousel {
	width: 100%;
}

.act-title {
	display: block;
	width: 70%;
	margin: 0 auto 8px;
}

.act-photo {
	width: 100%;
	display: block;
}

.owl-carousel .owl-item img.act-photo.mobile-only {
	display: none;
}

.act-slider .item {
	position: relative;
}

.act-caption {
	position: absolute;
	bottom: 20%;
	left: 0;
	width: 100%;
	text-align: center;
	color: #fff;
	font-weight: 700;
	font-size: 19px;
	margin: 0;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.65);
	z-index: 2;
}

.act-caption span {
	color: #56ffff;
	margin: 0 2px;
}

.act-card .owl-dots {
	position: absolute;
	bottom: 12%;
	width: 100%;
	margin: 0 !important;
	z-index: 4;
}

.act-card .owl-theme .owl-dots .owl-dot span {
	width: 9px;
	height: 9px;
	margin: 4px 5px;
	background: rgba(255, 255, 255, 0.7);
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
}

.act-card .owl-theme .owl-dots .owl-dot.active span,
.act-card .owl-theme .owl-dots .owl-dot:hover span {
	background: #56FFFF;
}

.act-card .owl-nav {
	display: none;
}

.acts-bottom {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: 4px;
	margin-bottom: 8px;
	padding-right: 3%;
}

.acts-cta {
	position: relative;
	display: inline-block;
	width: 290px;
}

.acts-cta-bg {
	width: 100%;
	display: block;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
	border-radius: 25px;
}

.acts-cta-inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 85%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.acts-cta-label {
	width: 58%;
}

.acts-cta-circle {
	position: absolute;
	right: 5%;
	top: 50%;
	transform: translateY(-50%);
	height: 70%;
	aspect-ratio: 1;
}

.acts-cta-circle-bg {
	width: 100%;
	height: 100%;
	display: block;
}

.acts-cta-circle .icon-box {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 26px;
	height: 16px;
	transform: translate(-50%, -50%);
}

.acts-cta-circle .icon-box img {
	width: 26px;
}

.section-acts {
	position: relative;
	margin-top: 8px;
	padding-top: 40px;
	padding-bottom: 10px;
	background: transparent;
	overflow: visible;
}

.footer {
	position: relative;
	background: #3b4068 url('../img/footer_background.png') center / cover no-repeat;
	width: 100%;
	padding: calc(70% * 406 / 1920) 0 56px;
	color: #fff;
	padding-bottom: 100px;
}

.footer-overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	pointer-events: none;
}

.footer a {
	color: #fff;
}

.footer-title {
	font-size: 28px;
	font-weight: 700;
	margin-bottom: 10px;
	color: #fff;
}

.social-btns-top {
	font-size: 20px;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 18px;
	color: #fff;
}

.social-btns-top i {
	color: #6ACDE3;
	font-size: 28px;
	vertical-align: middle;
}

.social-btns-top i.fa-whatsapp {
	font-size: 30px;
}

.social-btns img {
	height: 36px;
	margin-right: 10px;
	margin-bottom: 6px;
}

.footer-copy {
	color: rgba(255, 255, 255, 0.78);
	font-size: 12px;
	margin: 8px 0 0;
}

.footer-copy a {
	color: #fff;
}

.footer-badge {
	max-width: 200px;
}

@media (min-width: 992px) {
	.footer .text-end {
		position: absolute;
		right: 0;
		top: 0;
		bottom: 0;
		width: auto;
		margin: 0;
		padding: calc(80% * 406 / 1920) 0 100px;
		display: flex;
		align-items: center;
	}
}

.scroll {
	position: absolute;
	left: 0;
	bottom: 18px;
	z-index: 21;
	width: 72px;
}

.scroll.is-fixed {
	position: fixed;
	top: auto;
	bottom: 10%;
}

.scroll img {
	width: 72px;
	max-width: none;
}

.scroll-home {
	display: block;
	margin-bottom: 4px;
}

.quick-fade-in {
	opacity: 1;
	animation-name: fadeInOpacity;
	animation-iteration-count: 1;
	animation-timing-function: ease-in;
	animation-duration: 0.5s;
}

@keyframes fadeInOpacity {
	0% { opacity: 0.3; }
	100% { opacity: 1; }
}

.cookieConsentContainer {
	z-index: 999;
	width: 300px;
	min-height: 20px;
	box-sizing: border-box;
	padding: 20px;
	background: #232323;
	overflow: hidden;
	position: fixed;
	bottom: 30px;
	right: 30px;
	display: none;
}

.cookieConsentContainer .cookieDesc p {
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 13px;
	line-height: 20px;
	display: block;
	margin-top: 10px;
}

.cookieConsentContainer .cookieButton a {
	display: inline-block;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	margin-top: 14px;
	background: #000;
	padding: 15px 24px;
	text-align: center;
}

.cookieDesc a {
	color: #fff;
}

.cookieConsentContainer .cookieButton a:hover {
	cursor: pointer;
	background: #3E9B67;
}

.nav-tagline {
	display: none;
	width: 248px;
	margin-left: 20px;
	flex-shrink: 0;
}

.campus-page .inst-names {
	color: #333;
}

.campus-page .main-bg {
	padding-top: 88px;
}

.campus-head {
	position: relative;
	margin-top: 50px;
}

.campus-head-top {
	position: relative;
	z-index: 3;
}

.campus-page-title {
	width: 20%;
	margin-top: 10px;
	position: relative;
	z-index: 4;
}

.campus-page-tagline {
	position: absolute;
    right: 18%;
    top: -20%;
    width: 38%;
    z-index: 3;
}

.campus-page-tagline img {
	display: block;
	width: 100%;
}

.campus-weeks {
	position: relative;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 32px;
	margin-bottom: 100px;
	padding: 28px 4% 24px 5%;
	aspect-ratio: 1174 / 253;
}

.campus-weeks-bg {
	position: absolute;
	z-index: 0;
	pointer-events: none;
	max-width: none;
	object-fit: fill;
}

.campus-weeks-bg-r {
	left: 0;
	top: 10%;
	width: 60%;
	height: 110%;
	z-index: 1;
}

.campus-weeks-bg-l {
	right: 0;
	top: 20%;
	width: 54%;
	height: 70%;
}

body.wk2 .campus-weeks-bg-r {
	z-index: 0;
}

body.wk2 .campus-weeks-bg-l {
	z-index: 5;
}

@media (min-width: 992px) {
	body.wk2 .campus-weeks-bg-l {
		top: 25%;
		width: 56%;
		height: 70%;
	}
}

.campus-girl {
	display: none;
	position: absolute;
	bottom: -14%;
	width: auto;
	max-width: none;
	z-index: 3;
	pointer-events: none;
}

.campus-girl-l {
	left: -20px;
	height: 200px;
}

.campus-girl-r {
	right: 0;
	height: 130px;
	bottom: 14%;
}

.cp-week-col:has(.active) .campus-girl {
	display: block;
	visibility: visible !important;
	animation-duration: .7s;
	animation-fill-mode: both;
}

.cp-week-col:has(.active) .campus-girl-l {
	animation-name: slideInLeft;
}

.cp-week-col:has(.active) .campus-girl-r {
	animation-name: slideInRight;
}

.cp-week-col:first-of-type:has(.active) {
	padding-left: 150px;
}

.cp-week-col:last-of-type:has(.active) {
	padding-right: 118px;
}

.cp-week-col {
	position: relative;
	flex: 0 1 auto;
	z-index: 4;
	transition: padding .35s ease;
}

.cp-week-col:first-of-type {
	flex: 0 1 auto;
	max-width: 50%;
	z-index: 5;
}

body.wk2 .cp-week-col:first-of-type {
	z-index: 1;
}

body.wk2 .cp-week-col:last-of-type {
	z-index: 6;
}

.cp-week-tab {
	display: flex;
	align-items: center;
	gap: 14px;
	cursor: pointer;
	position: relative;
	margin-bottom: 3%;
}

.cp-week-tab.tab2 {
	margin-bottom: 4%;
}

.cp-week-tab.tab2.active {
	margin-top: 4%;
}

body.wk2 .cp-week-tab[data-week="1"] {
	margin-top: 10%;
}

.cp-week-tab img {
	flex-shrink: 0;
}

.cp-week-tab .d-on,
.cp-week-tab .a-off {
	display: inline-block;
}

.cp-week-tab .d-off,
.cp-week-tab .a-on {
	display: none;
}

.cp-week-tab.active .a-on {
	display: inline-block;
}

.cp-week-tab.active .a-off {
	display: none;
}

.cp-week-tab img.d-on {
	height: 56px;
	width: auto;
}

.cp-week-tab:not(.active) img.d-on {
	height: 48px;
}

.cp-week-tab .a-on,
.cp-week-tab .a-off {
	width: 34px;
	animation: arrowBounce 1s ease-in-out infinite;
}

@keyframes arrowBounce {
	0%, 100% { transform: translateX(0); }
	50% { transform: translateX(-8px); }
}

body.wk2 .cp-week-tab[data-week="1"] .a-on,
body.wk2 .cp-week-tab[data-week="2"] .a-off {
	display: none;
}

body.wk2 .cp-week-tab[data-week="1"] .a-off,
body.wk2 .cp-week-tab[data-week="2"] .a-on {
	display: inline-block;
}

.cmenu-line {
	margin-bottom: 2px;
}

.cmenu a {
	display: inline-block;
	margin: 2px 16px 2px 0;
	font-weight: 700;
	font-size: 17px;
	color: #333;
	white-space: nowrap;
}

.cmenu a img {
	width: 14px;
	margin-bottom: 1px;
}

.cp-week-col:not(:has(.active)) .cmenu a {
	color: #333;
}

.cmenu a:hover {
	color: #2ad4e8;
}

.campus-cards {
	padding-bottom: 20px;
	z-index: 3;
	position: relative;
}

.cp-pane {
	display: none;
}

.cp-pane.active {
	display: block;
}

.cp-card:first-of-type {
	margin-top: 0;
}

.cp-card {
	width: 86.25%;
	max-width: 1320px;
	margin: 50px auto;
	border-radius: 4px;
	background: #fff;
	color: #163a6b;
	transition: background-color .35s ease, color .35s ease;
	z-index: 3;
}

.cp-card:hover {
	background: #195caa;
	color: #fff;
}

.cp-inner {
	display: flex;
	gap: 10%;
	padding: 12px 32px 24px;
	align-items: stretch;
}

.cp-left {
	width: 300px;
	flex-shrink: 0;
	position: relative;
	display: flex;
	flex-direction: column;
}

.cp-badge {
	position: absolute;
	left: 10px;
	top: -40px;
	z-index: 2;
	width: auto;
	max-width: none;
	height: 52px;
}

.cp-badge-tall {
	height: 79px;
}

.cp-photo-wrap {
	position: relative;
	padding-top: 22px;
}

.cp-en {
	display: none;
}

.cp-photo {
	width: 122%;
	max-width: none;
	display: block;
	transition: transform .4s ease;
}

.cp-photo.mobile-only {
	display: none;
}

.cp-card:hover .cp-photo {
	transform: rotate(-4deg) translateY(-4px);
}

.cp-addr,
.cp-phone {
	margin: 10px 0 0;
	font-size: 18px;
	font-weight: 700;
	margin-left: 22px;
}

.cp-phone {
	margin-top: 5px;
	margin-bottom: 18px;
}

.cp-phone img {
	width: 16px;
	margin-right: 8px;
	position: relative;
	top: -1px;
}

.cp-tt {
	position: relative;
	display: inline-block;
	width: 250px;
	margin-top: auto;
}

.cp-tt-bg {
	width: 100%;
	display: block;
	filter: drop-shadow(0 10px 15px rgba(0, 0, 0, 0.1)) drop-shadow(0 4px 6px rgba(0, 0, 0, 0.05));
}

.cp-tt-inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 85%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cp-tt-label {
	width: 62%;
}

.cp-tt-circle {
	position: absolute;
	right: 5%;
	top: 50%;
	transform: translateY(-50%);
	height: 70%;
	aspect-ratio: 1;
}

.cp-tt-circle-bg {
	width: 100%;
	height: 100%;
	display: block;
}

.cp-tt-circle .icon-box {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 22px;
	height: 14px;
	transform: translate(-50%, -50%);
}

.cp-tt-circle .icon-box img {
	width: 22px;
}

.cp-right {
	flex: 1;
	min-width: 0;
	padding-top: 22px;
}

.cp-disc-row {
	display: flex;
	align-items: baseline;
	gap: 16px;
	margin-bottom: 14px;
}

.cp-h,
.cp-acts-head {
	font-size: 22px;
	font-weight: 700;
	margin: 0;
}

.cp-h img,
.cp-acts-head img {
	width: 16px;
	margin-right: 8px;
	position: relative;
	top: -2px;
}

.cp-disc {
	font-size: 18px;
	font-weight: 700;
	color: #333;
}

.cp-card:hover .cp-disc {
	color: #fff;
}

.cp-disc span {
	margin: 0 4px;
	opacity: 0.55;
}

.cp-talk {
	width: 78%;
	max-width: 720px;
	display: block;
	margin-bottom: 16px;
}

.cp-card .talk-on-dark,
.cp-card .cp-talk.mobile-only,
.cp-card:hover .cp-talk.mobile-only {
	display: none;
}

.cp-card:hover .talk-on-light {
	display: none;
}

.cp-card:hover .talk-on-dark {
	display: block;
}

.cp-thumbs {
	display: flex;
	align-items: center;
	margin-bottom: 16px;
	max-width: 720px;
}

.cp-thumbs img {
	width: 35%;
	flex: 0 0 35%;
	position: relative;
}

.cp-thumbs img:nth-child(2) {
	z-index: 2;
	margin-left: -2.5%;
	margin-right: -2.5%;
}

.cp-acts-head {
	margin-bottom: 8px;
}

.cp-acts {
	list-style: none;
	padding-left: 25px;
	margin: 0;
	color: #333;
}

.cp-acts li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 4px;
	font-size: 17px;
	font-weight: 500;
}

.cp-card:hover .cp-acts {
	color: #fff;
}

.cp-acts li:before {
	content: '';
	position: absolute;
	left: 0;
	top: 9px;
	width: 8px;
	height: 8px;
	background: #2ad4e8;
	border-radius: 50%;
}

.campus-cards-bottom {
	padding: 8px 0 16px;
}

.menu-toggle,
.mobile-menu,
.m-sticky-reg,
.hero-reg,
.campus-m-reg {
	display: none;
}

@media (max-width: 991px) {
	html {
		overflow-x: hidden;
	}

	body.m-page .mobile-only {
		display: block;
	}

	body.m-page .desktop-only {
		display: none !important;
	}

	body.m-page .main-bg {
		background-size: 160% auto;
	}

	body.m-page .hero {
		padding: 88px 0 0;
		max-width: none;
	}

	body.m-page {
		overflow-x: hidden;
	}

	body.m-page .top-nav,
	body.m-page .top-nav.scrolling {
		left: 0;
		right: auto;
		width: 100dvw;
		max-width: 100dvw;
		box-sizing: border-box;
		padding: 10px 12px;
		background: #fff;
		box-shadow: none;
	}

	body.m-page .top-nav .container {
		width: 100%;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	body.m-page .top-nav.scrolling {
		box-shadow: 0 1px 0 rgba(0, 0, 0, 0.06);
	}

	body.home .top-nav:not(.scrolling),
	body.campus-page .top-nav:not(.scrolling) {
		background: transparent;
		padding-bottom: 28px;
	}

	body.home .top-nav:not(.scrolling)::before {
		content: "";
		position: absolute;
		inset: 0;
		background: #fff;
		clip-path: polygon(0 0, 100% 0, 100% 78%, 0 100%);
		z-index: -1;
		pointer-events: none;
	}

	body.home .hero {
		padding-top: 100px;
	}

	body.m-page .hero-nav {
		position: relative;
		width: 100%;
	}

	body.m-page .nav-brand {
		width: 100%;
		margin-left: 0;
	}

	body.m-page .logo-row {
		width: 100%;
		margin-left: 0;
		flex-direction: column;
		align-items: center;
	}

	body.m-page .logo,
	body.m-page .top-nav.scrolling .logo {
		width: 65%;
	}

	body.m-page .inst-names {
		display: block;
		margin-top: 15px;
		color: #5c6570;
		font-size: 13px;
		text-align: center;
		white-space: normal;
		margin-left: 0;
		margin-bottom: 8px;
	}

	body.m-page .inst-names span:nth-child(2)::after {
		content: "";
		display: block;
	}

	body.m-page .inst-names span:nth-child(3)::before {
		content: none;
	}

	body.m-page .nav-tagline,
	body.m-page .top-nav.scrolling .inst-names {
		display: none !important;
	}

	body.m-page .menu-toggle {
		position: absolute;
		right: 0;
		top: 5%;
		display: flex;
		align-items: center;
		justify-content: center;
		border: 0;
		background: transparent;
		color: #00B0D5;
		font-size: 26px;
	}

	body.m-page .menu-toggle img {
		display: block;
		width: 60% !important;
		margin-top: 12%;
	}

	body.m-page .top-nav.scrolling .hero-nav {
		gap: 6px;
		min-height: 0;
	}

	body.m-page .top-nav.scrolling .logo-row {
		flex: 1;
		flex-direction: row;
		width: auto;
		min-width: 0;
	}

	body.m-page .top-nav.scrolling .logo {
		width: 46%;
		height: auto;
		flex-shrink: 1;
		min-width: 0;
	}

	body.m-page .top-nav.scrolling .nav-tagline {
		display: block !important;
		width: 46%;
		height: auto;
		margin-left: 4%;
		flex-shrink: 1;
		min-width: 0;
	}

	body.m-page .top-nav.scrolling .m-sticky-reg {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		width: 72px;
		height: 46px;
		flex-shrink: 0;
		border-radius: 12px;
		background: linear-gradient(160deg, #6a4de0 0%, #3aa7e8 55%, #3ec8e0 100%);
		color: #fff;
		font-size: 12px;
		font-weight: 700;
		line-height: 1.1;
		box-shadow: 0 4px 10px rgba(70, 90, 200, 0.28);
	}

	body.m-page .top-nav.scrolling .menu-toggle {
		position: static;
		transform: none;
	}

	body.m-page .hero-slider {
		bottom: 15px;
	}

	body.m-page .hero-slider .dots-box {
		right: 12px;
		bottom: 15%;
	}

	body.m-page .hero-frame {
		position: relative;
	}

	body.m-page .hero-campus {
		width: 100%;
		height: 90vw;
		object-fit: cover;
		object-position: center 28%;
		margin-top: 20px;
	}

	body.m-page .hero-tagline {
		left: 5%;
		top: 15%;
		width: 78%;
		transform: none;
	}

	body.m-page .hero-reg {
		position: absolute;
		right: 5%;
		top: 28%;
		z-index: 6;
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 2% 3%;
		border-radius: 10px;
		background: linear-gradient(90deg, #6a4de0 0%, #3aa7e8 72%, #3ec8e0 100%);
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		box-shadow: 0 6px 14px rgba(70, 90, 200, 0.28);
	}

	body.m-page .hero-reg::after {
		content: "→";
		font-size: 16px;
	}

	body.m-page .hero-students {
		left: 13%;
		bottom: 5%;
		width: 88%;
	}

	body.m-page .hero-infoday {
		display: none;
	}

	body.m-page .hero-tear {
		left: 0;
		bottom: -8%;
		width: 100%;
	}

	body.m-page .hero-pill {
		margin-right: 0;
		width: 38%;
	}

	body.m-page .hero-pills {
		right: 0;
		bottom: -6%;
		width: 100%;
		padding: 0 1%;
		justify-content: center;
	}

	body.m-page .first-pill {
		position: relative;
		left: 4%;
		width: 44%;
		z-index: 6;
	}

	body.m-page .last-pill {
		position: relative;
		right: 4%;
	}

	body.m-page .hero-pill-wide {
		width: 50%;
		position: relative;
		right: 2%;
	}

	body.m-page .hero-pill-wide .pill-label {
		width: 60%;
	}

	body.m-page .pill-star-1 {
		left: 0;
		width: 16px;
	}

	body.m-page .pill-star-2 {
		left: 30%;
		width: 12px;
	}

	body.home .campus-boy {
		position: absolute;
		right: 2%;
		top: -3%;
		width: auto;
		height: 47%;
		z-index: 2;
		pointer-events: none;
		animation-name: slideInRight;
	}

	body.home .section-campus .campus-title-img {
		width: 53%;
		max-width: none;
	}

	body.m-page .section-campus,
	body.m-page .section-talk {
		margin-top: 28px;
		overflow-x: clip;
		padding-left: 30px;
		padding-right: 30px;
	}

	body.m-page .section-title-img,
	body.m-page .talk-title-img,
	body.m-page .acts-title-img {
		width: 45%;
		max-width: 220px;
		margin-bottom: 16px;
		margin-left: 0;
		position: relative;
		right: 8px;
	}

	body.m-page .talk-title-img {
		width: 42%;
	}

	body.m-page .acts-title-img {
		width: 55%;
		margin-left: 2%;
		right: 0;
	}

	body.m-page .campus-row,
	body.m-page .talk-row,
	body.m-page .acts-row {
		flex-direction: column;
		gap: 8px;
	}

	body.m-page .campus-col {
		margin-top: 8px;
	}

	body.home .campus-date {
		display: inline-block;
		width: 46%;
		max-width: 170px;
		vertical-align: middle;
	}

	body.home .campus-time {
		display: inline-block;
		width: 30%;
		max-width: 112px;
		margin: 0 0 6px 6px;
		vertical-align: middle;
	}

	body.home .campus-list {
		border-top: 1px solid #e3e3e3;
		padding-top: 10px;
	}

	body.home .campus-line {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		gap: 4px 0;
		margin: 0 0 2px;
	}

	body.home .campus-list span {
		display: inline-block;
		margin: 0 5px 6px 0;
		font-size: 14px;
		font-weight: 700;
		white-space: nowrap;
	}

	body.home .campus-list img {
		width: 12px;
		margin-right: 4px;
	}

	body.home .campus-col + .campus-col {
		margin-top: 10px;
	}

	body.home .section-talk {
		position: relative;
		display: flex;
		flex-direction: column;
		overflow-x: clip;
	}

	body.home .talk-row,
	body.home .talk-left,
	body.home .talk-right {
		display: contents;
	}

	body.home .talk-title-img {
		order: 1;
	}

	body.home .talk-datetime {
		order: 2;
		width: 55%;
		max-width: none;
	}

	body.home .talk-venue {
		order: 3;
		width: 48%;
		max-width: none;
		margin-top: 5px;
		margin-bottom: 25px;
	}

	body.home .talk-heading {
		order: 4;
		width: 66%;
		margin-bottom: 25px;
	}

	body.home .talk-left .talk-item {
		order: 5;
	}

	body.home .talk-right .talk-item {
		order: 6;
	}

	body.home .section-talk::after {
		order: 7;
	}

	body.home .talk-graduate {
		position: absolute;
		top: -4%;
		right: 0;
		bottom: auto;
		width: 32%;
		margin: 0;
		z-index: 2;
	}

	body.home .talk-item p.talk-item-title {
		font-size: 18px;
		margin-bottom: 6px;
	}

	body.home .talk-item p,
	body.home .talk-item p.subtitle {
		font-size: 14px;
		line-height: 1.55;
		max-width: none !important;
	}

	body.home .talk-item {
		margin-bottom: 14px;
	}

	body.m-page .section-acts {
		margin-top: 12px;
		padding-top: 8px;
	}

	body.m-page .act-card + .act-card {
		margin-top: 22px;
	}

	body.m-page .owl-carousel .owl-item img.act-photo.mobile-only {
		display: block;
	}

	body.m-page .act-caption {
		bottom: 22%;
		font-size: 16px;
	}

	body.m-page .acts-bottom {
		justify-content: center;
		padding-right: 0;
		margin-top: 18px;
	}

	body.m-page .acts-cta {
		width: min(230px, 64%);
	}

	body.m-page .cp-tt.action-btn {
		width: 64%;
	}

	body.m-page .footer {
		padding: 72px 0 28px;
	}

	body.m-page .footer .container {
		position: relative;
	}

	body.m-page .footer .row {
		align-items: flex-end;
	}

	body.m-page .footer .text-end {
		position: absolute;
		right: 0;
		bottom: 0;
		width: auto;
		padding: 0;
	}

	body.m-page .footer-title {
		font-size: 18px;
		line-height: 1.4;
		margin-bottom: 10px;
	}

	body.m-page .social-btns-top {
		font-size: 15px;
		gap: 8px 14px;
		margin-bottom: 14px;
		flex-wrap: nowrap;
	}

	body.m-page .social-btns-top i,
	body.m-page .social-btns-top i.fa-whatsapp {
		font-size: 22px;
	}

	body.m-page .social-btns {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 8px 10px;
	}

	body.m-page .social-btns a {
		flex: 0 0 calc(50% - 5px);
		max-width: calc(50% - 5px);
		min-width: 0;
		line-height: 0;
	}

	body.m-page .social-btns img {
		width: 100%;
		height: auto;
		max-width: 100%;
		margin: 0;
		display: block;
	}

	body.m-page .footer-copy {
		font-size: 11px;
		line-height: 1.45;
		margin-top: 14px;
		padding-right: 120px;
	}

	body.m-page .footer-badge {
		max-width: 108px;
		margin: 0;
	}

	body.m-page .scroll,
	body.m-page .scroll img {
		width: 52px;
	}

	body.menu-open {
		overflow: hidden;
	}

	body.m-page .mobile-menu.open {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 40;
		background: rgba(0, 0, 0, 0.55);
		padding: 28px 16px;
		overflow: auto;
	}

	body.m-page .mobile-menu-panel {
		max-width: 420px;
		margin: 0 auto;
		padding: 18px 22px 28px;
		background: #fff;
		border-radius: 28px;
		box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
	}

	body.m-page .mm-top {
		display: flex;
		align-items: center;
		gap: 8px;
	}

	body.m-page .mm-lang {
		display: flex;
		flex-direction: column;
		align-items: center;
		flex-shrink: 0;
		width: 28px;
		color: #9aa3ad;
		font-size: 13px;
		font-weight: 700;
		line-height: 1.15;
	}

	body.m-page .mm-lang .on {
		color: #163a6b;
	}

	body.m-page .mm-lang span + span {
		border-top: 1px solid #c5c9d0;
		margin-top: 3px;
		padding-top: 3px;
	}

	body.m-page .mm-logos {
		width: 62%;
		margin: 0 auto;
	}

	.cmenu a img {
		margin-bottom: 0px;
		margin-top: 3px;
	}

	body.m-page .mobile-menu-close {
		border: 0;
		background: transparent;
		padding: 0;
		width: 28px;
		flex-shrink: 0;
		color: #333;
		font-size: 32px;
		line-height: 1;
	}

	body.m-page .mm-names {
		margin: 14px 0 12px;
		text-align: center;
		color: #5c6570;
		font-size: 12px;
		line-height: 1.55;
	}

	body.m-page .mm-title {
		display: block;
		width: 92%;
		margin: 0 auto 16px;
	}

	body.m-page .m-reg {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 12px;
		width: 62%;
		margin: 0 auto 8px;
		height: 52px;
		border-radius: 14px;
		background: linear-gradient(90deg, #6a4de0 0%, #3aa7e8 70%, #3ec8e0 100%);
		color: #fff;
		font-size: 18px;
		font-weight: 700;
		box-shadow: 0 8px 16px rgba(70, 90, 200, 0.28);
	}

	body.m-page .m-reg::after {
		content: "→";
		font-size: 20px;
	}

	body.m-page .mm-links {
		margin-top: 15px;
	}

	body.m-page .mm-links a {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 10px 4px;
		border-top: 2px dotted #c5ccd4;
		color: #333;
		font-size: 18px;
		font-weight: 700;
	}

	body.m-page .mm-links a:last-child {
		border-bottom: 2px dotted #c5ccd4;
	}

	body.m-page .mm-go {
		width: 34px;
		height: 34px;
		flex-shrink: 0;
		border-radius: 50%;
		background: linear-gradient(160deg, #8eebc8, #3ec6b8);
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 16px;
	}

	body.m-page .mm-go::after {
		content: "→";
	}

	body.campus-page .main-bg {
		padding-top: 128px;
		background-size: 160% auto;
	}

	body.campus-page .campus-head {
		margin-top: 0;
	}

	body.campus-page .campus-head .container {
		display: grid;
		grid-template-columns: minmax(0, 30%) minmax(0, 1fr);
		column-gap: 8px;
		align-items: start;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		padding: 0 14px;
	}

	body.campus-page .campus-head-top,
	body.campus-page .campus-weeks {
		display: contents;
	}

	body.campus-page .campus-weeks-bg {
		display: block;
		position: relative;
		left: auto;
		top: auto;
		right: auto;
		width: 100%;
		height: 0;
		min-height: 100%;
		min-width: 0;
		object-fit: fill;
		z-index: 0;
		pointer-events: none;
	}

	body.campus-page .campus-weeks-bg-r {
		grid-column: 1 / -1;
		grid-row: 3;
	}

	body.campus-page .campus-weeks-bg-l {
		grid-column: 1 / -1;
		grid-row: 4;
		min-height: 110%;
	}

	body.campus-page .campus-m-reg {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		grid-column: 2;
		grid-row: 1;
		justify-self: end;
		align-self: start;
		margin-top: 18%;
		margin-right: 5%;
		padding: 3% 5%;
		border-radius: 10px;
		background: linear-gradient(90deg, #6a4de0 0%, #3aa7e8 72%, #3ec8e0 100%);
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		line-height: 1.1;
		box-shadow: 0 6px 14px rgba(70, 90, 200, 0.28);
		white-space: nowrap;
	}

	body.campus-page .campus-m-reg::after {
		content: "→";
		font-size: 16px;
	}

	body.campus-page .campus-page-tagline {
		display: block;
		position: static;
		grid-column: 1 / -1;
		grid-row: 1;
		width: 80%;
		max-width: none;
		margin-left: 5%;
	}

	body.campus-page .campus-page-title {
		grid-column: 1 / -1;
		grid-row: 2;
		width: 50%;
		margin: 14px 0 0;
		margin-bottom: 20px;
	}

	body.campus-page .campus-girl {
		position: absolute;
		width: 72px;
		height: auto;
		margin: 0;
		bottom: 6px;
	}

	body.campus-page .campus-girl-l {
		left: -5%;
		right: auto;
		width: 200px;
		max-width: 40%;
	}

	body.campus-page .campus-girl-r {
		right: 8px;
		left: auto;
	}

	body.campus-page .cp-week-col:first-of-type:has(.active) {
		padding-left: 96px;
	}

	body.campus-page .cp-week-col:last-of-type:has(.active) {
		padding-right: 96px;
	}

	body.campus-page .cp-week-col:first-of-type {
		grid-column: 1 / -1;
		grid-row: 3;
		max-width: none;
		margin: 4px 0 12px;
		padding: 0px 8% 20px 8%;
		position: relative;
		z-index: 1;
	}

	body.campus-page .cp-week-col:last-of-type {
		grid-column: 1 / -1;
		grid-row: 4;
		max-width: none;
		margin: 8px 0 16px;
		padding: 12px 6% 16px 8%;
		position: relative;
		z-index: 1;
	}

	body.campus-page .cp-week-tab {
		margin-bottom: 8px;
	}

	.cp-week-tab.tab2.active {
		margin-top: 0;
	}

	.campus-head-top {
		margin-bottom: 20px;
	}

	.cp-week-tab, .cp-week-tab.tab2,
	body.wk2 .cp-week-tab[data-week="1"] {
		bottom: 5px;
		margin-top: 0;
	}

	body.campus-page .cp-week-tab img.d-on {
		height: 36px;
	}

	body.campus-page .cp-week-tab:not(.active) img.d-on {
		height: 31px;
	}

	body.campus-page .cp-week-tab .a-on,
	body.campus-page .cp-week-tab .a-off {
		width: 28px;
	}

	body.campus-page .cp-week-col,
	body.campus-page .cmenu,
	body.campus-page .cmenu-line {
		min-width: 0;
		max-width: 100%;
	}

	body.campus-page .cmenu-line {
		display: flex;
		flex-wrap: wrap;
	}

	body.campus-page .cp-week-col:first-of-type .cmenu {
		display: grid;
		grid-template-columns: auto auto;
		column-gap: 5px;
		width: 100%;
	}

	body.campus-page .cp-week-col:first-of-type:has(.active) .cmenu {
		padding-left: 15%;
	}

	body.campus-page .cp-week-col:first-of-type .cmenu-line {
		display: contents;
	}

	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(1) a,
	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(2) a:first-child {
		margin-right: 0;
		font-size: 14px;
		white-space: nowrap;
	}

	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(1) a img,
	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(2) a:first-child img {
		width: 14px;
		margin-right: 1px;
	}

	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(2) a:last-child,
	body.campus-page .cp-week-col:first-of-type .cmenu-line:nth-child(n+3) a {
		grid-column: 1 / -1;
		min-width: 0;
		margin-right: 0;
	}

	body.campus-page .cmenu a {
		display: inline-flex;
		align-items: flex-start;
		margin: 0 12px 6px 0;
		font-size: 14px;
		white-space: break-spaces;
	}

	body.campus-page .cp-card {
		width: 100%;
		margin: 22px 0px;
	}

	body.campus-page .cp-inner {
		flex-direction: column;
		gap: 14px;
		padding: 0px 20px 20px 15px;
	}

	body.campus-page .cp-left,
	body.campus-page .cp-tt {
		width: 100%;
	}

	body.campus-page .cp-talk {
		width: calc(100% + 35px);
		max-width: none;
		margin-left: -15px;
		margin-right: -20px;
	}

	body.m-page .cp-card .cp-talk.mobile-only.talk-on-light,
	body.m-page .cp-card.active .cp-talk.mobile-only.talk-on-dark {
		display: block;
	}

	body.m-page .cp-card .cp-talk.mobile-only.talk-on-dark,
	body.m-page .cp-card.active .cp-talk.mobile-only.talk-on-light {
		display: none;
	}

	body.campus-page .cp-card:hover {
		background: #fff;
		color: #163a6b;
	}

	body.campus-page .cp-card.active {
		background: #195caa;
		color: #fff;
	}

	body.campus-page .cp-card:hover .cp-photo {
		transform: none;
	}

	body.campus-page .cp-card.active .cp-photo {
		transform: rotate(-4deg) translateY(-4px);
	}

	body.campus-page .cp-card:hover .cp-disc,
	body.campus-page .cp-card:hover .cp-acts {
		color: #333;
	}

	body.campus-page .cp-card.active .cp-disc,
	body.campus-page .cp-card.active .cp-acts {
		color: #fff;
	}

	body.campus-page .cp-badge {
		position: relative;
		left: 0;
		top: -15px;
		align-self: flex-start;
		width: auto;
		height: 50px;
		margin-bottom: 0px;
	}

	body.campus-page .cp-badge-tall {
		height: 60px;
	}

	body.campus-page .cp-photo-wrap {
		order: 2;
		padding-top: 0;
	}

	body.campus-page .cp-photo {
		width: 100%;
	}

	body.campus-page .cp-addr,
	body.campus-page .cp-phone {
		order: 1;
		font-size: 14px;
	}

	body.campus-page .cp-right {
		padding-top: 0;
	}

	body.campus-page .cp-disc-row {
		flex-wrap: wrap;
		gap: 6px;
		margin-left: 25px;
	}

	body.campus-page .cp-disc-row .cp-h {
		margin-left: -25px;
	}

	body.campus-page .cp-h,
	body.campus-page .cp-acts-head {
		font-size: 17px;
	}

	body.campus-page .cp-disc,
	body.campus-page .cp-acts li {
		font-size: 15px;
	}

	body.campus-page .cp-thumbs {
		max-width: none;
	}

	body.m-page .cookieConsentContainer {
		width: calc(100% - 24px);
		right: 12px;
		bottom: 12px;
	}
}

@media (min-width: 431px) and (max-width: 991px) {
	body.home .talk-graduate {
		width: min(34%, 150px);
	}

	body.home .talk-heading {
		max-width: calc(100% - 160px);
	}

	body.campus-page .campus-girl-l {
		width: min(45%, 190px);
	}

	body.campus-page .cp-week-col:first-of-type:has(.active) .cmenu {
		padding-left: max(15%, 50px);
	}
}

@media (min-width: 992px) and (max-width: 1399px) {
	.logo {
		width: 32%;
	}

	.inst-names {
		font-size: 14px;
		margin-left: 3%;
	}

	.talk-left {
		width: auto;
		flex: 0 1 420px;
		min-width: 0;
	}

	.talk-right {
		flex: 1 1 auto;
		min-width: 0;
		padding-left: 20px;
		padding-right: 200px;
	}

	.talk-graduate {
		right: 0;
		width: 17%;
	}

	.talk-heading {
		width: 100%;
	}

	.talk-heading,
	.talk-datetime,
	.talk-venue {
		max-width: 100%;
	}

	.talk-item p,
	.talk-item p.subtitle {
		max-width: 100% !important;
	}

	.campus-list span,
	.campus-page .cmenu a {
		white-space: normal;
	}

	.campus-page .cp-week-col,
	.campus-page .cmenu,
	.campus-page .cmenu-line {
		min-width: 0;
	}

	.campus-page .campus-weeks {
		height: auto;
		aspect-ratio: auto;
		align-items: stretch;
	}

	.campus-page .cp-week-tab img.d-on {
		height: 46px;
	}

	.campus-page .cp-week-tab:not(.active) img.d-on {
		height: 40px;
	}
}
