@charset "UTF-8";
/* CSS Document */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

html {
    box-sizing: border-box;
}

*::before,
*::after {
    box-sizing: inherit;
}

body
{margin: 0;
 min-height: 100vh;
 background-color: whitesmoke;
 display: grid;
 grid-template-columns: 1fr;
 grid-template-rows: 1fr;
 justify-items: center;}

h1, h2, h3
{font-family: 'Limelight', cursive;}

a
{font-family: 'Oswald', sans-serif;}

.wrapper 
{width: 96%;
max-width:767px;
padding: 0 10px;
margin: 107px 0 0 0;
background:url("images/bg-bulb.png")repeat, hsla(203,48%,77%, 0.6);
display: grid;
grid-template-columns: repeat(2, [wrapper] 1fr);
grid-template-rows: auto auto 1fr auto;
gap:20px;}

nav ul li a
{text-decoration: none;}

.nav-main
{position: fixed;
 z-index: 200;
 top: 0;
 right: 0;
 left: 0;
 background: rgba(87, 160, 211, 0.5);
 box-shadow: 0 3px 5px black;
 height: 105px;}

.nav-main h1 
{position: absolute;
top: 0;
right: 0;
left: 0;
line-height: 60px;
margin: 0;
text-align: center;}

#nav-main-toggle
{display:none;}

input[type=checkbox]:before
{height: 75px;
 width: 50px;}

.checkbox
{height: 75px;}
    
.nav-main-icon
{position: fixed;
 top: 5px;
 left: 10px;
 width: 100px;
 line-height: 105px;
 text-align: left;
 background-image:url("images/menu-bulb.png");
 background-repeat: no-repeat;
 z-index: 100;}

.nav-main-menu
{margin: 110px 0 0 0;
 padding: 5px 10px;
 list-style: none;
 background: orange;
 width: 50%;
 transition: all 0.1s linear;
 transform: translate(-100%, 0%);}

#nav-main-toggle:checked ~ .nav-main-menu
{transform: translate(0, 0);}

.headroom
{will-change: transform;
 transition: all .5s ease-out;}

.headroom--pinned
{transform: translateX(0%);
 opacity: 1;}

.headroom--unpinned 
{transform: translateX(-100%);
    opacity: 0;}

.nav-main a
{display: block;
 line-height: 48px;
 font-weight: bold;
 text-align: left;
 padding-left: 30px;
 margin: 5px 10px;
 font-size: 1.3em;
 color: black;
 text-decoration: none;
 transition: all .5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
 background-color: rgba(255,218,185, 0.8);
 border: 3px solid darkorange;
 border-radius: 10px; 
 background-size: auto 0;}

.nav-main a:hover
{background-size: 100%;
 box-shadow: inset 4px 8px 8px 1px rgba(0,0,0, 0.5);
 cursor: pointer;}

p
{font-weight: 600;}

h2 
{text-align: center;}

aside > ul > li
{list-style-type: "💡"}

aside > h2
{text-align: center;}

.footer-main
{font-family: 'Oswald', san-serif;}
    
footer a 
{padding:0 5%;}

.header-main, .main-main, .nav-main, .footer-main, .aside-main, .program-main, .gallery-aside, 
.header-archive, .div-archive, .header-archive-h1, .contact-header, .contact-main
{grid-column: span 2;}

.header-main h1
{visibility: hidden;}

nav ul li:first-child 
{margin-right: auto; }

p ~ a:hover
{background-color:rgba(255,218,185, 1.0);}

.cards
{display: grid;
 gap: 20px;}

.card
{padding: 20px;
 background: url("images/bg-bulb.png");
 background-color: aliceblue;;
 border: 3px solid hsla(214,68%,31%,1.0);
 border-radius: 20px;}

.card-link {
color: inherit;
background: hsla(0, 0%, 100%, 0.75);
margin: 10px;
padding: 15px;
line-height: 3;
border-radius: 0.5em;
border: 2px solid darkblue;
text-decoration: none;
font-weight: bold;
font-size: 1.2em;}

.program-card-figure-image {
width: 100%;
object-fit: cover;
overflow: hidden;}

.gallery-figure-image
 {padding: 20px;
  width: 350px;
  border: 3px solid darkblue;
  background-color: aliceblue;}

h4 ~ a:hover
{padding: 10px 20px;
 border: 2px solid orange;
 border-radius: 15px;}

