/* Font Declarations */

@font-face {
    font-family: "Roboto Regular";
    src: url('fonts/Roboto-Regular.ttf') format('truetype');
}

@font-face {
    font-family: "Roboto Medium";
    src: url('fonts/Roboto-Medium.ttf') format('truetype');
}

@font-face {
    font-family: "RobotoSlab light";
    src: url('fonts/RobotoSlab-Light.ttf') format('truetype');
}

@font-face {
    font-family: "RobotoSlab Regular";
    src: url('fonts/RobotoSlab-Regular.ttf') format('truetype');
}

@font-face {
    font-family: "RobotoSlab Bold";
    src: url('fonts/RobotoSlab-Bold.ttf') format('truetype');
}

@font-face {
    font-family: 'Pacifico Regular';
    src: url('fonts/Pacifico-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Merriweather Light Italic';
    src: url('fonts/Merriweather-LightItalic.ttf') format('truetype');
}

@media only screen and (max-width: 991px) {
    .space {
        margin-left: 0em !important;
    }
    .cia_logo {
        width: 50px !important;
    }
    .kids_zone_title {
        font-size: 1.5rem !important;
    }
    .vertical_white_line {
        height: 50px !important;
        margin: 0.5em 0.5em !important;
    }
    .main-nav {
        height: 82px !important;
    }
    .top-nav {
        padding-top: 37px !important;
    }
    .navbar-toggler {
        top: -10px !important;
    }
    .nav-link h5 {
        font-size: 20px !important;
    }
}

:root {
    --delay-time: 0.5s;
}

html {
    font-size: 16px;
}

body {
    font-size: calc(14px + (16 - 14) * ((100vw - 360px) / (1920 - 360)));
    letter-spacing: 0.5px;
    font-family: "Roboto Regular";
    width: 100%;
    overflow-x: hidden;
}

h1 {
    /*dl font-size:4.5rem;  72px */
    font-size: calc(48px + (72 - 48) * ((100vw - 380px) / (1920 - 380)));
    letter-spacing: -1.5px;
    font-family: "RobotoSlab Light";
}

h2 {
    /*dl font-size:3.4rem; 54px */
    font-size: calc(34px + (54 - 34) * ((100vw - 360px) / (1920 - 360)));
    letter-spacing: 0.5px;
    font-family: "RobotoSlab Light";
}

h3 {
    /*dl font-size:3rem; 48px */
    font-size: calc(24px + (48 - 24) * ((100vw - 360px) / (1920 - 360)));
    letter-spacing: 0px;
    font-family: "RobotoSlab Regular";
}

h4 {
    /*dl font-size:2.12rem;  34px */
    font-size: calc(20px + (34 - 20) * ((100vw - 360px) / (1920 - 360)));
    letter-spacing: 0.25px;
    font-family: "RobotoSlab Regular";
}

h5 {
    /*dl font-size:1.5rem;  24px */
    font-size: calc(18px + (24 - 18) * ((100vw - 360px) / (1920 - 360)));
    letter-spacing: 0px;
    font-family: "RobotoSlab Regular";
}

h6 {
    /*dl font-size:1.25rem;  20px */
    letter-spacing: 0.15px;
    font-family: "RobotoSlab Bold";
}

.overline {
    font-size: 1.25rem;
    letter-spacing: 1.5px;
    font-family: "Roboto Regular";
    text-transform: uppercase;
}

.subtitle {
    font-size: calc(14px + (16 - 14) * ((100vw - 360px) / (1920 - 360)));
    font-family: "Roboto Regular";
}

.caption {
    font-size: 0.75rem;
    letter-spacing: 0.4px;
    font-family: "Roboto Regular";
}

.kids_zone_title {
    color: white;
    font-family: 'Pacifico Regular';
    vertical-align: middle;
    font-size: calc(24px + (40 - 24) * ((100vw - 360px) / (1920 - 360)));
    transition: 0.4s;
    -webkit-transition: 0.4s;
    -ms-transition: 0.4s;
    text-shadow: 2px 2px 4px #000000;
}

button {
    font-size: 14px;
    letter-spacing: 1.25px;
    font-family: "Roboto Medium";
    text-transform: uppercase;
}

.button {
    border: none;
    outline: 0;
    display: inline-block;
    padding: 10px 25px;
    background-color: #C0303B;
    color: #FFFFFF;
    text-align: center;
    cursor: pointer;
}

.button:hover {
    background-color: #C0303B;
    color: #FFFFFF;
    text-decoration: none;
}


/* Header/Nav */

.cia_logo {
    vertical-align: middle;
    display: inline-block;
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
}

.vertical_white_line {
    height: 80px;
    width: 4px;
    border-left: 2px white solid;
    display: inline-flex;
    vertical-align: middle;
    transition: var(--delay-time);
    margin-left: 1.2em;
    margin-right: 1.2em;
}

.main-nav {
    height: 130px;
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    position: fixed;
    z-index: 9999;
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
    top: 0px;
}

.navbar {
    width: 100%;
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
    margin: 0 5% 0 11%;
    padding: 0px;
}

.navbar-nav {
    height: 100%;
    margin-bottom: -3px;
}

.navbar-toggler-icon {
    color: white;
}

.navbar-toggler {
    font-size: 2.25rem;
    line-height: 2;
    float: right;
}

.navbar-toggler :after {
    padding-right: 3em;
}

.navbar-toggler :before {
    padding-right: 3em;
}

.navbar a {
    color: white;
    text-decoration: none;
}

.navbar-expand-md .navbar-collapse {
    float: right;
    height: 100%;
}

.logo {
    padding: 0;
}

.navbar .top-nav {
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
    padding: 82px 0 0 0;
    height: 100%;
}

.navbar-expand-md .navbar-nav .nav-link {
    min-width: 110px;
    text-align: center;
    padding: 0;
}

.nav-link h5 {
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
}

.active {
    transition: var(--delay-time) !important;
    -webkit-transition: var(--delay-time) !important;
    -ms-transition: var(--delay-time) !important;
}

.nav-item.active {
    border-bottom: 10px solid transparent;
    height: max-content;
    align-content: flex-end;
}

.nav-item.home.active {
    border-color: rgb(192, 48, 59);
}

.nav-item.stories.active {
    border-color: rgb(247, 200, 100);
}

.nav-item.games.active {
    border-color: rgb(252, 232, 180);
}

.nav-item.spydogs.active {
    border-color: rgb(107, 145, 197);
}


/* Main Content */

.container {
    margin: 0 auto;
    padding: 0;
}

.main-body {
    transition: var(--delay-time);
    -webkit-transition: var(--delay-time);
    -ms-transition: var(--delay-time);
    position: relative;
}


/* Parallax */

.top-para {
    height: 100vh;
    width: 100vw;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    display: table;
    z-index: -1;
    position: relative;
}

.top-para .static-textbox {
    text-align: left;
    margin-top: 55vh;
    padding: 30px;
    max-width: 540px;
    color: white;
    font-size: 1rem;
    background-color: rgba(0, 0, 0, 0.7);
}

.home-para {
    background-image: url("../images/home-hero.png");
}


/* .news-para {
  background-image: url("../news/images/news-hero.png");
} */

.stories-para {
    background-image: url("../stories/images/eagle-hero.png");
}

.spy-dogs-para {
    background-image: url("../spy-dogs/images/wesley-glasses.png");
}

.teachers-para {
    background-image: url("../parents-teachers/images/parents-hero.png");
}

.games-para {
    background-image: url("../games/images/games-hero-01.png");
}

.games-summer-para {
    background-image: url("../games/images/games-hero-02.png");
}

/* modal */

.modal-header {
    /* padding: 0; */
    background-color: rgba(0, 0, 0, 1);
    border-color: #000000;
}

.modal-header .close {
    padding: 1rem 2rem;
}


/* Content Blocks */

.a1,
.a2 {
    min-height: 100vh;
    padding: 0;
    margin-right: -3em;
}

.b2 {
    height: auto;
}

.c1 {
    text-align: center;
    font-size: calc(20px + (36 - 20) * ((100vw - 360px) / (1920 - 360)));
    font-family: "Merriweather Light Italic";
    padding: 100px 0;
}

.d1,
.d2 {
    min-height: 25vh;
    text-align: left;
}

.img-caption {
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    position: absolute;
    /* padding:35px; */
    padding: 10px 35px;
    bottom: 0;
    max-width: 400px;
    text-align: left;
    width: 100%;
}

.img-caption h5,
p {
    margin-top: 1rem;
}

.dark {
    background-color: black;
    color: white;
}

.gold {
    background-color: rgb(247, 200, 100);
}

.lt-gold {
    background-color: rgb(252, 232, 180);
}

.blue {
    background-color: rgb(107, 145, 197);
}

.red {
    background-color: rgb(192, 48, 59);
    color: white;
}

.img-holder {
    max-width: 400px;
    padding: 0;
}

.b2 .img-holder {
    max-width: 400px;
    text-align: center;
}

.b2 .img-holder img {
    width: 100%;
    max-width: 400px;
    /*max-height:50vh; */
    height: auto;
}


/*  Link Style */

.main-body a:link,
.main-body a:visited,
.main-body a:hover,
.main-body a:active {
    font-weight: bold;
    text-decoration: underline;
    color: black;
}

.dark a:link,
.img-caption a:link,
.red a:link,
.dark a:visited,
.img-caption a:visited,
.red a:visited,
.dark a:hover,
.img-caption a:hover,
.red a:hover,
.dark a:active,
.img-caption a:active,
.red a:active {
    font-weight: bold;
    text-decoration: underline;
    color: white;
}

a.button:link {
    text-decoration: none;
    color: white;
    font-weight: normal
}

.text-holder-right {
    padding: 30px 0 30px 5%;
}

.text-holder-left {
    padding: 30px 5% 30px 0;
}

.k9-vid-holder {
    width: 100vw;
    background: linear-gradient(to bottom, black 50vh, white 50vh);
    /*min-height: 100%;*/
}


/*.k9-vid {
  margin-left:auto;
  margin-right:auto;
  max-width:65%;
} */

.k9-cards {
    min-height: 50vh;
    height: auto;
}


/* Collapse Module (Read More) */

.module {
    /*dl  margin: 0 auto; */
}

.module .collapse.news,
.module .collapsing.news {
    /*  height: 11.5rem;  */
    /* dl height: 100vh;  */
}

.module .collapse.k9,
.module .collapsing.k9 {
    /*  height: 11.5rem;  */
    height: 50vh;
}

.module .collapse {
    position: relative;
    display: block;
    overflow: hidden;
}

.module .collapse:before {
    /* content: ' ...'; */
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
}

.module .collapse.show {
    height: auto;
    overflow: visible;
}

.module .collapse.show:before {
    display: none;
}

.module a.collapsed:after {
    content: 'Read More';
}

.k9 .module a.collapsed:after {
    content: 'View Cards';
}

.module a:not(.collapsed):after {
    content: 'Read Less';
}

.k9 .module a:not(.collapsed):after {
    content: 'Hide Cards';
}


/* Section Text Areas */

.collapsable-textbox {
    padding-left: 0;
}

.collapsable-textbox a.button {
    position: relative;
}

.card-download.button {
    content: '';
}

.collapsable-textbox p {
    position: relative;
}

.button-holder {
    padding-left: 0;
}

.k9 div.button-holder {
    padding-left: 85px;
}


/* K9 Baseball Cards */

.bb-card-grid-header {
    padding-top: 40px;
}

.grid-header {
    padding-left: 0px;
    padding-right: 0px;
}

.bb-card-grid {
    height: auto;
    padding: 50px 0 100px 0;
}

.bb-card-holder {
    margin: 45px 40px 0 0;
    flex: 0;
}

.games-grid-header {
    /* margin-top:10%; */
    padding-top: 100px;
}

.games-img-grid {
    /* height: 150vh; */
    /* margin-bottom: 10%; */
    padding-bottom: 100px;
}

.games-grid-img {
    margin-top: 40px;
    /* dl padding-bottom: 40px; */
    max-width: 330px;
}

.games-grid-img img {
    min-width: 300px;
}

.games-grid-img .img-caption {
    max-width: 300px;
}

.games-grid-img.img-holder {
    padding-right: 15px;
    padding-left: 15px;
}


/*  GrowShrink Effect in progress */

@keyframes GrowShrink {
    0% {
        transform: scale(1, 1);
    }
    50% {
        transform: scale(1.05, 1.05);
    }
    100% {
        transform: scale(1, 1);
    }
}

.games-grid-img:hover,
.card-front:hover {
    /* .sect-games  .games-grid-img:hover { */
    cursor: pointer;
    animation-duration: .5s;
    animation-name: GrowShrink;
    /*     border: 3px slategray dashed;  */
}

.games-grid-img.checkback:hover {
    cursor: unset;
    animation-name: unset;
}


/* Trading Card Flip */


/* flip the pane when hovered */

.card-flip-container {
    perspective: 1000;
    transform-style: preserve-3d;
}


/* rmp comment .card-flip-container:hover .card-flipper {
    transform: rotateY(180deg);
   del    cursor: pointer; 
  } */

.card-flip-container.hover .card-front {
    transform: rotateY(180deg);
}

.card-flip-container.hover .card-back {
    transform: rotateY(0deg);
}

.card-flip-container,
.card-front,
.card-back {
    min-width: 340px;
    height: 475px;
    padding-left: 0;
}


/* flip speed */

.card-flipper {
    transition: 0.8s;
    transform-style: preserve-3d;
    position: relative;
    height: auto;
    width: 330px;
}


/* hide back of pane during swap */

.card-front,
.card-back {
    backface-visibility: hidden;
    transition: 0.6s;
    transform-style: preserve-3d;
    position: absolute;
    top: 0;
    left: 0;
}


/* front pane, placed above back */

.card-front {
    z-index: 2;
    transform: rotateY(0deg);
}


/* back, initially hidden pane */

.card-back {
    transform: rotateY(-180deg);
    /* background-color: #fff; */
}

.card-back img,
.card-front img {
    max-width: 330px;
}


/* Footer */

.footer-panel {
    position: relative;
    bottom: 0;
    overflow: hidden;
    width: 100vw;
    background-color: rgba(0, 0, 0, 1);
    color: white;
}

.footer-panel div {
    /*dl padding-top: 40px; */
}

.footer-panel a:link,
.footer-panel a:visited,
.footer-panel a:hover,
.footer-panel a:active {
    color: white;
    padding: 10px;
    text-decoration: none;
    font-weight: normal;
}

.main-footer {
    position: relative;
    bottom: 0;
    overflow: hidden;
    width: 100vw;
    background-color: rgba(0, 0, 0, 1);
    color: white;
}

.main-footer a:link,
.footer-panel a:visited,
.footer-panel a:hover,
.footer-panel a:active {
    color: white;
    padding: 10px;
    text-decoration: none;
    font-weight: normal;
}


/* Parents & Teachers */


/*  Footer Link */

.parent-teacher {
    margin: 40px 0 40px 0;
}

.parent-teacher h4 {
    text-align: center;
}

.parent-teacher a {
    text-decoration: none;
    color: #FFFFFF;
}

.footer-links {
    padding-bottom: 50px;
}

.arrow {
    text-align: center;
    z-index: 8;
    margin-top: -70px;
}

.arrow:hover {
    cursor: default;
}

.bounce {
    -moz-animation: bounce 1.7s 3;
    -webkit-animation: bounce 1.7s 3;
    animation: bounce 1.7s 3;
}

@keyframes bounce {
    0%,
    10%,
    20%,
    30%,
    50%,
    70%,
    90%,
    100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-20px);
    }
    60% {
        transform: translateY(-15px);
    }
    80% {
        transform: translateY(-10px);
    }
}


