@font-face{
  font-family:Lucida;
  src:url('font/LSANS.TTF');
  font-weight:normal;
}
@font-face{
  font-family:Lucida;
  src:url('font/LSANS.TTF');
  font-weight:bold;
}
@font-face{
  font-family:Treb;
  src:url('font/Trebuchet.ttf');
}

html, body{
  margin:0;
  padding:0;
  background:rgba(0,0,0,.01);
  font-family:Lucida, sans-serif;
}

ul{
  list-style-type:none;
}

#main{
  max-width:1366px;
  margin:0 auto;
}

.headerPhoto{
  position:relative;
  width:100%;
  height:528px;
  background:url('img/courtroom-shot-alt-cropped.jpg');
  background-position:center bottom;
  background-repeat:no-repeat;
  background-size:cover;
  margin:0 auto;
}

.headerPhoto .photoText{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  width:100%;
  box-sizing:border-box;
  padding:0 15px;
  background:rgba(226,226,226,0.85);
  text-align:center;
}

.headerPhoto h2{
  font-family:Georgia, serif;
  font-size:28px;
  font-weight:lighter;
  color:#111;
  margin-bottom:10px !important;
}
@media (min-width: 600px) {
  .headerPhoto .photoText{
    padding:15px;
  }
}
@media (min-width: 760px) {
  .headerPhoto h2{
    font-size:28px;
  }
}

.headerPhoto h4{
  font-family:Lucida, sans-serif;
  color:#111;
  font-weight:lighter;
  margin-top:10px !important;
}

.right{
  float:right;
  padding:4px 0 0 40px !important;
  color:#3795D2 !important;
  font-size:22px !important;
  cursor:pointer;
  text-decoration:none;
}

.right a{
  color:#CDC090 !important;
  text-decoration:none !important;
}

.right a:hover{
  color:#43423F;
}

.right span{
  border:solid #3795D2 1px;
  border-radius:10px;
  padding:6px 10px;
}

.right.active{
  color:#CDC090;
}

.right.active span{
  border:solid #CDC090 1px;
  color:#CDC090;
}

.sidebar a{
  font-family:Lucida, sans-serif;
  border-bottom:5px;
  color:#3795D2;
  text-decoration:none;
}

.sidebar a:hover{
  color:#CDC090;
}

.contact-info{
  display:inline;
}

.contact-info p{
  width:33%;
}

.divider{
  height:1px;
  background:rgba(0,0,0,.2);
  width:100%;
  margin:40px 0 0 0;
}

#header{
  border-bottom:1px solid rgba(0,0,0,.2);
  width:100%;
  margin-bottom:40px;
}
.home #header{
  border-bottom:0;
  margin-bottom:0;
}

.footer p{
  font-family:Lucida, sans-serif;
  float:right;
  color:#43423F;
  padding:10px 45px 10px 0;
}

.main{
  width:100%;
}

.about{
  font-size:28px;
  font-family:Lucida, sans-serif;
  color:#3795D2;
  font-weight:100;
}

.about-sec{
   font-family:Lucida, sans-serif;
   font-size:14px;
   font-weight:100;
   line-height:20px;
}

#content p{
   font-family:Lucida, sans-serif;
   font-size:14px;
   font-weight:100;
   line-height:20px;
   color:#43423F;
}

#content a{
  text-decoration:none;
  color:#3795D2;
}

#content h2, h3{
   color:#999;
   font-family:Lucida, sans-serif;
   font-weight:100;
}

#content h3{
  color:#999;
}

.about-sec{
  margin-top:-40px;
}
.about-sec-1{
  width:100%;
  height:400px;
  background:url(img/profile-min.jpg);
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center center;
}
.about-sec-2 h3,
.about-sec-2 p{
  padding:0 20px;
  max-width:500px;
  margin-left:auto;
  margin-right:auto;
}
.about-sec-2 p span{
  color:rgb(55,149,210);
}

@media screen and (min-width: 400px) {
  .about-sec-1{
    background-position:center -75px;
  }
}
@media screen and (min-width: 560px) {
  .about-sec-1{
    background-position:center -150px;
  }
}
@media screen and (min-width: 768px) {
  .about-sec{
    margin-top:0;
  }
  .about-sec-1, .about-sec-2{
    float:left;
    width:33%;
  }
  .about-sec-1{
    height:650px;
    background-position:center -80px;
  }
  .about-sec-2{
    width:67%;
  }
  .about-sec-2 h3,
  .about-sec-2 p{
    max-width:650px;
    padding:0 60px;
    margin-top:0;
  }
  .about-sec-2 h3{
    margin-top:4px;
  }
}