.header-archive
{position: relative;
 margin: 20px 40px 0 20px;
 height: 200px;
 padding: 15px 0 0 0;
 background-image: url("images/nwtc-150.png");
 background-position: left;
 background-repeat: no-repeat;}

.header-archive-h1
{color: darkslateblue;
 text-align: center;
 font-size: 2em;}

.contact-header
{position: relative;
 margin: 20px 40px 0 20px;
 height: 200px;
 padding: 15px 0 0 0;
 background: url("images/nwtc-150.png") no-repeat right;}

.contact-header-h1
{font-size: 3em;}

form ol 
    {list-style: none;
     padding-left: 0;}

form ol li 
    {transition: all 0.2s ease-in;
     position: relative;
     font-size: 1.25em;
     font-weight: bolder;}

form label 
    {display: block;
    line-height: 1.5;
    font-weight: bold;}

form textarea,
form input:not([type="checkbox"]):not([type="radio"]) 
    {display: block;
    width: 100%;
    line-height: 2;
    font-family: inherit;
    /* Need min 16px to prevent zooming on field in iOS */
    font-weight: bold;
    font-size: 1em;
    padding: 0.25em 0.5em;
    border: 2px solid darkblue;
    position: relative;
    z-index: 2;
    transition: all 0.2s ease-in;}

form textarea:focus,
form input:not([type="checkbox"]):not([type="radio"]):focus 
    {outline: none;
    border-color: blue;}

form textarea 
    {min-height: 180px;}

form input + label,
form textarea + label 
    {transform: translateY(-100%);
    transition: all 0.2s ease-in;
    z-index: 1;
    position: relative;}

form input:valid + label,
form textarea:valid + label 
    {transform: translateY(0);
    background: lightgreen;}

form:valid input[type="submit"] 
    {border: 2px solid lightgreen;}

form li:last-child::before 
    {content: "✅";
    position: absolute;
    top: 20%;
    left: 40px;
    line-height: 2;}

form li:last-child::after 
    {content: "⛔️";
    position: absolute;
    top: 20%;
    right: 40px;
    line-height: 2;}

form:invalid li:last-child 
    {background: lightcoral;
     padding: 0 100px 0px 00px;}

form:valid li:last-child 
    {background: lightgreen;
    padding: 0 0px 0px 100px;}
    
div > label
{font-size: 1.2em;
 font-weight: bold;}

#gmap
    {margin: 20px 0;
     height: 300px;
     overflow: hidden;
     background: url(images/gmap.png) no-repeat center / cover;
     border: 3px solid }
    
#gmap h4 
    {font-size: 1.4em;
    margin: 0;}

#gmap span 
    {display: block;
    font-size: 0.8em;}

#gmap ul 
    {list-style: disc;
    padding: 5px 20px;
    font-size: 1.2em;}

.contact-list
{list-style-type: none;
padding: 5px 50px;
line-height: 2em;
margin-bottom: 5px;
background-color: aliceblue;}

.sneak-list
{ list-style-type: none;}

.clip
{text-align: center;
 margin: 40px 0 0 0;}




