.custom__edit--info { position: fixed; width: 40px; height: 40px; bottom: 1em; right: 1em; z-index: 3000; border-radius: 50%; padding: 0; text-align: center; margin: 1em; background: #745B99; color: #fff; font-size: 13px; font-weight: 700; -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35); box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35); }

.custom__edit--info svg { line-height: 40px; height: 40px; width: 40px; cursor: pointer; }

.custom__edit--info div { position: absolute; display: block; white-space: nowrap; bottom: 0; right: 100%; border-radius: 4px; padding: 0 2em; -webkit-box-shadow: inherit; box-shadow: inherit; background: inherit; opacity: 0; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); visibility: hidden; -webkit-transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; -o-transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s; transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s; transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; }

.custom__edit--info p { white-space: nowrap; line-height: 1.8; text-align: left; text-transform: none; }

.custom__edit--info small { margin-right: 5px; opacity: .75; text-transform: uppercase; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.custom__edit--info:hover div { opacity: 1; visibility: visible; -webkit-transform: translateX(-1em); -ms-transform: translateX(-1em); transform: translateX(-1em); -webkit-transition-delay: 0s; -o-transition-delay: 0s; transition-delay: 0s; }

.testimonials__item__author > span { font-family: var(--font-heading); }

.schools__item__content > h3 { font-family: var(--font-body); }

@-webkit-keyframes marquee { 0% { -webkit-transform: translateX(100vw); transform: translateX(100vw); }
  100% { -webkit-transform: translateX(-100%); transform: translateX(-100%); } }

@keyframes marquee { 0% { -webkit-transform: translateX(100vw); transform: translateX(100vw); }
  100% { -webkit-transform: translateX(-100%); transform: translateX(-100%); } }

@-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

@keyframes spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

.custom__edit--info { position: fixed; width: 40px; height: 40px; bottom: 1em; right: 1em; z-index: 3000; border-radius: 50%; padding: 0; text-align: center; margin: 1em; background: #745B99; color: #fff; font-size: 13px; font-weight: 700; -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35); box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35); }

.custom__edit--info svg { line-height: 40px; height: 40px; width: 40px; cursor: pointer; }

.custom__edit--info div { position: absolute; display: block; white-space: nowrap; bottom: 0; right: 100%; border-radius: 4px; padding: 0 2em; -webkit-box-shadow: inherit; box-shadow: inherit; background: inherit; opacity: 0; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); visibility: hidden; -webkit-transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; -o-transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s; transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s; transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease; }

.custom__edit--info p { white-space: nowrap; line-height: 1.8; text-align: left; text-transform: none; }

.custom__edit--info small { margin-right: 5px; opacity: .75; text-transform: uppercase; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.custom__edit--info:hover div { opacity: 1; visibility: visible; -webkit-transform: translateX(-1em); -ms-transform: translateX(-1em); transform: translateX(-1em); -webkit-transition-delay: 0s; -o-transition-delay: 0s; transition-delay: 0s; }

.testimonials__item__author > span { font-family: var(--font-heading); }

.schools__item__content > h3 { font-family: var(--font-body); }

@keyframes marquee { 0% { -webkit-transform: translateX(100vw); transform: translateX(100vw); }
  100% { -webkit-transform: translateX(-100%); transform: translateX(-100%); } }

@keyframes spin { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

.content { width: 100%; float: none; }

.content__region { max-width: none; }

.content__attachments { display: none; }

.homepage__header { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; text-align: center; gap: 15px; }

.homepage__header > span { font-size: 1.625em; }

.homepage__header > h2 { position: relative; font-size: 3.5em; font-weight: 600; margin: 0; line-height: 0.8; }

.homepage__header > h2::after, .homepage__header > h2::before { content: ''; position: absolute; top: 50%; width: clamp(19px, calc(1.1875rem + ((1vw - 4.25px) * 1.8719)), 38px); height: clamp(13px, calc(0.8125rem + ((1vw - 4.25px) * 1.2808)), 26px); -webkit-clip-path: url(#diamond__clip); clip-path: url(#diamond__clip); }

@media all and (max-width: 767px) { .homepage__header > h2::after, .homepage__header > h2::before { display: none; } }

@media all and (max-width: 1049px) { .homepage__header > h2::after, .homepage__header > h2::before { -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); } }

@media all and (min-width: 1050px) { .homepage__header > h2::after, .homepage__header > h2::before { opacity: 0; }
  .mason--loaded .inview .homepage__header > h2::after, .mason--loaded .inview .homepage__header > h2::before { opacity: 1; } }

.homepage__header > h2::before { right: calc(100% + clamp(15px, 3vw, 30px)); }

@media all and (min-width: 1050px) { .homepage__header > h2::before { -webkit-transform: translate(-50px, -50%) rotate(-90deg); -ms-transform: translate(-50px, -50%) rotate(-90deg); transform: translate(-50px, -50%) rotate(-90deg); -webkit-transition: opacity 2s ease 1s, -webkit-transform 2s ease 1s; transition: opacity 2s ease 1s, -webkit-transform 2s ease 1s; -o-transition: transform 2s ease 1s, opacity 2s ease 1s; transition: transform 2s ease 1s, opacity 2s ease 1s; transition: transform 2s ease 1s, opacity 2s ease 1s, -webkit-transform 2s ease 1s; }
  .mason--loaded .inview .homepage__header > h2::before { -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); } }

.homepage__header > h2::after { left: calc(100% + clamp(15px, 3vw, 30px)); }

@media all and (min-width: 1050px) { .homepage__header > h2::after { -webkit-transform: translate(50px, -50%) rotate(90deg); -ms-transform: translate(50px, -50%) rotate(90deg); transform: translate(50px, -50%) rotate(90deg); -webkit-transition: opacity 2s ease 1.2s, -webkit-transform 2s ease 1.2s; transition: opacity 2s ease 1.2s, -webkit-transform 2s ease 1.2s; -o-transition: transform 2s ease 1.2s, opacity 2s ease 1.2s; transition: transform 2s ease 1.2s, opacity 2s ease 1.2s; transition: transform 2s ease 1.2s, opacity 2s ease 1.2s, -webkit-transform 2s ease 1.2s; }
  .mason--loaded .inview .homepage__header > h2::after { -webkit-transform: translate(0, -50%); -ms-transform: translate(0, -50%); transform: translate(0, -50%); } }

.family { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); position: absolute; width: 100%; height: 100%; max-height: 80vh; background: -webkit-gradient(linear, left bottom, left top, from(var(--col-pri)), to(var(--col-ter))); background: -webkit-linear-gradient(bottom, var(--col-pri), var(--col-ter)); background: -o-linear-gradient(bottom, var(--col-pri), var(--col-ter)); background: linear-gradient(0deg, var(--col-pri), var(--col-ter)); -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); -webkit-transition: -webkit-transform .5s ease; transition: -webkit-transform .5s ease; -o-transition: transform .5s ease; transition: transform .5s ease; transition: transform .5s ease, -webkit-transform .5s ease; z-index: 50; }

@media screen and (max-width: 425px) { .family { font-size: 10px; } }

@media screen and (min-width: 1440px) { .family { font-size: 16px; } }

@media all and (min-width: 1050px) { .family { max-height: 50vh; } }

.mason--family .family { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }

.family__watermark { position: absolute; bottom: -0.5%; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 72.5%; max-width: 1480px; opacity: 0.03; }

.family__wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: clamp(20px, calc(1.25rem + ((1vw - 4.25px) * 1.9704)), 40px); padding: 40px 5%; }

