/* # @name: custom.css # @version: 0.1 # @creation_date: 2021-10-25 # @license: The MIT License # @author: Simon Bowie # @purpose: Custom CSS to override Bootstrap 5 defaults # @acknowledgements: # Bootstrap 5.1.3: https://getbootstrap.com/ */ :root{ --primary-color:#FFFFFF; --highlight-colour:#EB7F1D; --hover-link-colour:#EB7F1D; --light-highlight-colour:#F8D9AA; --bs-primary-rgb: 13,110,253; --bs-secondary-rgb: 108,117,125; --bs-success-rgb: 25,135,84; --bs-tool-rgb: 13,202,240; --bs-practice-rgb: 255,193,7; --bs-book-rgb: 150, 224, 167; --bs-danger-rgb: 220,53,69; --bs-light-rgb: 248,249,250; --bs-dark-rgb: 33,37,41; --bs-white-rgb: 255,255,255; --bs-black-rgb: 0,0,0; } @import "https://fonts.googleapis.com/css?family=Lato:300,400,700&display=swap"; body { line-height: 1.2; font-family: Lato, sans-serif; -webkit-font-smoothing: antialiased; font-size: 15px; color: #000000 } p { font-weight: 400; color: #000000; font-size: 15px; line-height: 1.8; font-family: Lato, sans-serif } ul { font-weight: 400; color: #000000; font-size: 15px; line-height: 1.8; font-family: Lato, sans-serif; } h1, h2, h3, h4, h5, h6 { color: #000; font-family: Lato, sans-serif; line-height: 1.2 } .navbar { position: relative; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: center; align-items: center; -ms-flex-pack: justify; justify-content: space-between; padding: 0.5rem 1rem; } h1, .h1 { font-size: 80px } @media(max-width:991px) { h1, .h1 { font-size: 65px } } h2, .h2 { font-size: 45px } @media(max-width:991px) { h2, .h2 { font-size: 35px } } h3, .h3 { font-size: 22px } h4, .h4 { font-size: 18px } h5, .h5 { font-size: 14px } h6, .h6 { font-size: 14px } .btn { font-size: 22px; font-family: Lato, sans-serif; text-transform: capitalize; padding: 16px 44px; border-radius: 5px; font-weight: 600; border: 0; position: relative; z-index: 1; transition: .2s ease } .btn:focus { outline: 0; box-shadow: none !important } .btn:active { box-shadow: none } .btn-sm { font-size: 15px; padding: 10px 30px } .btn-xs { padding: 5px 10px; font-size: 15px } .btn-transparent { background: transparent; color: var(--primary-color); font-weight: 700 } .btn-transparent:active, .btn-transparent:hover { color: var(--primary-color) } body { background-color: #fff; overflow-x: hidden } ::selection { background: var(--highlight-colour); color: #fff } .preloader { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: #fff; z-index: 999999; display: flex; align-items: center; justify-content: center } .search-filter-sidebar { background-color: #efefef; padding: 5px; padding-top: 10px; border-radius: 0.25rem; } #searchResources { height: calc(1.5em + 0.5rem + 2px); padding: 0.25rem 0.5rem; font-size: .875rem; line-height: 1.5; border-radius: 0.2rem; border-bottom: 0px; } .filter-title { padding: 5px; font-weight: 600; } .filter-items { margin: 0; padding-left: 1.5rem; line-height: 1.5; font-size: 13px; } .accordion-body { padding: 0; } ol, ul { /*list-style-type: circle;*/ margin: 1rem; } img { vertical-align: middle; border: 0 } a, a:hover, a:focus { text-decoration: none } a, button, select { cursor: pointer; transition: .2s ease } a:focus, button:focus, select:focus { outline: 0 } a.text-dark:hover { color: var(--hover-link-colour) !important } a:hover { color: var(--hover-link-colour) } .slick-slide { outline: 0 } .section { padding-top: 80px; padding-bottom: 80px } .section-title { margin-bottom: 80px; font-family: Lato, sans-serif; /*font-weight: 700;*/ background: linear-gradient(90deg, var(--highlight-colour), var(--light-highlight-colour)) no-repeat left 123%/98% 45%; } .bg-cover { background-size: cover; background-position: 50%; background-repeat: no-repeat } .overlay { position: relative } .overlay::before { position: absolute; content: ''; height: 100%; width: 100%; top: 0; left: 0; background: #000; opacity: .5 } .outline-0 { outline: 0 !important } .d-unset { display: unset !important } .bg-primary { background: var(--primary-color) !important } .bg-gray { background: #eaeaea !important } .text-primary { color: var(--primary-color) !important } .text-color { color: #000000 } .text-dark { color: #000 !important } .text-light { color: #999 !important } .mb-10 { margin-bottom: 10px !important } .mb-20 { margin-bottom: 20px !important } .mb-30 { margin-bottom: 30px !important } .mb-40 { margin-bottom: 40px !important } .mb-50 { margin-bottom: 50px !important } .mb-60 { margin-bottom: 60px !important } .mb-70 { margin-bottom: 70px !important } .mb-80 { margin-bottom: 80px !important } .mb-90 { margin-bottom: 90px !important } .mb-100 { margin-bottom: 100px !important } .zindex-1 { z-index: 1 } .rounded-lg { border-radius: 15px } .overflow-hidden { overflow: hidden } .font-primary { font-family: Lato, sans-serif !important } .font-secondary { font-family: Lato, serif !important } .font-secondary { font-family: Lato, sans-serif; /*font-weight: 700 !important;*/ } .font-tertiary { font-family: Lato, sans-serif; font-style: italic; font-weight: 200; font-size: 14px; } .shadow { box-shadow: 0 18px 39.1px 6.9px rgba(224, 241, 255, .34) !important } .bg-dark { background-color: #222 !important } .icon { font-size: 45px } .icon-bg { height: 100px; width: 100px; line-height: 100px; text-align: center } .icon-light { color: var(--highlight-colour); } .slick-dots { text-align: center; padding-left: 0 } .slick-dots li { display: inline-block; margin: 2px } .slick-dots li.slick-active button { background: rgba(0, 0, 0, .5); width: 25px } .slick-dots li button { height: 6px; width: 12px; background: rgba(0, 0, 0, .5); color: transparent; border-radius: 10px; overflow: hidden; transition: .2s ease; border: 0 } .form-control { border: 0; border-radius: 0; border-bottom: 1px solid #c7c7c7; height: 60px } .form-control:focus { border-color: var(--primary-color); outline: 0; box-shadow: none !important } textarea.form-control { height: 120px } .card { border: 0; height: 100% } .card-header { border: 0 } .card-footer { border: 0 } .navigation { padding: 15px 130px; transition: .3s ease } .navigation.nav-bg { background-color: var(--primary-color); padding: 5px 5px } @media(max-width:991px) { .navigation.nav-bg { padding: 15px 20px } } @media(max-width:991px) { .navigation { padding: 20px; background: var(--primary-color) } } .navbar .nav-item .nav-link { font-family: Lato, sans-serif; font-weight: 700; text-transform: uppercase; padding: 15px } .navbar .nav-item.active .nav-link{ color: #52f8f4; } .navbar-dark .navbar-nav .nav-link { color: #fff; } .hero-area { padding: 250px 0 200px; position: relative } @media(max-width:767px) { .hero-area { padding: 200px 0 150px; overflow: hidden } } .hero-area h1 { position: relative; z-index: 2 } .layer { position: absolute; z-index: 1 } #l1 { bottom: 0; left: 0 } #l2 { top: 190px; left: -250px } #l3 { top: 200px; left: 40% } #l4 { top: 200px; right: 40% } #l5 { top: 100px; right: -150px } #l6 { bottom: -20px; left: 10% } #l7 { bottom: 100px; left: 20% } #l8 { bottom: 160px; right: 45% } #l9 { bottom: 100px; right: -10px } .layer-bg { position: absolute; bottom: 0; left: 0; z-index:-1; } .progress-wrapper { height: 130px; overflow: hidden } .wave { position: absolute; width: 100%; height: 100% } .wave::before, .wave::after { content: ""; position: absolute; width: 800px; height: 800px; bottom: 0; left: 50%; background-color: rgba(255, 255, 255, .4); border-radius: 45%; transform: translateX(-50%) rotate(0); animation: rotate 6s linear infinite; z-index: 10 } .wave::after { border-radius: 47%; background-color: rgba(255, 255, 255, .9); transform: translateX(-50%) rotate(0); animation: rotate 10s linear -5s infinite; z-index: 20 } @keyframes rotate { 50% { transform: translateX(-50%) rotate(180deg) } 100% { transform: translateX(-50%) rotate(360deg) } } .edu-bg-image { position: absolute; left: 0; top: -300px; z-index: -1 } .hover-bg-primary { transition: .3s ease } .hover-bg-primary:hover { background: var(--primary-color) } .hover-bg-primary:hover * { color: #fff } .active-bg-primary { transition: .3s ease; background: var(--light-highlight-colour) } .active-bg-primary * { color: #000000 } .hover-shadow { transition: .2s ease } .hover-shadow:hover { box-shadow: 0 18px 40px 8px rgba(224, 241, 255, .54) !important } .hover-wrapper { overflow: hidden; padding: 25px; } .hover-wrapper img { transition: .3s ease; transform: scale(1.1) } .hover-wrapper:hover img { transform: scale(1) } .hover-wrapper:hover .hover-overlay { opacity: 1; visibility: visible } .hover-overlay { position: absolute; height: 100%; width: 100%; border-radius: inherit; top: 0; left: 0; background: rgba(0, 0, 0, .3); opacity: 0; visibility: hidden; transition: .3s ease } .hover-content { position: absolute; top: 50%; transform: translateY(-50%); left: 0; right: 0; text-align: center } .testimonial-content strong { color: #2bfdff; font-weight: 400 } .testimonial-bg-shapes .container { position: relative; z-index: 1 } .testimonial-bg-shapes .bg-map { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) } .testimonial-bg-shapes .bg-shape-1 { position: absolute; left: 100px; top: -50px } .testimonial-bg-shapes .bg-shape-2 { position: absolute; right: 150px; top: 50px } .testimonial-bg-shapes .bg-shape-3 { position: absolute; right: 50px; top: 200px } .testimonial-bg-shapes .bg-shape-4 { position: absolute; left: 100px; bottom: 200px } .testimonial-bg-shapes .bg-shape-5 { position: absolute; right: 200px; bottom: -50px } /*.footer-section { padding-top: 200px }*/ .footer-section a { color: #fff; } .footer-bottom a { color: #999; text-decoration: underline; } .footer-section a:hover { color: #fff; text-decoration: underline; } .section-on-footer { margin-bottom: -250px } .shadow-down { position: relative } .shadow-down::before { position: absolute; content: ""; box-shadow: 0 0 80.75px 14.25px rgba(224, 241, 255, .34); height: 100%; width: 100%; left: 0; top: 0; z-index: -1 } .card-lg { flex-direction: row-reverse; align-items: center } @media(max-width:991px) { .card-lg { flex-direction: column } } blockquote { display: inline-block; padding: 10px 20px; background: #eaeaea; border-left: 2px solid var(--primary-color); font-style: italic; font-size: 22px } .content * { margin-bottom: 20px } .content strong { font-family: Lato,serif; color: #000; line-height: 1.5; } .content img { max-width: 100%; height: auto; margin: 0 auto 15px; display: block; text-align: center; } .page-title-alt { padding: 350px 0 70px } .border-thick { border: 10px solid } .drag-lg-top { margin-top: -230px } @media(max-width:991px) { .drag-lg-top { margin-top: 0 } } .page-title-alt .container { position: relative; z-index: 1 } .page-title-alt .bg-shape-1 { position: absolute; left: 0; top: 0; height: 100% } .page-title-alt .bg-shape-2 { position: absolute; left: 70px; top: 100px } .page-title-alt .bg-shape-3 { position: absolute; left: 30%; top: 50px; transform: rotate(180deg) } .page-title-alt .bg-shape-4 { position: absolute; left: 100px; bottom: 100px } .page-title-alt .bg-shape-5 { position: absolute; left: 40%; bottom: -25px } .page-title-alt .bg-shape-6 { position: absolute; bottom: 100px; right: -100px } .page-title { padding: 250px 0 150px } .page-title .container { position: relative; z-index: 1 } .page-title .bg-shape-1 { position: absolute; left: 0; bottom: 0; width: 100% } .page-title .bg-shape-2 { position: absolute; left: -20px; top: -10px } .page-title .bg-shape-3 { position: absolute; left: 10%; top: 100px } .page-title .bg-shape-4 { position: absolute; left: 50%; top: -20px } .page-title .bg-shape-5 { position: absolute; left: 90px; bottom: -50px; transform: rotate(180deg) } .page-title .bg-shape-6 { position: absolute; right: 20%; bottom: -20px } .page-title .bg-shape-7 { position: absolute; right: -220px; bottom: -100px } .filter-controls li { cursor: pointer } .filter-controls li.active { font-weight: 700 } .social-icons a{ height: 100px; width: 100px; line-height: 102px; border-radius: 50%; display: block; box-shadow: 0 18px 39.1px 6.9px rgba(224,241,255,.34); color: #fff; background-color: var(--primary-color); font-size: 20px; text-align: center; } .project-meta{ display: flex; align-items: center; } .project-meta i{ height: 100px; min-width: 100px; line-height: 100px; background-color: #fff; color: var(--primary-color); border-radius: 50%; text-align: center; display: block; box-shadow: 0 18px 39.1px 6.9px rgba(224,241,255,.34); font-size: 30px; } .project-meta h4{ font-weight: bold; font-size: 24px; } .project-meta p{ margin-bottom: 0; } summary { color: #000; font-family: Lato, sans-serif; line-height: 1.2; font-size: 22px; font-weight: 500; } details { font-weight: 400; color: #000000; font-size: 15px; line-height: 1.8; font-family: Lato,sans-serif; margin-bottom: 20px; } .dropdown-item.active, .dropdown-item:active { background-color: var(--highlight-colour); } a { color: #0062F5; } blockquote a { color: #005CE6; } .font-secondary { font-family: Lato,sans-serif; font-weight: 400!important; } .title { font-size: 22px } .footer-title { font-size: 18px } .light-paragraph { font-family: Lato,sans-serif; font-weight: 200!important; } @media (max-width: 544px) { h1 {font-size:1.5rem;} /*1rem = 16px*/ } h2 { background: linear-gradient(90deg, var(--highlight-colour), var(--light-highlight-colour)) no-repeat left 123%/98% 45%; } table{ width:100%; margin-bottom:1rem; color:#212529 } table td,.table th{ padding:.75rem; vertical-align:top; border-top:1px solid #dee2e6 } table thead th{ text-align:center; vertical-align:bottom; border-bottom:2px solid #dee2e6 } table tbody+tbody{ border-top:2px solid #dee2e6 } main > .container { padding: 60px 15px 0; } .carousel-control-next, .carousel-control-prev, .carousel-indicators { filter: invert(100%); } .bg-tool { --bs-bg-opacity: 1; background-color: rgba(var(--bs-tool-rgb),var(--bs-bg-opacity))!important; } .bg-practice { --bs-bg-opacity: 1; background-color: rgba(var(--bs-practice-rgb),var(--bs-bg-opacity))!important; } .bg-book { --bs-bg-opacity: 1; background-color: rgba(var(--bs-book-rgb),var(--bs-bg-opacity))!important; } .drop { position: relative; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .drop.open { z-index: 100; } .drop.open .drop-screen { z-index: 100; display: block; } .drop.open .drop-options { z-index: 200; max-height: 200px; } .drop.open .drop-display { z-index: 200; border-color: #465; } .drop select { display: none; } .drop .drop-screen { position: fixed; width: 100%; height: 100%; background: #000; top: 0px; left: 0px; opacity: 0; display: none; z-index: 1; } .link { text-align: center; margin: 20px 0px; color:#8CACD7; } .drop .drop-display { position: relative; padding: 0px 20px 5px 5px; border: 4px solid #444; width: 100%; background: #FFF; z-index: 1; margin: 0px; font-size: 16px; min-height: 58px; } .drop .drop-display:hover:after { opacity: 0.75; } .drop .drop-display:after { font-family: 'Material Icons'; content: "\e5c6"; position: absolute; right: 10px; top: 12px; font-size: 24px; color: #444; } .drop .drop-display .item { position: relative; display: inline-block; border: 2px solid #333; margin: 5px 5px -4px 0px; padding: 0px 25px 0px 10px; overflow: hidden; height: 40px; line-height: 36px; } .drop .drop-display .item .btnclose { color: #444; position: absolute; font-size: 16px; right: 5px; top: 10px; cursor: pointer; } .drop .drop-display .item .btnclose:hover { opacity: 0.75; } .drop .drop-display .item.remove { -webkit-animation: removeSelected 0.2s, hide 1s infinite; animation: removeSelected 0.2s, hide 1s infinite; -webkit-animation-delay: 0s, 0.2s; animation-delay: 0s, 0.2s; } .drop .drop-display .item.add { -webkit-animation: addSelected 0.2s; animation: addSelected 0.2s; } .drop .drop-display .item.hide { display: none; } .drop .drop-options { background: #444; box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25); position: absolute; width: 100%; max-height: 0px; overflow-y: auto; transition: all 0.25s linear; z-index: 1; } .drop .drop-options a { display: block; height: 40px; line-height: 40px; padding: 0px 20px; color: white; position: relative; max-height: 40px; transition: all 1s; overflow: hidden; } .drop .drop-options a:hover { background: #465; cursor: pointer; } .drop .drop-options a.remove { -webkit-animation: removeOption 0.2s; animation: removeOption 0.2s; max-height: 0px; } .drop .drop-options a.add { -webkit-animation: addOption 0.2s; animation: addOption 0.2s; } .drop .drop-options a.hide { display: none; } @-webkit-keyframes pop { from { -webkit-transform: scale(0); transform: scale(0); } to { -webkit-transform: scale(1); transform: scale(1); } } @keyframes pop { from { -webkit-transform: scale(0); transform: scale(0); } to { -webkit-transform: scale(1); transform: scale(1); } } @-webkit-keyframes removeOption { from { max-height: 40px; } to { max-height: 0px; } } @keyframes removeOption { from { max-height: 40px; } to { max-height: 0px; } } @-webkit-keyframes addOption { from { max-height: 0px; } to { max-height: 40px; } } @keyframes addOption { from { max-height: 0px; } to { max-height: 40px; } } @-webkit-keyframes removeSelected { from { -webkit-transform: scale(1); transform: scale(1); } to { -webkit-transform: scale(0); transform: scale(0); } } @keyframes removeSelected { from { -webkit-transform: scale(1); transform: scale(1); } to { -webkit-transform: scale(0); transform: scale(0); } } @-webkit-keyframes addSelected { from { -webkit-transform: scale(0); transform: scale(0); } to { -webkit-transform: scale(1); transform: scale(1); } } @keyframes addSelected { from { -webkit-transform: scale(0); transform: scale(0); } to { -webkit-transform: scale(1); transform: scale(1); } } @-webkit-keyframes hide { from, to { max-height: 0px; max-width: 0px; padding: 0px; margin: 0px; border-width: 0px; } } @keyframes hide { from, to { max-height: 0px; max-width: 0px; padding: 0px; margin: 0px; border-width: 0px; } }