/*
   Styles for NICU therapy lab.
*/

/* General styles. */

body { font-family: 'Source Sans', helvetica, arial, sans-serif; margin: 0; background-color: white; }
img, table, tr, td, div, a, form { border: 0; padding: 0; margin: 0; }
a { text-decoration: none; color: black; }


/* Main page container. */

#container { width: 100%; margin: auto; background-color: white; }


/* USC and OS/OT identity. */

#uscchan-identity { width: 100%; }
@media (min-width: 768px) { #uscchan-identity { height: 85px; position: relative; } }


/* USC and OS/OT identity. */

#uscchan-identity { width: 100%; }
@media (min-width: 768px) { #uscchan-identity { height: 135px; position: relative; } }


/* USC identity. */

#usc-identity-mobile { display: block; width: 100%; text-align: right; }
#usc-identity-mobile img { width: 120px; height: 39px; margin: 10px 10px 0 0; }
#usc-identity { display: none; }

@media (min-width: 768px) {
   #usc-identity { display: block; position: absolute; right: 10px; top: 15px; }
   #usc-identity img { width: auto; height: 48px; }
   #usc-identity-mobile { display: none; }
}

@media (min-width: 926px) { #usc-identity { right: 18px; } }


/* NICU identity. */

#nicu-identity { display: block; margin: 5px 10px; }
#nicu-identity img { max-width: 100%; height: auto; }

@media (min-width: 768px) {
   #nicu-identity { display: block; position: absolute; left: 10px; top: 15px; }
   #nicu-identity img { width: auto; height: 100px; }
}


/* Banner images. */

#banner img.mobilebanner { display: block; width: 100%; height: auto; }
#banner img.desktopbanner { display: none; }

@media (min-width: 768px) {
   #banner img.desktopbanner { display: block; width: 100%; height: auto; }
   #banner img.mobilebanner { display: none; }
}


/* Main menu. */

nav, #main-menu { background-color: #eeeeee; }
#main-menu li a.title { font-size: 110%; font-weight: bold; text-transform: uppercase; color: #999999;
                        pointer-events:none; cursor: default;
                        padding-top: 4px !important; padding-bottom: 4px !important; }


/* Navigation back to the contents page. */

#to-contents { display: block; font-family: 'Source Sans', helvetica, arial; font-weight: 300; font-size: 120%;
               margin: 0; padding: 0.5em 0 0.5em 1em; position: sticky; top: 0; background-color: #f0f0f0;
               z-index: 5; box-shadow: 0 2px 5px rgba(0,0,0,0.1); }
#to-contents:hover { background-color: #e0e0e0; }
@media (min-width: 768px) { #to-contents { font-size: 150%; } }


/* Content. */

#content { font-family: 'Source Sans', helvetica, arial; margin: 30px 10px 50px 10px; }
@media (min-width: 768px) { #content { max-width: 768px; margin: 30px auto 50px auto; } }

#content h1 { font-size: 220%; font-weight: 700; margin-top: 0.75em; margin-bottom: 0.75em; line-height: 120%; color: #990000; clear: both; }
#content h2 { font-size: 200%; font-weight: 700; margin-top: 1.5em; margin-bottom: 0.75em; line-height: 120%; color: black; clear: both; }
#content h3 { font-size: 160%; font-weight: 700; margin-top: 1.5em; margin-bottom: 0.75em; line-height: 130%; color: black; clear: both; }
#content h4 { font-size: 130%; font-weight: 700; margin-top: 1.5em; margin-bottom: 0.75em; line-height: 130%; color: black; clear: both; }

#content p, #content li, #content blockquote { font-weight: 300; line-height: 150%; color: #333333; }
#content p, #content li { font-size: 130%; }
#content ul, #content ol { margin: 0 0 0 1em; padding: 0 0 0 1em; }
#content li p, #content li li, #content li li li, #content blockquote { font-size: 100%; }
#content a { text-decoration: none; font-weight: 500; color: #444444; background-color: #eeeeee; padding: 0 4px; border-radius: 3px; }
#content h1 a, #content h2 a, #content h3 a, #content h4 a { font-weight: 600; }
#content a:hover { color: black; background-color: #dddddd; }


/* Styles for mini-bios. */

#content .personsummary { margin-top: 1em; margin-bottom: 0.75em; font-size: 90%; overflow: auto; }
#content .personsummary .personinfo { margin-left: 30%; padding-bottom: 10px; }
#content .personsummary .personinfo p { margin: 0; }
#content .personsummary .personinfo h3 { clear: none; margin: 0 0 0.25em 0; }
@media (min-width: 768px) { #content .personsummary { font-size: 100%; }
                            #content .personsummary .personinfo { padding-bottom: 20px; }}


/* Styles for APA/publication list. */

#content p.apa { padding-left: 0.25in; text-indent: -0.25in; }
@media (min-width: 768px) { #content p.apa { padding-left: 0.5in; text-indent: -0.5in; } }
#content div.abstract { padding: 0.5em 1em; background-color: #f0f0f0; }
#content div.abstract p { padding: 0.5em 0; margin: 0; }
#content .hide-abstract { display: none; }
#content .hidden { display: none; }
#content .hide { display: none; }


/* Styles for bold menus. */

#content a.boldmenu { display: block; padding: 0.5em; color: black; background-color: #f0f0f0;
                      font-size: 140%; font-weight: 300; line-height: 125%; margin: 0 0 1em 0; }
#content a.boldmenu.forward { display: inline-block; clear: right; margin: 1em 0 0 0; }
#content a.boldmenu:hover { background-color: #e0e0e0; }


/* Section break. */

#content div.section-break { text-align: center; clear: both; font-size: 250%; }


/* Styles for coloured blocks showing different types of sensory support. */

#content div.sensory { display: flex; flex-direction: column; }
#content div.sensory div { background-position: 10px 10px; background-size: 40px 40px; background-repeat: no-repeat; }
@media (min-width: 768px) { #content div.sensory { display: flex; flex-direction: row; justify-content: space-between; }
                            #content div.sensory div { flex-basis: 16%; background-position: center 10px; } }

#content div.sensory div { margin-bottom: 0.5em; padding: 0.25em 0.75em 0.25em 60px; border-radius: 3px; }
@media (min-width: 768px) { #content div.sensory div { padding: 0.25em 0.75em; font-size: 80%; } }
#content div.sensory p { margin: 0; padding: 0.25em 0; }
#content div.sensory p.sensorytype { font-weight: 700; }
#content div.sensory ul { margin: 0 0 0 0.6em; padding: 0 0 0 0.6em; }
@media (min-width: 768px) { #content div.sensory p.sensorytype { margin-top: 45px; } }

#content div.sensory .touch { background-color: rgb(239,234,224); background-image: url(/assets/nicu/SENSE/touch.png); }
#content div.sensory .hearing { background-color: rgb(229,235,221); background-image: url(/assets/nicu/SENSE/hearing.png); }
#content div.sensory .smell { background-color: rgb(218,230,229); background-image: url(/assets/nicu/SENSE/smell.png); }
#content div.sensory .seeing { background-color: rgb(212,223,231); background-image: url(/assets/nicu/SENSE/seeing.png); }
#content div.sensory .movement { background-color: rgb(234,212,210); background-image: url(/assets/nicu/SENSE/movement.png); }

#content div.sensory .touch p.sensorytype { color: rgb(148,112,50); }
#content div.sensory .hearing p.sensorytype { color: rgb(127,153,84); }
#content div.sensory .smell p.sensorytype { color: rgb(70,129,126); }
#content div.sensory .seeing p.sensorytype { color: rgb(40,96,134); }
#content div.sensory .movement p.sensorytype { color: rgb(151,38,32); }


/* Styles to tweak the display of images. */

#content .contentimage { border: 1px solid #404040; }
#content .contentimage p.caption { font-size: 140%; }
#content div.flexbox { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; margin: 0; }
#content div.flexbox div { flex-basis: 48%; }
#content div.flexbox.three div { flex-basis: 31%; }
@media (min-width: 768px) { #content div.flexbox { flex-direction: row; } }


/* Styles to tweak the display of related links. */

#content .relatedlinks
   { clear: both; margin: 2em 0 0.5em 0; }


/* Simple form styling. */

input[type="text"], input[type="submit"]
{ font-family: 'Source Sans'; color: black; font-size: 140%; font-weight: 300;
  border: 1px solid #cccccc; padding: 3px; -webkit-appearance: none; }
input[type="text"] { width: 60%; }
input[type="submit"] { background-color: #f0f0f0; }
input[type="submit"]:hover { background-color: #e0e0e0; }


/* PayPal. */

#content .paypal-container { display: block; background-color: #f7f7f7f7; padding: 0 1em; margin-bottom: 1em;
                             border: 1px solid #f0f0f0; border-radius: 10px; }
@media (min-width: 768px) { #content .paypal-container { display: inline-block; width: 40%; margin: 0; } }
#content .paypal-container p { line-height: 125%; }


/* Tweaks for right-to-left formatting. */

html[dir="rtl"] #to-contents { padding: 0.5em 1em 0.5em 0; }

html[dir="rtl"] #content a.dropdown, html[dir="rtl"] #content a.dropdownsub
   { padding: 0.5em 0.5em 0.5em 50px !important; clear: both; }
html[dir="rtl"] #content a.dropdown::after, html[dir="rtl"] #content a.dropdownsub::after
   { left: 15px; right: unset; transform: rotate(-90deg); }
html[dir="rtl"] #content a.dropdown.dropped::after, html[dir="rtl"] #content a.dropdownsub.dropped::after
   { left: 20px; right: unset; transform: rotate(90deg); }
html[dir="rtl"] #content div.indent { margin-left: 0; margin-right: 2em; }

html[dir="rtl"] #content .contentimage.floatright40 { float: left; margin: 0 10px 10px 6px; width: 40%; }
html[dir="rtl"] #content .contentimage.floatright30 { float: left; margin: 0 10px 10px 6px; width: 30%; }
html[dir="rtl"] #content .contentimage.floatright25 { float: left; margin: 0 10px 10px 6px; width: 25%; }
html[dir="rtl"] #content .contentimage.floatleft40 { float: right; margin: 0 6px 10px 10px; width: 40%; }
html[dir="rtl"] #content .contentimage.floatleft30 { float: right; margin: 0 6px 10px 10px; width: 30%; }
html[dir="rtl"] #content .contentimage.floatleft25 { float: right; margin: 0 6px 10px 10px; width: 25%; }

@media (min-width: 768px)
{ html[dir="rtl"] #content .contentimage.floatright { float: left; margin: 0 20px 20px 6px; width: 50%; }
  html[dir="rtl"] #content .contentimage.floatleft { float: right; margin: 0 6px 20px 20px; width: 50%; }
  html[dir="rtl"] #content .contentimage.floatright40,
  html[dir="rtl"] #content .contentimage.floatright30,
  html[dir="rtl"] #content .contentimage.floatright25 { margin: 0 20px 20px 6px; }
  html[dir="rtl"] #content .contentimage.floatleft40,
  html[dir="rtl"] #content .contentimage.floatleft30,
  html[dir="rtl"] #content .contentimage.floatleft25 { margin: 0 6px 20px 20px; } }

html[dir="rtl"] #content ul, html[dir="rtl"] #content ol { margin: 0 1em 0 0; padding: 0 1em 0 0; }
html[dir="rtl"] #content div.sensory ul { margin: 0 0.6em 0 0; padding: 0 0.6em 0 0; }