.family__header { color: #fff; }

.family__header > h2::before, .family__header > h2::after { display: none !important; }

.family__list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 2.4631)), 50px); }

.family__item > a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 16px; color: #fff; }

.family__item__abbre { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; width: 100px; height: 100px; color: var(--col-pri); border: 4px solid var(--col-ter); background: var(--col-qua); border-radius: 50%; font-size: 25px; font-weight: 700; -webkit-transition: color .3s ease, background .3s ease, border .3s ease; -o-transition: color .3s ease, background .3s ease, border .3s ease; transition: color .3s ease, background .3s ease, border .3s ease; }

.family__item__name { font-size: 16px; }

.family__item:hover .family__item__abbre { background: #fff; border-color: var(--col-pri); }

.family__toggle { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: absolute; top: 100%; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); height: 44px; width: 210px; font-weight: 700; font-size: 16px; padding: 0; margin: 0; color: var(--col-pri); border: 2px solid var(--col-pri); background: var(--col-qua); white-space: nowrap; -webkit-transition: border-radius .5s ease, color .3s ease, background .3s ease; -o-transition: border-radius .5s ease, color .3s ease, background .3s ease; transition: border-radius .5s ease, color .3s ease, background .3s ease; z-index: 20; }

.mason--family .family__toggle { border-radius: 0 0 15px 15px; }

