/* =========================
   CSS
   ========================= */
@import url('https://fonts.googleapis.com/css2?family=Caveat&display=swap');

:root{

    --color-title:#1E499B;
    --color-text:#001136;
    --color-link:#1E499B;

    --color-text-primary:#001136;
    --color-text-secondary:#555;

    --bck-page:#4559A0;
    --bck-grid:#F0F1F5;
    --bck-grid-hosting:#E8F2FA;
    --bck-form:#BBBBCC;

    --color-border-input:#000;
    --color-back-input:#DDDDDD;

    --color-btn:#af362d;
    --color-btn-primary:#fff;

    --bck-btn:transparent;
    --bck-btn-hosting:#FF6500;

    --bck-btn-vivid:#d6b266;

    --bradius-btn:8px;

    --orange:#FF7800;

    --font-family-base:'Poppins',sans-serif;
    --font-size-base:16px;
	
	--font-size-strong: 18px;
	
	
}

/* BASE */

html{
    font-size:var(--font-size-base);
}

body{

    margin:0;
    padding:0;

    min-height:100vh;

    font-family:var(--font-family-base);

    color:var(--color-text);

    background:
        linear-gradient(
            to bottom right,
            #374488,
            #CCA95B,
            #B3443A
        );

    background-attachment:fixed;
}

img{
    max-width:100%;
    height:auto;
}

/* LAYOUT */

.wrapper{

    width:100%;
    max-width:1170px;

    margin:0 auto;

    padding:2rem;

    box-sizing:border-box;
}

.container{
    max-width:1170px;
    margin:0 auto;
}

.section-box{

    background:#fff;

    border-radius:12px;

    padding:2rem;

    margin-bottom:2rem;
}

/* HERO */

.hero-header{

    display:flex;

    align-items:center;
    justify-content:space-between;

    gap:1rem;

    flex-wrap:wrap;
}

.hero-logo img{
    display:block;
}

/* TYPO */

h1,
h2,
h3{
    margin-top:0;
}

.big-title{

    font-size:2rem;

    font-weight:700;

    color:var(--color-title);

    text-align:center;
}

.mid-title{

    font-size:1.5rem;

    font-weight:600;

    text-align:center;

	margin-top: 1.1rem;
    margin-bottom:1rem;
}

.subtitle{

    text-align:center;

    color:var(--color-text-secondary);
}

.comment{
	text-align:center;
	font-size:var(--font-size-strong);
	font-style: italic;		
	color:var(--color-text-secondary);
	
	max-width:560px;margin:0 auto 16px;line-height:1.7;
}
/* BUTTONS */

.btn{

    display:inline-block;

    padding:0.25rem 0.5rem;

    border-radius:var(--bradius-btn);

    border:2px solid var(--color-btn);

    background:var(--bck-btn);

    color:var(--color-btn);

    text-decoration:none;

    font-weight:600;

    cursor:pointer;

    transition:0.3s;
}

.btn:hover{

    background:var(--color-btn);

    color:#fff;
}

/* PULSE */

@keyframes pulse{

    0%{
        transform:scale(1);
    }

    50%{
        transform:scale(1.05);
    }

    100%{
        transform:scale(1);
    }
}

.btn-pulse{
    animation:pulse 1.5s infinite;
}

/* GRID */

.blocGrid{

    display:grid;

    gap:1.5rem;
}

.cols1{
	grid-template-columns:100%;
}

.cols2{
    grid-template-columns:repeat(2,1fr);
}

.cols3{
    grid-template-columns:repeat(3,1fr);
}

.elem{

    background:var(--bck-grid);

    border-radius:10px;

    padding:1.5rem;
}

.primary .elem{
    background:var(--bck-grid-hosting);
}

/* CARD */

.card-image{

    border-radius:12px;

    margin-bottom:1rem;
}

.title{

    display:flex;

    align-items:center;

    gap:0.75rem;

    margin-bottom:1rem;

    font-weight:600;
}

/* LIST */

.ulSimple ul{
	display: inline-block;
  list-style-type: disc;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  text-align: left;
    padding-left:1.2rem;
}

/* DROPDOWN */

.dropdown{
    position:relative;
	width:100%;
}

.dropbtn{

    width:100%;
	display: grid; grid-template-columns: 90% auto;

    padding:1rem;

    border:none;

    border-radius:8px;

    background:#fff;

    cursor:pointer;

    font-weight:600;
}

.dropdown-content{

    display:none;

    /*margin-top:1rem;*/
	margin-top:0;

    background:#fff;

    /*padding:1rem;*/
	padding:0.5rem;
	/*padding-left: 1rem;*/

    border-radius:0px;
	
	border-top: 1px groove;
}

.dropdown:hover .dropdown-content{
    display:block;
}

/* FORM */
.formAlert{

	font-style: italic;
	padding-top:1rem;

}
.blocForm{
    background:var(--bck-form);

    padding:1.5rem;

    border-radius:12px;
}

.contact-form{

    display:flex;

    flex-direction:column;

    gap:1rem;
	padding-top:1rem;
}

.form-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:1rem;
}

label{

    display:block;

    margin-bottom:0.4rem;

    font-size:0.9rem;
}

input,
select,
textarea{

    width:100%;

    padding:0.75rem;

    box-sizing:border-box;

    border-radius:6px;

    border:1px solid var(--color-border-input);

    background:var(--color-back-input);
}

.checkbox-row{

    display:flex;

    align-items:center;

    gap:0.75rem;
}

/* FOOTER */

.footer{

    background:#1a1a1a;

    color:rgba(255,255,255,0.75);

    padding:3rem 2rem;
}

.footer-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:2rem;
}

.footer a{
    color:#fff;
}

/* RESPONSIVE */

@media(max-width:900px){

    .cols3{
        grid-template-columns:1fr;
    }

    .cols2{
        grid-template-columns:1fr;
    }
	
    .cols1{
        grid-template-columns:1fr;
    }

    .form-grid{
        grid-template-columns:1fr;
    }

    .hero-header{

        flex-direction:column;

        text-align:center;
    }
}