.hp-blocks{
  column-count:1;
  column-gap:0;
}
.hp-block{
  display:flex;
  align-content:center;
  align-items:center;
  margin:0;
  width:100%;
  box-sizing:border-box;
  break-inside:avoid;
  text-align:center;
  padding:50px 0 60px;
}
.hp-block>div{
  width:100%;
}
@media (min-width: 760px) {
  .hp-blocks {
    column-count: 2;
  }
  .hp-block {
    min-height:300px;
    padding:50px 0;
  }
  .hp-block.b1{height:550px;}
  .hp-block.b2{height:350px;}
  .hp-block.b3{height:450px;}
  .hp-block.b4{height:450px;}
}
.hp-block.b1{
  background:rgba(103,198,234,0.08);
}
.hp-block.b2{
  background:#d5dce0;
}
.hp-block.b3{
  background:rgba(55,149,210,0.25);
}
.hp-block.b4{
  background:#55a2d4;
  color:#fff;
}
.hp-block h4{
  color:#3795D2;
  font-family:Lucida, sans-serif;
  font-size:28px;
  font-weight:100;
  margin:0;
}
.hp-block.b4 h4{
  color:#fff;
}
.hp-block h5{
  font-family:Georgia, serif;
  letter-spacing:0.1em;
  text-transform:uppercase;
  padding:5px 0;
  font-weight:100;
  margin:0;
  opacity:40%;
}
.hp-block.b4 h5{
  opacity:60%;
}
.hp-block p:last-child{
  margin-bottom:0;
}
.my-sm{
  margin-top:10px;
  margin-bottom:10px;
}
.fs-lg{
  font-size:150%;
}
.fs-xl{
  font-size:200%;
}
.text-blue{
  color:#3795D2;
}
.opacity-20{
  opacity:20%;
}
.opacity-40{
  opacity:40%;
}


.imm-info{
  clear:both;
  background-color:#54595c;
  color:white;
  padding:45px 0;
  box-sizing:border-box;
}
.imm-info:after,
.imm-info .row:after{
  display:block;
  content:'';
  clear:both;
}
.imm-info .col a{
  color:white;
  text-decoration:none;
}
.imm-info .col1 h4{
  font-size:1.4rem;
  margin-top:11px;
}
.imm-info .col2 p,.imm-info .col3 p{
  margin-left:25px;
}
.three-columns .col{
  width:100%;
  max-width:320px;
  margin:0 auto;
}

@media all and (min-width:760px){
  .two-columns .col,
  .three-columns .col{
    width:50%;
    max-width:none;
    float:left;
    text-align:left;
    box-sizing:border-box;
    padding:20px 10px 20px 20px;
  }
  .three-columns .col{
    width:33.3%;
  }

  .imm-info{
    padding:30px 0;
  }
  .imm-info.three-columns .col1{
    width:42%;
    text-align:center;
  }
  .imm-info.three-columns .col2{
    width:21%;
  }
  .imm-info.three-columns .col3{
    width:37%;
  }
  .imm-info .col2 p, .imm-info .col3 p{
    margin-left:0;
  }
}

.readMore{
  text-align:center;
  list-style-image:url(img/gavel.svg) !important;
  border-bottom:1px solid #fff;
  cursor:pointer;
  white-space:nowrap;
  display:inline;
}

.con-line{
  clear:both;
  position:relative;
  box-sizing:border-box;
  padding:20px;
  font-family:Treb;
  font-size:13px;
  opacity:0.5;
  font-weight:100;
  min-height:170px;
  margin-top:20px;
  border-top:1px solid rgba(0,0,0,.2);
}
.con-line strong,
.con-line b{
  font-weight:600;
}
.con{
  margin-top:25px;
}

.policy-link{
  display:block;
}
.policy-link a{
  text-decoration:none;
  color:#000;
}
.policy-link a:hover{
  text-decoration:underline;
  color:#000;
}

.main{
  width:100vw;
}

@media (min-width:600px){
  .con{
  	position:absolute;
  	right:20px;
  	bottom:20px;
  }
  .policy-link{
    display:inline;
  }
  .policy-link:before{
    display:inline;
    content:' | ';
  }
}
@media (min-width:768px){
  .con{
    position:absolute;
  }
}
@media (min-width:1407px){
  .con-line{
    padding-left:0;
    padding-right:0;
  }
  .con{
    right:0px;
  }
}