.family__toggle:hover { color: #fff; background: var(--col-pri); border-color: var(--col-ter); }

.family__close { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: absolute; right: 10%; top: 50px; width: 44px; height: 44px; border-radius: 50%; border: 2px solid var(--col-qua); background: var(--col-pri); color: #fff; -webkit-transition: -webkit-transform .3s ease; transition: -webkit-transform .3s ease; -o-transition: transform .3s ease; transition: transform .3s ease; transition: transform .3s ease, -webkit-transform .3s ease; }

.family__close > svg { font-size: 19px; }

.family__close:hover { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }

.family::before { content: ''; position: absolute; left: 0; top: 100%; width: 100%; height: 20vh; background: -webkit-gradient(linear, left bottom, left top, from(transparent), to(#000)); background: -webkit-linear-gradient(bottom, transparent, #000); background: -o-linear-gradient(bottom, transparent, #000); background: linear-gradient(0deg, transparent, #000); opacity: 0; -webkit-transition: opacity .3s ease; -o-transition: opacity .3s ease; transition: opacity .3s ease; pointer-events: none; }

@media all and (min-width: 1050px) { .family::before { height: 50vh; } }

.mason--family .family::before { opacity: 0.5; }

.hero { min-height: 70vh; max-height: 100vh; height: 48vw; }

.welcome { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); padding: 84px 5% clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px); color: #fff; position: relative; background: -webkit-gradient(linear, left bottom, left top, from(#E9CDA9), to(#531F12)); background: -webkit-linear-gradient(bottom, #E9CDA9, #531F12); background: -o-linear-gradient(bottom, #E9CDA9, #531F12); background: linear-gradient(0deg, #E9CDA9, #531F12); z-index: 10; }

@media screen and (max-width: 425px) { .welcome { font-size: 10px; } }

@media screen and (min-width: 1440px) { .welcome { font-size: 16px; } }

@media all and (min-width: 768px) { .welcome { padding-top: 0; } }

@media all and (min-width: 1050px) { .welcome { padding-top: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px); } }

.welcome__background { position: absolute; bottom: 0; left: 50%; -webkit-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0); transform: translate(-50%, 0); height: calc(100% - 84px); width: 100%; max-width: 1350px; }

@media all and (min-width: 768px) { .welcome__background { height: 100%; } }

@media all and (min-width: 1050px) { .welcome__background { bottom: 50%; width: 90%; height: calc(100% - clamp(50px, calc(3.125rem + ((1vw - 4.25px) * 3.9409)), 90px)); -webkit-transform: translate(-50%, 50%); -ms-transform: translate(-50%, 50%); transform: translate(-50%, 50%); } }

.welcome__background__clipped { background: -webkit-gradient(linear, left bottom, left top, from(transparent), to(var(--col-pri))); background: -webkit-linear-gradient(bottom, transparent, var(--col-pri)); background: -o-linear-gradient(bottom, transparent, var(--col-pri)); background: linear-gradient(0deg, transparent, var(--col-pri)); }

@media all and (max-width: 1049px) { .welcome__background__clipped { border-top: 4px solid var(--col-ter); } }

@media all and (min-width: 1050px) { .welcome__background__clipped { -webkit-clip-path: url(#ticket__clip); clip-path: url(#ticket__clip); } }

.welcome__background__stroke { display: none; position: absolute; width: 100%; height: 100%; z-index: 5; -webkit-transform: scale(1.005); -ms-transform: scale(1.005); transform: scale(1.005); }

.welcome__background__stroke > svg { width: 100%; height: 100%; }

@media all and (min-width: 1050px) { .welcome__background__stroke { display: block; } }

.welcome__background__watermark { position: absolute; bottom: -0.5%; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 100%; max-width: 1480px; opacity: 0.1; }

.welcome__wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 3.125em; position: relative; visibility: visible; max-width: 1040px; margin: 4.375em 0; }

@media all and (min-width: 1050px) { .welcome__wrap { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; gap: clamp(50px, calc(3.125rem + ((1vw - 10.5px) * 12.8205)), 100px); margin: clamp(70px, calc(4.375rem + ((1vw - 10.5px) * 17.9487)), 140px) 5%; } }

.welcome__image { z-index: 20; }

.welcome__image.admin_editable { position: absolute !important; background: none !important; }

.welcome__image img { border-radius: 50%; }

.welcome__image__wrap { position: relative; position: relative; width: clamp(200px, calc(12.5rem + ((1vw - 4.25px) * 29.5567)), 500px); -ms-flex-negative: 0; flex-shrink: 0; border-radius: 50%; border: 4px solid #fff; }

.welcome__image__wrap:before { content: ''; display: block; visibility: hidden; padding-bottom: 100%; }

@media all and (max-width: 1049px) { .welcome__details { text-align: center; } }

.welcome__details > span { display: block; font-size: 1.875em; }

.welcome__details > h2 { font-size: 3.75em; font-weight: 600; margin: 0; line-height: 1.4; }

.welcome__details .welcome__region { font-size: 18px; margin: 1.5625em 0 2.5em; line-height: calc(28 / 18); }

.welcome__details .welcome__region p { margin: 0.55556em 0; }

.welcome__buttons { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 20px; }

@media all and (max-width: 1049px) { .welcome__buttons { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } }

.qlinks { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); padding: clamp(50px, calc(3.125rem + ((1vw - 4.25px) * 4.9261)), 100px) 5%; background: -webkit-gradient(linear, left bottom, left top, from(#8E644B), color-stop(60%, #E9CDA9)); background: -webkit-linear-gradient(bottom, #8E644B, #E9CDA9 60%); background: -o-linear-gradient(bottom, #8E644B, #E9CDA9 60%); background: linear-gradient(0deg, #8E644B, #E9CDA9 60%); z-index: 10; }

@media screen and (max-width: 425px) { .qlinks { font-size: 10px; } }

@media screen and (min-width: 1440px) { .qlinks { font-size: 16px; } }

.qlinks .custom__edit { font-size: 14px !important; }

.qlinks__line { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-46%, -46%); -ms-transform: translate(-46%, -46%); transform: translate(-46%, -46%); width: 172%; min-width: 2000px; -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%); clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%); -webkit-transition: -webkit-clip-path 5s ease 1s; transition: -webkit-clip-path 5s ease 1s; -o-transition: clip-path 5s ease 1s; transition: clip-path 5s ease 1s; transition: clip-path 5s ease 1s, -webkit-clip-path 5s ease 1s; }

@media all and (min-width: 1050px) { .mason--loaded .inview .qlinks__line { -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); } }

.qlinks__wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: clamp(30px, calc(1.875rem + ((1vw - 4.25px) * 3.9409)), 70px); }

.qlinks__header { color: var(--col-pri); }

.qlinks__header > h2::after, .qlinks__header > h2::before { content: ''; background: var(--col-pri); }

.qlinks__list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; gap: clamp(30px, calc(1.875rem + ((1vw - 4.25px) * 8.867)), 120px); }

.qlinks__item { position: relative; width: 100%; max-width: 316px; }

.qlinks__item:before { content: ''; display: block; visibility: hidden; padding-bottom: 100%; }

.qlinks__item > a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: absolute; left: 0; top: 0; gap: 1.25em; width: 100%; height: 100%; background: -webkit-gradient(linear, left top, left bottom, from(var(--col-sec)), to(var(--col-ter))); background: -webkit-linear-gradient(top, var(--col-sec), var(--col-ter)); background: -o-linear-gradient(top, var(--col-sec), var(--col-ter)); background: linear-gradient(180deg, var(--col-sec), var(--col-ter)); border-radius: 50%; overflow: hidden; }

