html{font-size:20px}*{margin:0;padding:0;box-sizing:border-box}body{background-color:#e0f2fa;font-family:Segoe UI,Tahoma,sans-serif;font-family:Inter,sans-serif;line-height:1.6;color:#333;margin-left:auto;margin-right:auto;max-width:1200px}.header{display:flex;justify-content:space-between;align-items:center;padding:0 2rem 0 0}nav a{color:#004;margin-left:1rem;text-decoration:none}nav a:hover{text-decoration:underline}.hero{background:url(/assets/beach-390c5f53.webp) center/cover no-repeat;color:#fff;text-align:center;padding:6rem 2rem;border-radius:1rem}.hero h1{font-size:3rem;margin-bottom:.5rem;text-align:center;margin-bottom:1rem;font-weight:700;text-shadow:.15rem .15rem .6rem rgba(0,0,0,1)}.hero p{font-size:1.2rem;text-shadow:.1rem .1rem .3rem rgba(0,0,0,1)}.btn-primary,button{display:inline-block;margin-top:1rem;background:lightskyblue;color:#000;padding:.7rem 1.5rem;border-radius:.5rem;text-decoration:none;font-weight:700;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;cursor:pointer}.btn-primary:hover,button:hover{transform:translateY(-.15rem);box-shadow:0 .2rem .4rem #00000040}.btn-primary:active,button:active{transform:none;box-shadow:none}.destinations{padding:3rem 2rem;background:#f5f5f5;border-radius:1rem}h2{text-align:center;margin-bottom:2rem}.destination-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1.5rem}.card{background:white;border-radius:.4rem;box-shadow:0 .1rem .4rem #0000001a;text-align:center}.card img{width:100%;height:9rem;object-fit:cover}.card h3{margin:1rem 0 .5rem}.card p{padding:0 1rem 1rem}.form-group{margin-bottom:1rem}label{display:block;margin-bottom:.3rem}input,select{width:100%;padding:.6rem;border:1px solid #ccc;border-radius:.25rem}button{cursor:pointer}.contact{background:#004080;color:#fff;text-align:center;padding:2rem}footer{background:#222;color:#ccc;text-align:center;padding:1rem}.booking .notselected{border-style:solid;border-width:.1rem;border-color:#bbb;background-color:#fff;color:#033}.booking .selected{border-style:solid;border-width:.1rem;border-color:#afc;background-color:#efe;color:#033}.booking .notselected:hover{border-color:#585;color:#033;opacity:100%;filter:brightness(1)!important}.booking .selected:hover{border-color:#585;background-color:#cfc;filter:brightness(1)!important}.booking #filter{button:hover {transform: translateY(-.15rem); box-shadow: 0 .2rem .4rem rgba(0,0,0,.25);} button:active {transform: none; box-shadow: none;} #filter .block__list {padding-bottom: 0;}}.booking #filter :is(button){color:#fff;width:100%;border:none;outline:0;opacity:.5;margin:.5rem 0;cursor:pointer;background:#5F9EDF;padding:.5rem 0;font-size:1rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.booking .modal{display:none;position:fixed;z-index:10;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:#000c}.booking .modal-content{background-color:#f0f8ff;border:.15rem outset #d4d4d4;border-radius:1rem;margin:2rem auto;padding:1rem;width:80%;max-width:fit-content;cursor:auto}.booking .close{color:#555;float:right;font-size:1.8rem;font-weight:700;margin:0 -1rem;background-color:#ccc;padding:.15rem .3rem}.booking .close:hover,.booking .close:focus{color:#000;text-decoration:none;cursor:pointer;background-color:#888}.booking .pointer:hover{border:1px dashed #3a3}.booking .popup-title{font-weight:700;font-size:130%;background-color:#004080;color:#fff;margin:-1rem -1rem .5rem;padding:0 1rem}.booking :is(button){font-size:100%;padding:.4rem .75rem;border:1px solid #aaa;border-radius:.5rem;background-color:#eee;color:#333;cursor:pointer;margin-right:.25rem;margin-bottom:.25rem}.booking .toggle{border-radius:.5rem;font-weight:400}.booking .remove{margin:auto;display:block;max-width:20rem;font-size:140%;font-weight:700}.cruise-explorer{font-family:Segoe UI,sans-serif;font-family:Inter,sans-serif;margin:0;color:#333}.cruise-explorer .button{background-color:#fff;border-radius:0 0 .5rem .5rem;border:1px solid #ccc;box-shadow:0 .1rem .25rem #00000026;color:#000;cursor:pointer;display:inline-block;font-family:Lora,serif;font-family:Inter,sans-serif;font-size:.9rem;margin-left:2rem;min-width:8rem;padding:0 1rem .7rem;text-decoration:none;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.cruise-explorer .button :is(b){margin-left:-1rem;margin-right:-1rem;padding-left:1rem}.cruise-explorer .back-button{border-radius:.4rem;padding:.7rem .5rem}.cruise-explorer .button:hover{transform:translateY(-.15rem);box-shadow:0 .2rem .4rem #00000040}.cruise-explorer .button:active{transform:none;box-shadow:none}.cruise-explorer .grid-container2{display:grid;grid-template-columns:1fr 3fr;gap:1rem;padding:1rem}.cruise-explorer .filter-card{background:#fff;border-radius:.5rem;padding:1rem;box-shadow:0 .2rem .75rem #0000000d}.cruise-explorer .filter-group{margin-bottom:.75rem}.cruise-explorer .filter-group label{display:block;margin-bottom:.25rem;font-weight:700}.cruise-explorer .filter{border:1px solid #aaa;margin:.15rem;border-radius:.5rem;padding:.7rem}.cruise-explorer .btn-filter{border-radius:1rem;padding:.3rem .75rem;border:none;background-color:#eee;color:#333;cursor:pointer;margin-right:.25rem;margin-bottom:.25rem}.cruise-explorer .btn-filter.active{background-color:#004080;color:#fff}.cruise-explorer .table-container{background:#fff;border-radius:.6rem;box-shadow:0 .2rem 1rem #00000014}.cruise-explorer :is(table){border-collapse:collapse;margin-left:auto;margin-right:auto}.cruise-explorer :is(th),.cruise-explorer :is(td){padding:.6rem;text-align:center;border:1px solid #ddd}.cruise-explorer :is(th){background:#eee}.cruise-explorer :is(tbody) tr:hover{background-color:#f5f5f5}.cruise-explorer .length-range-container{display:flex;flex-direction:column;align-items:center}.cruise-explorer #lengthRange{width:100%;margin-bottom:.25rem}.cruise-explorer #lengthMinDisplay,.cruise-explorer #lengthMaxDisplay{font-size:.8rem;color:#555}.cruise-explorer .month-buttons-container{margin-bottom:.75rem}.cruise-explorer .month-buttons-container label{display:block;margin-bottom:.25rem;font-weight:700}.cruise-explorer .month-button{border-radius:1rem;padding:.3rem .5rem;border:none;background-color:#eee;color:#333;cursor:pointer;margin-right:.25rem;margin-bottom:.25rem}.cruise-explorer .month-button.active{background-color:#0077b6;color:#fff}.calform>div>div{width:min-content;display:grid;grid-template-columns:repeat(12,1fr)}.toggle{display:inline-block;border:1px solid #ccc;border-radius:.25rem;margin-right:.2rem;padding-left:.3rem;padding-right:.3rem;cursor:pointer;text-align:center}.logo{cursor:pointer;display:flex;justify-content:center;align-items:center;font-family:Arial,sans-serif;font-family:Inter,sans-serif;padding-right:1rem;padding-left:1rem}.logo :is(div){text-align:center;font-size:2.5rem;color:#006;text-shadow:.1rem .1rem .2rem rgba(0,0,1,.4)}.logo :is(img){height:100%}.title{text-align:center;font-size:1.5rem;color:#006;text-shadow:.1rem .1rem .2rem rgba(0,0,1,.4)}.itinerary-table :is(tr){cursor:auto}.notes div{font-style:italic;font-size:.85rem}#details{color:#000;text-align:left;background:#fff;padding:1.4rem;border-radius:.5rem;box-shadow:0 .2rem .5rem #0000001a;margin-bottom:1rem;text-align:center}#details :is(h3),#details h4{color:#144064;font-family:Playfair Display,serif;font-family:Inter,sans-serif;margin-bottom:.75rem}#details :is(h2){background-color:#f7fbfe;border-radius:1rem}#details :is(ul){font-weight:400;list-style:disc;padding-left:1rem}#details :is(li){margin-bottom:.4rem;font-size:1.1rem;line-height:1.6}#details :is(a){line-height:3rem}.togs{margin:3rem}.pros-cons-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pros,.cons{padding:.75rem;border-radius:.3rem}.cruise-summary{font-family:Lora,serif;font-family:Inter,sans-serif;margin:0;padding:0;color:#333;display:grid;grid-template-rows:auto 1fr auto;min-height:100vh;text-align:left;font-weight:400;text-align:center;label {margin-bottom: 0;} #cruise-details {color: #222; input,select {color: #33b; font-size: 120%;} :is(textarea) {color: #33b; font-size: 100%; padding: .5rem;}} :is(th) {color: black;} :is(img) {width: 20rem; height: 20rem;} .header {background: linear-gradient(to right,#14405B,#366A83); color: #fff; padding: 1.4rem; text-align: center; box-shadow: 0 .2rem .4rem rgba(0,0,0,.2);} .header h1 {font-size: 2.5rem; margin-bottom: .5rem; font-family: "Playfair Display",serif; font-family: "Inter",sans-serif;} .header p {font-size: 1.2rem; font-style: italic;} :is(main) {padding: 1rem;} #cruise-details {background: #fff; padding: 1.4rem; border-radius: .6rem; box-shadow: 0 .2rem .5rem rgba(0,0,0,.1); margin-bottom: 1rem; :is(h2) {color: #144064; font-family: "Playfair Display",serif; font-family: "Inter",sans-serif; margin-bottom: .75rem;} :is(span) {display: inline-block;}} .details-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 1rem; :is(img) {border-radius: .4rem;}} .info-grid {display: grid; grid-template-columns: 1fr 1fr; :is(div) {margin-top: auto; margin-bottom: auto;} div:nth-child(odd) {text-align: right; font-weight: bold; margin-right: .4rem;} div:nth-child(even) {text-align: left;} div:nth-child(odd)::after {content: ":"}} .button-container {text-align: center; margin-top: 1rem; :is(span) {display: inline-table;}} .button {background-color: #f7fbfe; border-radius: .4rem; border: 1px solid #ccc; box-shadow: 0 .1rem .25rem rgba(0,0,0,.15); color: black; cursor: pointer; display: inline-block; font-family: "Lora",serif; font-family: "Inter",sans-serif; font-size: .9rem; margin: .2rem .5rem; min-width: 8rem; padding: .7rem .5rem; text-align: center; text-decoration: none; transition: transform .2s ease-in-out,box-shadow .2s ease-in-out;} .button:hover {transform: translateY(-.15rem); box-shadow: 0 .2rem .4rem rgba(0,0,0,.25);} .button:active {transform: none; box-shadow: none;} #cruise-itinerary {background: #fff; padding: 1.4rem; border-radius: .6rem; box-shadow: 0 .2rem .5rem rgba(0,0,0,.1); margin-bottom: 1rem;} #cruise-itinerary h2 {color: #144064; font-family: "Playfair Display",serif; font-family: "Inter",sans-serif; margin-bottom: .75rem;} .itinerary-table {width: 100%; border-collapse: collapse; margin-top: .75rem;} .itinerary-table th,.itinerary-table td {border: 1px solid #ddd; padding: .3rem; text-align: center;} .itinerary-table th {background-color: #f2f2f2; text-align: center;} :is(footer) {background-color: #333; color: #fff; text-align: center; padding: 1rem; font-size: .9rem;} @media (max-width: 768px) {:is(html) {font-size: 19px;} .header {padding: 1rem;} .details-grid,.grid-container2 {grid-template-columns: 1fr;}} .header {display: block;}}.highlight{color:green}.bottom{align-content:end}#app>div{display:grid;grid-template-rows:min-content 1fr;height:100vh}nav>a{cursor:pointer}.icon-button{display:inline-block;margin-right:1rem}.filter-cards{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.filter-cards .filter-card{cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;background-color:#f7fbfe}.filter-cards .filter-card :is(h3){display:inline-block}.filter-cards .filter-card :is(i){margin-right:.5rem}.filter-cards .filter-card:hover{transform:translateY(-.15rem);box-shadow:0 .2rem .4rem #00000040}.filter-cards .filter-card:active{transform:none;box-shadow:none}.cruises .button{width:40rem;margin-bottom:.5rem;margin-left:0;margin-right:0;font-size:1.5rem}.cruises .button :is(b){background-color:#f7fbfe;padding-bottom:0;display:block;border:1px solid #ccc;font-weight:600}.cruises>div>div{width:min-content}.hidden{display:none}#cruise-details .passenger-card{border:1px solid #e8e8e8;padding:1rem;min-width:24rem;min-height:2rem;margin:.5rem .2rem;text-align:left}#cruise-details .passenger-card>span{margin-left:.5rem;border-bottom:1px solid #ccc;min-width:5rem;min-height:1.5rem}#cruise-details .passenger-card>span>span{margin:0rem}#cruise-details .passenger-card :is(h3){text-align:center;font-weight:400;font-family:sans-serif;font-family:Inter,sans-serif;text-decoration:underline}#cruise-details .passenger-card .label{font-weight:700;min-width:5rem;margin-right:1rem;text-align:right}#cruise-details .passenger-card .label2{font-weight:700;text-align:left}#cruise-details .passenger-card:hover{border-color:#888}#cruise-details .wide{width:100%}#cruise-details .wide :is(textarea){width:100%;height:8rem}.available{width:40rem;font-size:1.5rem;border:1px solid #eee;border-radius:1rem;padding:.5rem;height:fit-content;border:1px solid green;background-color:#fdfffd}.left div{float:left}.button-link{cursor:pointer;text-decoration:underline;margin-top:1rem;margin-bottom:1rem}#details-content{text-align:left}.pnotes{font-size:70%;margin-top:1rem;padding-top:1rem;border-top:1px solid #ddd}@media (max-width: 1080px){.calform>div>div{grid-template-columns:repeat(6,1fr)}.calform>div>div>div:nth-child(12n),.calform>div>div>div:nth-child(12n-5),.calform>div>div>div:nth-child(12n-4),.calform>div>div>div:nth-child(12n-3),.calform>div>div>div:nth-child(12n-2),.calform>div>div>div:nth-child(12n-1){margin-bottom:.8rem}}@media (max-width: 1000px){.header{max-width:100vw}.cruise-explorer .grid-container2{grid-template-columns:1fr;gap:0;padding:0;text-align:center}.cruises .button{max-width:90vw}.available{width:92vw;display:block}nav>a{display:block;white-space:nowrap;padding-top:.3rem;padding-bottom:.3rem}.booking .modal-content{width:100%;padding:.1rem}.cruise-summary>div{max-width:90vw}.small-center{margin-left:auto;margin-right:auto}}@media (max-width: 540px){:is(html){font-size:14px}input,select{margin:0rem;padding:.28rem}.cruise-explorer{padding:0;margin:0}.cruise-explorer :is(td){padding:.2rem}.cruise-summary #cruise-details{padding:0}.cruise-summary :is(main){padding:0}.cruise-summary .itinerary-tablee td{padding:.1rem}.cruise-summary .info-grid{grid-template-columns:1fr;div:nth-child(even) {text-align: center;} div:nth-child(odd) {text-align: center; margin-right: 0; text-decoration: underline;} div:nth-child(odd)::after {content: ""}}}@media (max-width: 330px){:is(html){font-size:10px}}@media (max-width: 220px){:is(html){font-size:8px}}@media (max-width: 180px){:is(html){font-size:7px}}.length-form .form-item:nth-child(3),.length-form .form-item:nth-child(4){width:4rem;display:inline-block}