/* contact */
.map-section:after{
  display:block;
  content:'';
  clear:both;
}

/* contact text */
.map-section-1 p,
.map-section-6 p{
  padding:0 20px 40px;
  line-height:25px;
  font-family:Lucida, sans-serif;
  font-size:15px;
  color:#43423F;
}
.map-section-6{
  height:auto;
  padding-top:40px;
}

/* contact maps */
.map-section-3 iframe,
.map-section-4 iframe{
  pointer-events:none;
}

/* contact photos */
.map-section-2{
  float:left;
  width:50%;
  background:url(img/building-shot-alt-sm.jpg);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
  height:430px;
}
.map-section-5{
  float:left;
  width:50%;
  background:url(img/PDX-sign-min.jpg);
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center 10%;
  height:430px;
}
.map-section-3,
.map-section-4{
  clear:both;
  height:400px;
}

@media (min-width:460px){
  .map-section-1 p,
  .map-section-6 p{
    padding:0 60px 40px;
  }
}
@media (min-width:768px){
  .map-section-1,.map-section-2,.map-section-3,.map-section-4,.map-section-5,.map-section-6{
    position:relative;
    float:left;
    width:50%;
    height:300px;
  }
  .map-section-1 p{
    position:absolute;
    top:43%;
    transform:translateY(-50%);
  }
  .map-section-3,
  .map-section-4{
    clear:none;
  }
  .map-section-6{
    height:auto;
    padding-top:40px;
    padding-bottom:40px;
  }
}

#main, #logo, #menubar, #site_content, #footer{
  margin-left:auto;
  margin-right:auto;
}

#logo{
  padding:40px 20px 30px 20px;
  position:relative;
}
@media (min-width:1407px){
  #logo{
    padding:40px 0 30px;
  }
}

#logo h1{
  margin:0;
}

#logo h1.logo, #logo h1 a.logo{
  display:block;
  width:400px;
  height:47px;
  overflow:hidden;
  text-indent:-9999px;
  background-image:url(../img/cc-logo.min.png);
  background-position:0 0;
  background-repeat:no-repeat;
  background-size:contain;
  max-width:90%;
}

#logo p{
  font-family:Lucida, sans-serif, arial, sans-serif;
  border-bottom:0;
  text-transform:none;
  margin:0;
  font-size:24px;
}

#logo_text p{
  padding:4px 0 0 0;
  color:#43423F;
  display:inline !important;
}

#logo .tagline{
  display:none !important;
}

#logo #contact_details{
  padding:0 20px;
}
#logo #contact_details p{
  padding:0;
  line-height:1.6;
  font-size:95%;
  color:#43423F;
  text-align:center;
}

#main_menu:after{
  display:block;
  content:'';
  clear:both;
}

#main_menu a{
  text-decoration:none;
}

@media (min-width: 800px){
	#logo #contact_details{
		position:absolute;
		top:30px;
		right:0;
	}
	#logo #contact_details p{
		text-align:right;
	}
  #main_menu{
    margin-top:10px;
  }
	.float-right{
		float:right;
	}
	.float-right .right{
		float:left;
	}
}
@media (min-width: 1024px){
  #main_menu{
    margin-top:0;
  }
}
@media (min-width: 1407px){
  #logo #contact_details{
    padding:0;
  }
}
@media (max-width: 799px){
	#logo{
		padding:25px 0;
	}
	#logo_text{
		margin:10px 0 20px;
	}
	#logo .logo{
		margin:auto;
	}
	#logo #contact_details p{
		margin-bottom:20px;
		line-height:24px;
		margin:0;
	}
	#main_menu{
		margin-top:20px;
	}
	#main_menu .right{
		float:left;
		padding:0 12px !important;
		font-size:18px !important;
		box-sizing:border-box;
		width:33%;
		text-align:center;
	}
}
@media (min-width:600px) and (max-width:799px){
	#logo #contact_details p{
		width:50%;
		padding:0 10px;
		box-sizing:border-box;
		float:left;
		text-align:left;
	}
	#logo #contact_details p:first-child{
		text-align:right;
	}
	#logo #contact_details:after{
		display:block;
		content:'';
		clear:both;
	}
}
@media (max-width: 599px){
	#main_menu .right{
		font-size:14px !important;
	}
}

#menubar{
  width:898px;
  height:71px;
  padding:0px 0 0 0px;
  border:1px solid #6A6A6A;
  border-bottom:0;
  background:#555 url(menu.png) repeat-x;
} 