.qlinks__item > a::after { content: ''; position: absolute; top: 50%; left: 50%; width: 88%; height: 88%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); border: 3px solid var(--col-ter); border-radius: 50%; pointer-events: none; z-index: 5; }

.qlinks__item__icon { width: 26%; }

.qlinks__item__icon img { width: 100%; }

.qlinks__item__value { color: #fff; font-size: 24px; }

.qlinks__item__text { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 15px; position: absolute; width: 100%; height: 100%; color: #fff; visibility: hidden; padding: 15%; text-align: center; opacity: 0; -webkit-transition: visibility .3s ease, opacity .3s ease; -o-transition: visibility .3s ease, opacity .3s ease; transition: visibility .3s ease, opacity .3s ease; z-index: 3; }

.qlinks__item__text > span { font-size: 24px; }

.qlinks__item__text > p { margin: 0; font-size: 16px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.qlinks__item__text::before { position: absolute; content: ''; top: 0; right: 0; bottom: 0; left: 0; background: -webkit-gradient(linear, left top, left bottom, from(var(--col-sec)), to(var(--col-ter))); background: -webkit-linear-gradient(top, var(--col-sec), var(--col-ter)); background: -o-linear-gradient(top, var(--col-sec), var(--col-ter)); background: linear-gradient(180deg, var(--col-sec), var(--col-ter)); -webkit-transition: -webkit-transform .3s ease; transition: -webkit-transform .3s ease; -o-transition: transform .3s ease; transition: transform .3s ease; transition: transform .3s ease, -webkit-transform .3s ease; z-index: -1; }

.qlinks__item:hover .qlinks__item__text { visibility: visible; opacity: 1; -webkit-transition: visibility 0s ease, opacity .3s ease; -o-transition: visibility 0s ease, opacity .3s ease; transition: visibility 0s ease, opacity .3s ease; }

.qlinks__item:hover .qlinks__item__text::before { -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }

.qlinks__link { margin-top: 10px; }

.testimonials { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); padding: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px) 5%; color: #fff; position: relative; background: -webkit-gradient(linear, left bottom, left top, from(#5D2A1B), to(#8E644B)); background: -webkit-linear-gradient(bottom, #5D2A1B, #8E644B); background: -o-linear-gradient(bottom, #5D2A1B, #8E644B); background: linear-gradient(0deg, #5D2A1B, #8E644B); z-index: 10; }

@media screen and (max-width: 425px) { .testimonials { font-size: 10px; } }

@media screen and (min-width: 1440px) { .testimonials { font-size: 16px; } }

.testimonials__background { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); height: calc(100% - clamp(50px, calc(3.125rem + ((1vw - 4.25px) * 3.9409)), 90px)); width: 100%; max-width: 1350px; }

@media all and (max-width: 1049px) { .testimonials__background { height: 100%; } }

@media all and (min-width: 1050px) { .testimonials__background { width: 90%; } }

.testimonials__background__clipped::after { position: absolute; content: ''; top: 0; right: 0; bottom: 0; left: 0; background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--col-pri))); background: -webkit-linear-gradient(top, transparent, var(--col-pri)); background: -o-linear-gradient(top, transparent, var(--col-pri)); background: linear-gradient(180deg, transparent, var(--col-pri)); }

