/*-- Hero Slider Settings --*/

.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;width:100%;margin:0 auto 0 0%;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}

.slick-next,.slick-prev{font-size:0;line-height:0;position:absolute;
display:block;padding:0;cursor:pointer;color:transparent;border:none;outline:0;}.slick-next:focus:before,.slick-next:hover:before,.slick-prev:focus:before,.slick-prev:hover:before{opacity:1}.slick-next.slick-disabled:before,.slick-prev.slick-disabled:before{opacity:.25}.slick-next:before,.slick-prev:before{font-size:11px;line-height:2.7;color:#FFF!important;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[dir=rtl] .slick-prev{right:-25px;left:auto}.slick-prev:before{content:'\25C0'}[dir=rtl] .slick-prev:before{content:'\25C0'}.slick-next{right:-25px}[dir=rtl] .slick-next{right:auto;left:-25px}.slick-next:before{content:'\25B6'}[dir=rtl] .slick-next:before{content:'\25B6'}.slick-dots{display: none !important;
position:absolute;bottom:0px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center}.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0 2px;padding:0;cursor:pointer}.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:5px;cursor:pointer;color:transparent;border:0;outline:0;background:0 0}.slick-dots li button:focus,.slick-dots li button:hover{outline:0}.slick-dots li button:focus:before,.slick-dots li button:hover:before{opacity:1}.slick-dots li button:before{content:"";border-radius:30px;border:2px solid #FFF;position:absolute;top:0;left:0;width:15px;height:15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots li.slick-active button:before{background:#FFF}

.slick-track {
padding: 20px 0px;
}

.slick-next:focus, .slick-prev:focus {
outline: 2px solid #999;
}


#toggleBtn {     border: 0px;
position: absolute;
z-index: 991;
bottom: 70px;
right: 70px;
background: no-repeat;
width: 40px;
height: 40px;
border-radius: 50%;
display: flex;
justify-content: center;
align-content: center;
align-items: center;
}

#toggleBtn:hover {
background: #FFF;
}

#toggleBtn svg {
color: #FFF;
height: 30px; width: 30px;
}

#toggleBtn:hover svg path {
fill: #333;
}

#wrapper {
position: relative;
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
background-position: center 0px;
height: 100%;
}

#page {
display: table;
margin: 0px;
}

#hero {
width:100%;
margin: 0px;
height: 100%; height: 100vh; height: 100dvh;
position: relative;
background: #333; 
}

#hero:before {
background: linear-gradient(34deg, rgba(0, 0, 0, 0.73) 0%, rgba(0, 0, 0, 0) 100%);
content: ""; position: absolute; width: 100%; height: 100%; z-index: 2;
}

#hero .tagline {
position: absolute; bottom: 120px; z-index: 99; text-align: center; 
max-width: 880px;
width: 90%; color: #FFF;
left: 50%;
transform: translateX(-50%);
display: flex;
flex-direction: column;
align-items: center;
}

#hero .tagline span {
display: block;
font-weight: 500; line-height: 1;
font-size: 64px;
margin-bottom: 35px;
font-family: ltc-goudy-oldstyle-pro, serif;
}


.buttons,
.button {
display: flex;
}

.buttons a:link,
.buttons a:visited,
.button a:link,
.button a:visited {
color: #FFF;
padding: 17px 45px;
border-radius: 100px;
text-transform: uppercase;
text-decoration: none;
font-size: 12px;
letter-spacing: 3px;
font-weight: 800;
margin-right: 10px; margin-left: 10px;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: inset 0px 0px 0px 2px rgb(255 255 255 / 10%);
z-index: 2;
}

.buttons svg,
.button svg {
height: 12px; margin-left: 10px;
}

.buttons a:hover,
.button a:hover {
padding: 17px 55px; 
}





/*-- Video --*/

.vimeo-wrapper {
position: absolute;
width: 100%;
height: 100%;
height: 100vh;
height: 100dvh;
z-index: -1;
pointer-events: none;
overflow: hidden;
z-index: 1;
margin-top: 100px;
}

