/* Sobrinho Viagens — visual premium aprovado, responsivo e com linguagem de aplicativo */
:root{
    --sv-gold:#d9a83e;
    --sv-gold-light:#f4cf76;
    --sv-gold-dark:#9e6d17;
    --sv-ink:#090b0d;
    --sv-ink-soft:#16191c;
    --sv-paper:#ffffff;
    --sv-cream:#f7f5ef;
    --sv-muted:#6c7075;
    --sv-line:#e8e5de;
    --sv-shadow:0 24px 70px rgba(9,12,15,.16);
}

.home-redesign{background:#fff;color:#1d2023;overflow:hidden}
.home-redesign svg,.site-header svg{width:1.35em;height:1.35em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.home-redesign .home-actions svg,.site-header .header-whatsapp svg{fill:currentColor;stroke:none}

/* Cabeçalho */
.site-header{background:#fff;border-bottom:1px solid #ebe8e1;box-shadow:none;backdrop-filter:blur(18px);transition:background .25s ease,box-shadow .25s ease,border-color .25s ease}
.header-shell{min-height:92px;display:flex;align-items:center;justify-content:center;gap:34px}
.brand{min-width:210px;display:flex;align-items:center;justify-content:flex-start;color:#161616}
.brand img{width:108px;height:76px;object-fit:contain;border-radius:0;background:transparent}
.brand span{display:none}
.main-nav{margin:0 auto;display:flex;align-items:center;justify-content:center;gap:28px}
.main-nav>a{color:#3f4143;font-size:.95rem;font-weight:750;padding:35px 0 30px}
.main-nav>a:after{bottom:23px;height:2px;background:var(--sv-gold)}
.main-nav>a:hover,.main-nav>a.is-active{color:#111}
.main-nav .nav-account{color:#9a6b16}
.header-whatsapp{min-height:54px;padding:0 20px;border:1px solid #232323;border-radius:16px;background:#151719;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:850;box-shadow:0 10px 25px rgba(0,0,0,.12)}
.header-whatsapp:hover{transform:translateY(-1px);background:#060708}
.header-whatsapp svg{width:22px;height:22px}
.menu-toggle span:not(.sr-only){background:#161719}

.page-home .site-header-home{position:absolute;inset:0 0 auto 0;z-index:120;background:linear-gradient(180deg,rgba(5,7,8,.94) 0%,rgba(5,7,8,.72) 62%,rgba(5,7,8,0) 100%);border-bottom-color:rgba(255,255,255,.08);backdrop-filter:none}
.page-home .site-header-home.is-scrolled{position:fixed;background:rgba(7,9,10,.96);border-bottom-color:rgba(255,255,255,.09);box-shadow:0 16px 40px rgba(0,0,0,.25);backdrop-filter:blur(18px)}
.page-home .site-header-home .header-shell{min-height:132px}
.page-home .site-header-home .brand{min-width:245px}
.page-home .site-header-home .brand img{width:184px;height:128px;filter:drop-shadow(0 8px 22px rgba(0,0,0,.3))}
.page-home .site-header-home .main-nav>a{color:rgba(255,255,255,.9);font-size:1rem;padding:48px 0 42px}
.page-home .site-header-home .main-nav>a:hover,.page-home .site-header-home .main-nav>a.is-active{color:#fff}
.page-home .site-header-home .main-nav>a:after{bottom:33px;background:var(--sv-gold-light)}
.page-home .site-header-home .main-nav .nav-account{color:var(--sv-gold-light)}
.page-home .site-header-home .header-whatsapp{border-color:rgba(217,168,62,.55);background:rgba(7,8,9,.72);box-shadow:0 12px 28px rgba(0,0,0,.24)}
.page-home .site-header-home .header-whatsapp:hover{background:#050607;border-color:var(--sv-gold)}
.page-home .site-header-home .menu-toggle span:not(.sr-only){background:#fff}

/* Banner principal */
.home-hero{min-height:790px;position:relative;display:flex;align-items:center;background:url('../images/site/banner-bus-duplo-2026.webp') center right/cover no-repeat;color:#fff}
.home-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,7,.96) 0%,rgba(4,6,7,.84) 29%,rgba(4,6,7,.47) 49%,rgba(4,6,7,.04) 76%),linear-gradient(0deg,rgba(4,5,6,.5) 0%,rgba(4,5,6,0) 42%)}
.home-hero-inner{position:relative;z-index:2;width:min(1380px,calc(100% - 32px));margin-inline:auto;padding-top:115px}
.home-hero-copy{max-width:660px;padding:105px 0 105px}
.home-kicker{display:inline-flex;align-items:center;gap:9px;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:850;color:var(--sv-gold-light);margin-bottom:22px}
.home-kicker svg{width:18px;height:18px;fill:currentColor;stroke:none}
.home-kicker-pill{padding:10px 14px;border:1px solid rgba(217,168,62,.52);border-radius:12px;background:rgba(8,10,11,.36);backdrop-filter:blur(8px)}
.home-kicker-dark{color:#9a6d1c}
.home-hero h1{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:clamp(3.6rem,5.6vw,5.7rem);line-height:1.02;letter-spacing:-.055em;margin:0 0 22px;font-weight:750;max-width:620px;text-wrap:balance}
.home-hero p{font-size:1.12rem;line-height:1.72;max-width:610px;color:rgba(255,255,255,.86);margin:0 0 32px}
.home-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.home-btn{min-height:68px;padding:0 26px;border-radius:18px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:850;font-size:1rem;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;border:1px solid transparent;white-space:nowrap}
.home-btn:hover{transform:translateY(-3px)}
.home-btn svg{width:23px;height:23px}
.home-btn strong{font-size:1.75rem;line-height:1;margin-left:4px;font-weight:400}
.home-btn-primary{background:linear-gradient(135deg,#efc867,var(--sv-gold));color:#171007;box-shadow:0 16px 34px rgba(183,127,23,.3)}
.home-btn-primary:hover{box-shadow:0 20px 42px rgba(183,127,23,.38)}
.home-btn-dark{background:rgba(8,10,11,.78);color:#fff;border-color:rgba(217,168,62,.46);box-shadow:0 15px 34px rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.home-btn-dark:hover{background:#08090a;border-color:var(--sv-gold)}
.home-btn-dark-solid{background:#17191b;color:#fff}
.home-btn-compact{min-height:54px;padding:0 21px;border-radius:14px;font-size:.92rem}

/* Busca com aparência de aplicativo */
.home-search-wrap{position:relative;z-index:8;margin-top:-74px}
.home-search-container{width:min(1260px,calc(100% - 32px));max-width:1260px;margin-inline:auto}
.home-search{background:rgba(255,255,255,.98);border-radius:30px;padding:17px;display:grid;grid-template-columns:1.35fr 1fr 300px;align-items:stretch;gap:0;box-shadow:var(--sv-shadow);border:1px solid rgba(255,255,255,.85)}
.home-search-field{min-height:118px;padding:16px 32px 16px 20px;display:grid;grid-template-columns:64px 1fr;align-items:center;gap:18px;position:relative}
.home-search-field-category:before{content:'';position:absolute;left:0;top:24px;bottom:24px;border-left:1px dashed #d8b765}
.home-search-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#f8f0df;color:#aa771b}
.home-search-icon svg{width:28px;height:28px}
.home-search label{display:block;font-size:.82rem;font-weight:850;color:#292b2e;margin-bottom:5px}
.home-search input,.home-search select{border:0;width:100%;background:transparent;padding:2px 28px 2px 0;color:#26282b;outline:none;font-size:1.12rem;min-height:36px}
.home-search input::placeholder{color:#6d7074;opacity:1}
.home-search button{border:0;background:linear-gradient(135deg,#e8bd57,#a87519);color:#fff;border-radius:22px;margin:0;min-height:96px;padding:0 30px;font-weight:900;font-size:1.12rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:14px;box-shadow:0 14px 30px rgba(163,109,18,.25);transition:.2s}
.home-search button:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(163,109,18,.32)}
.home-search button svg{width:28px;height:28px}

/* Conteúdo da home */
.home-section{padding:88px 0}
.home-section-first{padding-top:120px}
.home-section-soft{background:var(--sv-cream)}
.home-title-row{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}
.home-title-row h2,.home-about-copy h2,.home-cta h2{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:clamp(2rem,3.7vw,3.35rem);line-height:1.08;letter-spacing:-.045em;margin:0;font-weight:760}
.home-title-row p{color:#696d71;margin:12px 0 0}
.home-title-centered{text-align:center;justify-content:center}
.home-title-centered>div{max-width:760px}
.home-text-link{font-weight:850;color:#815b18;white-space:nowrap}
.home-trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.home-trip-card{border:1px solid #e9e7e1;border-radius:22px;background:#fff;overflow:hidden;transition:.25s;box-shadow:0 8px 26px rgba(21,24,27,.045)}
.home-trip-card:hover{transform:translateY(-6px);box-shadow:0 22px 52px rgba(27,30,31,.12)}
.home-trip-image{height:230px;position:relative;overflow:hidden;background:#eee}
.home-trip-image img{width:100%;height:100%;object-fit:cover;transition:.35s}
.home-trip-card:hover img{transform:scale(1.035)}
.home-trip-image>span{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);color:#222;border-radius:10px;padding:8px 11px;font-size:.67rem;font-weight:850;text-transform:uppercase;box-shadow:0 8px 18px rgba(0,0,0,.08)}
.home-trip-content{padding:21px}
.home-trip-date{font-size:.76rem;font-weight:850;color:#986a19;margin-bottom:8px}
.home-trip-content h3{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:1.25rem;line-height:1.22;letter-spacing:-.025em;margin:0 0 8px;font-weight:800}
.home-trip-content p{color:#707478;font-size:.91rem;margin:0 0 20px}
.home-trip-footer{border-top:1px solid #eee;padding-top:15px;display:flex;align-items:end;justify-content:space-between}
.home-trip-footer small{display:block;color:#777;font-size:.7rem}
.home-trip-footer strong{font-size:1.15rem}
.home-trip-footer>span{font-weight:850;color:#8a6423;font-size:.88rem}
.home-category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.home-category-card{background:#fff;border:1px solid #e5e3dc;border-radius:17px;padding:21px;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:16px;transition:.2s}
.home-category-card:hover{border-color:#c9a252;transform:translateX(4px);box-shadow:0 12px 28px rgba(34,29,21,.07)}
.home-category-number{width:44px;height:44px;border-radius:13px;background:#f3ead7;color:#8a6423;display:grid;place-items:center;font-weight:900;font-size:.8rem}
.home-category-card h3{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:1.05rem;margin:0 0 3px;font-weight:800}
.home-category-card p{font-size:.82rem;color:#777;margin:0}
.home-category-card>strong{font-size:1.25rem}
.home-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.home-about-image{border-radius:25px;overflow:hidden;background:#eee;box-shadow:0 20px 50px rgba(23,20,15,.1)}
.home-about-image img{width:100%;height:520px;object-fit:cover}
.home-about-copy>p{font-size:1.03rem;color:#686d71;max-width:560px}
.home-benefits{display:grid;gap:15px;margin:30px 0}
.home-benefits>div{display:grid;grid-template-columns:44px 1fr;gap:15px;align-items:start}
.home-benefits strong{color:#a77b2b;font-size:.78rem;padding-top:3px}
.home-benefits span{display:grid;color:#6e7276}
.home-benefits b{color:#222;margin-bottom:2px}
.home-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.home-article-card{background:#fff;border:1px solid #e7e5df;border-radius:19px;overflow:hidden;transition:.22s}
.home-article-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(22,24,25,.09)}
.home-article-card img{width:100%;height:200px;object-fit:cover}
.home-article-card div{padding:21px}
.home-article-card small{color:#9a7128;text-transform:uppercase;font-weight:850;letter-spacing:.1em}
.home-article-card h3{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:1.2rem;line-height:1.25;margin:8px 0;font-weight:800}
.home-article-card p{color:#707478;font-size:.9rem}
.home-article-card span{font-weight:850;color:#815f23}
.home-cta{background:linear-gradient(135deg,#17191b,#08090a);color:#fff;border-radius:26px;padding:45px 48px;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 22px 55px rgba(0,0,0,.14)}
.home-cta p{color:#c8c9ca;margin:10px 0 0}
.home-cta h2{font-size:clamp(1.8rem,3vw,2.75rem)}

/* Tablet */
@media(max-width:1180px){
    .page-home .site-header-home .brand{min-width:190px}
    .page-home .site-header-home .brand img{width:150px;height:108px}
    .page-home .site-header-home .main-nav{gap:18px}
    .page-home .site-header-home .main-nav>a{font-size:.91rem}
    .home-search{grid-template-columns:1.2fr 1fr 245px}
    .home-search-field{padding-right:20px}
}

@media(max-width:1050px){
    .header-shell{justify-content:space-between;min-height:82px}
    .brand{min-width:auto}
    .brand img{width:94px;height:68px}
    .menu-toggle{display:block;margin-left:auto;width:54px;height:54px;border-radius:15px;background:rgba(255,255,255,.08)}
    .page-internal .menu-toggle{background:#f3f1ec}
    .page-home .site-header-home .header-shell{min-height:102px}
    .page-home .site-header-home .brand img{width:128px;height:92px}
    .main-nav{position:fixed;inset:82px 14px auto 14px;background:#fff;padding:18px;border:1px solid #ece7dd;border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.18);display:none;flex-direction:column;align-items:stretch;gap:4px}
    .page-home .site-header-home .main-nav{inset:102px 14px auto 14px;background:rgba(9,11,12,.98);border-color:rgba(255,255,255,.1)}
    .main-nav.is-open{display:flex}
    .main-nav>a,.page-home .site-header-home .main-nav>a{padding:13px 15px;border-radius:12px;color:#282a2c;font-size:1rem}
    .page-home .site-header-home .main-nav>a{color:#fff}
    .main-nav>a:hover,.main-nav>a.is-active{background:#f5f1e7}
    .page-home .site-header-home .main-nav>a:hover,.page-home .site-header-home .main-nav>a.is-active{background:rgba(217,168,62,.13)}
    .main-nav>a:after{display:none}
    .header-whatsapp{display:none}
    .home-hero{min-height:740px}
    .home-hero-copy{padding:100px 0 125px}
    .home-search{grid-template-columns:1fr 1fr}
    .home-search button{grid-column:1/-1;min-height:68px;border-radius:18px}
    .home-search-field{min-height:94px}
    .home-search-field-category:before{top:16px;bottom:16px}
    .home-trip-grid,.home-article-grid{grid-template-columns:repeat(2,1fr)}
    .home-about-grid{gap:42px}
    .home-category-grid{grid-template-columns:1fr}
}

/* Mobile */
@media(max-width:720px){
    .page-home .site-header-home,.page-home .site-header-home.is-scrolled{position:absolute;background:linear-gradient(180deg,rgba(5,7,8,.93),rgba(5,7,8,.52) 72%,transparent);box-shadow:none}
    .page-home .site-header-home .header-shell{min-height:88px}
    .page-home .site-header-home .brand img{width:104px;height:76px}
    .page-home .site-header-home .main-nav{inset:88px 11px auto 11px}
    .home-hero{min-height:780px;background-image:url('../images/site/banner-bus-duplo-2026-mobile.webp');background-position:center bottom}
    .home-hero-shade{background:linear-gradient(180deg,rgba(5,7,8,.72) 0%,rgba(5,7,8,.45) 27%,rgba(5,7,8,.12) 50%,rgba(5,7,8,.72) 82%,rgba(5,7,8,.92) 100%)}
    .home-hero-inner{width:min(100% - 22px,620px);margin-inline:auto;padding-top:88px;display:flex;align-items:flex-start}
    .home-hero-copy{padding:72px 0 270px;max-width:100%;text-align:center;margin:0 auto}
    .home-kicker-pill{font-size:.66rem;letter-spacing:.1em;padding:8px 10px;margin-bottom:18px}
    .home-hero h1{font-size:clamp(2.8rem,13vw,3.7rem);line-height:1.02;margin-bottom:17px}
    .home-hero p{font-size:.96rem;line-height:1.58;margin:0 auto 24px;max-width:480px}
    .home-actions{display:grid;grid-template-columns:1fr;gap:11px;max-width:390px;margin:0 auto}
    .home-btn{width:100%;min-height:60px;border-radius:17px;padding:0 18px;font-size:.96rem}
    .home-btn strong{margin-left:auto}
    .home-search-wrap{margin-top:-82px}
    .home-search-container{width:min(100% - 22px,620px)}
    .home-search{grid-template-columns:1fr;padding:12px;border-radius:25px;gap:5px}
    .home-search-field{min-height:82px;padding:10px 13px;grid-template-columns:50px 1fr;gap:13px;border-radius:17px;background:#faf9f6}
    .home-search-field-category:before{display:none}
    .home-search-icon{width:46px;height:46px}
    .home-search-icon svg{width:23px;height:23px}
    .home-search label{font-size:.72rem}
    .home-search input,.home-search select{font-size:1rem;min-height:30px}
    .home-search button{grid-column:auto;min-height:58px;border-radius:17px;font-size:1rem;margin-top:2px}
    .home-section{padding:64px 0}
    .home-section-first{padding-top:105px}
    .home-title-row{display:block;margin-bottom:25px;text-align:left}
    .home-title-row h2,.home-about-copy h2,.home-cta h2{font-size:2.15rem}
    .home-text-link{display:inline-block;margin-top:15px}
    .home-trip-grid,.home-article-grid{grid-template-columns:1fr}
    .home-trip-image{height:auto;aspect-ratio:16/10}
    .home-category-card{padding:17px;grid-template-columns:42px 1fr auto;gap:12px}
    .home-category-number{width:42px;height:42px}
    .home-about-grid{grid-template-columns:1fr;gap:34px}
    .home-about-image img{height:auto;max-height:430px}
    .home-cta{display:block;padding:32px 24px;border-radius:22px;text-align:center}
    .home-cta .home-btn{margin-top:22px}
}

@media(max-width:420px){
    .page-home .site-header-home .brand img{width:92px;height:68px}
    .home-hero{min-height:730px}
    .home-hero-copy{padding-top:58px;padding-bottom:255px}
    .home-hero h1{font-size:2.85rem}
    .home-hero p{font-size:.91rem}
    .home-search-wrap{margin-top:-70px}
    .home-search-field{grid-template-columns:44px 1fr}
    .home-search-icon{width:42px;height:42px}
    .home-title-row h2,.home-about-copy h2,.home-cta h2{font-size:1.9rem}
    .home-trip-content{padding:18px}
}

.home-promo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.home-promo-card{background:#fff;border:1px solid #e8e3da;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(20,22,26,.05);transition:.22s}
.home-promo-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,22,26,.1)}
.home-promo-card img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#f2f2f2}
.home-promo-card div{padding:16px}
.home-promo-card small{display:block;color:#9a7128;text-transform:uppercase;font-weight:850;letter-spacing:.08em;margin-bottom:6px}
.home-promo-card h3{font-family:Inter,Segoe UI,Arial,sans-serif;font-size:1.06rem;line-height:1.25;margin:0 0 10px;font-weight:800}
.home-promo-card span{font-weight:800;color:#815f23;font-size:.9rem}
@media(max-width:1180px){.home-promo-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.home-promo-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.home-promo-grid{grid-template-columns:1fr}}