/* Media Quieries */

@media screen and (max-width: 1850px) {
    .clSpyPlaneTitle {
        margin-left: -10.4em !important;
        margin-top: 0 !important;
        margin-bottom: 2em !important;
    }
}

@media screen and (min-device-width: 1024px) and (max-device-width: 1850px) {
    .clSpyPlaneTitle {
        margin-left: -10.4em !important;
        margin-top: 0 !important;
        margin-bottom: 2em !important;
    }
}

@media screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .arrow {
        display: none;
    }
    .top-para {
        background-attachment: scroll;
        height: auto;
        width: 110%;
    }
    .clSpyPlaneTitle {
        margin-left: 0em !important;
        margin-top: 0em !important;
        margin-bottom: 0em !important;
    }
    .home-para {
        background-image: url("../images/home-hero-large.png");
    }
    .stories-para {
        background-image: url("../stories/images/eagle-hero-large.png");
    }
    .spy-dogs-para {
        background-image: url("../spy-dogs/images/wesley-glasses-large.png");
    }
    .teachers-para {
        background-image: url("../parents-teachers/images/parents-hero-large.png");
    }
    .games-para {
        background-image: url("../games/images/games-hero-01-large.png");
    }
}

@media screen and (max-width: 767px) {
    .top-para {
        /*  background-size: auto;  */
        background-attachment: scroll;
        height: auto;
        width: 110%;
    }
    .clU2SpyPlaneImg {
        padding-left: 2em;
    }
    .clSpyPlaneTitle {
        margin-left: 0em !important;
        margin-top: 0em !important;
        margin-bottom: 0em !important;
    }
    .home-para {
        background-image: url("../images/home-hero-medium.png");
    }
    .stories-para {
        background-image: url("../stories/images/eagle-hero-medium.png");
    }
    .spy-dogs-para {
        background-image: url("../spy-dogs/images/wesley-glasses-medium.png");
    }
    .teachers-para {
        background-image: url("../parents-teachers/images/parents-hero-medium.png");
    }
    .games-para {
        background-image: url("../games/images/games-hero-01-medium.png");
    }
    .text-holder-right {
        padding: 30px 0 30px 15px;
    }
    .text-holder-left {
        padding: 30px 15px 30px 0;
    }
    .navbar {
        transition: var(--delay-time) !important;
        -webkit-transition: var(--delay-time) !important;
        -ms-transition: var(--delay-time) !important;
    }
    .navbar .top-nav {
        width: 150%;
        margin: -10% -15% 0 -15%;
        padding: 33px 0 0 0;
        height: auto;
    }
    .navbar-nav {
        width: 150vw;
    }
    .navbar-expand-md .navbar-nav .nav-link {
        text-align: left;
        padding-left: 25px;
        margin: 6px 0;
    }
    .cia_logo {
        padding-top: 6px;
    }
    .navbar-expand-md .navbar-collapse {
        float: left;
        background-color: #ffffff;
        width: 100%;
    }
    .navbar a {
        color: black;
    }
    .nav-item {
        padding-left: 30px;
    }
    .navbar-toggler {
        position: relative;
    }
    .navbar-expand-md .navbar-nav .dropdown-menu {
        position: static;
        float: none;
        padding-left: 0;
        text-align: left;
    }
    .dropdown-item {
        display: block;
    }
    .c1 {
        padding: 50px 0;
    }
    .footer-panel {
        width: 110%;
    }
    .arrow {
        display: none;
    }
}

