
:root{--ink:#163d42;--teal:#087b80;--cream:#faf7ee;--gold:#ebc76b}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 Arial,sans-serif}
a{color:inherit}
button,input,select{font:inherit}
button,.button{cursor:pointer;border:0;border-radius:5px;padding:14px 22px;background:var(--teal);color:white;text-decoration:none;display:inline-block;font-weight:600}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c48c22;outline-offset:4px}
.wrap{max-width:1180px;margin:auto;padding:0 28px}
header{display:flex;justify-content:space-between;align-items:center;padding:22px 0}
header a{text-decoration:none}
nav{display:flex;gap:28px;font-size:14px}
.brand{font-weight:700;font-size:23px}
.brand span{color:var(--teal)}
.draft{background:#eae4d4;text-align:center;padding:7px 15px;font-size:12px}
.hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px}
.hero-copy{padding:65px 60px 55px 0}
.eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--teal);font-weight:700}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08}
h1{font-size:76px;margin:24px 0}
h1 em{color:var(--teal)}
h2{font-size:46px;margin-bottom:25px}
h3{font-size:20px;line-height:1.3}
.lead{font-size:19px;max-width:470px}
.hero-image{background:url('/riviera-background.webp') center/cover;border-radius:150px 8px 8px 8px;position:relative;min-height:480px}
.caption{position:absolute;bottom:25px;left:25px;background:var(--cream);padding:12px 20px;font:italic 23px Georgia,serif}
.facts{display:flex;gap:28px;margin:30px 0;font-size:14px}
.facts strong{display:block;font-size:20px}
.note{font-size:13px;color:#526c6f}
.intro{text-align:center;max-width:760px;margin:85px auto 50px}
.route{font-size:13px;letter-spacing:1px;color:var(--teal)}
section{padding:35px 0}
.days{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.day{border-top:1px solid #bfcbc5;padding:24px 8px 20px}
.num{font:36px Georgia,serif;color:var(--teal);display:block;margin-bottom:16px}
.day p{color:#4a6263;font-size:15px}
.details{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:#e9eee5;margin-top:35px;padding:40px;border-radius:8px}
.details h2{font-size:32px}
.details ul{padding-left:20px}
.dates-section{background:var(--ink);color:var(--cream);margin-top:55px;padding:65px 0}
.dates-section .eyebrow{color:var(--gold)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px}
.section-head p{max-width:350px;color:#cfdddd}
.dates{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}
.departure{background:var(--cream);color:var(--ink);padding:26px;border-radius:7px}
.badge{font-size:12px;color:#236c49;background:#e2ecdf;padding:5px 9px;display:inline-block;border-radius:3px}
.badge.low{background:#fae7bd;color:#805215}
.badge.full{background:#e6e6e2;color:#555}
.departure h3{margin:22px 0 7px;font-size:24px}
.price{font:32px Georgia,serif;margin:25px 0 4px}
.departure button{width:100%;margin-top:20px}
.departure button.secondary{background:#dce5df;color:var(--ink)}
.dates-section .note{color:#cfdddd}
.dates-section .departure .note{color:#526c6f}
.faq{max-width:790px;margin:45px auto}
details{border-bottom:1px solid #cbd1c6;padding:20px 0}
summary{cursor:pointer;font-weight:600}
details p{margin:15px 0 0}
.demo{border:1px dashed #b4b9a8;padding:25px;margin:35px 0}
.demo h3{margin-bottom:8px}
.editor-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;margin:20px 0}
.editor-row label{font-size:13px}
.editor-row input,.editor-row select{width:100%;padding:9px;margin-top:6px;border:1px solid #a8b5ad;border-radius:4px;background:white}
.demo button{padding:10px 15px}
.status{min-height:24px;font-size:14px}
footer{padding:35px 0;border-top:1px solid #cbd1c6;display:flex;justify-content:space-between;font-size:13px}
dialog{border:0;border-radius:10px;padding:35px;max-width:480px;width:calc(100% - 36px);color:var(--ink);background:var(--cream)}
dialog::backdrop{background:#102e36aa}
dialog h2{font-size:32px}
dialog label{display:block;margin:15px 0}
dialog input{width:100%;padding:10px;border:1px solid #91aaa1}
.close{float:right;background:transparent;color:var(--ink);padding:3px 10px;font-size:24px}
.hidden{display:none}
@media(max-width:760px){.wrap{padding:0 20px}
nav{gap:16px;font-size:12px}
.brand{font-size:18px}
.hero{grid-template-columns:1fr}
.hero-copy{padding:35px 0}
.hero-image{min-height:350px;border-radius:90px 6px 6px 6px}
h1{font-size:58px}
h2{font-size:37px}
.facts{gap:22px}
.intro{margin-top:55px}
.days,.dates{grid-template-columns:1fr}
.days{gap:0}
.day{padding:20px 0}
.num{float:left;margin-right:20px}
.day p{margin-left:62px}
.details{grid-template-columns:1fr;gap:20px;padding:25px}
.section-head{display:block}
.editor-row{grid-template-columns:1fr}
.dates-section{padding:45px 0}
footer{display:block}
header{gap:12px}
}


.language-switcher{display:flex;gap:5px}
.lang-btn{background:transparent;border:none;color:#667eea;font-weight:600;font-size:.9rem;padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .3s ease;font-family:inherit;display:inline-block}
.lang-btn:hover{background:rgba(102,126,234,.1);transform:translateY(-2px)}
.lang-btn.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;box-shadow:0 2px 8px rgba(102,126,234,.3)}
header{flex-wrap:wrap}
header nav{flex-wrap:wrap}
.dates:has(.empty-state){display:block}
.empty-state{padding:30px;border:1px solid #688589;border-radius:8px}
.empty-state h3{font:30px Georgia,serif}
.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.contact-actions a{flex:1;text-align:center}
dialog p{line-height:1.5}
.departure .badge+.badge{margin:8px 0 0}
.date-note{font-size:14px}
dialog .button{font-size:14px}
@media(max-width:760px){header nav{width:100%;order:3}
header{row-gap:14px}
.language-switcher{margin-left:auto}
.lang-btn{padding:6px 12px;font-size:.85rem}
.hero-copy{padding-top:25px}
.facts{gap:18px}
.facts strong{font-size:18px}
h1{font-size:64px}
}

@media(max-width:760px){footer>span,footer>a{display:block;margin:8px 0}
}
