/* The Turquoise Letterbox — builder-ready redesign
   Style direction: warm cream, charcoal, turquoise, old-Calcutta serif headings, minimalist boutique cards. */
:root{
  --ink:#13231f;
  --muted:#61706d;
  --paper:#fff9ee;
  --cream:#fffdf8;
  --line:rgba(19,35,31,.14);
  --turq:#007f86;
  --turq2:#075f65;
  --turq3:#dff3f1;
  --wood:#3f2b21;
  --terra:#a85d3b;
  --soft:#f3eadb;
  --shadow:0 18px 55px rgba(19,35,31,.10);
  --deep:0 30px 90px rgba(0,127,134,.18);
  --radius:28px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ink);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height:1.65;
  background:
    radial-gradient(circle at 5% 0%, rgba(0,127,134,.16), transparent 28rem),
    radial-gradient(circle at 95% 5%, rgba(168,93,59,.13), transparent 22rem),
    linear-gradient(180deg,var(--paper),var(--cream) 45%,#f4e8d7);
}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(rgba(19,35,31,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(19,35,31,.018) 1px,transparent 1px);background-size:30px 30px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max),calc(100% - 2rem));margin:auto}
.skip{position:absolute;top:-60px;left:16px;background:#0b2522;color:white;padding:.8rem 1rem;border-radius:999px;z-index:999}
.skip:focus{top:16px}
.eyebrow{margin:0 0 .85rem;color:var(--turq2);font-weight:900;font-size:.76rem;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.04;letter-spacing:-.045em;margin:0;color:var(--ink)}
h1{font-size:clamp(3rem,8vw,7rem);max-width:10.5ch}
h2{font-size:clamp(2rem,4.8vw,3.85rem);max-width:12.5ch}
h3{font-size:clamp(1.35rem,2vw,1.75rem)}
p{margin:0}.muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.84rem 1.15rem;gap:.55rem;border:1px solid transparent;border-radius:999px;cursor:pointer;font-weight:900;transition:.18s ease;line-height:1.15;text-align:center}
.btn:hover,.btn:focus-visible{transform:translateY(-1px)}
.btn-primary{background:var(--turq);color:white;box-shadow:0 15px 35px rgba(0,127,134,.25)}
.btn-primary:hover{background:var(--turq2)}
.btn-outline{background:rgba(255,255,255,.72);color:var(--ink);border-color:var(--line)}
.btn-outline:hover{border-color:var(--turq);color:var(--turq2)}
.top-note{background:#102421;color:rgba(255,255,255,.86);font-size:.92rem;text-align:center}
.top-note .container{min-height:42px;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}
.nav-shell{position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);background:rgba(255,249,238,.9);border-bottom:1px solid var(--line)}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.8rem;font-weight:900;min-width:0}.brand img{width:56px;height:56px;object-fit:contain;border-radius:50%;box-shadow:0 10px 25px rgba(0,127,134,.16)}
.brand small{display:block;color:var(--muted);font-weight:800;line-height:1.1}.nav-links{display:flex;gap:1rem;align-items:center;font-weight:850}.nav-links a:not(.btn){padding:.45rem 0;border-bottom:2px solid transparent}.nav-links a:not(.btn):hover{color:var(--turq2);border-color:var(--turq)}
.nav-toggle{display:none;border:1px solid var(--line);background:white;border-radius:999px;padding:.62rem .9rem;font-weight:900}
.hero{width:min(1360px,calc(100% - 2rem));margin:auto;padding:clamp(3rem,6vw,5.2rem) 0 4rem;display:grid;grid-template-columns:minmax(0,.92fr) minmax(340px,1.08fr);gap:clamp(1.5rem,4vw,3rem);align-items:center}.lead{color:#40504c;font-size:clamp(1.05rem,2vw,1.28rem);max-width:760px;margin-top:1.2rem}.hero-actions,.action-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}.trust-strip{margin-top:1.55rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;max-width:760px}.trust-mini{padding:.9rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,253,248,.8);box-shadow:0 8px 24px rgba(0,0,0,.04)}.trust-mini b{display:block;color:var(--wood);line-height:1.2}.trust-mini span{color:var(--muted);font-size:.88rem}
.hero-visual{display:grid;grid-template-columns:.8fr 1fr;gap:.85rem;min-height:620px}.visual-card{margin:0;overflow:hidden;border-radius:34px;border:1px solid rgba(255,255,255,.7);background:white;box-shadow:var(--deep);position:relative}.visual-card img{width:100%;height:100%;object-fit:cover}.visual-stack{display:grid;gap:.85rem;grid-template-rows:1fr .86fr}.caption{position:absolute;left:1rem;right:1rem;bottom:1rem;color:white;padding:1rem;border-radius:18px;background:linear-gradient(180deg,rgba(6,40,42,.08),rgba(6,40,42,.75));backdrop-filter:blur(6px)}.caption b{display:block;font-family:Georgia,serif;font-size:1.25rem}
.section{padding:clamp(4rem,8vw,7rem) 0}.section-head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2rem;align-items:end;margin-bottom:2rem}.section-head p{color:var(--muted);font-size:1.04rem;max-width:780px}.panel{border:1px solid var(--line);border-radius:32px;background:rgba(255,253,248,.82);box-shadow:var(--shadow)}.two-col,.arrival-grid,.meal-grid,.booking-grid,.checkin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.78fr);gap:1rem;align-items:stretch}.content-card{padding:clamp(1.5rem,4vw,3rem)}.content-card p{margin-top:1rem;color:#40504c;font-size:1.02rem}.promise-card{padding:clamp(1.5rem,4vw,3rem);color:white;background:linear-gradient(145deg,#007f86,#0b464b);border-radius:32px;box-shadow:var(--deep)}.promise-card h2,.promise-card .eyebrow{color:white}.promise-card p{color:rgba(255,255,255,.86);margin-top:1rem}
.compare-wrap{overflow-x:auto;border-radius:28px;border:1px solid var(--line);background:white;box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse;min-width:760px;font-size:.95rem}th,td{padding:1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--turq3);color:var(--wood)}
.unit-grid{display:grid;gap:1rem}.unit-card{padding:1.4rem;display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:start;border:1px solid var(--line);border-radius:26px;background:white;box-shadow:0 12px 32px rgba(19,35,31,.06)}.unit-card-with-photo{grid-template-columns:minmax(0,1fr) 280px;align-items:stretch;padding:1rem;overflow:hidden}.unit-summary-copy{padding:.45rem .55rem .45rem .35rem}.unit-summary-copy .btn{margin-top:1.05rem}.unit-summary-photo{position:relative;min-height:210px;border:1px solid var(--line);border-radius:22px;overflow:hidden;padding:0;background:rgba(255,253,248,.9);cursor:zoom-in;box-shadow:0 12px 28px rgba(19,35,31,.08)}.unit-summary-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .45s ease}.unit-summary-photo:hover img,.unit-summary-photo:focus-visible img{transform:scale(1.04)}.unit-summary-photo span{position:absolute;left:.7rem;right:.7rem;bottom:.7rem;padding:.62rem .76rem;border-radius:14px;color:white;background:linear-gradient(180deg,rgba(8,45,47,.20),rgba(8,45,47,.82));backdrop-filter:blur(8px);font-weight:900;text-align:left}.tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.tag,.source-pill{display:inline-flex;padding:.42rem .68rem;border-radius:999px;background:var(--turq3);color:var(--turq2);font-size:.82rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
.steps{display:grid;gap:.75rem;margin-top:1rem}.step{padding:1rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.75)}.step b{display:block;color:var(--wood)}.menu-list{display:grid;gap:.6rem;margin-top:1rem}.menu-row{display:flex;justify-content:space-between;gap:1rem;padding:.9rem;border:1px solid var(--line);border-radius:16px;background:white}.rules-grid,.policy-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.rule,.policy,.faq-card{padding:1.2rem;border:1px solid var(--line);border-radius:24px;background:white;box-shadow:0 12px 32px rgba(19,35,31,.06)}.rule p,.policy p,.faq-card p{color:var(--muted);margin-top:.55rem}details summary{cursor:pointer;font-weight:900;color:var(--wood)}
.internet-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.internet-photo{position:relative;min-height:240px;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:rgba(255,253,248,.86);box-shadow:0 14px 34px rgba(19,35,31,.08);padding:0;text-align:left}.internet-photo.featured{grid-column:span 2;min-height:360px}.internet-photo img{width:100%;height:100%;min-height:inherit;object-fit:cover;transition:transform .45s ease}.internet-photo:hover img{transform:scale(1.04)}.internet-photo span{position:absolute;left:.75rem;right:.75rem;bottom:.75rem;padding:.75rem .85rem;border-radius:16px;color:white;background:linear-gradient(180deg,rgba(8,45,47,.28),rgba(8,45,47,.82));backdrop-filter:blur(8px)}.internet-photo b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;line-height:1.05}.internet-photo small{display:block;opacity:.86;margin-top:.25rem;line-height:1.25}.gallery-note{margin-top:1rem;color:var(--muted);font-size:.92rem}
.testimonials-shell{display:grid;grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);gap:1rem;align-items:start}.testimonial-intro{position:sticky;top:96px;padding:2rem;background:linear-gradient(145deg,#0a464a,#082b2e);color:white;border-radius:32px;box-shadow:var(--deep)}.testimonial-intro h2,.testimonial-intro .eyebrow{color:white}.testimonial-intro p{color:rgba(255,255,255,.84);margin-top:1rem}.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.testimonial-card{padding:1.15rem;border:1px solid var(--line);border-radius:26px;background:white;box-shadow:0 12px 32px rgba(19,35,31,.07)}.testimonial-short{margin:.7rem 0 0;color:#40504c}.guest-name{margin-top:.8rem;font-weight:900;color:var(--turq2)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}label{display:grid;gap:.35rem;font-weight:900;color:#30443f}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:15px;padding:.85rem .95rem;background:white;outline:none}textarea{min-height:116px;resize:vertical}.span-2{grid-column:1/-1}input:focus,select:focus,textarea:focus{border-color:var(--turq);box-shadow:0 0 0 4px rgba(0,127,134,.12)}
.footer{background:#13231f;color:rgba(255,255,255,.82);margin-top:4rem;padding:3.5rem 0 5.5rem}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,minmax(0,.8fr));gap:2rem}.footer h3,.footer strong{color:white}.footer p,.footer a{color:rgba(255,255,255,.72)}.footer a{display:block;margin:.35rem 0}.mobile-bar{display:none;position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:60;grid-template-columns:1fr 1fr;gap:.6rem;padding:.6rem;border:1px solid rgba(255,255,255,.6);border-radius:999px;background:rgba(255,249,238,.92);box-shadow:0 20px 70px rgba(19,35,31,.22);backdrop-filter:blur(16px)}
.booking-embed-placeholder{padding:1.2rem;border:1px dashed rgba(0,127,134,.45);background:rgba(223,243,241,.5);border-radius:24px;color:#0b4d51}.price-note{font-size:.92rem;color:var(--muted);margin-top:.8rem}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:80;background:#25d366;color:white;padding:14px 18px;border-radius:999px;font-size:15px;font-weight:900;text-decoration:none;box-shadow:0 14px 38px rgba(0,0,0,.22)}.whatsapp-float:hover{background:#1fb85a}
@media(max-width:1050px){.hero,.section-head,.two-col,.arrival-grid,.meal-grid,.booking-grid,.checkin-grid,.testimonials-shell,.footer-grid{grid-template-columns:1fr}.testimonial-intro{position:static}.rules-grid,.policy-grid,.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.internet-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.nav-toggle{display:inline-flex}.nav-links{position:absolute;top:78px;left:1rem;right:1rem;display:none;flex-direction:column;align-items:stretch;background:rgba(255,253,248,.98);border:1px solid var(--line);border-radius:24px;padding:1rem;box-shadow:var(--deep)}.nav-links.open{display:flex}.nav-links .btn{width:100%}.hero-visual{grid-template-columns:1fr;min-height:auto}.visual-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}.visual-card{min-height:310px}.trust-strip,.testimonial-grid,.rules-grid,.policy-grid,.faq-grid{grid-template-columns:1fr}.mobile-bar{display:grid}.whatsapp-float{display:none}.unit-card-with-photo{grid-template-columns:1fr}.unit-summary-photo{min-height:260px}}
@media(max-width:620px){.container,.hero{width:min(100% - 1rem,var(--max))}.brand small{display:none}.visual-stack,.form-grid{grid-template-columns:1fr}h1{font-size:clamp(3rem,16vw,4.8rem)}.section{padding:3.6rem 0}.footer{padding-bottom:7rem}.internet-gallery{grid-template-columns:1fr}.internet-photo.featured{grid-column:auto;min-height:280px}.internet-photo{min-height:260px}}


/* Final-site corrections added 20 Aug 2026 */
.top-booking-link { display:block; text-decoration:none; }
.top-booking-link:hover { border-color:var(--turq); transform:translateY(-1px); }
.mini-link { color:var(--turq2); font-weight:900; text-decoration:underline; text-underline-offset:3px; }
.meal-photo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.meal-photo { margin:0; overflow:hidden; border-radius:28px; border:1px solid var(--line); background:white; box-shadow:var(--shadow); }
.meal-photo img { width:100%; aspect-ratio: 4/3; object-fit:cover; }
.meal-photo figcaption { padding:1rem; display:grid; gap:.25rem; }
.meal-photo figcaption b { font-family:Georgia, "Times New Roman", serif; font-size:1.25rem; color:var(--ink); }
.meal-photo figcaption span { color:var(--muted); }
.meal-story { min-height:100%; }
.hostex-widgets { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; align-items:start; }
.hostex-card { padding:1.2rem; border:1px solid var(--line); border-radius:28px; background:rgba(255,253,248,.9); box-shadow:var(--shadow); overflow:hidden; }
.hostex-card p { color:var(--muted); margin:.6rem 0 1rem; }
.hostex-card hostex-booking-widget { display:block; min-height:420px; }
.contact-panel { margin-top:1rem; }
.policy-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media(max-width:1050px) { .hostex-widgets,.meal-photo-grid { grid-template-columns:1fr; } .policy-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:620px) { .policy-grid { grid-template-columns:1fr; } .hostex-card hostex-booking-widget { min-height:520px; } }


.gallery-unit-block { margin-top:1.25rem; padding:1rem; border:1px solid var(--line); border-radius:32px; background:rgba(255,253,248,.62); box-shadow:0 10px 32px rgba(19,35,31,.045); }
.gallery-unit-head { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:end; gap:.75rem 1rem; margin:0 0 .9rem; }
.gallery-unit-head .eyebrow { margin:0; }
.gallery-unit-head h3 { max-width:820px; }
.unit-photo-gallery { margin-top:.5rem; }
.single-photo { grid-template-columns:minmax(0,1fr); }
.single-photo .internet-photo.featured { grid-column:auto; min-height:420px; }
@media(max-width:620px) { .gallery-unit-block { padding:.7rem; border-radius:24px; } .gallery-unit-head { display:block; } .single-photo .internet-photo.featured { min-height:280px; } }
