.yacht-hero{position:relative;height:70vh;overflow:hidden}.yacht-hero-gallery{position:relative;height:100%}.main-image{width:100%;height:100%;position:relative}.main-image img{width:100%;height:100%;object-fit:cover;cursor:pointer}.gallery-thumbs{z-index:99;position:absolute;bottom:20px;right:20px;display:flex;gap:10px}.gallery-thumbs img{width:80px;height:60px;object-fit:cover;border-radius:8px;cursor:pointer;opacity:.7;transition:opacity .3s ease;border:2px solid transparent}.gallery-thumbs img:hover{opacity:1;border-color:var(--primary-color)}.gallery-thumbs img.active,.gallery-thumbs img:hover{opacity:1;border-color:var(--primary-color);cursor:pointer}.yacht-hero-content{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:3rem 0;color:var(--white-color);z-index:10}.yacht-info{margin-bottom:2rem}.yacht-title{font-size:2.5rem;font-weight:700;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.yacht-meta{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem}.yacht-rating{display:flex;align-items:center;gap:.5rem}.stars{color:gold;font-size:1.1rem}.event-rating{display:flex;align-items:center;gap:8px;margin-bottom:8px}.event-rating .stars{font-size:.9rem}.event-rating .rating-text{font-size:.85rem;color:#666}.rating-text{color:#fffc;font-size:.9rem}.rating-badge{background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:.25rem .5rem;border-radius:12px;border:1px solid rgba(255,255,255,.2);font-weight:600;color:var(--white-color);font-size:.85rem;box-shadow:0 2px 8px #0000004d}.yacht-location{display:flex;align-items:center;gap:.5rem;color:#ffffffe6}.yacht-price{display:flex;align-items:baseline;gap:.5rem}.price-amount{font-size:2rem;font-weight:700;color:var(--primary-color)}.price-unit{font-size:1.2rem;color:#fffc}.yacht-quick-book{background:var(--white-color);padding:2rem;border-radius:16px;box-shadow:0 10px 30px #0003;min-width:320px;max-width:400px}.yacht-quick-book h3{color:var(--secondary-color);margin-bottom:1.5rem;font-size:1.3rem}.booking-form .form-group{margin-bottom:1rem}.booking-form label{display:block;margin-bottom:.5rem;color:var(--text-color);font-weight:500}.booking-form input,.booking-form select{width:100%;padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem}.yacht-details{padding:4rem 0;background-color:var(--background-color)}.detail-section{background:var(--white-color);padding:2.5rem;border-radius:16px;margin-bottom:2rem;box-shadow:0 5px 15px #00000014}.detail-section h2{color:var(--secondary-color);margin-bottom:2rem;font-size:1.8rem}.specs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.spec-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#25d7eb0d,#1245970d);border-radius:12px;border:1px solid rgba(37,215,235,.1)}.spec-icon{width:50px;height:50px;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white-color);flex-shrink:0}.spec-info{text-align:center}.spec-value{display:block;font-size:1.5rem;font-weight:700;color:var(--secondary-color);margin-bottom:.25rem}.spec-label{font-size:.9rem;color:var(--text-color);text-transform:uppercase;letter-spacing:.5px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.feature-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#25d7eb0d;border-radius:8px;transition:all .3s ease}.feature-item:hover{background:#25d7eb1a;transform:translate(5px)}.feature-item svg{color:var(--primary-color);flex-shrink:0}.yacht-description p{color:var(--text-color);line-height:1.8;margin-bottom:1.5rem;font-size:1.1rem}.time-slots{display:grid;gap:1rem;max-height:var(--max-height-scrollable);overflow-y:auto}.time-slot-card{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-radius:12px;border:2px solid;transition:all .3s ease}.time-slot-card.available{border-color:#10b981;background:#10b9810d}.time-slot-card.booked{border-color:#ef4444;background:#ef44440d;opacity:.6}.time-slot-header{display:flex;flex-direction:column;gap:.25rem}.time-range{font-weight:600;color:var(--secondary-color)}.availability{font-size:.85rem;padding:.25rem .5rem;border-radius:12px;font-weight:500}.time-slot-card.available .availability{background:#10b981;color:var(--white-color)}.time-slot-card.booked .availability{background:#ef4444;color:var(--white-color)}.time-slot-price{font-weight:700;color:var(--primary-color);font-size:1.1rem}.time-slot-details{flex:1;margin:.5rem 0;display:flex;flex-direction:column;gap:.25rem}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.detail-item.negotiable{justify-content:flex-end}.detail-label{color:var(--text-color);font-weight:500;min-width:fit-content}.detail-value{color:var(--secondary-color);font-weight:600;display:flex;flex-wrap:wrap;gap:.25rem}.negotiable-badge{background:linear-gradient(135deg,var(--color-warning),#f59e0b);color:var(--white-color);padding:.2rem .5rem;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detail-item.description{margin-top:.25rem}.description-text{color:var(--text-color);font-style:italic;line-height:1.3}.yacht-sidebar{position:sticky;top:2rem}.sidebar-card{background:var(--white-color);padding:2rem;border-radius:16px;margin-bottom:2rem;box-shadow:0 5px 15px #00000014}.sidebar-card h3{color:var(--secondary-color);margin-bottom:1.5rem;font-size:1.3rem}.captain-info{display:flex;align-items:center;gap:1rem}.captain-info img{width:60px;height:60px;border-radius:50%;object-fit:cover}.captain-details h4{color:var(--secondary-color);margin-bottom:.25rem;font-size:1.1rem}.captain-details p{color:var(--text-color);font-size:.9rem;margin-bottom:.5rem}.rules-list{list-style:none;padding:0}.rules-list li{color:var(--text-color);margin-bottom:.75rem;padding-left:1.5rem;position:relative;line-height:1.5}.rules-list li:before{content:"✓";color:var(--primary-color);font-weight:700;position:absolute;left:0}.policy-info{display:flex;flex-direction:column;gap:1rem}.policy-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#25d7eb0d;border-radius:8px}.policy-period{font-weight:600;color:var(--secondary-color)}.policy-refund{color:var(--primary-color);font-weight:500}.boat-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}.boat-card{background:var(--white-color);border-radius:16px;box-shadow:0 10px 30px #00000014;overflow:hidden;transition:all .3s ease;border:1px solid rgba(var(--primary-color-rgb),.1);position:relative;flex:1;display:flex;flex-direction:column}.boat-card-link:hover .boat-card{transform:translateY(-10px);box-shadow:0 20px 40px #00000026}.boat-image{position:relative;height:250px;overflow:hidden}.boat-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.boat-card-link:hover .boat-image img{transform:scale(1.05)}.boat-badge{position:absolute;top:1rem;left:1rem;display:inline-flex;align-items:center;line-height:1.25;background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));color:var(--white-color);padding:.5rem 1rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:5}.boat-card{position:relative}.boat-price{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;line-height:1.25;background:rgba(var(--black-color-rgb, 0, 0, 0),.8);color:var(--white-color);padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;z-index:5}.boat-content{padding:1.25rem 1.5rem;flex:1;display:flex;flex-direction:column;gap:.75rem}.boat-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:0}.boat-header h3{font-size:1.25rem;font-weight:700;color:var(--secondary-color);margin:0;flex:1;min-width:0;line-height:1.3}.boat-rating{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0}.boat-rating .stars,.boat-rating .rating-text{display:inline-flex;align-items:center}.stars{color:var(--color-warning);font-size:1rem}.rating-text{font-size:.875rem;color:var(--text-color);font-weight:500}.boat-location{display:flex;align-items:center;gap:.5rem;color:var(--text-color);font-size:.9rem;margin-bottom:0}.boat-location svg{color:var(--primary-color);flex-shrink:0}.boat-seller{display:flex;align-items:center;gap:.5rem;color:var(--text-color);font-size:.9rem;margin-bottom:0}.boat-seller svg{color:var(--primary-color);flex-shrink:0}.boat-specs{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0}.spec-item{display:flex;align-items:center;gap:.5rem;color:var(--text-color);font-size:.9rem}.spec-item svg{color:var(--primary-color);flex-shrink:0}.boat-features{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:0}.feature-tag{background:linear-gradient(135deg,rgba(var(--primary-color-rgb),.1),rgba(var(--secondary-color-rgb),.1));color:var(--primary-color);padding:.35rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;border:1px solid rgba(var(--primary-color-rgb),.2);line-height:1.25}.boat-pricing-types{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:auto;margin-bottom:0;padding-top:.25rem}.pricing-type-badge{background:linear-gradient(135deg,rgba(var(--secondary-color-rgb),.1),rgba(var(--secondary-color-rgb),.2));color:var(--secondary-color);padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;border:1px solid rgba(var(--secondary-color-rgb),.3)}.btn-outline{background:transparent;border:2px solid var(--primary-color);color:var(--primary-color)}.btn-outline:hover{background:var(--primary-color);color:var(--white-color)}.boat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:3rem;align-items:stretch}.similar-yachts{padding:4rem 0;background-color:var(--white-color)}.similar-yacht-card{background:var(--white-color);border-radius:16px;overflow:hidden;box-shadow:0 5px 15px #00000014;transition:all .3s ease;margin-bottom:2rem}.similar-yacht-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000026}.similar-yacht-card .yacht-image{height:200px;overflow:hidden}.similar-yacht-card .yacht-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.similar-yacht-card:hover .yacht-image img{transform:scale(1.1)}.similar-yacht-card .yacht-content{padding:1.5rem}.similar-yacht-card h3{color:var(--secondary-color);margin-bottom:.5rem;font-size:1.2rem}.similar-yacht-card .yacht-rating{margin-bottom:1rem}.similar-yacht-card .yacht-price{color:var(--primary-color);font-weight:700;font-size:1.1rem;margin-bottom:1rem}.yacht-events{padding:4rem 0;background:linear-gradient(135deg,#25d7eb0d,#1245970d)}.event-card{background:var(--white-color);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #00000014;border:1px solid rgba(37,215,235,.1);transition:all .3s ease;height:100%;display:flex;flex-direction:column}.event-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000026;border-color:var(--primary-color)}.event-image{position:relative;height:200px;overflow:hidden}.event-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.event-card:hover .event-image img{transform:scale(1.05)}.event-boat-name{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000c);padding:1rem;color:var(--white-color)}.event-boat-name h4{margin:0;font-size:1.1rem;font-weight:600;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.event-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.event-content h3{color:var(--secondary-color);margin-bottom:.5rem;font-size:1.3rem;font-weight:600}.event-content p{color:var(--text-color);line-height:1.5;margin-bottom:1rem;font-size:.95rem}.event-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.08)}.event-price{display:flex;flex-direction:column;align-items:flex-start}.price-amount{font-size:1.4rem;font-weight:700;color:var(--primary-color);line-height:1}.price-duration{font-size:.85rem;color:var(--text-color);margin-top:.25rem}.event-capacity{display:flex;align-items:center;gap:.5rem;color:var(--text-color);font-size:.9rem}.event-capacity svg{color:var(--primary-color);flex-shrink:0}.event-features{margin-bottom:1rem}.event-features h4{color:var(--secondary-color);font-size:1rem;margin-bottom:.5rem;font-weight:600}.feature-tags{display:flex;flex-wrap:wrap;gap:.5rem}.event-details-grid{display:grid;grid-template-columns:1fr;gap:.75rem;margin-bottom:1.5rem;flex:1}.event-details-grid .detail-item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.event-details-grid .detail-item:last-child{border-bottom:none}.event-details-grid .detail-item.negotiable{justify-content:center;border-bottom:none}.event-details-grid .detail-label{color:var(--text-color);font-weight:500;font-size:.85rem;flex-shrink:0;min-width:fit-content}.event-details-grid .detail-value{color:var(--secondary-color);font-weight:600;text-align:right;font-size:.85rem;line-height:1.3}.event-details-grid .negotiable-badge{background:linear-gradient(135deg,var(--color-warning),#f59e0b);color:var(--white-color);padding:.2rem .6rem;border-radius:10px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.btn-block{width:100%;margin-top:auto}.no-events{text-align:center;padding:3rem;color:var(--text-color)}.no-events p{font-size:1.1rem;margin:0}.reserved-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:2rem}.event-package{background:var(--white-color);border-radius:16px;padding:2rem;box-shadow:0 10px 30px #00000014;border:1px solid rgba(37,215,235,.1);transition:all .3s ease}.event-package:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000026;border-color:var(--primary-color)}.package-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.package-header h3{font-size:1.3rem;font-weight:600;color:var(--secondary-color);margin:0}.package-price{font-size:1.4rem;font-weight:700;color:var(--primary-color)}.package-description{margin-bottom:1.5rem}.package-description p{color:var(--text-color);line-height:1.6;margin:0}.package-features{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.package-features span{background:#25d7eb1a;color:var(--primary-color);padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.package-action{text-align:center}.package-action .btn{width:100%;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600}.journeys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:2rem}.journey-card{background:var(--white-color);border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #00000014;border:1px solid rgba(37,215,235,.1);transition:all .3s ease}.journey-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000026;border-color:var(--primary-color)}.journey-image{height:200px;overflow:hidden}.journey-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.journey-card:hover .journey-image img{transform:scale(1.1)}.journey-content{padding:2rem}.journey-content h3{color:var(--secondary-color);margin-bottom:1rem;font-size:1.4rem}.journey-content p{color:var(--text-color);line-height:1.6;margin-bottom:1.5rem}.journey-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.journey-duration,.journey-price{font-weight:600;color:var(--secondary-color)}.journey-action{text-align:center}.journey-action .btn{width:100%;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600}@media (max-width: 1200px){.event-content{padding:1.25rem}.event-content h3{font-size:1.2rem}.price-amount{font-size:1.3rem}}@media (max-width: 1200px){.boat-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}}@media (max-width: 768px){.event-meta{flex-direction:column;align-items:flex-start;gap:.75rem}.event-price{align-items:flex-start}.event-capacity{align-self:flex-end}.event-content{padding:1.25rem}.event-content h3{font-size:1.1rem}.price-amount{font-size:1.2rem}.detail-item{flex-direction:column;align-items:flex-start;gap:.25rem}.detail-value{text-align:left;font-size:.8rem}.detail-label{font-size:.8rem}.boat-grid{grid-template-columns:1fr;gap:1.5rem}.boat-header{flex-direction:column;align-items:flex-start;gap:.5rem}.boat-rating{margin-left:0}.boat-specs{flex-direction:column;gap:.75rem}.boat-actions{flex-direction:column}.boat-actions .btn{width:100%}}@media (max-width: 576px){.boat-content{padding:1rem}.boat-header h3{font-size:1.2rem}.boat-features{justify-content:center}.feature-tag{font-size:.75rem;padding:.2rem .5rem}}@media (max-width: 992px){.yacht-hero-content{padding:2rem 0}.yacht-title{font-size:2rem}.yacht-meta{gap:1rem}.specs-grid{grid-template-columns:repeat(2,1fr)}.yacht-quick-book{min-width:280px;max-width:320px;padding:1.5rem}}@media (max-width: 768px){.yacht-hero{height:60vh}.yacht-title{font-size:1.8rem}.gallery-thumbs{display:none}.yacht-quick-book{margin-top:2rem;min-width:100%;max-width:none}.specs-grid,.features-grid{grid-template-columns:1fr}.yacht-sidebar{position:static}.time-slot-card{flex-direction:column;align-items:flex-start;gap:1rem}.time-slot-header{width:100%}.time-slot-details{width:100%;gap:.5rem}.detail-item{font-size:.8rem;flex-wrap:wrap}.detail-label{min-width:auto;flex-shrink:0}.negotiable-badge{font-size:.7rem;padding:.15rem .4rem}.policy-item{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (max-width: 576px){.yacht-hero{height:50vh}.yacht-title,.price-amount{font-size:1.5rem}.detail-section{padding:1.5rem}.spec-card{padding:1rem}.sidebar-card{padding:1.5rem}}.image-modal{display:none;position:fixed;z-index:10000;left:0;top:0;width:100%;height:100%;background-color:#000000e6;align-items:center;justify-content:center}.image-modal.show{display:flex}.modal-content{max-width:90%;max-height:90%;position:relative}.modal-content img{width:100%;height:100%;object-fit:contain}.modal-close{position:absolute;top:-40px;right:0;color:var(--white-color);font-size:2rem;font-weight:700;cursor:pointer;background:none;border:none;padding:0;line-height:1}.modal-close:hover{color:var(--primary-color)}