.vimeo-wrapper iframe {
width: 100vw;
height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
min-height: 100vh;
min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

body.smaller .vimeo-wrapper iframe {
opacity: 0.5;
}

/*-- Rules --*/

section {
padding: 100px 0px;
position: relative;
}

h1, h2 {
font-weight: 500;
font-size: 43px; line-height: 1.3;
margin: 0px 0px 20px 0px;
}

section p {
font-size: 21px;
}

section {
p, h2, h3 {color: #FFF}
}

.title {
width: 100%; margin-bottom: 35px;
display: flex;
justify-content: space-between;
align-items: center;
}

.title .group {
max-width: 820px;
width: 90%;
}

.title h2 {
font-size: 60px;
line-height: 1.1;
max-width: 900px;
}

.title p {
line-height: 1.8;
}

.title .button.white a {
background: #FFF;
}


/*-- Welcome --*/

#welcome {
background: #FFF;
overflow: hidden;
}

#welcome .container {
max-width: 1100px;
display: flex;
justify-content: space-between;
position: relative;align-items: center;
}

#welcome .message {
position: relative;
width: calc(100% - 470px);
}

#welcome .image {
width: 400px; height: 500px;
border-radius: 10px;
z-index: 99;
position: relative;
}

#welcome .image.schools {
width: 500px; margin-right: 40px;
}

#welcome .image .school:nth-child(1) {
float: left;
height: 100%;
}

#welcome .image .school:nth-child(1) ,
#welcome .image .school.two,
#welcome .image .school.three  {
width: 48%;
border-radius: 10px;
}
#welcome .image .school.two,
#welcome .image .school.three {
float: right;
height: 48%;
}

#welcome .image .school.two {
margin-bottom: 4%;
}

#welcome .message.school {
width: calc(100% - 570px);
}


#welcome .image img {
height: 100%;
width: 100%;
object-fit: cover;
max-width: 100%;
border-radius: 20px;
max-height: 100%;
background: #333
}

#welcome p {
font-size: 17px;
color: #404040;
line-height: 1.8;
}

#welcome .button {
margin-top: 35px;
}

/*-- Stats --*/

#stats {
.transparent-logo {
opacity: 0.3;top: 50%;
transform: translateY(-50%);

}
}

#stats.school {

.container {
display: flex; align-items: center;         max-width: 1380px;
}

h2 {    display: flex;
flex-direction: column;
line-height: 1.5;
font-size: 90px; opacity: 0.6;
}

p {
text-align: right;
font-size: 39px;
line-height: 1.6;
max-width: 730px;
}


}

#stats.trust {


.title {
justify-content: center;
}


.image-block-cont {
display: flex ;
flex-direction: row;
justify-content: center;
align-items: flex-start;
}

h2 {
max-width: inherit;
width: 100%;
display: flex;
flex-direction: row;
justify-content: space-between;         align-items: center; 
max-width: 1150px;
}

h2 .dot {
width: 3px;
height: 44px;
background: #ffffff1c;
}

.image {
width: 100px; height: 100px; border-radius: 100px; background: #ffffff1c; margin-bottom: 30px;
display: flex
;
align-items: center;
justify-content: center;
}

.image img {
height: 50px; width: auto;
}

.stat {
width: 100%; text-align: center;        display: flex
;
text-align: center;
flex-direction: column;
align-items: center;
}

.stat-number {
font-size: 80px;
line-height: 1;
color: #FFF;
text-align: center;
font-weight: 700;
}

p {
line-height: 1.4; margin-top: 20px;
}


}


/*-- Latest News --*/

#news .title p {
color: #404040;
}

#news {
background: #FFF;

}

#news .slick-track,
#family .slick-track {
display: flex ;
align-items: center;
left: 5%;
}

/* === Layout Containers === */
.latest-posts {
width: 100%;
position: relative;
overflow: visible;
}

/* === Card Base === */
.latest-post-card {
position: relative;
overflow: hidden;
background: #111;
width: 95% !important;
margin: 0 5%;
border-radius: 10px;
}

.slick-active .latest-post-card {
opacity: 1;
}

/* === Card Link Wrapper === */
.latest-post-link {
display: block;
position: relative;
height: 500px; /* default height */
text-decoration: none;
color: inherit;
padding-bottom: 30px;
transition: all 0.5s ease;
}

.slick-current .latest-post-link {
height: 570px;
}

/* === Card Media === */
.latest-post-media {
position: absolute;
inset: 0;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
transform: scale(1);
transition: transform 0.6s ease, filter 0.6s ease; /* smoother zoom */
}

