/* ==========================================================
   HOTELARIA
   Uniforma
==========================================================*/

:root{

    --hotel-primary:#D62828;
    --hotel-dark:#111827;
    --hotel-text:#4B5563;
    --hotel-light:#F8F5F1;
    --hotel-border:#ECECEC;
    --hotel-radius:24px;

}

/* ==========================================================
   HERO
==========================================================*/

.sector-hero{

    background:#F8F5F1;

    padding:180px 0 120px;

}

.breadcrumb{

    display:flex;

    align-items:center;

    gap:12px;

    margin-bottom:50px;

    font-size:14px;

}

.breadcrumb a{

    color:#6B7280;

    text-decoration:none;

}

.breadcrumb span{

    color:#9CA3AF;

}

.sector-hero-grid{

    display:grid;

    grid-template-columns:1.1fr .9fr;

    gap:70px;

    align-items:center;

}

.sector-label{

    display:inline-block;

    color:var(--hotel-primary);

    font-size:14px;

    letter-spacing:3px;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:20px;

}

.sector-left h1{

    font-size:62px;

    line-height:1.08;

    color:var(--hotel-dark);

    margin-bottom:30px;

    font-weight:800;

}

.sector-left p{

    font-size:19px;

    line-height:1.9;

    color:var(--hotel-text);

    max-width:720px;

}

.hero-features{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

    margin-top:45px;

}

.hero-features div{

    background:#fff;

    border-radius:18px;

    padding:22px;

    border:1px solid var(--hotel-border);

}

.hero-features strong{

    display:block;

    font-size:15px;

    color:var(--hotel-dark);

    margin-bottom:10px;

}

.hero-features span{

    font-size:14px;

    color:#667085;

}

.sector-right img{

    width:100%;

    border-radius:28px;

    box-shadow:0 30px 70px rgba(0,0,0,.12);

}

/* ==========================================================
INTRO
==========================================================*/

.sector-intro{

    padding:110px 0 40px;

}

.sector-intro .section-title{

    max-width:850px;

    margin:auto;

}

.sector-intro h2{

    font-size:46px;

}

.sector-intro p{

    font-size:18px;

    line-height:1.9;

}

/* ==========================================================
CATEGORIAS
==========================================================*/

.hotel-categories{

    padding:60px 0 120px;

}

.categories-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:28px;

    margin-top:60px;

}

.category-card{

    background:#fff;

    border:1px solid var(--hotel-border);

    border-radius:22px;

    padding:38px;

    text-decoration:none;

    color:inherit;

    transition:.35s;

    box-shadow:0 15px 40px rgba(0,0,0,.04);

}

.category-card:hover{

    transform:translateY(-10px);

    border-color:var(--hotel-primary);

    box-shadow:0 25px 60px rgba(214,40,40,.10);

}

.category-icon{

    width:72px;

    height:72px;

    border-radius:18px;

    background:#FEECEC;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:34px;

    margin-bottom:28px;

}

.category-card h3{

    font-size:28px;

    color:#111827;

    margin-bottom:15px;

}

.category-card p{

    color:#667085;

    line-height:1.8;

}

/* ==========================================================
PRODUTOS
==========================================================*/

.hotel-products{

    padding:120px 0;

    background:#fff;

}

.product-filters{

    display:flex;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;

    margin:50px 0;

}

.product-filters button{

    border:none;

    background:#F3F4F6;

    padding:14px 26px;

    border-radius:50px;

    cursor:pointer;

    font-weight:600;

    transition:.3s;

}

.product-filters button:hover{

    background:#E5E7EB;

}

.product-filters button.active{

    background:var(--hotel-primary);

    color:#fff;

}

.products-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.product-card{

    border-radius:24px;

    overflow:hidden;

    border:1px solid var(--hotel-border);

    background:#fff;

    transition:.35s;

}

.product-card:hover{

    transform:translateY(-8px);

    box-shadow:0 25px 55px rgba(0,0,0,.10);

}

.product-image{

    position:relative;

    height:280px;

}

.product-image img{

    width:100%;

    height:100%;

    object-fit:cover;

}

.product-badge{

    position:absolute;

    top:18px;

    right:18px;

    background:#D62828;

    color:#fff;

    padding:8px 15px;

    border-radius:50px;

    font-size:12px;

    font-weight:700;

}

.product-content{

    padding:30px;

}

.product-category{

    color:#D62828;

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:2px;

}

.product-content h3{

    font-size:28px;

    margin:12px 0 18px;

}

.product-content p{

    color:#667085;

    line-height:1.8;

}

.product-content ul{

    margin:25px 0;

    padding-left:20px;

}

.product-content li{

    margin-bottom:10px;

    color:#374151;

}

.product-btn{

    display:inline-block;

    margin-top:20px;

    background:#D62828;

    color:#fff;

    text-decoration:none;

    padding:14px 24px;

    border-radius:12px;

    transition:.3s;

}

.product-btn:hover{

    background:#B71C1C;

}

/* ==========================================================
PERSONALIZAÇÃO
==========================================================*/

.hotel-custom{

    background:#F8F5F1;

    padding:120px 0;

}

.custom-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

}

.custom-left h2{

    font-size:48px;

    margin:20px 0;

}

.custom-left p{

    font-size:18px;

    line-height:1.9;

    color:#667085;

}

.custom-list{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:18px;

    margin-top:40px;

}

.custom-list div{

    background:#fff;

    padding:18px;

    border-radius:14px;

    border:1px solid #ECECEC;

    font-weight:600;

}

.custom-right img{

    width:100%;

    border-radius:26px;

}

/* ==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:1100px){

    .sector-hero-grid,
    .custom-grid{

        grid-template-columns:1fr;

    }

    .products-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .categories-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .hero-features{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .sector-hero{

        padding:140px 0 80px;

    }

    .sector-left h1{

        font-size:42px;

    }

    .categories-grid,
    .products-grid,
    .custom-list{

        grid-template-columns:1fr;

    }

    .sector-intro h2{

        font-size:34px;

    }

    .custom-left h2{

        font-size:34px;

    }

}