ul#menu{
  float:left;
  margin:0; 
  padding:0;
}

ul#menu li{
  float:left;
  margin:0px 0 0 0;
  padding:0px 0 0 0px;
  list-style:none;
}

ul#menu li a{
  letter-spacing:0.1em;
  font:normal 100% 'trebuchet ms', arial;
  display:block; 
  float:left; 
  height:38px;
  padding:28px 22px 4px 22px;
  text-align:center;
  color:#CDC090;
  text-transform:uppercase;
  text-decoration:none;
  border-right:1px solid #6A6A6A;
  background:transparent;
} 

ul#menu li a:hover, ul#menu li.selected a, ul#menu li.selected a:hover{
  color:#FFF;
}

li img{
  width:10px;
}

#site_content{
  width:845px;
  overflow:hidden;
  margin:0 auto 0 auto;
  padding:25px 20px 20px 33px;
  background:#fff;
} 

#site_content_immigration{
  margin:20px auto 0 auto;
  padding:25px 20px 20px 33px;
  background:#fff;
}
#content,.sidebar{
  width:100%;
}
#site_content_policy{
  padding:5px 20px 20px 33px;
}
@media screen and (min-width: 768px) {
  #site_content_immigration{
    display: flex;
    margin:20px auto 0 auto;
    padding:25px 20px 20px 33px;
  }
  #content{
    text-align:left;
    width:65%;
    box-sizing:border-box;
    padding:0 6% 0 0;
  }
  .sidebar{
    width:35%;
    padding:0 0 20px 25px;
  }
  #site_content_policy #content{
    width:100%;
  }
}

.sidebar ul{
  padding:0 0 0 8px;
  margin:0 0 30px 0;
}

.sidebar li{
	padding:5px 0;
}

.sidebar li a.selected{
  color:#444;
}

#content ul{
  margin:2px 0 22px 0px;
}

#content ul li{
	margin:0 0 6px 0;
	padding:0 0 4px 25px;
	line-height:1.5em;
}

.updates h1{
  font-size:28px;
  font-family:Lucida, sans-serif;
  color:#3795D2;
  font-weight:100;
}

#map{
	text-align:left;
	width:200px;
}

#map p{
  padding:10px 0;
}
#footer{
  width:898px;
  font:normal 75% "lucida sans unicode";
  height:33px;
  padding:24px 0 5px 0;
  text-align:center; 
  background:#555 url(menu.png) repeat-x;
  color:#CDC090;
  text-transform:uppercase;
  letter-spacing:0.1em;
}

#footer a{
  color:#FFF;
  text-decoration:none;
}

#footer a:hover{
  color:#CDC090;
  text-decoration:none;
}

.search{
  color:#5D5D5D; 
  border:1px solid #BBB; 
  width:134px; 
  padding:4px; 
  font:100% arial, sans-serif;
}

.form_settings{
  margin:15px 0 0 0;
}

.form_settings p{
  padding:0 0 4px 0;
}

.form_settings span{
  float:left; 
  width:200px; 
  text-align:left;
}
  
.form_settings input, .form_settings textarea{
  padding:2px; 
  width:299px; 
  font:100% arial; 
  border:1px solid #E5E5DB; 
  background:#FFF; 
  color:#47433F;
}
  
.form_settings .submit{
  font:100% arial; 
  border:1px solid; 
  width:99px; 
  margin:0 0 0 206px; 
  height:26px;
  padding:2px 0 3px 0;
  cursor:pointer; 
  background:#3B3B3B; 
  color:#FFF;
}

.form_settings textarea, .form_settings select{
  font:100% arial; 
  width:299px;
}

.form_settings select{
  width:304px;
}

.form_settings .checkbox{
  margin:4px 0; 
  padding:0; 
  width:14px;
  border:0;
  background:none;
}

.separator{
  width:100%;
  height:0;
  border-top:1px solid #D9D5CF;
  border-bottom:1px solid #FFF;
  margin:0 0 20px 0;
}
  
table{
  margin:10px 0 30px 0;
}

table tr th, table tr td{
  background:#3B3B3B;
  color:#FFF;
  padding:7px 4px;
  text-align:left;
}
  
table tr td{
  background:#CCCCCC;
  color:#47433F;
  border-top:1px solid #FFF;
}

.highlighted{
  border:5px solid #ffbb66;
  padding:5px 20px;
}

.clear{
	display:block;
	clear:both;
}