/*
Theme Name: Castaways Child
Template: Divi
Author: Castaways
Description: Castaways oceanfront restaurant - child theme: brand tokens, global header/footer, sticky book bar, and page components.
Version: 1.0.0
*/

:root{ --teal:#15A0AE; --teal-d:#0E7C89; --orange:#E8801A; --ink:#0a2a30; }

/* ---- Hide Divi default chrome (we render our own) ---- */
#main-header,#top-header,#et-secondary-nav,.et_fixed_nav #main-header{display:none !important;}
#main-footer,#footer-bottom{display:none !important;}
body.et_fixed_nav #page-container,#page-container{padding-top:0 !important;}
#page-container{min-height:0;}
.et_pb_section{padding:0;}

/* ============ GLOBAL HEADER ============ */
.cwhead{position:sticky;top:0;z-index:1000;background:#fff;border-bottom:1px solid #e7e7e7;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;box-shadow:0 1px 6px rgba(10,42,48,.05);}
.cwnav{display:flex;align-items:center;justify-content:space-between;padding:10px 26px;max-width:1220px;margin:0 auto;gap:26px;}
.cwbrand{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none;flex:0 0 auto;}
.cwbrand img{height:50px;width:auto;display:block;}
.cwtag{font-size:12px;color:var(--teal-d);font-style:italic;line-height:1.3;max-width:206px;padding-left:12px;border-left:1px solid #e1ebed;}
.cwlinks{display:flex;gap:24px;align-items:center;}
.cwmenu{display:flex;gap:21px;align-items:center;margin:0;padding:0;list-style:none;}
.cwmenu li{list-style:none;margin:0;padding:0;}
.cwmenu a{text-decoration:none;color:#3c4c54;font-size:14.5px;font-weight:500;white-space:nowrap;padding:6px 0;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;}
.cwmenu a:hover{color:var(--teal-d);border-bottom-color:var(--teal);}
.cwphone{font-weight:600;color:var(--teal-d);white-space:nowrap;text-decoration:none;font-size:14.5px;}
.cwbtn{display:inline-block;background:var(--orange);color:#fff !important;text-decoration:none;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14.5px;white-space:nowrap;box-shadow:0 2px 8px rgba(232,128,26,.25);}
.cwbtn:hover{background:#cf7012;}
.cwnav{position:relative;flex-wrap:nowrap;}
.cw-navtoggle{position:absolute;left:-9999px;opacity:0;}
.cw-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:40px;cursor:pointer;padding:9px;border:1px solid #e1ebed;border-radius:8px;background:#fff;}
.cw-burger span{display:block;height:2px;width:100%;background:var(--teal-d);border-radius:2px;}

/* ============ GLOBAL FOOTER ============ */
.cwfoot{background:var(--ink);color:#bfe6ec;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
.cwfootwrap{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;padding:30px 22px;}
.cwfoot a{color:#bfe6ec;text-decoration:none;}
.cwfoot a:hover{color:#fff;}
.cwfootnav{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;padding:24px 22px 18px;border-bottom:1px solid rgba(191,230,236,.18);}
.cwfootnav a{color:#bfe6ec;text-decoration:none;font-size:14px;font-weight:500;}
.cwfootnav a:hover{color:#fff;}
.cwfootintent{max-width:1100px;margin:0 auto;padding:14px 22px 0;text-align:center;font-size:13px;color:#9fc4cc;}
.cwfootintent a{color:#bfe6ec;text-decoration:none;}
.cwfootintent a:hover{color:#fff;}

/* ===== GUEST CHATBOT ===== */
#cwchat-bubble{position:fixed;right:18px;bottom:18px;z-index:2000;width:56px;height:56px;border-radius:50%;background:var(--teal);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(10,42,48,.30);transition:transform .15s;}
#cwchat-bubble:hover{transform:scale(1.06);}
#cwchat-bubble.open{background:var(--teal-d);}
#cwchat-panel{display:none;position:fixed;right:18px;bottom:84px;z-index:2001;width:360px;max-width:calc(100vw - 28px);height:520px;max-height:calc(100vh - 120px);background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(10,42,48,.35);flex-direction:column;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;}
#cwchat-head{background:var(--teal);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;}
#cwchat-head strong{display:block;font-size:16px;}
#cwchat-head span{display:block;font-size:12px;opacity:.9;}
#cwchat-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;line-height:1;padding:0 4px;}
#cwchat-msgs{flex:1;overflow-y:auto;padding:14px;background:#f4fafb;}
.cwm{max-width:84%;padding:10px 13px;border-radius:14px;margin-bottom:9px;font-size:14.5px;line-height:1.45;word-wrap:break-word;}
.cwm.bot{background:#fff;color:#1d2b33;border:1px solid #e3eef0;border-bottom-left-radius:4px;}
.cwm.user{background:var(--teal);color:#fff;margin-left:auto;border-bottom-right-radius:4px;}
.cwm.typing{color:#9ab2b8;}
#cwchat-quick{display:flex;gap:6px;padding:8px 10px;background:#fff;border-top:1px solid #eef3f4;flex-wrap:wrap;}
#cwchat-quick a{flex:1;text-align:center;font-size:12px;font-weight:600;color:var(--teal-d);text-decoration:none;border:1px solid #d9edf0;border-radius:8px;padding:7px 6px;white-space:nowrap;}
#cwchat-quick a:hover{background:#f4fbfc;border-color:var(--teal);}
#cwchat-form{display:flex;border-top:1px solid #eef3f4;background:#fff;}
#cwchat-in{flex:1;border:none;padding:13px 14px;font-size:14.5px;outline:none;font-family:inherit;}
#cwchat-form button{background:var(--orange);color:#fff;border:none;width:48px;font-size:17px;cursor:pointer;}
@media(max-width:820px){#cwchat-bubble{bottom:78px;}#cwchat-panel{bottom:144px;right:14px;height:460px;}}

/* ===== NATIVE-MODULE SUPPORT ===== */
.cw-cardimg img{aspect-ratio:3/2;object-fit:cover;width:100%;}\n.bml-poster img{aspect-ratio:2/3;object-fit:cover;width:100%;}
.cwm ul{list-style:none !important;margin:0 0 8px !important;padding:0 !important;}
.cwm li{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:10px 0;border-bottom:1px dotted #e6e6e6;}
.cwm li em{font-style:normal;font-size:14px;color:#5a6b73;}
.cwm li .pr{font-weight:600;color:#0E7C89;white-space:nowrap;}
#cw-resv{background:#15A0AE;padding:7px 22px 12px;}
#cw-resv .ot-d{display:none;}
#cw-resv .ot-m{background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 16px 40px rgba(10,42,48,.30);display:flex;justify-content:center;max-width:340px;margin:0 auto;}
@media(min-width:821px){
  #cw-resv{padding-bottom:0;}
  #cw-resv .ot-d{display:block;width:840px;max-width:100%;height:96px;overflow:visible;position:relative;z-index:5;margin:0 auto;}
  #cw-resv .ot-d iframe{margin-top:-15px;}
  #cw-resv .ot-m{display:none;}
  #cw-trust{position:relative;z-index:1;}
}

/* ===== INTENT / MONEY PAGES ===== */
.cw-intent .intro .wrap{max-width:900px;padding:32px 22px 4px;}
.cw-intent .intro p{font-size:18px;color:#2a3b43;}
.cw-intent .intro strong{color:var(--teal-d);}
.cw.cw-intent .sec h2{text-align:left;font-size:23px;margin:26px 0 8px;}
.cw-intent .sec p{font-size:16px;color:#33444c;margin-bottom:14px;max-width:880px;}
.cw-intent .sec ul{list-style:none;margin:8px 0 0;padding:0;max-width:880px;}
.cw-intent .sec li{font-size:16px;color:#33444c;padding:11px 0 11px 30px;border-bottom:1px solid #eef0f1;position:relative;}
.cw-intent .sec li::before{content:"\2713";position:absolute;left:2px;top:11px;color:var(--teal);font-weight:600;}
.cw-intent .pull{background:#eef8f9;border-left:3px solid var(--teal);border-radius:0 8px 8px 0;padding:16px 20px;margin:18px 0;font-style:italic;color:#33444c;max-width:880px;}
.cw-intent .pull span{display:block;font-style:normal;font-size:13px;color:#5a6b73;margin-top:6px;}

/* ============ STICKY MOBILE BOOK BAR ============ */
.cwbar{display:none;}
@media(max-width:820px){
  .cwbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:1001;background:#fff;border-top:1px solid #e3e3e3;padding:9px 14px;gap:10px;align-items:center;box-shadow:0 -4px 18px rgba(0,0,0,.10);}
  .cwbar-call{flex:0 0 auto;display:flex;align-items:center;gap:6px;color:var(--teal-d);font-weight:600;text-decoration:none;font-size:15px;padding:11px 14px;border:1px solid #d9edf0;border-radius:8px;}
  .cwbar-book{flex:1;text-align:center;background:var(--orange);color:#fff;text-decoration:none;font-weight:600;padding:12px;border-radius:8px;}
  body{padding-bottom:64px;}
  .cwtag{display:none;}
  .cw-burger{display:flex;}
  .cwlinks{position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:6px 20px 16px;border-top:1px solid #eef0f1;box-shadow:0 12px 22px rgba(10,42,48,.10);display:none;}
  #cw-navtoggle:checked ~ .cwlinks{display:flex;}
  .cwlinks .cwmenu{flex-direction:column;align-items:stretch;gap:0;width:100%;}
  .cwlinks .cwmenu li{border-bottom:1px solid #f1f5f6;}
  .cwlinks .cwmenu a{display:block;padding:13px 2px;font-size:16px;}
  .cwlinks .cwphone{display:block !important;padding:13px 2px;border-bottom:1px solid #f1f5f6;}
  .cwlinks .cwbtn{display:block;text-align:center;margin-top:12px;padding:13px;}
}

/* ============ PAGE BODY BASE (scoped .cw) ============ */
.cw{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;color:#1d2b33;line-height:1.6;}
.cw *{box-sizing:border-box;}
.cw .wrap{max-width:1100px;margin:0 auto;padding:0 22px;}
.cw .btn{display:inline-block;background:var(--orange);color:#fff !important;text-decoration:none;padding:13px 26px;border-radius:8px;font-weight:600;font-size:16px;border:none;cursor:pointer;}
.cw .btn:hover{background:#cf7012;}
.cw h1,.cw h2,.cw h3,.cw h4{font-family:inherit;}
.cw a{color:var(--teal-d);}

/* hero */
.cw .hero{position:relative;height:480px;overflow:hidden;background:#0a2a30;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;}
.cw .hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(8,40,48,.30),rgba(8,40,48,.58));}
.cw .hero .inner{position:relative;z-index:2;max-width:680px;padding:0 20px;}
.cw .hero .eyebrow{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:14px;opacity:.95;text-shadow:0 1px 8px rgba(0,0,0,.5);}
.cw .hero h1{font-size:46px;font-weight:600;line-height:1.15;text-shadow:0 2px 18px rgba(0,0,0,.35);color:#fff;}
.cw .hero p{font-size:19px;margin:18px 0 4px;text-shadow:0 1px 10px rgba(0,0,0,.45);}

/* reservation strip */
.cw .resv{position:relative;background:var(--teal);padding:7px 22px 12px;}
.cw .resv .bar{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;align-items:center;}
.cw .resv .ttl{display:none;}
.cw .resv-widget{margin:0 auto;display:flex;justify-content:center;}
.cw .resv-widget.ot-d{display:none;}
.cw .resv-widget.ot-m{background:#fff;border-radius:14px;padding:16px 18px;box-shadow:0 16px 40px rgba(10,42,48,.30);}
@media(min-width:821px){
  .cw .resv{padding-bottom:0;}
  .cw .resv-widget.ot-d{display:block;width:840px;max-width:100%;height:96px;overflow:visible;position:relative;z-index:5;}
  .cw .resv-widget.ot-d iframe{margin-top:-15px;}
  .cw .resv-widget.ot-m{display:none;}
  .cw .trust{position:relative;z-index:1;}
}
.cw .resv-widget iframe{max-width:100% !important;}

/* trust band */
.cw .trust{background:var(--teal-d);color:#fff;}
.cw .trust .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 34px;padding:13px 22px;font-size:14px;}

/* intro */
.cw .intro{background:#fff;text-align:center;}
.cw .intro .wrap{max-width:820px;padding:34px 22px;}
.cw .intro p{font-size:18px;color:#2a3b43;line-height:1.65;}

/* generic section */
.cw .sec{padding:60px 0;}
.cw .sec h2{font-size:30px;font-weight:600;text-align:center;color:var(--teal-d);margin-bottom:8px;}
.cw .sub{text-align:center;color:#5a6b73;margin-bottom:38px;}

/* feature cards (home) */
.cw .feat{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.cw .card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 6px 24px rgba(0,0,0,.07);}
.cw .card img{width:100%;height:200px;object-fit:cover;display:block;}
.cw .card .b{padding:20px;}
.cw .card h3{font-size:20px;font-weight:600;margin-bottom:8px;color:#1d2b33;}
.cw .card p{font-size:15px;color:#5a6b73;}

/* hours band */
.cw .hours{position:relative;overflow:hidden;background:#eef8f9;background-size:cover;background-position:center;}
.cw .hours::after{content:"";position:absolute;inset:0;z-index:1;background:rgba(238,248,249,.55);}
.cw .hours .wrap{position:relative;z-index:2;}
.cw .hours .grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:760px;margin:0 auto;}
.cw .hours .box{background:#fff;border-radius:12px;padding:24px 26px;border:1px solid #d9edf0;box-shadow:0 6px 22px rgba(10,42,48,.12);}
.cw .hours .box h3{color:var(--teal-d);font-size:19px;margin-bottom:10px;}
.cw .hours .box p{font-size:15px;color:#3c4c54;margin-bottom:4px;}

/* review slider */
.cw .review{position:relative;background-size:cover;background-position:center;color:#fff;text-align:center;}
.cw .review::after{content:"";position:absolute;inset:0;background:rgba(14,124,137,.80);}
.cw .review .wrap{position:relative;z-index:2;padding:42px 22px;}
.cw .review .stars{color:#FFD27A;letter-spacing:3px;margin-bottom:16px;font-size:20px;}
.cw .review blockquote{font-size:18px;font-style:italic;font-weight:400;max-width:920px;margin:0 auto 12px;min-height:44px;line-height:1.5;transition:opacity .4s;}
.cw .review .who{font-size:15px;opacity:.95;margin-bottom:18px;}
.cw .review .rnav{display:flex;gap:8px;justify-content:center;align-items:center;margin-bottom:14px;}
.cw .review .dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.45);border:none;cursor:pointer;padding:0;}
.cw .review .dot.on{background:#fff;}
.cw .review .arrow{background:rgba(255,255,255,.18);border:none;color:#fff;width:34px;height:34px;border-radius:50%;font-size:18px;cursor:pointer;}
.cw .review .more{color:#fff;text-decoration:underline;font-size:14px;}

/* menu tiles (home) */
.cw .tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.cw .tile{display:flex;align-items:center;justify-content:center;gap:8px;background:#fff;color:var(--orange);border:1px solid #d9edf0;border-radius:9px;padding:14px 10px;text-align:center;font-weight:500;font-size:16px;text-decoration:none;transition:all .15s;}
.cw .tile:hover{border-color:var(--teal);background:#f4fbfc;}

/* specials teaser (home) */
.cw .specials{background:#fff;border:2px dashed var(--orange);border-radius:12px;max-width:820px;margin:0 auto;padding:26px 28px;text-align:center;}
.cw .specials .pill{display:inline-block;background:#fdf0e2;color:#a45c12;font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;margin-bottom:10px;}
.cw .specials h3{font-size:22px;color:var(--teal-d);margin-bottom:8px;}
.cw .specials p{color:#5a6b73;font-size:15px;}

/* cta band */
.cw .cta{background:var(--teal);color:#fff;text-align:center;padding:70px 22px;}
.cw .cta h2{font-size:32px;font-weight:600;color:#fff;}
.cw .cta p{font-size:17px;opacity:.95;margin:10px 0 26px;}

/* banner (interior pages) */
.cw .banner{position:relative;background:#0a2a30;background-size:cover;background-position:center;color:#fff;text-align:center;}
.cw .banner::after{content:"";position:absolute;inset:0;background:rgba(8,40,48,.6);}
.cw .banner.teal::after{background:rgba(14,124,137,.72);}
.cw .banner .wrap{position:relative;z-index:2;padding:54px 22px;}
.cw .banner h1{font-size:34px;font-weight:600;color:#fff;}
.cw .banner p{font-size:17px;margin-top:10px;opacity:.96;max-width:760px;margin-left:auto;margin-right:auto;}

/* ===== MENU PAGE ===== */
.cw-menu .wrap{max-width:920px;}
.cw-menu .jump{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:20px;background:#eef8f9;position:sticky;top:69px;z-index:5;}
.cw-menu .jump a{font-size:14px;color:var(--teal-d);text-decoration:none;border:1px solid #d9edf0;background:#fff;border-radius:20px;padding:6px 14px;}
.cw-menu .msec{padding:38px 0 8px;}
.cw-menu .msec h2{font-size:24px;color:var(--teal-d);border-bottom:2px solid #eef0f1;padding-bottom:8px;margin-bottom:6px;}
.cw .note2{color:#7a8a90;font-size:13px;margin-bottom:14px;}
.cw-menu .item{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px dotted #e6e6e6;}
.cw-menu .item .l{max-width:760px;}
.cw-menu .item .n{font-weight:600;font-size:16px;}
.cw-menu .item .d{font-size:14px;color:#5a6b73;}
.cw-menu .item .p{font-weight:600;color:var(--teal-d);white-space:nowrap;}
.cw .legal{font-size:12.5px;color:#7a8a90;background:#f7fafb;border-radius:10px;padding:16px 18px;margin:30px 0;}
.cw .pricepill{margin-top:12px;font-weight:600;background:rgba(255,255,255,.15);display:inline-block;padding:6px 16px;border-radius:20px;}

/* ===== VISIT PAGE ===== */
.cw-visit .wrap{max-width:1000px;}
.cw-visit .cols{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;padding:46px 0;}
.cw-visit .map{width:100%;height:360px;border:0;border-radius:12px;}
.cw-visit .vcard{background:#fff;border:1px solid #e7eef0;border-radius:12px;padding:22px 24px;margin-bottom:18px;}
.cw-visit .vcard h3{color:var(--teal-d);font-size:19px;margin-bottom:8px;}
.cw-visit .vcard p{font-size:15px;color:#3c4c54;margin-bottom:6px;}
.cw-visit .vcard ul{margin:6px 0;}
.cw-visit .vcard li{font-size:15px;color:#3c4c54;margin:6px 0 6px 18px;}
.cw-visit .pill{display:inline-block;background:#eef8f9;color:var(--teal-d);font-size:13px;font-weight:600;border-radius:20px;padding:4px 12px;margin-bottom:6px;}

/* ===== OUR STORY PAGE ===== */
.cw-story .wrap{max-width:780px;}
.cw-story{line-height:1.7;}
.cw-story .story{padding:50px 0;}
.cw-story .story p{font-size:18px;color:#2a3b43;margin-bottom:20px;}
.cw-story .story .lead{font-size:21px;color:#1d2b33;}
.cw-story .pulls{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0 30px;}
.cw-story .pull{background:#eef8f9;border-radius:10px;padding:14px 18px;font-size:14px;color:var(--teal-d);font-weight:600;}

/* ===== PRIVATE EVENTS PAGE ===== */
.cw-events .wrap{max-width:860px;}
.cw-events .pintro{padding:44px 0 10px;}
.cw-events .pintro p{font-size:18px;color:#2a3b43;margin-bottom:16px;}
.cw-events .pintro ul{margin:0 0 6px 20px;color:#3c4c54;}
.cw-events .pintro li{margin:6px 0;}
.cw-events .formbox{background:#f7fafb;border:1px solid #e3eef0;border-radius:14px;padding:26px 26px 30px;margin:24px 0 50px;text-align:center;}
.cw-events .formbox h2{color:var(--teal-d);font-size:22px;margin-bottom:4px;}
.cw-events .formbox .why{font-size:14px;color:#5a6b73;margin-bottom:18px;}
.cw-events .formbox .alt{font-size:14px;color:#5a6b73;margin-top:12px;}

/* ===== REVIEWS PAGE ===== */
.cw-reviews .stats{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:26px 22px;background:#eef8f9;}
.cw-reviews .stat{background:#fff;border:1px solid #d9edf0;border-radius:10px;padding:14px 22px;text-align:center;min-width:150px;}
.cw-reviews .stat b{display:block;font-size:24px;color:var(--teal-d);}
.cw-reviews .stat span{font-size:13px;color:#5a6b73;}
.cw-reviews .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:50px 0;}
.cw-reviews .q{background:#fff;border:1px solid #eee;border-radius:12px;padding:20px 22px;box-shadow:0 5px 18px rgba(0,0,0,.05);}
.cw-reviews .q .s{color:var(--orange);letter-spacing:2px;font-size:14px;margin-bottom:8px;}
.cw-reviews .q p{font-size:15px;color:#33444c;font-style:italic;margin-bottom:12px;}
.cw-reviews .q .who{font-size:13px;color:#5a6b73;font-style:normal;}
.cw-reviews .links-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;padding:0 0 50px;}
.cw-reviews .links-row a{border:1px solid #d9edf0;border-radius:8px;padding:11px 18px;text-decoration:none;color:var(--teal-d);font-weight:500;font-size:15px;}

/* ===== FAQ PAGE ===== */
.cw-faq .wrap{max-width:860px;}
.cw-faq .faq{padding:46px 0;}
.cw-faq .faq h2{font-size:17px;letter-spacing:1px;text-transform:uppercase;color:var(--teal-d);margin:34px 0 6px;}
.cw-faq .qa{padding:18px 0;border-bottom:1px solid #eee;}
.cw-faq .qa h3{font-size:18px;font-weight:600;margin-bottom:6px;color:#1d2b33;}
.cw-faq .qa p{font-size:16px;color:#3c4c54;}
.cw-faq .qa a{color:var(--teal-d);font-weight:500;}

/* ===== SPECIALS PAGE ===== */
.cw-specials .wrap{max-width:880px;}
.cw-specials{line-height:1.65;}
.cw-specials .live{padding:46px 0 20px;}
.cw-specials .special{background:#fff;border:2px solid var(--orange);border-radius:16px;padding:30px 30px 34px;box-shadow:0 10px 30px rgba(0,0,0,.07);}
.cw-specials .special .when{display:inline-block;background:#fdf0e2;color:#a45c12;font-size:13px;font-weight:600;padding:5px 14px;border-radius:20px;margin-bottom:14px;}
.cw-specials .special h2{font-size:28px;color:var(--teal-d);margin-bottom:6px;}
.cw-specials .special .price{font-size:20px;font-weight:600;margin:6px 0 4px;}
.cw-specials .special .meta{color:#5a6b73;font-size:15px;margin-bottom:18px;}
.cw-specials .special h3{color:var(--teal-d);font-size:16px;letter-spacing:1px;}
.cw-specials .off{background:#f7fafb;border:1px dashed #cdd9dc;border-radius:14px;padding:26px;text-align:center;color:#5a6b73;}
.cw-specials .off a{color:var(--teal-d);font-weight:600;text-decoration:none;}
.cw-specials .upcoming{padding:30px 0 50px;}
.cw-specials .upcoming h3{text-align:center;color:var(--teal-d);font-size:20px;margin-bottom:18px;}
.cw-specials .rows{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.cw-specials .r{background:#fff;border:1px solid #e7eef0;border-radius:12px;padding:18px 20px;}
.cw-specials .r h4{font-size:17px;margin-bottom:6px;}
.cw-specials .r p{font-size:14px;color:#5a6b73;}

/* ===== RESERVE PAGE ===== */
.cw-reserve .wrap{max-width:880px;}
.cw-reserve .resvhold{padding:40px 0 60px;}
.cw-reserve .otwidget{background:#fff;border:1px solid #e3eef0;border-radius:14px;padding:22px;box-shadow:0 14px 34px rgba(10,42,48,.14);display:flex;justify-content:center;align-items:center;width:fit-content;max-width:100%;margin:0 auto;}
.cw-reserve .otwidget iframe{max-width:100% !important;}
.cw-reserve .bignote{background:#eef8f9;border:1px solid #d9edf0;border-radius:12px;padding:18px 20px;margin-top:22px;color:#33444c;font-size:15px;}
/* Reserve page (native Divi rebuild) — center the OpenTable widget in its card */
.page-id-1602 .et_pb_code_inner{text-align:center;}
.page-id-1602 .et_pb_code_inner iframe{display:inline-block;float:none;margin:0 auto;}

/* ============ RESPONSIVE ============ */
@media(max-width:820px){
  .cw .feat,.cw .tiles,.cw .hours .grid{grid-template-columns:1fr;}
  .cw .hero h1{font-size:34px;}
  .cw-visit .cols{grid-template-columns:1fr;}
  .cw-reviews .grid{grid-template-columns:1fr;}
  .cw-specials .rows{grid-template-columns:1fr;}
  .cw-menu .jump{top:61px;}
}

@media(max-width:1080px){ .cwtag{display:none;} }
@media(max-width:1120px){ .cwnav{gap:18px;} .cwmenu{gap:16px;} }
@media(max-width:1010px){ .cwmenu a{font-size:13.5px;} .cwphone{display:none;} .cwmenu{gap:13px;} }

/* ===== BARBADOS MAGIC LOUNGE PAGE ===== */
.cw-bml{--night:#0c0f1a;--bml:#722235;}
.cw-bml .wrap{max-width:1000px;}
.cw-bml .hero{position:relative;min-height:560px;height:auto;background-color:var(--night);background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:flex-start;color:#fff;text-align:left;}
.cw-bml .hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(8,10,20,.25),rgba(8,10,20,.85));}
.cw-bml .hero .inner{position:relative;z-index:2;padding:40px 22px;max-width:1000px;margin:0 auto;width:100%;}
.cw-bml .hero .eyebrow{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;opacity:.9;margin-bottom:10px;text-shadow:none;}
.cw-bml .hero h1{font-size:46px;font-weight:600;line-height:1.1;margin-bottom:12px;color:#fff;text-align:left;text-shadow:none;}
.cw-bml .hero p{font-size:19px;max-width:620px;opacity:.96;text-shadow:none;margin:0;}
.cw-bml .status{background:var(--bml);color:#fff;text-align:center;padding:16px 22px;font-size:15px;}
.cw-bml .status strong{color:#ffd27a;}
.cw-bml .status a{color:#fff;text-decoration:underline;}
.cw-bml .intro{background:#fff;text-align:center;}
.cw-bml .intro .wrap{max-width:820px;padding:46px 22px 10px;}
.cw-bml .intro p{font-size:19px;color:#2a3b43;}
.cw-bml .sec{padding:46px 0;}
.cw-bml .sec h2{font-size:28px;font-weight:600;text-align:center;color:var(--teal-d);margin-bottom:8px;}
.cw-bml .sub{text-align:center;color:#5a6b73;margin-bottom:30px;}
.cw-bml .years{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.cw-bml .years img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.12);display:block;}
.cw-bml .years{align-items:stretch;}
.cw-bml .years .next{aspect-ratio:2/3;}
.cw-bml .years .next{display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #cdd9dc;border-radius:8px;color:#9aa7ab;}
.cw-bml .years .next b{font-size:40px;font-weight:600;line-height:1;}
.cw-bml .years .next span{font-size:13px;font-weight:500;margin-top:6px;}
.cw-bml .split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;}
.cw-bml .split img{width:100%;border-radius:12px;display:block;}
.cw-bml .split h2{text-align:left;margin-bottom:14px;font-size:28px;font-weight:600;color:var(--teal-d);}
.cw-bml .split p{font-size:17px;color:#33444c;margin-bottom:14px;}
.cw-bml .facts{background:#eef8f9;}
.cw-bml .facts .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:920px;margin:0 auto;}
.cw-bml .fact{background:#fff;border:1px solid #d9edf0;border-radius:10px;padding:16px;text-align:center;}
.cw-bml .fact b{display:block;color:var(--teal-d);font-size:18px;margin-bottom:2px;}
.cw-bml .fact span{font-size:13px;color:#5a6b73;}
.cw-bml .reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.cw-bml .rev{background:#fff;border:1px solid #eee;border-radius:12px;padding:20px;box-shadow:0 5px 16px rgba(0,0,0,.05);}
.cw-bml .rev .s{color:var(--orange);letter-spacing:2px;font-size:14px;margin-bottom:8px;}
.cw-bml .rev p{font-size:14px;font-style:italic;color:#33444c;margin-bottom:10px;}
.cw-bml .rev .who{font-size:13px;color:#5a6b73;font-style:normal;}
.cw-bml .dine{background:var(--bml);color:#fff;text-align:center;padding:48px 22px;}
.cw-bml .dine h2{font-size:26px;color:#fff;margin-bottom:10px;}
.cw-bml .dine p{opacity:.92;max-width:640px;margin:0 auto 22px;}
.cw-bml .dine .btn+.btn{margin-left:10px;}
.cw-bml .btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.6);color:#fff !important;}
@media(max-width:820px){
  .cw-bml .hero h1{font-size:32px;}
  .cw-bml .years{grid-template-columns:repeat(3,1fr);}
  .cw-bml .split,.cw-bml .facts .grid,.cw-bml .reviews{grid-template-columns:1fr;}
  .cw-bml .dine .btn+.btn{margin:10px 0 0;}
}

/* mobile: tagline centered between the logo and the menu button */
@media(max-width:820px){
  .cwnav{padding:10px 16px;gap:10px;}
  .cwbrand{flex:1 1 auto;flex-direction:row;align-items:center;gap:10px;min-width:0;}
  .cwbrand img{flex:0 0 auto;}
  .cwtag{display:block;flex:1 1 auto;text-align:center;font-size:10.5px;line-height:1.2;max-width:none;padding-left:0;border-left:0;}
}
/* chat: parking map image bubble */
.cwm.cwm-img{background:transparent;padding:0;max-width:86%;}
.cwm-img img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid #e3eef0;}
