*,
*::before,
*::after {
    /* sets size constraints on elements to stay within the specified box size*/
    box-sizing: border-box;
}
html, body{
    height: 100%;
}
.wrapper{
    min-height: 100%;
}
body{
    background-color: hsl(0,0%,96%);
    font-family: "Helvetica Neue", sans-serif;
    color:hsl(0,0%,20%);
}
h1{
    font-size: 2rem;
}
p{
    font-size: 1rem;
}
main, nav{
    margin: 0 auto;
    width: 80%;
    min-width: 600px;
}

/*navigation area*/
.search-form{
    display: flex;
    margin-left: auto;
    width: 325px;
}
nav.content-area {
    overflow: auto; /* or overflow: hidden; */
}
nav img{
    float:left;
    width: 250px;
}
nav ul {
    list-style: none;
    display: flex;
    justify-content: right;
}
nav ul li{
    padding: 10px;

}
nav ul li a{
    text-decoration: none;
    text-transform: uppercase;
    color: hsl(0,0%,0%);
    cursor: pointer;
}
nav ul li a:hover{
    border-bottom: hsl(0,0%,20%) solid 1px;
    margin-bottom: -1px;
}
nav ul li a:focus{
    font-size: 110%;
}

/*banner area*/
.hero-container img{
    max-width: 100%;
    min-width: 1000px;
    height: auto;
}

/* speaker container home page */
.speaker-container{
    display: flex;
    justify-content: flex-start;
}

/*Speaker Details for speakers page*/
.speakers-container-item {
    display: inline-block;
    vertical-align: top;
    width: 30%;
    padding: 0 10px;
}
.speakers-container-item img{
    display: inline-block;
    max-width: 100%;
    max-height: 100%;
    overflow: hidden;
    object-fit: cover;
}
figure{
    width: min-content;
    margin-inline-start: 0;
}
figure img{
    width: 300px;
    height: 300px;
}
#bio{
    width: 100%;
    min-width: 450px;
    max-height: 500px;
  /*  border: solid hotpink; */
}
#details{
    width: 100%;
    min-width: 800px;
    margin-right: 0;
    margin-left: 0;
}
.no-details{
    font-weight: 900;
}
.no-details:hover{
    color: darkred;
    text-decoration: line-through;
}
#links{
    background-color: 	hsl(153, 69%, 13%);
}
.
/*==================================================
============ Event Styles ==========================
==================================================*/
#event-container ul{
    list-style-type: none;
    width: 100%;
    padding-inline-start: 0;
}
#event-container ul li{
    display: flex;
    border-bottom: solid hsl(0,0%,50%) 1px;
    padding: 20px 10px 10px 10px;
   /* padding:10px; */
}
#event-container ul li:hover{
    background-color: #e5f2f8;
}
.speaker-thumb{
    content: '';
    display: inline;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: hsl(0,0%,20%) 2px solid;
    margin-right: 20px;
}

/* Form Style*/
legend a{
    text-decoration: none;
    color: inherit;
    margin-right: 20px;
    font-size: 1.2rem;

}
legend a:hover{
    border-bottom: hsl(0,0%,20%) solid 2px;
    margin-bottom: -2px;
    padding-right: -20px;
    font-size: 1.3rem;
}
form{
    margin: 20px 0;
}
form fieldset {
    border: 1px solid hsl(0,0%,87%);
    padding: 20px;
    background-color: hsl(0,0%,97%);
    border-radius: 5px;
    min-width: 650px;
}

/* Stack Inputs */
form label {
    display: block;
    margin-top: 15px;
    font-weight: bold;
    color: hsl(0,0%, 33%);
}

/* Style text inputs and text areas uniformly */
form input[type="text"],
form textarea {
    width: 100%;
    max-width: 550px;
    padding: 10px;
    margin-top: 5px;
    border: 1px solid hsl(0,0%,80%);
    border-radius: 4px;
    box-sizing: border-box;
}
form textarea {
    resize: vertical;
    min-height: 100px;
}
form input[type="submit"] {
    display: inline-block;
    background-color: hsl(108,85%,30%);
    color: hsl(0,0%,100%);
    border: none;
    padding: 10px 20px;
    margin-top: 20px;
    border-radius: 4px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
form input[type="submit"]:hover {
    background-color: hsl(108,85%,20%);
}

/* form lists */


form fieldset > h2 + ul > li {
    background-color: hsl(0, 0%, 98%);
    border: 1px solid hsl(0, 0%, 80%);
    border-radius: 5px;
    padding: 10px 15px;
    margin-bottom: 10px;
    width: max-content;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    transition: background-color 0.2s ease;
}

form fieldset > h2 + ul > li:hover {
    background-color: hsl(0, 0%, 93%);
}

.links{
    color: hsl(211, 100%, 35%);
    text-decoration: none;
    font-weight: bold;
}

.links:hover {
    text-decoration: underline;
}
/* Limit page length and add scrolling */
form fieldset > h2 + ul {
    max-height: 300px;
    overflow-y: auto;
    padding-left: 0;
    margin-bottom: 30px;
    list-style: none;
}

/* Error Handling */

.error-message ul li {
    list-style: none;
    color: hsl(348, 85%, 30%)
}

/*footer area*/
footer{
    color: hsl(0,0%,96%);
    background-color: hsl(348, 85%, 30%);
    height: 150px;
}
#copy {
    padding: 10px 0;
    background-color: hsl(348, 12%, 25%);
    color: hsl(0, 0%, 96%);
}
@media screen and (min-width: 1200px) {
    figure img {
        object-fit: contain;
        width: 500px;
        height: 500px;
    }

}

