:root{--navy:#083e55;--orange:#ff892c;--ink:#163b49;--muted:#5d727a;--cream:#f7f7f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white}a{color:inherit;text-decoration:none;cursor:pointer}button{font:inherit;cursor:pointer}header{height:94px;padding:9px 6%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #e7eded}.brand img{width:90px;height:76px;object-fit:contain}nav{display:flex;gap:34px;font-size:14px;font-weight:600}nav a:hover{color:#d65e08}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;background:var(--navy);color:#fff;border:none;padding:18px 24px;border-radius:5px;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#12617c}.button span{font-size:22px}.button.small{padding:11px 18px}.orange{background:var(--orange);color:#182d37}.orange:hover{background:#ff9e4f}.hero{height:min(730px,77vw);min-height:570px;position:relative;color:#fff;overflow:hidden}.hero-bg{width:100%;height:100%;object-fit:cover;object-position:50% 49%;position:absolute}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#032f46df,#05374970 58%,#002f4230),linear-gradient(0deg,#052c4660,transparent 40%)}.hero-content{position:relative;z-index:1;padding:95px 8%;max-width:920px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#b65010;margin-bottom:19px}.light{color:#fff1d9}h1{font-size:clamp(48px,5.2vw,77px);line-height:1.06;letter-spacing:-3px;margin:0 0 24px}h1 em{font-family:Georgia,serif;font-weight:400;color:#ffc38d}p{line-height:1.7}.hero-content p{max-width:455px;color:#e3edf0;font-size:16px;margin-bottom:30px}.hero-bottom{position:absolute;bottom:30px;left:8%;right:8%;z-index:1;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.4px}.intro-strip{display:flex;justify-content:center;gap:8%;padding:27px 6%;background:var(--cream);font-size:13px;font-weight:600}.intro-strip span:before{content:'✦';color:#e57930;margin-right:12px}.section{padding:84px 8%;scroll-margin-top:10px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}h2{font-size:clamp(30px,3vw,44px);line-height:1.15;letter-spacing:-1.4px;margin:0}.section-head p{font-size:14px;color:var(--muted);margin:0}.featured{display:grid;grid-template-columns:1.15fr 1fr;background:var(--cream);border-radius:12px;overflow:hidden}.feature-image{position:relative;min-height:590px}.feature-image img{width:100%;height:100%;position:absolute;object-fit:cover}.tag{position:absolute;top:22px;left:22px;background:#fffef2ed;color:var(--navy);font-size:10px;font-weight:800;padding:10px 13px;letter-spacing:1px;border-radius:3px}.feature-info{padding:43px}.feature-info h3{font-size:42px;letter-spacing:-1.5px;margin:0}.lead{color:var(--muted);font-size:15px}.trip-meta{display:flex;gap:45px;border-top:1px solid #dae0da;border-bottom:1px solid #dae0da;margin:23px 0}.trip-meta p{display:flex;flex-direction:column;font-size:14px}.trip-meta span{color:var(--muted)}.included{display:grid;grid-template-columns:1fr 1fr;gap:13px;font-size:12px}.price{margin:26px 0 22px;display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}.price span{font-size:12px;color:var(--muted)}.price strong{font-size:42px;letter-spacing:-2px}.price small{font-size:23px}.actions{display:flex;align-items:center;gap:22px}.text-button{background:none;border:0;padding:8px 0;font-weight:700;color:var(--navy);font-size:13px;text-decoration:underline;text-underline-offset:5px}.fine{font-size:11px;color:var(--muted);line-height:1.65}.experiences{padding-top:30px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{border:1px solid #e2e7e5;border-radius:9px;overflow:hidden}.card-photo{height:280px;position:relative;overflow:hidden}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.card:hover img{transform:scale(1.04)}.card-body{padding:25px}.card h3{font-size:20px;line-height:1.25;margin:0}.card p{font-size:13px;color:var(--muted)}.card-link{display:flex;justify-content:space-between;border-top:1px solid #e4e8e6;padding-top:17px;margin-top:22px;font-size:13px;font-weight:700}.about{background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-photo{height:465px;position:relative}.about-photo img{width:100%;height:100%;object-fit:cover;border-radius:9px}.photo-note{position:absolute;bottom:25px;left:25px;right:25px;padding:20px;background:#fff9edee;border-radius:4px;font-size:17px;line-height:1.5}.photo-note em{font-family:Georgia,serif;font-size:25px}.about-copy p{font-size:15px;color:var(--muted)}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:45px}.steps-grid b{color:#bc621f;font-size:13px}.steps h3{font-size:19px}.steps p{font-size:14px;color:var(--muted)}.contact{background:var(--navy);color:#fff;margin:0 5% 50px;border-radius:10px;padding:55px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}.contact p{font-size:13px;color:#d6e4e8}.contact h2{font-size:43px}footer{padding:30px 8% 25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}.footer-brand{font-size:26px;font-weight:900}.footer-brand em{font-family:Georgia,serif;font-size:30px;color:#d96615}.footer-brand p{font-size:12px;font-weight:400;color:var(--muted)}footer>div:nth-child(2){display:flex;gap:25px;font-size:12px;align-items:center}.copyright{width:100%;border-top:1px solid #e1e8e7;padding-top:20px;font-size:10px;color:var(--muted)}.floating{position:fixed;bottom:22px;right:22px;background:#168752;color:#fff;width:57px;height:57px;display:grid;place-items:center;border-radius:50%;box-shadow:0 4px 20px #002d4433;z-index:11}.floating svg{width:29px;height:29px}dialog{border:0;border-radius:12px;padding:35px;max-width:980px;width:92%;max-height:90vh;color:var(--ink)}dialog::backdrop{background:#042334bd}.dialog-grid{display:grid;grid-template-columns:.85fr 1fr;gap:30px}.dialog-grid>img{width:100%;height:auto}.dialog-grid p,.dialog-grid li{font-size:14px;line-height:1.7}.close{position:sticky;top:0;display:block;margin-left:auto;background:var(--navy);color:white;border:none;width:35px;height:35px;border-radius:50%;font-size:25px;z-index:1}.dialog-grid h2{margin-top:10px}:focus-visible{outline:3px solid #f89c4b;outline-offset:4px}@media(min-width:1600px){.section{padding-left:max(8%,calc((100vw - 1350px)/2));padding-right:max(8%,calc((100vw - 1350px)/2))}}@media(max-width:900px){header{padding:8px 5%;height:82px}nav{gap:18px}.hero-content{padding:85px 6%}.featured{grid-template-columns:1fr 1fr}.feature-info{padding:25px}.included{grid-template-columns:1fr}.actions{flex-wrap:wrap;gap:10px}.feature-image{min-height:630px}.cards{gap:14px}.card-body{padding:18px}.card-photo{height:220px}.section{padding:60px 6%}.about{gap:5%}.steps-grid{gap:25px}}@media(max-width:620px){header{height:74px}.brand img{width:69px;height:60px}nav{gap:17px;font-size:12px}nav a:last-child{display:none}header .button{font-size:11px;padding:11px;gap:8px}header .button span{display:none}.hero{height:610px;min-height:0}.hero-content{padding:84px 7%}.hero-bg{object-position:58% center}.hero:after{background:linear-gradient(90deg,#032f46d9,#05374970)}h1{font-size:47px;letter-spacing:-2px}.hero-content p{font-size:15px;max-width:310px}.hero-bottom{left:7%;right:7%;font-size:8px}.intro-strip{padding:21px 5%;gap:14px;justify-content:space-between;font-size:10px;line-height:1.5}.intro-strip span{max-width:100px}.intro-strip span:before{display:block;margin-bottom:5px}.section{padding:49px 6%}.section-head{display:block}.section-head p{margin-top:17px}h2{font-size:32px}.featured{grid-template-columns:1fr}.feature-image{min-height:285px}.feature-info{padding:28px 24px}.feature-info h3{font-size:37px}.included{grid-template-columns:1fr 1fr;gap:12px;font-size:11px}.price strong{font-size:40px}.actions{gap:20px}.cards{grid-template-columns:1fr;gap:23px}.card-photo{height:290px}.card-body{padding:25px}.card h3{font-size:22px}.about{grid-template-columns:1fr;gap:30px}.about-photo{height:350px}.steps-grid{grid-template-columns:1fr;gap:18px;margin-top:30px}.steps-grid>div{border-top:1px solid #e0e5e3;padding-top:22px}.steps h3{margin:10px 0}.contact{padding:35px 7%;display:block;margin:0 4% 30px}.contact h2{font-size:34px;margin-bottom:26px}footer{padding:20px 7%}footer>div:nth-child(2){gap:19px;flex-wrap:wrap}.dialog-grid{grid-template-columns:1fr}dialog{padding:18px}.dialog-grid>img{max-width:310px;margin:auto}.floating{bottom:16px;right:16px;width:52px;height:52px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}


/* Destaque principal do pacote Búzios + Rio */
.campaign-hero{height:760px;min-height:700px}.campaign-hero .hero-bg{object-position:center 48%}.campaign-hero:after{background:linear-gradient(90deg,#022d43f5 0%,#02394bd9 38%,#04394c57 77%,#04394c24)}.campaign-hero .hero-content{padding:62px 8%;max-width:1000px}.campaign-hero h1{font-size:66px;line-height:1.03;letter-spacing:-2.5px;margin-bottom:19px}.campaign-hero h1 em{font-size:52px}.campaign-hero .hero-content p{margin-bottom:18px;max-width:485px}.hero-offer{display:flex;align-items:baseline;gap:9px;color:#fff;margin:0 0 23px}.hero-offer>span{font-size:13px}.hero-offer strong{font-size:63px;font-weight:800;color:#ffbd72;letter-spacing:-2px}.hero-offer small{font-size:32px}.hero-actions{display:flex;align-items:center;gap:24px}.hero-details{font-size:13px;text-decoration:underline;text-underline-offset:5px}.hero-disclaimer{font-size:10px;margin-top:16px;color:#dae9ed}.featured{background:#083e55;color:white;box-shadow:0 16px 38px #083e5524;border:2px solid #f49b4b}.feature-info .eyebrow{color:#ffc184}.feature-info h3{font-size:48px}.feature-info .lead,.feature-info .fine,.feature-info .trip-meta span,.feature-info .price span{color:#d5e4e9}.feature-info .trip-meta{border-color:#ffffff30}.feature-info .trip-meta strong{font-size:17px}.feature-info .price strong{font-size:57px;color:#ffc184}.feature-info .button{background:#ff892c;color:#152c36}.feature-info .text-button{color:white}.feature-image .tag{background:#ff892c;color:#152c36;font-size:12px;padding:13px 17px}.feature-info .included{line-height:1.5}@media(max-width:900px){.campaign-hero .hero-content{padding:65px 6%}.feature-info h3{font-size:39px}.feature-info .price strong{font-size:46px}}@media(max-width:620px){.campaign-hero{height:auto;min-height:760px}.campaign-hero .hero-content{padding:52px 7% 85px}.campaign-hero h1{font-size:45px;letter-spacing:-1.8px}.campaign-hero h1 em{font-size:37px}.campaign-hero .eyebrow{font-size:10px;letter-spacing:1.2px;line-height:1.7;max-width:285px}.campaign-hero .hero-bg{object-position:62% center}.campaign-hero:after{background:linear-gradient(90deg,#022d43f2,#02394bbd 68%,#04394c80)}.campaign-hero .hero-content p{font-size:14px}.hero-offer{gap:7px;flex-wrap:wrap}.hero-offer strong{font-size:52px}.hero-offer>span{font-size:11px}.hero-actions{align-items:flex-start;flex-direction:column;gap:21px}.hero-actions .button{width:100%;max-width:340px}.campaign-hero .hero-bottom{font-size:8px;letter-spacing:.5px;bottom:22px}.feature-info .price strong{font-size:49px}.feature-info .trip-meta strong{font-size:16px}}


/* V4 - Grade de pacotes. Visual preservado e imagens sem efeito de desfoque. */
.package-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;padding:67px 0 26px}
.package-heading h3{font-size:clamp(28px,3vw,40px);line-height:1.12;letter-spacing:-1.1px;margin:0}
.package-heading .eyebrow{margin-bottom:12px}
.package-heading>p{font-size:13px;line-height:1.65;max-width:350px;color:var(--muted);margin:0}
.packages-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;align-items:stretch}
.package-card{min-width:0;border-radius:13px;background:#fff;border:1px solid #e2e8e7;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 34px #0a38480a;transition:transform .2s,box-shadow .2s}
.package-card:hover{transform:translateY(-4px);box-shadow:0 19px 42px #0a384819}
.photo-placeholder{position:relative;background:linear-gradient(135deg,#087ba1,#083e55 58%,#e8b56d);overflow:hidden}
.photo-placeholder img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;filter:none!important;transform:none!important}
.photo-placeholder.photo-unavailable::before{content:attr(data-label);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;color:#fff;font-size:19px;letter-spacing:2px;font-weight:800}
.package-photo{aspect-ratio:1.45;min-height:208px}
.package-photo img{transition:transform .35s!important}
.package-card:hover .package-photo img{transform:scale(1.04)!important}
.package-badge{position:absolute;top:16px;left:16px;border-radius:3px;background:#ffedd1;color:#073d59;font-size:10px;padding:9px 11px;font-weight:800;letter-spacing:1px;box-shadow:0 4px 12px #1234}
.package-info{padding:24px;display:flex;flex-direction:column;flex:1}
.package-kicker{margin:0 0 10px;letter-spacing:1.6px;color:#b46a2a;font-weight:800;font-size:10px!important;line-height:1.2}
.package-info h3{font-size:22px;line-height:1.22;letter-spacing:-.5px;margin:0 0 11px;min-height:52px}
.package-blurb{font-size:13px;line-height:1.6;color:#647a81;margin:0 0 15px;min-height:61px}
.package-date{font-size:12px;font-weight:800;letter-spacing:.5px;display:flex;gap:9px;align-items:center;border-radius:5px;background:#f2f7f5;padding:11px 12px;margin:0 0 19px}
.package-date span{color:#cb783c;font-size:18px}
.package-bottom{margin-top:auto;display:flex;gap:8px;align-items:end;justify-content:space-between}
.package-price{display:flex;flex-direction:column}.package-price>span{font-size:11px;color:#6c7d83;line-height:1.4}.package-price strong{font-size:28px;letter-spacing:-1.3px;color:#0a405a;white-space:nowrap}.package-price small{font-size:14px;letter-spacing:-.4px}
.package-details{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;color:#0a405a;font-size:12px;line-height:1.4;white-space:nowrap;font-weight:800;padding:8px 0}
.package-whatsapp{display:flex;margin-top:20px;background:#0a405a;color:white;align-items:center;justify-content:space-between;padding:15px 17px;border-radius:5px;font-weight:750;font-size:12px;transition:background .2s}
.package-whatsapp:hover{background:#146885}.package-whatsapp span{font-size:17px}
.package-warning{font-size:12px;color:#647a81;line-height:1.7;margin-top:20px}
.new-dialog-grid{display:grid;grid-template-columns:.85fr 1fr;gap:35px}
#trip-dialog{padding:0;max-width:1020px;max-height:88dvh;overscroll-behavior:contain}
#trip-dialog .close{position:sticky;top:14px;right:14px;float:right;margin:13px 15px -49px 0;width:38px;height:38px;z-index:5;box-shadow:0 4px 15px #001b2980}
.dialog-visual{min-height:100%;position:relative}
.dialog-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.modal-visual-overlay{position:absolute;bottom:0;left:0;right:0;color:#fff;padding:70px 25px 31px;background:linear-gradient(transparent,#00283ee9)}
.modal-visual-overlay span{font-size:11px;letter-spacing:2px;font-weight:800;display:block;margin-bottom:10px}.modal-visual-overlay strong{font:italic 29px Georgia,serif}
.dialog-content{padding:48px 43px 42px 0;max-height:none}
.dialog-content h2{font-size:34px;letter-spacing:-1px;line-height:1.17}
.dialog-content h3{font-size:15px;color:#0c435d;margin:25px 0 10px}
.dialog-content p,.dialog-content li{font-size:13px;color:#53676f;line-height:1.65}
.dialog-content ul{padding-left:18px;margin:0}.dialog-content li{margin-bottom:5px}
.dialog-date{font-weight:700;color:#0b435e!important}.modal-price{display:flex;align-items:baseline;gap:10px;padding:15px 0 6px;flex-wrap:wrap}
.modal-price span{color:#687b81;font-size:12px}.modal-price strong{color:#0a405a;font-size:31px;letter-spacing:-1px}
.modal-note{background:#fff5e7;border-left:3px solid #e8a05c;padding:12px 15px;margin:18px 0}.modal-note strong{font-size:12px}.modal-note p{margin:6px 0 0;font-size:12px}
.dialog-cta{margin-top:6px}
@media(max-width:1150px){.packages-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-info h3{min-height:auto}.package-blurb{min-height:42px}}
@media(max-width:760px){.package-heading{display:block;padding:50px 0 23px}.package-heading>p{margin-top:15px}.new-dialog-grid{grid-template-columns:1fr}.dialog-visual{height:235px;min-height:235px}.dialog-content{padding:24px 24px 30px}.dialog-content h2{font-size:30px}}
@media(max-width:620px){.packages-grid{grid-template-columns:1fr;gap:20px}.package-photo{aspect-ratio:1.5;min-height:0}.package-info{padding:21px}.package-info h3{min-height:auto;font-size:23px}.package-blurb{min-height:auto}.package-price strong{font-size:30px}.package-heading{padding-top:38px}.dialog-visual{height:210px;min-height:210px}.dialog-content{padding:21px}.dialog-content h2{font-size:27px}.dialog-cta{width:100%}}


/* V5 — Pacotes organizados por mês, com filtros e cards que se adaptam à quantidade de saídas. */
.travel-directory{margin-top:35px}
.calendar-eyebrow{font-size:11px;letter-spacing:1.65px;font-weight:800;color:#a75b20;display:flex;align-items:center;gap:10px;margin-bottom:13px}
.calendar-dot{width:9px;height:9px;border-radius:50%;background:#ff892c;box-shadow:0 0 0 4px #fff0e2}
.calendar-intro{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:22px}
.calendar-intro h3{font-size:clamp(25px,2.7vw,36px);letter-spacing:-1px;line-height:1.14;margin:0 0 7px;color:#0b3f57}
.calendar-intro p{margin:0;color:#71838b;font-size:14px;line-height:1.55}
.calendar-counter{font-size:12px;color:#31566a;background:#edf5f6;border:1px solid #d8e7e8;padding:11px 13px;border-radius:6px;font-weight:750;white-space:nowrap}
.calendar-counter span{color:#e57d35;padding-left:8px}
.month-toolbar{display:flex;gap:9px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#b2c8d2 transparent;padding:0 0 13px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.month-filter{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;background:#f7faf9;border:1px solid #dce7e8;border-radius:100px;padding:13px 16px 13px 18px;color:#234d60;font-size:13px;font-weight:750;white-space:nowrap;transition:background .2s,color .2s,border-color .2s,transform .2s}
.month-filter:hover{border-color:#e5a56f;background:#fff5e9;transform:translateY(-1px)}
.month-filter:focus-visible{outline:3px solid #f59a43;outline-offset:3px}
.month-filter small{display:flex;align-items:center;justify-content:center;background:#e4eeee;color:#52717e;border-radius:50%;min-width:23px;height:23px;font-size:11px}
.month-filter.is-active,.month-filter[aria-pressed="true"]{color:white;background:#083e55;border-color:#083e55;box-shadow:0 7px 19px #083e5529}
.month-filter.is-active small,.month-filter[aria-pressed="true"] small{color:#173d4f;background:#ffca98}
.month-filter-status{margin:5px 0 9px;color:#637983;font-size:12px;line-height:1.6}
.monthly-packages{display:flex;flex-direction:column;gap:49px}
.month-group{scroll-margin-top:115px}
.month-group[hidden]{display:none!important}
.month-section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #dbe6e7;padding:21px 0 17px;margin-bottom:22px}
.month-head-left{display:flex;gap:17px;align-items:center}
.month-marker{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:10px;color:#b46a2a;background:linear-gradient(145deg,#fff2df,#f8dfba)}
.month-title-row{display:flex;align-items:baseline;gap:13px;flex-wrap:wrap}
.month-title-row h3{font-size:clamp(26px,3vw,37px);line-height:1.1;margin:0;color:#083e55;letter-spacing:-1px}
.month-year{color:#b77341;font-size:13px;font-weight:800;letter-spacing:.3px}
.month-count{font-size:12px;font-weight:650;color:#748791;margin:7px 0 0}
.month-accent{height:3px;background:linear-gradient(90deg,#e0a34c,#ff892c);border-radius:4px;width:60px;flex:0 0 60px}
.month-clarification{font-size:11px;line-height:1.6;color:#87704f;background:#fff7eb;border-left:3px solid #e6b278;padding:9px 12px;margin:-8px 0 19px;border-radius:0 5px 5px 0;max-width:690px}
.month-packages-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.month-packages-grid .package-photo{aspect-ratio:1.7;min-height:215px}
.month-packages-grid .package-card:only-child{display:grid;grid-template-columns:minmax(0, .9fr) minmax(0, 1fr);width:100%;min-height:333px}
.month-packages-grid .package-card:only-child .package-photo{aspect-ratio:auto;min-height:333px;height:100%}
.month-packages-grid .package-card:only-child .package-info{padding:28px 31px}
.month-packages-grid .package-card:only-child .package-info h3{font-size:27px;min-height:0}
.month-packages-grid .package-card:only-child .package-blurb{min-height:0;font-size:14px}
.month-packages-grid .package-card:only-child .package-date{align-self:flex-start}
.month-packages-grid .package-card:only-child .package-price strong{font-size:35px}
.month-packages-grid .package-card .package-date{align-self:flex-start}
#monthly-packages .package-card:focus-within{outline:2px solid #f3a14f;outline-offset:3px}
@media(max-width:900px){.month-packages-grid .package-card:only-child{grid-template-columns:.85fr 1fr}.month-packages-grid .package-card:only-child .package-info{padding:21px}}
@media(max-width:760px){.calendar-intro{align-items:start;flex-direction:column;gap:13px}.month-packages-grid{grid-template-columns:1fr 1fr;gap:16px}.month-packages-grid .package-card:only-child{grid-template-columns:1fr 1.1fr}.month-packages-grid .package-card:only-child .package-info h3{font-size:23px}}
@media(max-width:620px){.travel-directory{margin-top:27px}.calendar-intro h3{font-size:27px}.calendar-counter{font-size:11px}.month-toolbar{margin-right:-6%;padding-right:6%;gap:8px}.month-filter{padding:11px 13px 11px 15px;font-size:12px}.monthly-packages{gap:33px}.month-section-heading{padding:16px 0 14px;margin-bottom:16px}.month-marker{width:39px;height:39px;flex-basis:39px}.month-head-left{gap:12px}.month-title-row{gap:8px}.month-title-row h3{font-size:26px}.month-year{font-size:11px}.month-count{font-size:11px}.month-accent{width:32px;flex-basis:32px}.month-packages-grid{grid-template-columns:1fr;gap:19px}.month-packages-grid .package-card:only-child{display:flex;flex-direction:column;min-height:0}.month-packages-grid .package-card:only-child .package-photo,.month-packages-grid .package-photo{min-height:0;height:auto;aspect-ratio:1.5}.month-packages-grid .package-card:only-child .package-info{padding:21px}.month-packages-grid .package-card:only-child .package-info h3{font-size:23px}.month-packages-grid .package-card:only-child .package-price strong{font-size:30px}}

/* V6 - Rodapé com atendimento exclusivamente virtual. */
footer{display:block;padding-top:46px}
.footer-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);align-items:center;gap:clamp(32px,6vw,95px)}
.footer-information{min-width:0}
.footer-logo{display:block;width:280px;max-width:100%;height:auto}
.footer-slogan{font-size:12px;color:var(--muted);margin:12px 0 27px}
.footer-virtual-label{display:inline-flex;align-items:center;gap:9px;border-radius:100px;background:#edf6f5;color:#14675d;font-size:10px;font-weight:800;letter-spacing:1.1px;padding:10px 14px;margin-bottom:18px}
.online-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#25a779;box-shadow:0 0 0 3px #25a77922}
.footer-information h3{font-size:clamp(20px,2.3vw,27px);letter-spacing:-.7px;line-height:1.25;color:var(--navy);margin:0 0 12px;max-width:450px}
.footer-online-copy{font-size:14px;max-width:460px;color:var(--muted);margin:0;line-height:1.7}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:23px}
.footer-links a{display:inline-flex;align-items:center;font-size:13px;font-weight:750;line-height:1.4;color:var(--navy);text-decoration:underline;text-decoration-color:#b1c5c9;text-underline-offset:5px}
.footer-links a:hover{color:#c46517;text-decoration-color:#c46517}
.footer-virtual-card{padding:clamp(29px,4vw,48px);border-radius:15px;color:#fff;background:radial-gradient(ellipse at right top,#12556d 0%,#073c54 48%,#042f46 100%);box-shadow:0 17px 38px #083e5520;position:relative;overflow:hidden}
.footer-virtual-card:after{content:'';width:180px;height:180px;border-radius:50%;border:1px solid #ffffff16;position:absolute;right:-85px;top:-85px;pointer-events:none}
.footer-virtual-eyebrow{display:block;color:#ffc78c;font-size:10px;font-weight:800;letter-spacing:1.6px;line-height:1.6;margin-bottom:17px}
.footer-virtual-card h3{font-size:clamp(24px,2.8vw,34px);line-height:1.16;letter-spacing:-.8px;max-width:350px;margin:0 0 17px}
.footer-virtual-card>p{max-width:390px;font-size:13px;line-height:1.75;color:#d9e9ef;margin:0 0 23px}
.footer-virtual-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--orange);color:#142f3c;font-size:13px;font-weight:800;padding:16px 20px;border-radius:5px;min-height:49px;transition:background .2s,transform .2s}
.footer-virtual-button:hover{background:#ffab69;transform:translateY(-2px)}
.footer-virtual-card .footer-virtual-note{font-size:11px;color:#b7d1dc;margin:16px 0 0;max-width:350px}

footer .copyright{margin-top:24px;padding-right:0}
@media(max-width:760px){.footer-main{grid-template-columns:1fr;gap:30px}.footer-virtual-card{padding:32px}.footer-logo{width:245px}footer{padding-top:24px}.footer-slogan{margin-bottom:21px}}
@media(max-width:420px){.footer-links{gap:17px}.footer-virtual-button{width:100%}}

/* V8: refinamentos de compatibilidade para Safari de iPhone */
html {-webkit-text-size-adjust:100%; text-size-adjust:100%;}
/* Fallback visual para iOS Safari anterior ao suporte nativo de <dialog>. */
dialog.dialog-fallback[open] {position:fixed;display:block;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;width:92%;max-width:980px;max-height:90vh;overflow:auto;z-index:1002;box-shadow:0 24px 80px #001d29aa;}
body.dialog-fallback-active:after {content:'';position:fixed;inset:0;background:#042334bd;z-index:1001;pointer-events:none;}
@media(max-width:620px){dialog.dialog-fallback[open]{width:94%;padding:18px;max-height:85vh;}}


/* V9 — Contatos sociais com os símbolos oficiais e apresentação visual mais clara. */
.footer-socials{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:12px;margin-top:25px;max-width:525px;align-items:stretch}
.footer-socials .social-contact{position:relative;display:flex;align-items:center;gap:12px;min-height:76px;padding:13px 14px;border-radius:13px;color:#fff;box-shadow:0 10px 22px rgba(0,40,55,.13);border:1px solid rgba(255,255,255,.13);text-decoration:none;overflow:hidden;isolation:isolate;transition:transform .2s ease,box-shadow .2s ease}
.footer-socials .social-contact:hover{transform:translateY(-3px);box-shadow:0 15px 29px rgba(0,40,55,.2)}
.footer-socials .social-contact:active{transform:translateY(0)}
.footer-socials .social-whatsapp{background:linear-gradient(120deg,#0e8859,#149b6b 65%,#18ad78)}
.footer-socials .social-instagram{background:linear-gradient(115deg,#593eb5 0%,#b63e8c 49%,#df6a46 100%)}
.footer-socials .social-contact:after{content:'';width:128px;height:128px;border-radius:50%;position:absolute;right:-75px;top:-79px;border:1px solid #ffffff40;z-index:-1;pointer-events:none}
.footer-socials .social-icon{flex:0 0 45px;display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:rgba(255,255,255,.19);border:1px solid rgba(255,255,255,.20)}
.footer-socials .social-icon svg{display:block;width:25px;height:25px}
.footer-socials .social-copy{display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:0}
.footer-socials .social-copy strong{font-size:14px;font-weight:800;line-height:1.1;letter-spacing:.1px}
.footer-socials .social-copy small{font-size:11px;font-weight:600;color:rgba(255,255,255,.88);white-space:nowrap;letter-spacing:-.1px}
.footer-socials .social-arrow{align-self:center;margin-left:auto;font-size:16px;line-height:1;font-weight:800;color:rgba(255,255,255,.85)}
.footer-main{align-items:center}
.footer-main+.copyright{margin-top:48px}
@media(max-width:1070px) and (min-width:761px){.footer-socials{grid-template-columns:1fr;max-width:350px}.footer-socials .social-contact{min-height:64px}}
@media(max-width:760px){.footer-socials{max-width:540px}.footer-main+.copyright{margin-top:32px}}
@media(max-width:500px){.footer-socials{grid-template-columns:1fr;gap:12px;max-width:420px}.footer-socials .social-contact{min-height:70px}.footer-socials .social-icon{width:43px;height:43px;flex-basis:43px}}
@media(prefers-reduced-motion:reduce){.footer-socials .social-contact{transition:none}}

/* SEO: o link no título dos pacotes preserva sua aparência original. */
.package-info h3 a.package-seo-link, .package-info h3 a.package-seo-link:visited, .package-info h3 a.package-seo-link:hover{color:inherit;text-decoration:none;font:inherit;letter-spacing:inherit}