@media (min-width: 768px)
{
    
.wrapper
{width: 96%;
max-width: 960px;
margin: 0;
grid-template-columns: repeat(12, [column] 1fr);
gap: 20px;
background-image: url("images/wrapper-bg.png");
background-size: cover;
background-color: transparent;}
    
.header-main, .nav-main, .footer-main, .contact-header 
{grid-column: 1 / -1;}
    
.header-main 
{position: relative;
 margin: 20px 40px 0 20px;
 height: 200px;
 padding: 15px 0 0 0;
 background:url("images/header-mobile.png") no-repeat right, url("images/nwtc-50.png")no-repeat}
    
.header-main-h1 
{padding-top: 5px;}
    
.header-main
{background:url("images/header.png") no-repeat right, url("images/nwtc-150.png")no-repeat, url("images/title.png") no-repeat  top 25% left 30%;}
    
.header-main h1
{visibility: hidden;}
    
.nav-main-icon, .nav-main h1
{display:none;}
    
.nav-main-menu
 {margin: 0 10px 0 10px;
  background: transparent;
  display: flex;
  justify-content: space-around;
  transform: translate(0, 0);}

.nav-main
{grid-template-columns: repeat(12, [column] 1fr);
 position: relative;
 left: 20%;
 background: transparent;
 box-shadow: none;
 height: auto;}
    
nav ul 
{list-style: none;
 padding: 0;
 margin: 0 10px;
 display: flex;
 justify-content: space-around;}

nav ul li:first-child 
{margin-right: auto;}
    

nav ul li a 
{display: flex;
justify-content: space-around;
text-decoration: none;
font-weight: bold;
line-height: 3;
padding: 0 1.5em;
margin-right: 5px;
border: 3px solid darkorange;
border-radius: 10px;
background-color:aliceblue;
box-shadow: 0 2px 4px black;
transition: all .5s ease-in;}

nav ul li a:hover 
{border: 3px solid darkblue;
font-size: 1.5em;
line-height: 2em;
background-color:rgba(255,218,185, 1.0)}
    
.main-main
{grid-column: 3/ span 8; }
    
.cards
{grid-template-columns: repeat(8, [card] 1fr);}
    
.card
{grid-column: span 4;}
    
.aside-main
{grid-column: 1/-1;
font-size: 1.2em;
font-weight: bold;
background: url("images/aside-arrow1.png") no-repeat 60%, hsla(0,0%,100%,0.5); }
    
aside > ul
{line-height: 1.5em;}
    
.program-main
{grid-column: 1/ span 12;}
    
.program-cards
{grid-template-columns: repeat(12, [card] 1fr);}
        
.program-card-figure-image 
{width: 100%;
object-fit: cover;
overflow: hidden; }

.program-card-link  
{text-decoration: none;
color: inherit;
display: flex;
flex-direction: column;
flex: 0 0 100%;}

.program-aside
{grid-column: 1/ span 12;
 font-weight: bold;
 font-size: 1.3em}

.gallery-row
{display: grid;
 grid-template-columns: 3fr 1fr;
 gap: 20px;
 padding: 0 0 0 30px;
 font-size: 1.25em;
}

.gallery-aside
{grid-column: column / span 12;
 font-size: 2em;
 padding: 2% 0 2% 7%;
 background: url("images/check.png") no-repeat,  hsla(0,0%,100%,0.5); }
    
.header-archive
{grid-column: 1/ -1;
background-image: url("images/tardis.jpg") ;
background-repeat: no-repeat;
background-position: center;}
    
.header-archive-h1
{color: white;
font-size: 2.5em;
padding-top: 50px;}

.div-archive
{margin: 0 10% 0 10%;
padding: 20px;
background-color: hsla(0,0%,100%,0.5);}

.sneak
{display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-around; }
    
.sneak-list
{ list-style-type: none;}
    
.archive-pgr
{font-size: 1.3em;
font-family: Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, "sans-serif";
margin-bottom: 50px;}

.contact-main
{display: grid;
grid-column: 1/ span 12;
padding-left: 10px;}
    
.contact-aside
{display: grid;
grid-template-columns: repeat(12, [column] 1fr);
grid-column: span 12;
gap: 25px;}
    
.contact-header
{background:url("images/nwtc-150.png")no-repeat right, url("images/title.png") no-repeat  top 25% left 45%;}
   
.grid-12 {grid-template-columns: repeat(12, [column] 1fr);}
.grid-12-span-2-6 {grid-column: column 2 / 6;}
.grid-12-span-7-12 {grid-column: column 7 / 12;}
.grid-12-span-1-9 {grid-column: column 1 / 9;}
.grid-12-span-2-9 {grid-column: column 2 / 9;}
.grid-12-span-10-13 {grid-column: column 9/ 13;}
.grid-8 
{display: grid;
 gap: 20px;
 grid-template-columns: repeat(8, [column] 1fr); }
.grid-8-span-1-8 {grid-column: 1 / 9;}
.grid-8-span-1-4 {grid-column: 1 / 5;}
.grid-8-span-1-6 {grid-column: 1 / 7;}
.grid-8-span-4-8 {grid-column: 5 / 9;}
.grid-8-span-6-8 {grid-column: 7 / 9;}
.grid-8-span-2-7 {grid-column: 2 / 8;}
.grid-8-span-8   {grid-column: span 8;}
.grid-12-span-1-5
{grid-column: 1/ 5; 
 background: hsla(0,0%,100%,0.5);
 border: 3px solid darkblue;}
.grid-12-span-5-9
{grid-column: 5/ 9;
 background: hsla(0,0%,100%,0.5);
 border: 3px solid darkblue;}
.grid-12-span-9-13
 {grid-column: 9/ 13;
 background: hsla(0,0%,100%,0.5);
 border: 3px solid darkblue;}
    
}


@media (min-width:1025px)
{
     .wrapper
     {width: 96%;
     max-width: 1200px;
     grid-template-columns: repeat(12, [column] 1fr);
     gap: 20px;}
    
}
   