@media screen and (max-width: 479px) {
    .top-para {
        background-attachment: scroll;
    }
    .home-para {
        background-image: url("../images/home-hero-small.png");
    }
    .stories-para {
        background-image: url("../stories/images/eagle-hero-small.png");
    }
    .spy-dogs-para {
        background-image: url("../spy-dogs/images/wesley-glasses-small.png");
    }
    .teachers-para {
        background-image: url("../parents-teachers/images/parents-hero-small.png");
    }
    .games-para {
        background-image: url("../games/images/games-hero-01-small.png");
    }
    .main-nav {
        transition: var(--delay-time);
        -webkit-transition: var(--delay-time);
        -ms-transition: var(--delay-time);
    }
    .active::before {
        top: 24px;
    }
    .card-back img,
    .card-front img {
        max-width: 290px;
    }
    .clSpyPlaneTitle {
        margin-left: 0em !important;
        margin-top: 0em !important;
        margin-bottom: 0em !important;
    }
    .card-flip-container,
    .card-front,
    .card-back {
        min-width: 250px;
    }
    .arrow {
        display: none;
    }
}

@media screen and (max-width: 900px) {
    .vertical_white_line {
        margin-left: 0.2em;
        margin-right: 0.2em;
    }
    .navbar {
        margin-left: 8%;
    }
}