@media all and (max-width: 1049px) { .testimonials__background__clipped { border-top: 4px solid var(--col-ter); } }

@media all and (min-width: 1050px) { .testimonials__background__clipped { -webkit-clip-path: url(#ticket__clip); clip-path: url(#ticket__clip); } }

.testimonials__background__stroke { display: none; position: absolute; width: 100%; height: 100%; z-index: 5; -webkit-transform: scale(1.005); -ms-transform: scale(1.005); transform: scale(1.005); }

.testimonials__background__stroke > svg { width: 100%; height: 100%; }

@media all and (min-width: 1050px) { .testimonials__background__stroke { display: block; } }

.testimonials__background__watermark { position: absolute; bottom: -0.5%; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 100%; max-width: 1480px; opacity: 0.1; }

.testimonials__wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 3.125em; position: relative; visibility: visible; margin: clamp(70px, calc(4.375rem + ((1vw - 10.5px) * 17.9487)), 140px) 0; width: 90%; }

.testimonials__header { color: #fff; }

.testimonials__header > h2::after, .testimonials__header > h2::before { content: ''; background: var(--col-ter); }

.testimonials__list { overflow: visible; }

@media all and (min-width: 1050px) { .testimonials__list { max-width: 66%; } }

.testimonials__item { opacity: 0 !important; -webkit-transition: opacity .3s ease; -o-transition: opacity .3s ease; transition: opacity .3s ease; text-align: center; }

.testimonials__item.swiper-slide-active { opacity: 1 !important; }

.testimonials__item__quote p { font-size: clamp(22px, calc(1.375rem + ((1vw - 4.25px) * 0.7882)), 30px); font-style: italic; line-height: calc(40 / 30); margin: 0; }

.testimonials__item__author { margin: 30px 0 0; }

.testimonials__item__author > span { font-size: clamp(18px, calc(1.125rem + ((1vw - 4.25px) * 0.6897)), 25px); font-weight: 700; }

.testimonials__navigation { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; gap: 20px; visibility: hidden; margin: 0; z-index: 10; }

@media all and (min-width: 1050px) { .testimonials__navigation { position: absolute; top: 50%; left: 50%; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: 100%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); } }

.testimonials__navigation button { width: 60px; height: 60px; border-radius: 50%; background: var(--col-pri); border: 2px solid var(--col-qua); color: #fff; -webkit-transition: color .3s ease, background .3s ease, border .3s ease; -o-transition: color .3s ease, background .3s ease, border .3s ease; transition: color .3s ease, background .3s ease, border .3s ease; visibility: visible; }

.testimonials__navigation button > svg { font-size: 19px; }

.testimonials__navigation button.swiper-button-disabled { opacity: 0.5; }

.testimonials__navigation button:hover { background: var(--col-qua); border-color: var(--col-ter); color: var(--col-pri); }

.testimonials__pagination { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: clamp(10px, 2vw, 18px); margin: 0; }

.testimonials__pagination > span { font-size: 18px; font-weight: 700; }

.testimonials__pagination > span::after { content: ''; position: absolute; top: calc(100% + 8px); width: 20px; height: 2px; background: var(--col-qua); border-radius: 2px; -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); -webkit-transition: -webkit-transform .3s ease; transition: -webkit-transform .3s ease; -o-transition: transform .3s ease; transition: transform .3s ease; transition: transform .3s ease, -webkit-transform .3s ease; }

.testimonials__pagination > span.swiper-pagination-bullet-active::after { -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); }

.schools { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); padding: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px) 5% clamp(70px, calc(4.375rem + ((1vw - 4.25px) * 6.8966)), 140px); color: #fff; position: relative; background: -webkit-gradient(linear, left bottom, left top, from(#AF8766), to(#5D2A1B)); background: -webkit-linear-gradient(bottom, #AF8766, #5D2A1B); background: -o-linear-gradient(bottom, #AF8766, #5D2A1B); background: linear-gradient(0deg, #AF8766, #5D2A1B); z-index: 10; }

