@charset "UTF-8";
/*
Theme Name: Duke Center for Firearms Law
Theme URI: https://firearmslaw.duke.edu/
Description: 
Version: 1.0
Author: Addicott Web
Author URI: https://www.wordpress-web-designer-raleigh.com/
*/

body { font-family:Lora; background-color:#211e1f; }

/* Text styles */
p { color:#000; margin:20px 0 0 0; font-size:18px; line-height:28px; font-weight:300; }
strong { font-weight:700; }
em { font-style:italic; }
small { display:block; font-size:16px; line-height:26px; font-weight:700; color:#000; margin: 20px 0 0 0; font-family: "Libre Franklin"; }
small a,
small a:hover { color: #000; }
blockquote { border:none; padding:0; margin:0 0 0 30px; }
blockquote p { font-size:18px; line-height:28px; font-weight:300; }

/* Link styles */
a { color:#073674; text-decoration:underline; }
a:hover { color:#073674; text-decoration:none; }

/* Heading styles */
h1 { margin:0; font-size:48px; line-height:58px; color:#073674; font-family:"Libre Franklin"; font-weight:500; }
h2, h3, h4, h5, h6 { margin:30px 0 0 0; font-family:"Libre Franklin"; font-weight:500; color:#000; }

h2 { font-size:36px; line-height:46px; }
h3 { font-size:30px; line-height:40px; }
h4 { font-size:24px; line-height:34px; }
h5 { }
h6 { }

/* List styles */
ul { list-style:disc; margin:20px 0 0 30px; padding:0; }
ol { list-style:decimal; margin:20px 0 0 30px; padding:0; }
ul li,
ol li { margin-bottom:10px; padding-left:10px; font-size:18px; line-height:28px; font-weight:300; color:#000; }

ul ul { list-style:circle; margin:10px 0 10px 30px; }
ol ol { list-style:lower-alpha; margin:10px 0 10px 30px; }

/* Image styles */
.alignnone { display:block; margin:20px 0 0 0; }
.aligncenter { display:block; margin:20px auto 0 auto; }
.alignright { float:right; margin:5px 0 20px 25px; clear:both; display:inline; }
.alignleft { float:left; margin:5px 25px 20px 0; clear:both; display:inline; }

.wp-caption { }
.wp-caption-text { margin:5px 0 0 0; text-align:center; font:italic 13px/22px Georgia, "Times New Roman", Times, serif; }

/* Table styles */
table { border-collapse:collapse; margin-top:30px; width:100%; }
table td { background-color:#f4f4f4; border:1px solid #ccc; font-size:16px; line-height:26px; font-weight:400; padding:15px; color:#000; vertical-align:top; }
table th { background-color:#001A57; border:1px solid #ccc; font-size:16px; line-height:26px; font-weight:700; padding:15px; color:#fff; vertical-align:top; text-align:left; }

iframe, object, embed { max-width: 100%; }

/* Plugins */
.addthis_toolbox { margin:30px 0 0 0 !important; }

/* Pagenavi */
.wp-pagenavi { margin:40px 0 0 0; }
.wp-pagenavi a,
.wp-pagenavi span { margin:2px; font-size:16px; line-height:26px; background-color:#073674; color:#fff; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; padding:15px 30px; text-decoration:none; font-family: "Libre Franklin"; }
.wp-pagenavi a:hover { background-color:#0680cd; color:#fff; transition: background-color 0.25s ease; }
.wp-pagenavi span.current { background-color:#0680cd; color:#fff; }

/* Global classes */
.right { text-align:right; }
.center { text-align:center; }
.widget { margin:0 0 30px 0; border: 3px solid #073674; padding: 25px; }
.widget h4.widget-title { margin: 0; }
.widget label { display: none; }
.widget select { padding: 10px; width: 100%; margin: 20px 0 0 0; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; }
.widget ul { list-style: none; margin: 10px 0 0 0; }
.widget ul li { border-top: 1px solid #ccc; padding: 10px 10px 0 10px; margin: 10px 0 0 0; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; }

/*-------------------------------------------------------------------------------------------------------------------
--------------------------------------------- CUSTOM LAYOUT ELEMENTS ------------------------------------------------
-------------------------------------------------------------------------------------------------------------------*/

.wrap { width:100%; }
.container { padding-left:40px; padding-right:40px; }
.row { padding-top:40px; padding-bottom:40px; }

.no-padding-top { padding-top:0 !important; }
.no-padding-bottom { padding-bottom:0 !important; }
.no-padding-both { padding-top:0 !important; padding-bottom:0 !important; }

.padding-top { padding-top: 40px !important; }

/* Header */
.header { background-color: #fff; }
.header .row { padding-top: 20px; padding-bottom: 20px; }
.header form { border: 1px solid #ccc; padding: 10px; height: 1%; overflow: hidden; }
.header input { border: none; font-family: "Libre Franklin"; font-size: 18px; line-height: 28px; width: 90%; float: left; }
.header button { border: none; background: none; padding: 3px 0; margin: 0 !important; width: 10%; float: right; }

/* Homepage */
.homepage-top { background: url('images/homepage-graphic.jpg') center center no-repeat; -webkit-background-size:cover; -moz-background-size:cover; -o-background-size:cover; background-size:cover; }
.homepage-top p { margin-top: 0; font-size: 60px; line-height: 70px; font-family: "Pinyon Script"; font-weight: 400; }

.homepage-intro .row { padding-top: 50px; padding-bottom: 50px; }

.homepage-icons { background-color:#f3f2f1; }
.homepage-icons .row { padding-top: 20px !important; padding-bottom: 60px; }
.homepage-icons h3 { color: #262626; }
.homepage-icons p.btn { margin-top: 35px; font-weight: 700; text-transform: uppercase; font-family: "Libre Franklin"; }
.homepage-icons p.btn a { background-color: #69767c; text-decoration: none; padding: 15px 30px; display: inline-block; color: #fff; }
.homepage-icons p.btn a:hover { color: #fff; background-color: #262626; transition: all 0.25s ease; }

.homepage-news { background-color:#f3f2f1; }
.homepage-news .container { border-top: 1px solid #ccc; }
.homepage-news .row { padding-top: 60px; padding-bottom: 60px; }
.homepage-news h2 { margin-top: 0; font-size: 48px; line-height: 58px; color: #262626; font-weight: 500; }
.homepage-news .inner { background-color: #00539b; padding: 60px 40px; }
.homepage-news .inner small { margin-top: 0; font-weight: 900; text-transform: uppercase; color: #5eaff5; }
.homepage-news .inner h4 { color: #fff; font-family: Lora; font-weight: 400; margin-top: 5px; }
.homepage-news .inner p.btn { margin-top: 35px; font-weight: 700; text-transform: uppercase; font-family: "Libre Franklin"; }
.homepage-news .inner p.btn a { background-color: #00539b; text-decoration: none; padding: 15px 30px; display: inline-block; color: #fff; border: 3px solid #fff; }
.homepage-news .inner p.btn a:hover { color: #00539b; background-color: #fff; transition: all 0.25s ease; }
.homepage-news .news-bottom p.btn { margin-top: 35px; font-weight: 700; text-transform: uppercase; font-family: "Libre Franklin"; }
.homepage-news .news-bottom p.btn a { border: 3px solid #262626; background-color: #f3f2f1; color: #262626; text-decoration: none; padding: 15px 30px; display: inline-block; }
.homepage-news .news-bottom p.btn a:hover { background-color: #262626; color: #fff; transition: all 0.25s ease; }

.homepage-events { background-color:#f3f2f1; padding-bottom: 60px; }
.homepage-events .container { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.homepage-events .row { padding-top: 60px; padding-bottom: 60px; }
.homepage-events h2 { margin-top: 0; font-size: 48px; line-height: 58px; color: #262626; font-weight: 500; }
.homepage-events .inner { background-color: #339898; padding: 60px; }
.homepage-events .inner h4 { margin-top: 0; font-weight: 700; }
.homepage-events .inner h4 a { color: #fff; text-decoration: none; }
.homepage-events .inner h4 a:hover { color: #fff; text-decoration: underline; }
.homepage-events .inner p { font-family: "Libre Franklin"; color: #fff; }

.owl-carousel .nav-btn { height: 47px; position: absolute; width: 26px; cursor: pointer; top: 45% !important; }
.owl-carousel .owl-prev.disabled,
.owl-carousel .owl-next.disabled { pointer-events: none; opacity: 0.2; }
.owl-carousel .prev-slide { background: url('images/nav-icon.png') no-repeat scroll 0 0; left: -33px; }
.owl-carousel .next-slide { background: url('images/nav-icon.png') no-repeat scroll -24px 0px; right: -33px; }
.owl-carousel .prev-slide:hover { background-position: 0px -53px; }
.owl-carousel .next-slide:hover { background-position: -24px -53px; }

.homepage-videos { background-color:#f3f2f1; }
.homepage-videos .row { background-color: #fff; }
.homepage-videos .video-left { padding-left: 0; padding-right: 0; }
.homepage-videos .embed-container {  position: relative; padding-bottom: 56.25%; overflow: hidden; max-width: 100%; height: auto; } 
.homepage-videos .embed-container iframe,
.homepage-videos .embed-container object,
.homepage-videos .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    }

.homepage-videos .video-right { padding: 40px; }
.homepage-videos .video-right h2,
.homepage-videos .video-right h3,
.homepage-videos .video-right h4 { margin-top: 0; color: #073674; }
.homepage-videos .video-right p.btn { margin-top: 35px; font-weight: 700; text-transform: uppercase; font-family: "Libre Franklin"; }
.homepage-videos .video-right p.btn a { border: 3px solid #262626; background-color: #fff; color: #262626; text-decoration: none; padding: 15px 30px; display: inline-block; }
.homepage-videos .video-right p.btn a:hover { background-color: #262626; color: #fff; transition: all 0.25s ease; }

.homepage-bottom { padding-top: 60px; padding-bottom: 60px; background-color:#f3f2f1; }
.homepage-bottom .row { background-color: #fff; }
.homepage-bottom .bottom-left { padding-left: 0; padding-right: 0; }
.homepage-bottom .bottom-right { padding: 40px; }
.homepage-bottom .bottom-right h2,
.homepage-bottom .bottom-right h3,
.homepage-bottom .bottom-right h4 { margin-top: 0; color: #073674; }
.homepage-bottom .bottom-right p.btn { margin-top: 35px; font-weight: 700; text-transform: uppercase; font-family: "Libre Franklin"; }
.homepage-bottom .bottom-right p.btn a { border: 3px solid #262626; background-color: #fff; color: #262626; text-decoration: none; padding: 15px 30px; display: inline-block; }
.homepage-bottom .bottom-right p.btn a:hover { background-color: #262626; color: #fff; transition: all 0.25s ease; }

/* Layout areas */
.content { background-color:#f3f2f1; }
.content .container { background-color: #fff; }

.content-subpages { background-color:#232c5b; padding:30px; }
.content-subpages h4 { margin-top:0; color:#fff; font-weight:700; }
.content-subpages ul { list-style:none; margin:15px 0 0 0; }
.content-subpages ul li { margin:15px 0 0 0; padding:0; font-weight:300; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; }
.content-subpages ul.children { margin: 5px 20px 15px 20px; }
.content-subpages ul.children li { margin: 10px 0 0 0; font-size: 14px; line-height: 20px; }
.content-subpages a { color:#fff; text-decoration: none; }
.content-subpages a:hover { color:#fff; text-decoration: underline; }

/* Posts */
.post-outer { border-top: 1px solid #ccc; }
.post-outer h3,
.post-outer h4 { margin-top: 0; color: #073674; }
.post-outer small span { margin: 0 10px; }

.excerpt { padding-bottom: 30px; }
.whole-post { display: none; padding-bottom: 30px; }
.post { position: relative; }
a.read { background-color: #073674; color: #fff; padding: 15px 30px; display: inline-block; text-decoration: none; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; font-weight: 700; text-transform: uppercase; }
a.read:hover { background-color: #0680cd; color: #fff; transition: all 0.25s ease; }

/* Repository */
.repository-title small { margin: 0 0 10px 0; text-transform: uppercase; }

.searchandfilter ul { list-style: none; margin: 40px 0 0 0 !important; }
.searchandfilter ul li { margin: 0 40px 30px 0 !important; padding: 0 !important; display:inline-block; }
.searchandfilter input { padding: 8px 10px; font-family: "Libre Franklin"; font-size: 18px; line-height: 28px; color: #000 !important; border: 1px solid #ccc !important; font-weight: 300; }
.searchandfilter select { padding: 10px; font-family: "Libre Franklin"; font-size: 18px; line-height: 28px; color: #757575; border: 1px solid #ccc !important; font-weight: 300; }
.searchandfilter select:focus,
.searchandfilter select:hover { color: #000 !important; }
.searchandfilter option { font-weight: 300 !important; color: #000 !important; }

.law-info { background-color: #f4f4f4; border: 3px solid #ccc; padding-bottom: 20px; }
.law-info h4 { margin-top: 20px; font-size: 18px; line-height: 28px; font-weight: 700; }
.law-info p { margin-top: 10px; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; }
.law-info ul { margin-top: 0; }
.law-info ul li { margin: 10px 0 0 0; font-family: "Libre Franklin"; font-size: 16px; line-height: 26px; }

/* Repository revisions */
.searchandfilter h4 { font-size: 20px !important; }
li.sf-field-taxonomy-subjects, li.sf-field-submit, li.sf-field-reset { display: inline-block !important; }
li.sf-field-post-meta-law_year { display: inline-block !important; vertical-align: top; }
.sf-field-taxonomy-jurisdictions ul { column-count: 4; margin-top: 10px !important; }
.sf-field-taxonomy-jurisdictions ul li { margin: 0 10px 10px 0 !important; }
.searchandfilter ul li.sf-field-submit { margin-right: 20px !important; }
@media (min-width: 1240px) {
  .sf-field-search input, .sf-field-search label { width: 100% !important; }
  .searchandfilter ul li.sf-field-search { margin-right: 20px !important; }
  .searchandfilter ul li.sf-field-taxonomy-subjects { margin-right: 10px !important; }
  .searchandfilter ul li.sf-field-post-meta-law_year { margin-right: 0px !important; }
}
@media (min-width: 792px) and (max-width: 1239px) {
  .sf-field-search input, .sf-field-search label { width: 670px !important; }
}
@media (max-width: 791px) {
  .sf-field-search input, .sf-field-search label, .sf-field-taxonomy-subjects .sf-input-select { width: 100% !important; }
  .sf-field-taxonomy-jurisdictions ul { column-count: 3; }
}
@media (max-width: 500px) {
  .searchandfilter ul li { margin: 0 0 10px 0 !important; }
  .sf-field-taxonomy-jurisdictions ul { column-count: 2; }
}

/* Breadcrumbs */
.breadcrumb-bar { padding-top: 20px; padding-bottom: 20px; border-bottom: 1px solid #ccc; }
.breadcrumb-bar p { margin-top: 0; font-size: 14px; line-height: 24px; }
.breadcrumb-bar a { margin: 0 5px; color: #000; }
.breadcrumb-bar a:hover { color: #000; }
.breadcrumb-bar strong { margin-left: 5px; }

/* Regular page banner images */
.page-banner { background-repeat: no-repeat; -webkit-background-size:cover; -moz-background-size:cover; -o-background-size:cover; background-size:cover; }
.page-banner .row { padding-top: 240px; padding-bottom: 240px; margin-left: 0; margin-right: 0; }

/* Search results */
.search-results ul { list-style:none; margin:40px 0 0 0; }
.search-results ul li { margin-bottom:40px; padding:0 0 40px 0; border-bottom:1px solid #ccc; }
.search-results ul li a { display: block; margin-bottom: 20px; }
.search-results ul li span { display:block; font-size:14px; line-height:24px; font-family:"Libre Franklin"; margin-top:0; font-weight: 400; }
.search-results ul li span.url { color:#006621; margin-top:0; }

/* Footer */
.footer a,
.footer a:hover { color:#fff; }

.footer-top { padding-top: 60px; }
.footer-top ul { list-style: none; margin: 0; }
.footer-top ul li { margin: 0 10px; padding: 0; display: inline; }

.footer-links ul { list-style:none; margin:0; }
.footer-links ul li { display:inline-block; margin:0 20px 10px 0; padding:0 20px 0 0; border-right: 1px solid #fff; font-size:18px; line-height:28px; font-weight:600; font-family:"Libre Franklin"; }
.footer-links ul li:last-child { margin-right: 0; padding-right: 0; border-right: none; }
.footer-links ul li a { text-decoration: none; }
.footer-links ul li a:hover { text-decoration: underline; }

.footer-bottom { padding-bottom: 50px; }
.footer-bottom p { color:#fff; font-size:16px; line-height:31px; font-family:"Libre Franklin"; }
.footer-bottom span { margin: 0 15px; }

/* Large desktops and laptops */
@media (min-width: 1380px) {
body { padding:0; }
.container-fluid { padding:0; }
.header-form { padding-top: 15px; }
.homepage-videos .embed-container { padding-bottom: 40%; } 
}

/* Landscape tablets and medium desktops */
@media (min-width: 992px) and (max-width: 1379px) {
body { padding:0; }
.container-fluid { padding:0; }
.container { width:100% !important; }
.header-form { padding-top: 15px; }
.homepage-videos .embed-container { padding-bottom: 45%; } 
}

/* Portrait tablets and small desktops */
@media (min-width: 768px) and (max-width: 991px) {
body { padding:0; }
.container-fluid { padding:0; }
.container { width:100% !important; }
.content-subpages { margin-top:40px; }
.header .row { padding-top: 40px; padding-bottom: 40px; }
.header-form { padding-top: 40px; }
.homepage-top p {font-size: 60px; line-height: 70px; }
.owl-carousel .prev-slide { left: -5px; }
.owl-carousel .next-slide{ right: -5px; }
}

/* Landscape phones and portrait tablets */
@media (min-width: 481px) and (max-width: 767px) {
body { padding:0; }
.container-fluid { padding:0; }
.content-subpages { margin-top:40px; }
img.alignright,
img.alignleft
.alignright,
.alignleft { float:none !important; margin:0 !important; display: block !important; }
img.aligncenter {margin:20px 0 0 0 !important; }
.event-page h1 { margin-top: 40px; }
.header .row { padding-top: 40px; padding-bottom: 40px; }
.header-right,
.header-form { padding-top: 40px; }
.homepage-top p {font-size: 30px; line-height: 40px; }
.owl-carousel .prev-slide { left: -5px; }
.owl-carousel .next-slide{ right: -5px; }
}

/* Portrait phones and smaller */
@media (max-width: 480px) {
body { padding:0; }
.container-fluid { padding:0; }
.content-subpages { margin-top:40px; }
img.alignright,
img.alignleft
.alignright,
.alignleft { float:none !important; margin:0 !important; display: block !important; }
img.aligncenter {margin:20px 0 0 0 !important; }
.event-page h1 { margin-top: 40px; }
.header .row { padding-top: 40px; padding-bottom: 40px; }
.header-right,
.header-form { padding-top: 40px; }
.homepage-top p {font-size: 30px; line-height: 40px; }
.owl-carousel .prev-slide { left: -5px; }
.owl-carousel .next-slide{ right: -5px; }
}