.clSpyPlaneSubdivide {
    margin-top: 2em;
    width: 95%
}

.clWorldFactbookSubdivide {
    margin-top: 2em;
    width: 95%;
    /*height: 100%;*/
}

.clMuseumSubdivide {
    margin-top: 0rem;
    margin-bottom: 9em;
    width: 95%;
    /*height: 100%;*/
}

.clMuseumImg {
    float: right;
    margin: 1rem 0rem 1rem 2rem;
    width: 300px;
}

.clWorldFactbookImg {
    float: left;
    margin: 0rem 1.5rem 1.5rem 0rem;
    width: 600px;
}

.clStoriesArticle {
    margin-left: -2em;
}

.clU2SpyPlaneImg {
    float: right;
    width: 300px;
    margin: 2em;
}

.clU2SchematicImg {
    float: left;
    width: 300px;
    margin-right: 2em;
    margin-bottom: 2em;
}

.clA12SchematicImg {
    float: right;
    width: 325px;
    margin: -0.5em;
}

.clSpyPlaneTitle {
    margin-left: -10.5em;
    margin-top: -1.5em;
    margin-bottom: 1em;
}

.clReadMoreStaySharp {
    margin-top: 2em;
}

.clTitleLink :hover {
    cursor: pointer !important;
}

.answer-key {
    position: absolute;
}
.answer-key a {
    font-style: italic; font-size: 11pt; text-decoration: none !important;
}