
.hero-reservas{min-height:650px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:38px 24px 72px;position:relative}
.hero-reservas .hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-reservas:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(8,35,29,.30),rgba(8,35,29,.03) 47%,rgba(7,32,27,.53))}
.hero-reservas .hero__copy{position:relative;z-index:2;text-align:center;max-width:1080px;margin:10px auto 0}
.hero-reservas .hero__copy h1{color:white;text-shadow:0 2px 20px #0c332d66;font-size:clamp(34px,4.5vw,65px);line-height:1.13}
.hero-reservas .hero__copy h1 span{color:#f4dab1}.hero-reservas .hero__copy .hero__kicker,.hero-reservas .hero__copy p{color:white;text-shadow:0 2px 12px #092e2a}
.hero-reservas .hero__copy p{font-size:clamp(15px,1.6vw,21px);margin:12px 0}
.reserva-hero-box{position:relative;z-index:3;width:min(1190px,100%);margin-top:190px}
.reserva-hero-tag{color:#fff;background:#123b36;padding:12px 19px;width:max-content;max-width:100%;border-radius:12px 12px 0 0;font-size:14px;font-weight:700}
.reserva-hero-tag i{margin-right:8px;color:#e9bd7a}.reserva-busca{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:stretch;padding:10px;background:#fff;border-radius:0 16px 16px 16px;box-shadow:0 18px 50px #092d2955;gap:6px}
.reserva-busca label{display:flex;flex-direction:column;gap:6px;padding:9px 18px;margin:0;border-right:1px solid #e5eae6;min-width:0;font-size:13px;color:#63766e}.reserva-busca label span{font-weight:700;color:#285047}.reserva-busca input,.reserva-busca select{border:0;background:transparent;color:#153d35;min-width:0;width:100%;padding:3px 0;outline-color:#b48a51;font-size:15px}
.reserva-busca button{background:#123e37;color:white;border:0;border-radius:11px;padding:14px 22px;white-space:nowrap;font-weight:800}.reserva-busca button:hover{background:#20584d}.reserva-hero-note{color:#fff;text-align:center;margin-top:15px;font-size:13px;text-shadow:0 1px 8px #0b322f}
.busca-wrap{max-width:1140px;margin:52px auto;padding:0 20px}.busca-titulo{font-size:clamp(24px,3vw,38px);color:#153d35}.busca-sub{color:#697b74}.chales-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px}.chale-card{border:1px solid #e4ebe5;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #133e3015;background:#fff}.chale-card img{display:block;width:100%;height:210px;object-fit:cover}.chale-conteudo{padding:22px}.chale-conteudo h2{font-size:22px;color:#143e34}.chale-conteudo p{color:#64776e}.chale-preco{font-weight:800;color:#143e34}.aviso-reserva{background:#f2f6f1;border-left:4px solid #c7a26b;padding:16px;margin:20px 0;color:#435d50}
@media(max-width:900px){.hero-reservas{min-height:660px}.reserva-busca{grid-template-columns:repeat(2,minmax(0,1fr))}.reserva-busca button{grid-column:1/-1}.reserva-hero-box{margin-top:160px}}
@media(max-width:540px){.hero-reservas{padding:25px 12px 45px;min-height:680px}.hero-reservas .hero__copy h1{font-size:33px}.reserva-busca{grid-template-columns:1fr;border-radius:0 12px 12px 12px}.reserva-busca label{border-right:0;border-bottom:1px solid #e5eae6}.reserva-busca button{grid-column:auto}.reserva-hero-box{margin-top:60px}}


/* Recanto dos Ipês — experiência campo premium v2 */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=DM+Sans:wght@400;500;600;700;800&display=swap');
body:has(.hero-reservas){--recanto-gold:#dcb66f;--recanto-green:#0b3930}
body:has(.hero-reservas) .topbar{background:#07372e;color:#f6ecd9;border-bottom:1px solid #d1ac6440}
body:has(.hero-reservas) .topbar__item i,body:has(.hero-reservas) .topbar__social i{color:#e3bf78}
body:has(.hero-reservas) .site-header{background:#fbf7ef;border-bottom:1px solid #e9dfcb}
body:has(.hero-reservas) .logo{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:245px}
body:has(.hero-reservas) .logo__name{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(22px,2.2vw,31px);font-weight:700;letter-spacing:-.025em;line-height:1;color:#103b32}
.logo__subtitle{font-size:9px;letter-spacing:3px;font-weight:700;color:#ac8550}
body:has(.hero-reservas) .site-header .nav>li>a{font-weight:600}
body:has(.hero-reservas) .site-header .nav>li.is-current>a:after{background:#c49b56}
.hero-reservas{min-height:min(790px,calc(100svh - 100px));padding:65px 24px 64px;background:#102c26;isolation:isolate}
.hero-reservas .hero__img{filter:saturate(1.12) contrast(1.04)}
.hero-reservas:before{background:linear-gradient(180deg,rgba(3,33,29,.65) 0%,rgba(4,31,28,.2) 40%,rgba(5,25,20,.5) 100%),linear-gradient(90deg,rgba(7,33,25,.13),transparent 70%)}
.hero-reservas .hero__copy{margin:4px auto 0;max-width:1150px}
.hero-reservas .hero__copy .hero__kicker{display:inline-flex;align-items:center;gap:20px;color:#fff5df;font-family:'DM Sans',sans-serif;font-size:11px;font-weight:800;letter-spacing:3px;line-height:1.6}
.hero-reservas .hero__copy .hero__kicker::before,.hero-reservas .hero__copy .hero__kicker::after{content:'';display:block;width:55px;height:1px;background:#ddb36a}
.hero-reservas .hero__copy h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;letter-spacing:-.028em;font-size:clamp(48px,6vw,91px);line-height:.99;margin:21px auto 16px;max-width:1080px;text-shadow:0 5px 24px #001b1780}
.hero-reservas .hero__copy h1 span{display:block;color:#f1c679;font-style:italic;font-weight:500}
.hero-reservas .hero__copy p{font-family:'DM Sans',sans-serif;font-size:clamp(15px,1.35vw,19px);font-weight:500;margin:18px auto 0;color:#fff9f0;letter-spacing:.01em}
.reserva-hero-box{width:min(1240px,100%);margin:clamp(105px,16vh,205px) auto 0}
.reserva-hero-tag{display:inline-flex;align-items:center;border:1px solid #d7ae71;border-bottom:0;border-radius:24px 24px 0 0;padding:15px 27px;background:linear-gradient(145deg,#11463a,#082f29);color:#f6e0b7;letter-spacing:.01em;box-shadow:0 -5px 20px #05251e35}
.reserva-busca{grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) minmax(135px,.85fr) minmax(230px,1.1fr);gap:0;align-items:stretch;padding:14px 15px 14px 18px;background:linear-gradient(120deg,#fffdf7,#f5ede2);border:1px solid #f5dfb4;border-radius:0 24px 24px 24px;box-shadow:0 26px 68px #051d19a8,0 0 0 4px #ffffff18}
.reserva-busca label{gap:8px;padding:10px 20px;border-color:#d9c7ad;justify-content:center;color:#52685f}
.reserva-busca label span{color:#0e3c33;font-size:14px;font-weight:800}
.reserva-busca label span i{color:#b48a45;margin-right:6px}
.reserva-busca input,.reserva-busca select{font-size:16px;font-weight:700;color:#163d34;min-height:32px}
.reserva-busca button{margin-left:16px;border:1px solid #e5bc75;border-radius:18px;background:linear-gradient(140deg,#0b4839,#062d26);font-size:15px;color:#f6dda7;padding:20px;white-space:normal;box-shadow:0 9px 23px #04352b5e;transition:transform .2s,background .2s,box-shadow .2s}
.reserva-busca button:hover{transform:translateY(-2px);background:#125647;box-shadow:0 12px 26px #04352b8a}
.reserva-busca button i{color:#f3c97e;margin-right:8px}
.reserva-hero-note{margin-top:24px;font-size:14px;font-weight:600;letter-spacing:.025em;color:#f4eedf}
.reserva-hero-note i{color:#e9c079;margin-right:8px}
.hero-reservas:after{content:'';display:block;position:absolute;z-index:2;bottom:-2px;left:0;width:100%;height:44px;background:#fff;clip-path:polygon(0 50%,25% 94%,50% 100%,75% 94%,100% 50%,100% 100%,0 100%);pointer-events:none}
@media(max-width:1080px){.hero-reservas{min-height:720px}.reserva-hero-box{margin-top:115px}.reserva-busca{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:0 20px 20px 20px;gap:8px}.reserva-busca label:nth-of-type(2){border-right:0}.reserva-busca button{grid-column:1/-1;margin-left:0}.hero-reservas .hero__copy h1{font-size:clamp(45px,6vw,76px)}}
@media(max-width:600px){.hero-reservas{min-height:740px;padding:42px 14px 60px}.hero-reservas .hero__copy h1{font-size:clamp(39px,10vw,56px);line-height:1.03}.hero-reservas .hero__copy .hero__kicker{letter-spacing:1.2px;font-size:9px;gap:8px}.hero-reservas .hero__copy .hero__kicker::before,.hero-reservas .hero__copy .hero__kicker::after{width:18px}.hero-reservas .hero__copy p{font-size:14px}.reserva-hero-box{margin-top:58px}.reserva-busca{grid-template-columns:1fr;padding:12px;gap:0}.reserva-busca label{padding:11px 14px;border-right:0;border-bottom:1px solid #e0d3c3}.reserva-busca button{margin:12px 0 0;padding:17px}.reserva-hero-note{font-size:12px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){.reserva-busca button{transition:none}}

/* Barra de reservas boutique — compacta e proporcional */
body:has(.hero-reservas) .reserva-hero-box{width:min(890px,calc(100% - 24px));margin:clamp(80px,12vh,135px) auto 0}
body:has(.hero-reservas) .reserva-hero-tag{font-size:11px;font-weight:700;line-height:1.2;padding:10px 17px;border-radius:13px 13px 0 0;box-shadow:none}
body:has(.hero-reservas) .reserva-busca{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.85fr) minmax(170px,1.15fr);
 align-items:center;gap:0;padding:7px;background:#fffcf7;border-radius:0 15px 15px 15px;
 border:1px solid #e7d6b8;box-shadow:0 14px 36px rgba(6,34,28,.28);
}
body:has(.hero-reservas) .reserva-busca label{min-height:61px;padding:6px 13px;gap:3px;justify-content:center;border-right:1px solid #e6ded0;margin:0}
body:has(.hero-reservas) .reserva-busca label:nth-of-type(3){border-right:0}
body:has(.hero-reservas) .reserva-busca label span{font-size:11px;font-weight:700;line-height:1.2}
body:has(.hero-reservas) .reserva-busca label span i{font-size:12px;margin-right:5px}
body:has(.hero-reservas) .reserva-busca input,
body:has(.hero-reservas) .reserva-busca select{font-size:13px;font-weight:700;line-height:1.3;min-height:25px;padding:1px 0;width:100%;max-width:100%;background:transparent}
body:has(.hero-reservas) .reserva-busca button{grid-column:auto;min-width:0;width:100%;min-height:53px;margin:0;padding:10px 12px;border-radius:11px;font-size:12px;line-height:1.25;white-space:normal;box-shadow:0 4px 12px #082c2540}
body:has(.hero-reservas) .reserva-busca button i{font-size:12px;margin-right:5px}
body:has(.hero-reservas) .reserva-hero-note{margin-top:12px;font-size:11px}
@media(max-width:900px){
 body:has(.hero-reservas) .reserva-hero-box{width:min(680px,100%);margin-top:70px}
 body:has(.hero-reservas) .reserva-busca{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
 body:has(.hero-reservas) .reserva-busca label{min-height:59px;border-bottom:1px solid #e6ded0}
 body:has(.hero-reservas) .reserva-busca label:nth-of-type(2){border-right:0}
 body:has(.hero-reservas) .reserva-busca label:nth-of-type(3){grid-column:1/-1;border-bottom:0}
 body:has(.hero-reservas) .reserva-busca button{grid-column:1/-1;min-height:46px;margin-top:5px}
}
@media(max-width:540px){
 body:has(.hero-reservas) .hero-reservas{min-height:680px}
 body:has(.hero-reservas) .reserva-hero-box{width:100%;margin-top:40px}
 body:has(.hero-reservas) .reserva-hero-tag{padding:9px 13px;font-size:11px}
 body:has(.hero-reservas) .reserva-busca{grid-template-columns:repeat(2,minmax(0,1fr));padding:7px;border-radius:0 13px 13px 13px}
 body:has(.hero-reservas) .reserva-busca label{padding:7px 9px;min-height:58px}
 body:has(.hero-reservas) .reserva-busca label:nth-of-type(3){grid-column:1/-1;min-height:50px}
 body:has(.hero-reservas) .reserva-busca input,body:has(.hero-reservas) .reserva-busca select{font-size:12px}
 body:has(.hero-reservas) .reserva-busca button{font-size:12px;min-height:45px}
}


/* Recanto dos Ipês — tipografia editorial compacta v4 */
body:has(.hero-reservas) .hero-reservas .hero__copy {
    max-width: 850px;
}
body:has(.hero-reservas) .hero-reservas .hero__copy h1 {
    font-size: clamp(38px, 4.2vw, 64px);
    line-height: 1.04;
    letter-spacing: -.025em;
    max-width: 850px;
    margin: 18px auto 12px;
}
body:has(.hero-reservas) .hero-reservas .hero__copy p {
    font-size: clamp(14px, 1.1vw, 17px);
    line-height: 1.55;
    margin: 12px auto 0;
}
body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker {
    font-size: 10px;
    letter-spacing: 2.1px;
}
@media (max-width: 900px) {
    body:has(.hero-reservas) .hero-reservas .hero__copy h1 {
        font-size: clamp(36px, 5.8vw, 52px);
    }
}
@media (max-width: 600px) {
    body:has(.hero-reservas) .hero-reservas .hero__copy h1 {
        font-size: clamp(32px, 8vw, 42px);
        line-height: 1.08;
        margin: 15px auto 10px;
    }
    body:has(.hero-reservas) .hero-reservas .hero__copy p {
        font-size: 13px;
        line-height: 1.5;
    }
    body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker {
        font-size: 9px;
        letter-spacing: 1.1px;
    }
}

/* Recanto dos Ipês — Hero e pesquisa compactos v5 */
body:has(.hero-reservas) .hero-reservas{min-height:clamp(560px,72vh,690px);padding:38px 22px 56px;justify-content:space-between}
body:has(.hero-reservas) .hero-reservas .hero__copy{max-width:700px;margin:0 auto}
body:has(.hero-reservas) .hero-reservas .hero__copy h1{font-size:clamp(34px,3.35vw,49px)!important;line-height:1.08;letter-spacing:-.018em;max-width:700px;margin:14px auto 10px}
body:has(.hero-reservas) .hero-reservas .hero__copy h1 span{display:block}
body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker{font-size:9px;letter-spacing:1.7px;gap:10px}
body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker:before,
body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker:after{width:28px}
body:has(.hero-reservas) .hero-reservas .hero__copy p{font-size:clamp(12px,1.05vw,15px);line-height:1.5;margin:10px auto 0;max-width:620px}
body:has(.hero-reservas) .reserva-hero-box{width:min(790px,100%)!important;margin:34px auto 0}
body:has(.hero-reservas) .reserva-hero-tag{font-size:11px!important;padding:8px 14px!important;border-radius:11px 11px 0 0!important}
body:has(.hero-reservas) .reserva-busca{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.8fr) minmax(150px,1.05fr);gap:0;padding:6px;border-radius:0 13px 13px 13px}
body:has(.hero-reservas) .reserva-busca label{padding:5px 11px!important;gap:3px;min-height:53px!important}
body:has(.hero-reservas) .reserva-busca label span{font-size:10px!important;white-space:nowrap}
body:has(.hero-reservas) .reserva-busca input,
body:has(.hero-reservas) .reserva-busca select{font-size:12px!important;min-height:22px;line-height:1.2}
body:has(.hero-reservas) .reserva-busca button{font-size:11px!important;min-height:47px!important;border-radius:9px;padding:8px 10px;margin:0;line-height:1.3}
body:has(.hero-reservas) .reserva-hero-note{margin-top:10px;font-size:10px}
@media(max-width:900px){
 body:has(.hero-reservas) .hero-reservas{min-height:600px}
 body:has(.hero-reservas) .hero-reservas .hero__copy h1{font-size:clamp(32px,4.8vw,44px)!important}
 body:has(.hero-reservas) .reserva-hero-box{width:min(660px,100%)!important;margin-top:34px}
 body:has(.hero-reservas) .reserva-busca{grid-template-columns:repeat(2,minmax(0,1fr))}
 body:has(.hero-reservas) .reserva-busca button{grid-column:1/-1;margin-top:5px;min-height:43px!important}
}
@media(max-width:600px){
 body:has(.hero-reservas) .hero-reservas{min-height:650px;padding:30px 12px 52px}
 body:has(.hero-reservas) .hero-reservas .hero__copy h1{font-size:clamp(29px,7.4vw,38px)!important;line-height:1.09;margin:12px auto 8px}
 body:has(.hero-reservas) .hero-reservas .hero__copy p{font-size:12px}
 body:has(.hero-reservas) .hero-reservas .hero__copy .hero__kicker{font-size:8px;letter-spacing:.9px}
 body:has(.hero-reservas) .reserva-hero-box{margin-top:28px}
 body:has(.hero-reservas) .reserva-busca label{min-height:49px!important}
 body:has(.hero-reservas) .reserva-busca label:nth-of-type(3){min-height:45px!important}
 body:has(.hero-reservas) .reserva-busca button{font-size:12px!important}
}
