/* Hudson on the Canal - vibrant Florida coastal theme */
:root{
  --navy:#0b4f6c;
  --teal:#00a7b5;
  --aqua:#35d2d3;
  --aqua-deep:#007f92;
  --coral:#ff6f61;
  --sun:#ffc857;
  --palm:#2d8c68;
  --cream:#fff9e9;
  --sand:#ffe7b8;
  --ink:#173442;
  --white:#ffffff;
  --shadow:0 18px 44px rgba(10,78,93,.15);
}
body{background:#fffdf8;color:var(--ink)}
.site-header{border-top:5px solid var(--coral);background:rgba(255,253,248,.96);box-shadow:0 5px 24px rgba(5,80,103,.12)}
.brand{color:var(--navy)}
.brand-script{font-size:1.82rem;font-weight:700;letter-spacing:-.03em}
.brand-sub{color:var(--coral);font-weight:900}
.main-nav a{color:var(--navy)}
.main-nav a:hover{color:var(--coral)}
.btn-primary{background:linear-gradient(135deg,var(--teal),var(--aqua-deep));box-shadow:0 11px 26px rgba(0,167,181,.29)}
.btn-book{background:linear-gradient(135deg,var(--coral),#ff8c54);color:#fff;box-shadow:0 11px 26px rgba(255,111,97,.28)}
.hero{background:
  linear-gradient(105deg,rgba(3,63,83,.72) 0%,rgba(0,117,137,.37) 47%,rgba(255,111,97,.18) 74%,rgba(255,200,87,.12) 100%),
  linear-gradient(180deg,#18abc0 0 34%,#65d9d4 34% 49%,#ffc857 49% 63%,#ff8a65 63% 78%,#087f92 78% 100%)}
.hero:before{background:radial-gradient(ellipse at 52% 100%,rgba(255,200,87,.5),rgba(255,111,97,.16) 32%,transparent 67%)}
.hero:after{background:linear-gradient(180deg,transparent,rgba(2,56,72,.52))}
.hero .eyebrow{color:#fff4c7;text-shadow:0 2px 8px rgba(0,0,0,.22)}
.hero-note{color:#fff7d8;text-shadow:0 3px 12px rgba(0,55,70,.42)}
.amenity-strip{background:#d8f4ef}
.amenity-strip article{background:#fffaf0;border-bottom:4px solid transparent}
.amenity-strip article:nth-child(1),.amenity-strip article:nth-child(4){background:#e5fbf9;border-bottom-color:var(--teal)}
.amenity-strip article:nth-child(2),.amenity-strip article:nth-child(5){background:#fff2d4;border-bottom-color:var(--sun)}
.amenity-strip article:nth-child(3),.amenity-strip article:nth-child(6){background:#fff0ec;border-bottom-color:var(--coral)}
.amenity-strip span{color:var(--teal)}
.amenity-strip article:nth-child(2n) span{color:var(--palm)}
.amenity-strip article:nth-child(3n) span{color:var(--coral)}
.about{background:linear-gradient(115deg,#ffffff 0%,#fff8e8 54%,#e9fbf7 100%)}
.teal{color:var(--teal)}
h2{color:var(--navy)}
.photo-placeholder{background:linear-gradient(145deg,#5fd8d4 0%,#c7f0d9 43%,#ffd26f 72%,#ff876c 100%)}
.photo-placeholder:before{background:linear-gradient(#55a96f,#14785a);opacity:.68}
.photo-placeholder:after{background:rgba(255,255,255,.55)}
.photo-placeholder span{color:var(--navy);border-left:5px solid var(--coral);box-shadow:0 8px 18px rgba(12,72,88,.12)}
.gallery-card:nth-child(2n){outline:3px solid rgba(0,167,181,.08)}
.gallery-card:nth-child(3n){outline:3px solid rgba(255,111,97,.09)}
.water-band{background:linear-gradient(105deg,rgba(0,113,137,.9),rgba(0,174,184,.62),rgba(255,111,97,.35)),linear-gradient(#0ab4c5,#ffc857);position:relative;overflow:hidden}
.water-band:after{content:"☀";position:absolute;right:7%;top:10%;font-size:7rem;color:rgba(255,218,108,.28)}
.water-band strong{color:#fff5c4}
.location{background:linear-gradient(180deg,#fff 0%,#fffdf7 100%)}
.round-links span{background:linear-gradient(145deg,#7ce5df,#ffe07d);border:4px solid #fff;box-shadow:0 13px 28px rgba(6,103,123,.17)}
.round-links div:nth-child(2n) span{background:linear-gradient(145deg,#a6edcf,#62d2d3)}
.round-links div:nth-child(3n) span{background:linear-gradient(145deg,#ffd15f,#ff8a67)}
.reviews{background:linear-gradient(105deg,rgba(8,82,103,.92),rgba(0,163,176,.72) 50%,rgba(255,111,97,.76)),linear-gradient(#08a9b9,#ff8e66)}
.reviews blockquote{border-top:6px solid var(--sun)}
.stars{color:#ffb928}
.faq{background:linear-gradient(135deg,#eafaf7,#fff7df)}
details{border-color:#cdece5;box-shadow:0 7px 18px rgba(12,87,103,.05)}
summary{color:var(--navy)}
.booking{background:linear-gradient(105deg,rgba(2,83,104,.9),rgba(0,164,177,.74) 54%,rgba(255,111,97,.72)),linear-gradient(#0c9db0,#ff795f)}
.booking .script{color:#fff1b7}
footer{border-bottom:7px solid var(--teal);background:#fffdf8}
.lightbox>div{background:linear-gradient(145deg,#5fd8d4,#dff5cf 48%,#ffd06a 72%,#ff8b6d)}
@media(max-width:820px){.main-nav{background:#fffdf8;border-top:4px solid var(--aqua)}.site-header{border-top-width:4px}}
@media(max-width:520px){.brand-script{font-size:1.35rem}.brand-sub{font-size:.52rem}.hero{background:linear-gradient(120deg,rgba(4,75,94,.78),rgba(0,156,171,.36),rgba(255,111,97,.17)),linear-gradient(180deg,#14aebe,#61d8d3 43%,#ffc857 63%,#ff8369 80%,#087f92)}}