.latest-post-media::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(4deg, rgba(0, 0, 0, 0.6) 25%, rgba(0, 0, 0, 0) 50%),
linear-gradient(180deg, rgba(0, 0, 0, 0.12) 6%, rgba(0, 0, 0, 0.6) 100%);
opacity: 1;
transition: opacity 0.6s ease, background 0.6s ease; /* fade & blend */
z-index: 1;
}

/* Hover: scale image + soften overlay */
.latest-post-card:hover .latest-post-media {
transform: scale(1.08); /* subtle zoom */
transition: transform 0.6s ease, filter 0.6s ease; /* smoother zoom */
}


/* === Slick Navigation Arrows === */
#news .slick-arrow,
#family .slick-arrow {
border-radius: 70px;
height: 70px;
width: 70px;
display: flex;
z-index: 9;
justify-content: center;
align-items: center;
box-shadow: inset 0 0 0 2px rgb(255 255 255 / 10%);
transition: background 0.5s ease;
}

#news .slick-prev {
top: -150px;
right: calc(5% + 120px);
}

#news .slick-next {
top: -150px;
right: calc(5% + 30px);
}

#family .slick-prev {
top: -150px;
left: calc(5% + 30px);
}

#family .slick-next {
top: -150px;
left: calc(5% + 120px);
}

/* === Text + Meta === */
.latest-post-meta {
position: absolute;
bottom: 20px;
width: 100%;
padding: 10px;
text-align: center;
color: #fff;
z-index: 2;
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
transition: transform 0.6s ease, filter 0.6s ease; /* smoother zoom */
}

.latest-post-title {
margin: 0 0 10px;
font-size: 23px;
font-weight: 600;
line-height: 1.4;
}

.latest-post-date {
width: 100%;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 2px;
font-weight: 800;
opacity: 1;
}

/* Family Section Title Override */
#family .latest-post-title {
width: 90%;
text-align: center;
font-size: 30px;
font-weight: 100;
margin-left: 5%;
line-height: 1.2;
}

#family .container {
position: relative;
display: block;
}

/* === Info Panel (Slide-Up Reveal) === */
.latest-post-card .info {
position: absolute;
bottom: -100%;
left: 0;
width: 100%;
height: 100%;
text-align: center;
padding: 20px;
box-sizing: border-box;
transition: all 0.5s ease;
z-index: 3;
display: flex;
flex-direction: column;
justify-content: center;
}

.latest-post-card .info p {
font-size: 18px;
line-height: 1.8;
}

.latest-post-card .info a {
color: #fff;
text-decoration: none;
}

.latest-post-card .info .button {
display: flex;
justify-content: center;
}

/* Reveal on Hover */
.latest-post-card:hover .info {
bottom: 0;
}

.latest-post-card:hover .latest-post-media {
transform: scale(1.1);
}


/*-- Family --*/

#family {

.title {
text-align: right;
justify-content: flex-end;
}

.group {
display: flex;
flex-direction: column;
align-items: flex-end;
}
}

#family .title p {
color: #404040;
}



#discover .title {
  text-align: center;
}

#discover .title .group {
  margin: 0px auto;
}

#discover .image-block-cont {
    display: flex;
    flex-wrap: nowrap;
  }
  
  .discover-block {
    overflow: hidden;
    width: 30%;
    margin-right: 1.5%; margin-left: 1.5%;
    position: relative;
    border-radius: 10px;
  }
  
  .discover-link {
    display: block;
    text-decoration: none;
    color: inherit;
  }
  
  .discover-block .image {
    overflow: hidden;
  }
  
  .discover-block .image:before {
    content: "";
    position: absolute;
    z-index: 9;
    width: 100%; height: 100%;
    top: 0px;
    background: linear-gradient(4deg, rgba(0, 0, 0, 0.60) 25.25%, rgba(0, 0, 0, 0.16) 49.68%);
  }
  
  .discover-block img {
    display: block;
    width: 100%;
    transition: transform 0.4s ease;
  }
  
  .discover-block .block-title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    font-family: ltc-goudy-oldstyle-pro, serif;
bottom: 40px;
    z-index: 9; line-height: 1.2;
    color: #FFF;
    font-size: 37px;
    width: 90%;
    text-align: center;
  }
  
  /* Hover/Focus states */
  .discover-block:hover img,
  .discover-block:focus-within img {
    transform: scale(1.1);
  }
  
  .discover-link:focus {
    outline: 2px solid #000;
    outline-offset: 3px;
  }