@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--green:#1d6556;--ink:#17332d;--muted:#6b7b75;--cream:#faf7ef;--mint:#e7f1eb;--line:#dfe7e1}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif}header{padding:20px 7%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-weight:700;letter-spacing:2px;color:var(--green)}.brand b{font-weight:400}.hero{background:var(--cream);padding:65px 9%;min-height:360px}.hero>p:first-child{font-size:11px;letter-spacing:2px;color:var(--green);font-weight:700}.hero h1{font:600 clamp(40px,7vw,68px)/1.08 'Playfair Display',serif;margin:15px 0}.hero em{color:var(--green)}.hero p{color:var(--muted);line-height:1.7}.btn{display:inline-block;border:0;border-radius:8px;background:var(--green);color:white;padding:13px 18px;text-decoration:none;font-weight:700;cursor:pointer;margin-top:8px}.secondary{border:1px solid #b9cec3;border-radius:8px;padding:10px 13px;background:white;color:var(--green);font-weight:700;cursor:pointer}main{padding:55px 7%}h2{font:600 34px 'Playfair Display',serif;margin:0 0 8px}.sub{color:var(--muted);font-size:13px;line-height:1.6}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:25px}.card{border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.pic{height:160px;background:linear-gradient(135deg,#c6e0d4,#edc59e);display:grid;place-items:center;font-size:45px;color:white}.pic img{width:100%;height:100%;object-fit:cover}.inside{padding:18px;display:flex;flex-direction:column;flex:1}.inside h3{margin:0 0 10px}.meta{font-size:12px;color:var(--muted);margin-bottom:10px}.inside p{font-size:13px;color:var(--muted);line-height:1.6;flex:1}.price{font-size:21px;font-weight:700}.price small{font-size:11px;display:block;color:var(--muted);font-weight:400}.inside .btn{align-self:flex-start}footer{border-top:1px solid var(--line);padding:25px 7%;font-size:12px;color:var(--muted)}.overlay{position:fixed;inset:0;background:#0d2722b8;display:grid;place-items:center;padding:14px;z-index:5;overflow:auto}.hidden{display:none!important}.panel{background:white;padding:27px;border-radius:15px;width:min(100%,500px);max-height:95vh;overflow:auto;position:relative}.panel.wide{width:min(100%,760px)}.x{position:absolute;right:13px;top:8px;border:0;background:none;font-size:28px;cursor:pointer;color:var(--muted)}form label{display:block;font-size:12px;font-weight:700;margin:12px 0}input,select,textarea{width:100%;display:block;margin-top:5px;padding:11px;border:1px solid #d2dfd7;border-radius:7px;font:inherit;font-size:14px}input[type=checkbox]{width:auto;display:inline}.inline{display:flex;align-items:center;gap:8px}.inline input{margin:0}.flex{display:flex;gap:12px;align-items:center;justify-content:space-between}.flex>label{flex:1}.admin-item{border:1px solid var(--line);border-radius:8px;padding:12px;margin:8px 0;font-size:13px;display:flex;justify-content:space-between;gap:10px;align-items:center}.admin-item small{display:block;color:var(--muted);margin-top:4px}.msg{font-size:12px;color:var(--green)}.err{font-size:12px;color:#a23535}@media(max-width:700px){.grid{grid-template-columns:1fr}.hero{padding:45px 7%}.flex{display:block}.hero h1{font-size:45px}header{gap:12px;flex-wrap:wrap}.panel{padding:24px 17px}}

.reservation-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.reservation-actions button{white-space:nowrap}.admin-item{gap:12px}

.passenger{border:1px solid var(--line);border-radius:10px;padding:12px;margin:14px 0}.passenger legend{font-weight:700;color:var(--green)}.contract-box{background:var(--cream);border:1px solid var(--line);padding:12px;border-radius:9px;max-height:250px;overflow:auto}.contract-box h3{margin:0}.panel .inline{align-items:flex-start;line-height:1.5}.panel .inline input{margin-top:3px}button:disabled{opacity:.55;cursor:not-allowed}
