@charset "utf-8";
/* CSS Document */

body {
	font-family: "Titillium Web", Arial, sans-serif;
	background-color: #fff;
	margin: 0;
	padding: 0;
	color: #000;
}

@font-face {
    font-family: 'DIN Condensed';
    src: url('/images/pages/internship/DIN_Condensed_Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

.bold {
    font-weight: bold;
}
.italic {
	font-style: italic;
}
.nomarker {
	list-style:none;
	cursor:pointer;
	display:inline;
}
.nomarker::-webkit-details-marker {
	display:none;
}
.hidden {
	display:none;
}

/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;	 /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
	padding-right: 15px;
	padding-left: 15px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}
a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
	border: none;
}

/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
a:link {
	color:#414958;
	text-decoration: underline; /* unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
}
a:visited {
	color: #4E5869;
	text-decoration: underline;
}
a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
	text-decoration: none;
}

/* ~~ this container surrounds all other divs giving them their percentage-based width ~~ */
.container {
	width: 1200px;
	/* max-width: 1260px;/* a max-width may be desirable to keep this layout from getting too wide on a large monitor. This keeps line length more readable. IE6 does not respect this declaration. */
	/* min-width: 900px;/* a min-width may be desirable to keep this layout from getting too narrow. This keeps line length more readable in the side columns. IE6 does not respect this declaration. */
	background-color: #FFF;
	margin: 0 auto; /* the auto value on the sides, coupled with the width, centers the layout. It is not needed if you set the .container's width to 100%. */
	/* border-top:0px;
	border-bottom:0px;
	border-left:1px solid black;
	border-right:1px solid black;
	overflow:hidden; */
}

/* ~~the header is not given a width. It will extend the full width of your layout. It contains an image placeholder that should be replaced with your own linked logo~~ */
.header {
	background-color: #ffffff;
	text-align:center;
	width:1200px;
	margin:5px auto 10px auto;
}

/* ~~ This is the layout information. ~~ 

1) Padding is only placed on the top and/or bottom of the div. The elements within this div have padding on their sides. This saves you from any "box model math". Keep in mind, if you add any side padding or border to the div itself, it will be added to the width you define to create the *total* width. You may also choose to remove the padding on the element in the div and place a second div within it with no width and the padding necessary for your design.

*/
.content {
	padding: 10px 0;
	overflow:hidden;
	width:1000px;
	margin:0px auto 0px auto;
}
.blocktext {
	font-size:14px;
	text-align:left;
	color:#666;
	margin-left:auto;
	margin-right:auto;
	width:90%;
}
.blocktext h3 {
	color:#114065;
	font-size:16px;
	padding-left:0px;
	margin:10px 0px 10px 0px;
}
.blocktext ul li {
	list-style:none;
}
.blocktext ul {
	margin:10px 0px 10px 0px;
}

.text {
	color:#666;
	font-size: 14px;
}


/* ~~ The footer ~~ */
.footer {
	background-color:#959a9e;
	color:#fff;
	font-size:14px;
	width:1000px;
	margin:0px auto 0px auto;
	padding:10px;
}
.footer a {
	color:#fff;
	text-decoration:none;
}
.footer .menuHeading {
	color:#ffffff;
	font-size:16px;
	display:block;
	font-weight:bold;
}
.footer img {
	margin:4px;
}
.footer2 {
	background-color:#21364B;
	color:#C9CDD7;
	text-align:center;
	width:1000px;
	margin:0px auto 0px auto;
	padding:10px;
}
.footer2 a {
	color:#C9CDD7;
	font-size:14px;
	text-decoration:none;
	margin-right:75px;
}
.footer3 {
	color:#0C3C62;
	font-weight:bold;
	padding:10px;
	width:1000px;
	margin:0px auto 0px auto;
}
.clients {
	background-color:#EFEFEF;
	padding:10px;
	width:1000px;
	margin:0px auto 0px auto;
}
.clients h3 {
	color:#114065;
	font-size:16px;
}
.clients img {
	margin:5px;
}

/* ~~ miscellaneous float/clear classes ~~ */
.fltrt {  /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
	float: right;
	margin-left: 8px;
}
.fltlft { /* this class can be used to float an element left in your page. The floated element must precede the element it should be next to on the page. */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* this class can be placed on a <br /> or empty div as the final element following the last floated div (within the #container) if the #footer is removed or taken out of the #container */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}

.bio {
	font-size:14px;
	text-align:center;
	color:#666;
	margin-left:auto;
	margin-right:auto;
	width:90%;
	max-width:1000px;
}
.bio img {
	margin:15px;
}
.bio h3 {
	color:#114065;
	padding-left:0px;
}
.navigation {
	margin-top:20px;
}
.nav_buttons {
	font-size:13px;
}
.nav_buttons li {
	display:inline;
	list-style-type:none;
	margin:0px;
	color:#114065;
	font-weight:bold;
	margin:0px 15px 0px 0px;
}
.nav_buttons a, .nav_buttons a:link, .nav_buttons a:hover, .nav_buttons a:visited {
	color:#114065;
	text-decoration:none;
}
.linkedin {
	float:right;
	margin:0px;
	padding:0px;
	font-size:12px;
	text-align:left;
	width:150px;
	position:absolute;
	top:10px;
	right:0px;
}
.linkedin2 {
	float:right;
	margin:0px 0px 0px 10px;
	padding:0px;
	font-size:12px;
	text-align:left;
	width:150px;
}

/* Form Fields */
.forms p {
	float:left;
	margin:0px 5px 10px 0px;
	font-size:14px;
}
.forms input {
	width:130px;
	margin:5px 0px 0px 0px;
}
.forms textarea {
	width:600px;
	height:100px;
	margin:5px 0px 0px 0px;
}

/* Page: Contact */
.contact_office {
	float:left;
	width:300px;
	font-size:14px;
}

/* Page: Calenar */
.calendar {
	text-align:center;
	width:900px;
	margin-left:auto;
	margin-right:auto;
	margin-top:10px;
	margin-bottom:10px;
}

/* Page: Leadership */
.leadership img {
	float:left;
	margin:5px 10px 5px 0px;
}
.leadership p {
	clear:both;
}
.leadership .name {
	font-weight:bold;
}

/* Page: Certifications */
ul.bullets li {
	list-style-type:disc;
	margin-left:30px;
}

/* Page: Sponsors */
.sponsors {
	margin-top:40px;
}

.sponsors img {
	margin:10px;
}

/* Page: CyberViews
.viewsheader {
	width:1000px;
	height:241px;
	background:url('/images/pages/cyberviews/dcbackdrop.jpg');
	background-repeat:no-repeat;
	padding:87px 0px 0px 0px;
	text-align:center;
}
.viewsheaderlogo {
	width:650px;
	height:153px;
	background-color:#303F55;
	margin:auto;
	text-align:center;
	display:block;
}
Forum-Regular.ttf
Raleway-SemiBold.ttf

/css/fonts/
*/
@font-face {
	font-family: forum;
	src: url('/css/fonts/Forum-Regular.ttf');
}
@font-face {
	font-family: ralewaybold;
	src: url('/css/fonts/Raleway-SemiBold.ttf');
	font-weight:bold;
}
.viewsheader {
	width:1000px;
	height:353px;
	padding:0px;
}
.viewsheading {
	font-family: ralewaybold;
	letter-spacing: 3px;
	color:#000000;
}
.viewstext {
	font-family:forum;
	color:#000000;
}
.viewsgoldbar {
	background-color:#e7bd70;
	text-align:center;
	padding:5px 0px 5px 0px;
}

.viewsbar {
	background-color:#303F55;
	min-height:50px;
	margin-top:100px;
	width:100%;
}
.viewsbutton {
	border:2px solid black;
	margin:5px;
	padding:5px;
	background-color:#ffffff;
	color:#000000;
	font-weight:bold;
}
.viewsbutton a, .viewsbutton a:visited {
	color:#000000;
	text-decoration:none;
}
.viewsbutton:hover, .viewsbutton:hover a {
	background-color:#303f55;
	color:#ffffff;
}
.reqinput input:focus:invalid {
    outline: none;
    border-color: red;
    box-shadow: 0 0 10px red;
}
.reqinput input:focus:valid {
    outline: none;
    border-color: #00FF00;
    box-shadow: 0 0 10px #00FF00;
}

/* Section with background image */
.image-background-section1 {
    position: relative; /* Needed for absolute positioning of overlays */
    height: 673px; /* Set height of the section */
    background-image: url('/images/pages/internship/ksjdbfa.png'); /* Background image */
    background-size: cover; /* Cover the entire section */
    background-position: center; /* Center the image */
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Align text overlays to the top */
}

/* Base style for both overlays */
.overlay {
    position: relative;
    width: 100%; /* Full width of the section */
    box-sizing: border-box;
    color: white; /* White text */
}

/* First overlay with two columns */
.two-column-overlay {
    display: flex;
    justify-content: space-between; /* Create two columns, space between them */
    background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
}

/* Second overlay with centered justified text */
.centered-overlay {
    text-align: center; /* Center the text horizontally */
    padding: 10px;
    /*margin-top: 20px; /* Adds spacing between the two overlays */
}

.centered-overlay p {
    /*text-align: justify; /* Justify the text inside the paragraph */
    width: 100%; /* Limit the text width for better readability */
    margin: 10px 0px 10px 0px; /* Center the text block */
    color: white !important;
    font-size: 24px;
}

div.joinus {
    margin-top: 20px;
    margin-bottom: 20px;
}

div.joinus h3 {
    font-size: 72px;
    padding: 0px;
    margin: 0px;
}

div.joinus img {
    width: 100px;
    height: auto;
    margin-left: 5px;
}

.dincondensed {
    font-family: 'DIN Condensed', 'Orbitron', sans-serif;
}

/* Style for the section with background image */
.image-background-section2 {
    position: relative; /* Needed for positioning the overlay */
    height: 763px; /* Set the height of the section */
    background-image: url('/images/pages/internship/airman-looking-at-screen-2.png'); /* Background image URL */
    background-size: cover; /* Make sure the image covers the entire section */
    background-position: center; /* Center the background image */
    display: flex; /* Use flexbox to align overlay */
    justify-content: flex-end; /* Align overlay to the right */
    margin-bottom: 50px !important;
}

/* Style for the semi-transparent overlay */
.text-overlayr {
    background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent black background */
    color: white; /* White text */
    width: 40%; /* Set width to 1/3 of the section */
    padding: 20px; /* Padding around the text */
    box-sizing: border-box; /* Ensure padding doesn't affect width */
    display: flex;
    flex-direction: column;
    justify-content: center; /* Center the text vertically */
    height: 100%; /* Make the overlay full height of the section */
	text-align: justify;
}

/* Optional: Add some styling for the text */
.text-overlayr h3 {
    margin-bottom: 10px;
	color: white;
	text-align: center;
}

.text-overlayr p {
    font-size: 14px;
    color: white !important;
}

/* Oval-shaped button with black background, white outline, and white text */
.oval-button {
    background-color: white; /* Black background */
    color: black; /* White text */
    border: 2px solid black; /* White outline */
    border-radius: 50px; /* Makes the button oval-shaped */
    padding: 10px 30px; /* Padding for the button to make it bigger */
    font-size: 16px; /* Adjusts text size */
    cursor: pointer; /* Changes the cursor to pointer on hover */
    text-align: center; /* Centers the text inside the button */
    outline: none; /* Removes default outline */
    transition: all 0.3s ease; /* Adds smooth transition effect on hover */
}

/* Button hover effect */
.oval-button:hover {
    background-color: black; /* Change background to white on hover */
    color: white; /* Change text color to black on hover */
}

div.disclaimer {
    margin-top: 50px;
}

div.disclaimer p {
    color: #727272;
    font-size: smaller;
}
.intern-content {
	padding: 0px 10px 0px 10px;
}
.intern-read-more {
	text-decoration:underline;
	cursor:pointer;
}
.intern-read-more:hover {
	text-decoration:none;
}
.internapply-formwrapper {
	display: none;
}
.internapply-logoheader {
	background-color: #151E25;
	color: #ffffff;
}
.internapply-logo {
    display: flex;
    justify-content: center; /* Center horizontally */
	padding: 10px;
}
.internapply-logotext {
    display: flex;
    justify-content: center; /* Center horizontally */
	font-size:18px;
	padding: 5px;
	margin: 0px;
}
.internapply-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 2px solid #151E25; /* Dark blue color */
    padding: 0px;
	margin-top: 20px;
}
.internapply-header-title {
    font-size: 16px;
    color: #ffffff;
    background-color: #151E25;
    padding: 0px 5px 0px 5px;
	margin: 0px 0px 10px 0px;
	width: 150px;
}
.internapply-header-required {
    font-size: 16px;
    font-weight: normal;
	padding: 0px 10px 0px 0px;
	margin: 0px;
}
.internapply-font-red {
	color: #e60000;
}
.internapply-font-green {
	color: #008000;
}
.internapply-font-bold {
	font-weight: bold;
}
.internapply-font-small {
	font-size: 14px;
}
.internapply-heading {
	font-size:26px;
}
.internapply-error {
	background-color: #ff7777;
}
.internapply-form-input {
	border:1px solid black;
	border-top:0px;
	margin:0px 0px 10px 0px;
	width:100%;
}

/* General styling for the form row */
.internapply-form-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 10px; /* Space below the header */
    gap: 20px; /* Space between the columns */
}

/* Styling for each form group (label and input) */
.internapply-form-group {
    display: flex;
    flex-direction: column;
    flex: 1; /* Allow equal width */
}

.internapply-form-group label {
    font-size: 14px;
    margin-bottom: 5px; /* Space between label and input */
}

.internapply-formtext {
	margin: 10px 0px 10px 0px;
}

.internapply-text-center {
    display: flex;
    justify-content: center; /* Center horizontally */
    margin-top: 20px; /* Space below the header */
	margin-bottom: 20px;
}
.internapply-file-upload {
    display: inline-block;
    padding: 10px 20px;
    font-size: 16px;
    font-weight: bold;
    color: #000; /* Black text */
    background-color: #fff; /* White background */
    border: 2px solid #000; /* Black border */
    border-radius: 5px; /* Rounded corners */
    cursor: pointer; /* Pointer cursor for interactivity */
    transition: all 0.3s ease; /* Smooth transition effect */	
}
.internapply-file-upload.file-selected {
	background-color: #28a745;
	color: #fff;
}
.internapply-file-upload:hover {
	color: #fff; /* White text */
    background-color: #000; /* Black background */
}
.file-upload-hidden {
	display: none;
}
details.internapply-details summary.internapply-details-header {
    list-style: none; /* Removes the default arrow spacing */
}
details.internapply-details summary.internapply-details-header::-webkit-details-marker {
	display: none;
}
.internapply-details-header {
    cursor: pointer; /* Make the header clickable */
}
#foreignlanguage2otherfield, #internapply-secondLanguageFields, #internapply-secondLanguageQuestion, #foreignlanguage1otherfield, #internapply-firstLanguageFields, #checks_required, #captcha_required, #internapply-schoolFields, #vetfiles, #milservice {
	display: none;
}