@media screen and (max-width: 425px) { .schools { font-size: 10px; } }

@media screen and (min-width: 1440px) { .schools { font-size: 16px; } }

.schools .custom__edit { font-size: 14px !important; }

.schools__line { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-46%, -60%); -ms-transform: translate(-46%, -60%); transform: translate(-46%, -60%); width: 172%; min-width: 2000px; -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%); clip-path: polygon(0 0, 0% 0, 0% 100%, 0% 100%); -webkit-transition: -webkit-clip-path 5s ease 1s; transition: -webkit-clip-path 5s ease 1s; -o-transition: clip-path 5s ease 1s; transition: clip-path 5s ease 1s; transition: clip-path 5s ease 1s, -webkit-clip-path 5s ease 1s; }

@media all and (min-width: 1050px) { .mason--loaded .inview .schools__line { -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); } }

.schools__wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 3.125em; position: relative; visibility: visible; width: 90%; }

.schools__header { color: #fff; }

.schools__header > h2::after, .schools__header > h2::before { content: ''; background: var(--col-ter); }

.schools__main { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; gap: 3.125em; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; }

.schools__item { position: relative; max-height: 316px; }

.schools__item:before { content: ''; display: block; visibility: hidden; padding-bottom: 100%; }

.schools__item > a { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; gap: 1.25em; position: absolute; top: 0; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 100%; max-width: 316px; height: 100%; max-height: 316px; background: -webkit-gradient(linear, left top, left bottom, from(var(--col-sec)), to(var(--col-ter))); background: -webkit-linear-gradient(top, var(--col-sec), var(--col-ter)); background: -o-linear-gradient(top, var(--col-sec), var(--col-ter)); background: linear-gradient(180deg, var(--col-sec), var(--col-ter)); border: 4px solid #fff; border-radius: 50%; padding: 70px; text-align: center; }

.schools__item__image { border-radius: 50%; overflow: hidden; }

.schools__item__image::after { position: absolute; content: ''; top: 0; right: 0; bottom: 0; left: 0; background: var(--col-pri); opacity: 0.5; -webkit-transition: opacity .3s ease; -o-transition: opacity .3s ease; transition: opacity .3s ease; }

.schools__item__content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; gap: 36px; position: relative; z-index: 5; }

.schools__item__content > h3 { font-size: 26px; margin: 0; text-transform: capitalize; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.schools__item__content > span { font-size: 16px; font-weight: 700; text-decoration: underline; -webkit-transform: translateY(100%); -ms-transform: translateY(100%); transform: translateY(100%); opacity: 0; -webkit-transition: opacity .3s ease, -webkit-transform .3s ease; transition: opacity .3s ease, -webkit-transform .3s ease; -o-transition: opacity .3s ease, transform .3s ease; transition: opacity .3s ease, transform .3s ease; transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }

.schools__item__more { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: absolute; bottom: 5%; right: 5%; width: 60px; height: 60px; background: var(--col-qua); border: 2px solid #fff; color: var(--col-pri); border-radius: 50%; -webkit-transition: color .3s ease, background .3s ease, border .3s ease, -webkit-transform .3s ease; transition: color .3s ease, background .3s ease, border .3s ease, -webkit-transform .3s ease; -o-transition: color .3s ease, background .3s ease, border .3s ease, transform .3s ease; transition: color .3s ease, background .3s ease, border .3s ease, transform .3s ease; transition: color .3s ease, background .3s ease, border .3s ease, transform .3s ease, -webkit-transform .3s ease; }

.schools__item__more > svg { font-size: 27px; }

.schools__item:hover .schools__item__image::after { opacity: 0.8; }

.schools__item:hover .schools__item__content > span { -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); opacity: 1; }

.schools__item:hover .schools__item__more { background: var(--col-ter); color: #fff; -webkit-transform: rotate(180deg); -ms-transform: rotate(180deg); transform: rotate(180deg); }

.schools__navigation { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; gap: 20px; visibility: hidden; margin: 0; z-index: 10; }

@media all and (min-width: 1050px) { .schools__navigation { position: absolute; top: 50%; left: 50%; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; width: calc(100% + 60px); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); } }

.schools__navigation button { width: 60px; height: 60px; border-radius: 50%; background: var(--col-pri); border: 2px solid var(--col-qua); color: #fff; -webkit-transition: color .3s ease, background .3s ease, border .3s ease; -o-transition: color .3s ease, background .3s ease, border .3s ease; transition: color .3s ease, background .3s ease, border .3s ease; visibility: visible; }

.schools__navigation button > svg { font-size: 19px; }

.schools__navigation button.swiper-button-disabled { opacity: 0.5; }

.schools__navigation button:hover { background: var(--col-qua); border-color: var(--col-ter); color: var(--col-pri); }

.schools__buttons { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; gap: 20px; }

.map { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }

.map #map__inner { width: 100%; height: 485px; }

.map__top { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px); padding: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px) 0 0; width: 100%; background: -webkit-gradient(linear, left bottom, left top, from(#E3C5A3), to(#AF8766)); background: -webkit-linear-gradient(bottom, #E3C5A3, #AF8766); background: -o-linear-gradient(bottom, #E3C5A3, #AF8766); background: linear-gradient(0deg, #E3C5A3, #AF8766); }

.map__header { padding: 0 5%; color: var(--col-pri); font-size: calc( 10px + 6 * ((100vw - 425px) / 1015)); }

@media screen and (max-width: 425px) { .map__header { font-size: 10px; } }

@media screen and (min-width: 1440px) { .map__header { font-size: 16px; } }

.map__header > h2::after, .map__header > h2::before { content: ''; background: var(--col-pri); }

.map__contact { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; width: 100%; color: #fff; padding: clamp(25px, calc(1.5625rem + ((1vw - 4.25px) * 1.9704)), 45px) 5%; z-index: 4; }

@media all and (min-width: 1050px) { .map__contact { max-width: 594px; height: 344px; padding: 0 5%; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; margin-bottom: -100px; } }

.map__contact__background { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); height: 100%; width: 100%; }

.map__contact__background__clipped::after { position: absolute; content: ''; top: 0; right: 0; bottom: 0; left: 0; background: -webkit-gradient(linear, left top, left bottom, from(var(--col-pri)), to(#966E58)); background: -webkit-linear-gradient(top, var(--col-pri), #966E58); background: -o-linear-gradient(top, var(--col-pri), #966E58); background: linear-gradient(180deg, var(--col-pri), #966E58); }

@media all and (max-width: 1049px) { .map__contact__background__clipped { border-top: 4px solid var(--col-ter); } }

@media all and (min-width: 1050px) { .map__contact__background__clipped { -webkit-clip-path: url(#ticket__clip); clip-path: url(#ticket__clip); } }

.map__contact__background__stroke { display: none; position: absolute; width: 100%; height: 100%; z-index: 5; -webkit-transform: scale(1.005); -ms-transform: scale(1.005); transform: scale(1.005); }

.map__contact__background__stroke > svg { width: 100%; height: 100%; }

@media all and (min-width: 1050px) { .map__contact__background__stroke { display: block; } }

.map__contact__background__watermark { position: absolute; bottom: -0.5%; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); width: 60%; opacity: 0.1; z-index: 3; }

@media all and (min-width: 1050px) { .map__contact__background__watermark { width: 90%; } }

.map__contact__select { position: relative; z-index: 5; margin-bottom: 18px; }

.map__contact__select select { height: 51px; background: var(--col-qua); border: 2px solid var(--col-pri); color: var(--col-pri); font-weight: 700; padding: 0 20px; }

.map__contact__list { display: -ms-grid; display: grid; position: relative; z-index: 5; }

.map__contact__item { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-grid-row: 1; -ms-grid-row-span: 1; -ms-grid-column: 1; -ms-grid-column-span: 1; grid-area: 1 / 1 / 2 / 2; visibility: hidden; -webkit-transform: scale(0); -ms-transform: scale(0); transform: scale(0); opacity: 0; -webkit-transition: opacity .3s ease, -webkit-transform .3s ease; transition: opacity .3s ease, -webkit-transform .3s ease; -o-transition: opacity .3s ease, transform .3s ease; transition: opacity .3s ease, transform .3s ease; transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }

.map__contact__item.active { -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1); opacity: 1; visibility: visible; }

.map__contact__item__line { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; gap: 10px; margin-bottom: 18px; }
