/* CD-UX-V1 (Genco, 6 Oct 2026, Muhammad's walk-through): one stylesheet for the search bar, the
   guest login, the rebuilt FAQ, monthly stays and stays pages, and the wider layout. */
:root{--cdx-ink:#14211e;--cdx-ink2:#4f5e5a;--cdx-teal:#0f3d3a;--cdx-live:#0f7c6e;--cdx-line:#e6dfd0;--cdx-sand:#f7f1e6;--cdx-canal:#dff0ec}

/* ---------- the search bar ---------- */
.cd-search{display:grid;grid-template-columns:1.2fr 1fr 1fr .7fr .7fr auto;align-items:stretch;background:#fff;border:1px solid var(--cdx-line);border-radius:999px;box-shadow:0 10px 30px -14px rgba(15,61,58,.35);padding:6px 6px 6px 10px;gap:0;max-width:none;margin:0 auto;font-family:Inter,system-ui,sans-serif}
.cd-search__f{display:flex;flex-direction:column;justify-content:center;padding:8px 16px;border-right:1px solid #eee;min-width:0;margin:0;cursor:pointer}
.cd-search__f:nth-last-child(2){border-right:0}
.cd-search__f span{font:700 10.5px/1.2 Inter,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--cdx-ink)}
.cd-search__f input,.cd-search__f select{border:0;background:transparent;font:500 15px/1.3 Inter,system-ui,sans-serif;color:var(--cdx-ink);padding:2px 0 0;margin:0;width:100%;min-width:0;outline:none;appearance:auto}
.cd-search__go{border:0;border-radius:999px;background:var(--cdx-teal);color:#fff;font:600 15px/1 Inter,system-ui,sans-serif;padding:0 26px;cursor:pointer;min-height:52px}
.cd-search__go:hover{background:#1f5450}
@media(max-width:900px){
  .cd-search{grid-template-columns:1fr 1fr;border-radius:18px;padding:8px;gap:6px}
  .cd-search__f{border:1px solid #eee;border-radius:12px;padding:8px 12px}
  .cd-search__where{grid-column:1/-1}
  .cd-search__go{grid-column:1/-1;border-radius:12px;min-height:48px}
}

/* the hero card on the homepage holds the same bar, stacked */
.v2-req .cd-search{grid-template-columns:1fr 1fr;border-radius:14px;box-shadow:none;border:0;padding:0;gap:8px;max-width:none}
.v2-req .cd-search__f{border:1px solid #e3e3e3;border-radius:12px;padding:8px 12px}
.v2-req .cd-search__where{grid-column:1/-1}
.v2-req .cd-search__go{grid-column:1/-1;border-radius:12px;min-height:50px}

/* ---------- wider homepage, compact "today" bar (the homepage's own inline styles load later, hence !important) ---------- */
.v2 .v2-wrap{max-width:1520px!important;padding:0 40px!important}
.v2 .v2-today__cell{padding:14px 18px 12px!important}
.v2 .v2-today__k{margin-bottom:6px!important}
.v2 .v2-today__v{font-size:18px!important}
.v2 .v2-today #cdpNext{display:none!important}
.v2 .v2-today__s{font-size:12px!important;margin-top:4px!important}
.v2 .v2-today__prayer{font-size:12.5px!important;gap:4px 10px!important}
.v2 .v2-today__events li:nth-child(n+3){display:none!important}
.v2 .v2-today__events .w small{display:none!important}
.v2 .v2-today__events li{font-size:12.5px!important;grid-template-columns:48px 1fr!important}
@media(max-width:760px){
  .v2 .v2-today__cell{padding:10px 12px!important}
  .v2 .v2-today__v{font-size:16px!important}
  .v2 .v2-today__events li:nth-child(n+2){display:none!important}
}

/* ---------- the stays page ---------- */
.cd-vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.cd-stays-top{max-width:1520px;margin:0 auto;padding:28px 40px 8px}
.cd-stays-note{max-width:1520px;margin:14px auto 0;padding:0 24px;font:500 14px/1.5 Inter,system-ui,sans-serif;color:var(--cdx-ink2);text-align:center}
.cd-stays-note a{color:var(--cdx-live);font-weight:600}
body.page-id-9 .cd-property{background:#fff!important;border:1px solid var(--cdx-line)!important;border-radius:18px!important;overflow:hidden;box-shadow:none!important;transition:border-color .2s}
body.page-id-9 a.cd-property:hover{border-color:var(--cdx-teal)!important}
body.page-id-9 .cd-property__img{border-radius:0!important}
body.page-id-9 .cd-property__body{text-align:left!important;padding:14px 18px 18px!important}
body.page-id-9 .cd-property__title{font-family:Fraunces,Georgia,serif!important;font-weight:500!important;font-size:21px!important;margin:0 0 4px!important}
body.page-id-9 .cd-property__sub{font-weight:500!important;color:var(--cdx-ink2)!important;margin:0 0 2px!important}
body.page-id-9 .cd-property__meta{margin:0 0 10px!important}
body.page-id-9 .cd-property__dates{font-weight:600;color:var(--cdx-ink)!important}
body.page-id-9 .cd-property__price-row{margin:0!important;padding-top:10px;border-top:1px solid #eee}
body.page-id-9 .cd-property__price{font-size:18px!important;font-weight:600!important;color:var(--cdx-ink)!important}
body.page-id-9 .cd-hub-grid{max-width:1520px!important;margin:28px auto 60px!important;padding:0 40px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important}
@media(max-width:900px){body.page-id-9 .cd-hub-grid{grid-template-columns:1fr!important}}

/* ---------- inner pages use the width ---------- */
body.page .wp-block-post-content{max-width:1440px}

/* ---------- guest login and bookings ---------- */
.cd-acct{max-width:1440px;margin:20px auto 70px;font-family:Inter,system-ui,sans-serif;color:var(--cdx-ink)}
.cd-acct--narrow{max-width:440px;background:#fff;border:1px solid var(--cdx-line);border-radius:20px;padding:30px 28px}
.cd-acct h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:32px;margin:0 0 16px}
.cd-acct h2{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:22px;margin:30px 0 12px}
.cd-acct label{display:block;font:600 13px/1.3 Inter,system-ui,sans-serif;margin:0 0 14px}
.cd-acct input{display:block;width:100%;margin-top:6px;padding:12px 14px;border:1px solid #d9d2c3;border-radius:12px;font:500 15px/1.3 Inter,system-ui,sans-serif;box-sizing:border-box}
.cd-btn2{display:inline-block;border:0;background:var(--cdx-teal);color:#fff!important;border-radius:12px;padding:13px 20px;font:600 15px/1 Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer;text-align:center}
.cd-acct form .cd-btn2{width:100%;margin-top:4px}
.cd-btn2--ghost{background:#fff;color:var(--cdx-teal)!important;border:1px solid var(--cdx-teal)}
.cd-acct__alt{font-size:14px;color:var(--cdx-ink2);margin:14px 0 0}
.cd-acct__alt a{color:var(--cdx-live);font-weight:600}
.cd-acct__err{background:#fdf0ee;color:#9a3b2f;border-radius:12px;padding:10px 12px;font-size:14px;margin-bottom:14px}
.cd-acct__ok{background:var(--cdx-canal);color:var(--cdx-teal);border-radius:12px;padding:10px 12px;font-size:14px;margin-bottom:14px}
.cd-acct__head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.cd-acct__head p{margin:0;color:var(--cdx-ink2)}
.cd-acct__acts{display:flex;gap:10px}
.cd-acct__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.cd-acct__bk{display:grid;gap:4px;background:#fff;border:1px solid var(--cdx-line);border-radius:16px;padding:16px 18px;text-decoration:none;color:var(--cdx-ink)}
.cd-acct__bk:hover{border-color:var(--cdx-teal)}
.cd-acct__bkt{font-weight:600}.cd-acct__bkd{color:var(--cdx-ink2);font-size:14px}
.cd-acct__bkp{font-family:Fraunces,Georgia,serif;font-size:20px}.cd-acct__bkr{color:var(--cdx-live);font-size:13px;font-weight:600}
.cd-acct__empty{color:var(--cdx-ink2)}

/* ---------- FAQ and monthly stays: cards across the width, answers open ---------- */
.cdx{max-width:1440px;margin:10px auto 70px;font-family:Inter,system-ui,sans-serif;color:var(--cdx-ink)}
.cdx h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(30px,4vw,44px);margin:0 0 8px;line-height:1.1}
.cdx__lead{font-size:17px;color:var(--cdx-ink2);margin:0 0 24px;max-width:760px}
.cdx__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cdx__card{background:#fff;border:1px solid var(--cdx-line);border-radius:18px;padding:20px 20px 18px}
.cdx__card h2,.cdx__card h3{font:600 16px/1.35 Inter,system-ui,sans-serif;margin:0 0 8px;color:var(--cdx-ink)}
.cdx__card p{margin:0;font-size:14.5px;line-height:1.6;color:var(--cdx-ink2)}
.cdx__card a{color:var(--cdx-live);font-weight:600}
.cdx__band{background:var(--cdx-sand);border-radius:22px;padding:22px;margin:0 0 22px}
.cdx__stat{font-family:Fraunces,Georgia,serif;font-size:30px;color:var(--cdx-teal);display:block;margin-bottom:4px}
.cdx__more{margin-top:22px;text-align:center;font-size:15px;color:var(--cdx-ink2)}
.cdx__more a{color:var(--cdx-live);font-weight:600}
.cdx__grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){.cdx__grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.cdx__grid{grid-template-columns:1fr}.cdx{padding:0 4px}}

/* date boxes: the whole field opens the calendar, not only the icon (7 Oct) */
.cd-search__f input[type=date]{cursor:pointer}
.cd-search__f input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}
@media(max-width:900px){.cd-stays-top{padding:20px 16px 8px}body.page-id-9 .cd-hub-grid{padding:0 16px!important}.v2 .v2-wrap{padding:0 20px!important}}
/* the page template's outer group still capped its inner group at the theme's 1200 (7 Oct) */
body.page main.wp-block-group > .wp-block-group{max-width:1520px!important}
/* delete my account (7 Oct) */
.cd-acct__del{margin-top:40px;border-top:1px solid var(--cdx-line);padding-top:16px;color:var(--cdx-ink2);font-size:14px}
.cd-acct__del summary{cursor:pointer;font-weight:600;color:#9a3b2f}
.cd-acct__del p{max-width:640px}
.cd-acct__chk{display:flex!important;gap:8px;align-items:center;font-weight:500!important}
.cd-acct__chk input{width:auto!important;margin:0!important}
.cd-acct__del .cd-btn2{border-color:#9a3b2f;color:#9a3b2f!important;margin-top:6px}

/* ---------- map (7 Oct) ---------- */
.cd-stays-split{max-width:1520px;margin:28px auto 60px;padding:0 40px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:24px;align-items:start}
body.page-id-9 .cd-stays-split .cd-hub-grid{margin:0!important;padding:0!important;max-width:none!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
.cd-stays-map{position:sticky;top:96px}
.cd-stays-map .cd-map{height:min(640px,calc(100vh - 130px));border-radius:18px;overflow:hidden;border:1px solid var(--cdx-line)}
.cd-map--listing{height:380px;border-radius:18px;overflow:hidden;border:1px solid var(--cdx-line);margin-top:12px}
.cd-pin{background:none;border:0}
.cd-pin span{display:inline-block;transform:translate(-50%,-50%);background:#fff;color:#14211e;font:700 13px/1 Inter,system-ui,sans-serif;padding:8px 12px;border-radius:999px;box-shadow:0 2px 10px rgba(0,0,0,.25);white-space:nowrap;cursor:pointer}
.cd-pin:hover span{background:#0f3d3a;color:#fff}
.cd-pin--off span{background:#f1efe9;color:#4f5e5a}
.cd-l-permit{font-size:13px;color:#4f5e5a;margin:4px 0 0}
@media(max-width:900px){.cd-stays-split{grid-template-columns:1fr;padding:0 16px}.cd-stays-map{position:static}.cd-stays-map .cd-map{height:320px}body.page-id-9 .cd-stays-split .cd-hub-grid{grid-template-columns:1fr!important}}

/* ---------- legal pages (7 Oct) ---------- */
.cdl{max-width:1440px;margin:10px auto 70px;display:grid;grid-template-columns:260px minmax(0,1fr);gap:48px;font-family:Inter,system-ui,sans-serif;color:var(--cdx-ink)}
.cdl__toc{position:sticky;top:96px;align-self:start;display:flex;flex-direction:column;gap:2px;border:1px solid var(--cdx-line);border-radius:16px;padding:14px}
.cdl__toc b{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--cdx-ink2);margin-bottom:6px}
.cdl__toc a{font-size:14px;color:var(--cdx-ink);text-decoration:none;padding:5px 6px;border-radius:8px}
.cdl__toc a:hover{background:var(--cdx-sand)}
.cdl__body{max-width:860px}
.cdl__body h1{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:clamp(30px,4vw,44px);margin:0 0 6px}
.cdl__meta{color:var(--cdx-ink2);font-size:13px;margin:0 0 12px}
.cdl__lead{font-size:17px;color:var(--cdx-ink2);margin:0 0 20px}
.cdl__body section{border-top:1px solid var(--cdx-line);padding:18px 0 6px;scroll-margin-top:96px}
.cdl__body h2{font:600 19px/1.3 Inter,system-ui,sans-serif;margin:0 0 8px}
.cdl__body h3{font:600 15px/1.3 Inter,system-ui,sans-serif;margin:14px 0 4px}
.cdl__body p,.cdl__body li{font-size:15.5px;line-height:1.7;color:#2c3a36}
.cdl__body table{width:100%;border-collapse:collapse;margin:8px 0;font-size:14.5px}
.cdl__body th,.cdl__body td{text-align:left;padding:9px 10px;border-bottom:1px solid #eee;vertical-align:top}
.cdl__body th{color:var(--cdx-ink2);font-weight:600}
.cdl__body a{color:var(--cdx-live)}
.cdl__see{margin-top:24px;color:var(--cdx-ink2)}
@media(max-width:900px){.cdl{grid-template-columns:1fr;gap:16px}.cdl__toc{position:static}}

/* hover (7 Oct b): the search fields light up like Airbnb's; the map is Google's */
.cd-search__f{transition:background-color .18s ease,box-shadow .18s ease;border-radius:999px}
.cd-search__f:hover{background:#f1f1f1}
.cd-search__f:focus-within{background:#fff;box-shadow:0 6px 20px -6px rgba(0,0,0,.25)}
.cd-search__go{transition:transform .15s ease,background-color .15s ease}
.cd-search__go:hover{transform:scale(1.03)}
@media(max-width:900px){.cd-search__f{border-radius:12px}}
.v2-req .cd-search__f{border-radius:12px}
.cd-stays-map .cd-gmap{width:100%;height:min(640px,calc(100vh - 130px));border:0;border-radius:18px;display:block}
@media(max-width:900px){.cd-stays-map .cd-gmap{height:320px}}
/* run 256: homepage date boxes cut the year below ~390px. Scoped to .v2-req. */
@media (max-width:420px){.v2-req .cd-search__f input[type=date]{padding-left:8px;padding-right:6px}.v2-req .cd-search .cd-search__f{padding-left:8px;padding-right:8px}}
@media (max-width:350px){.v2-req .cd-search__f input[type=date]{font-size:13px;padding-left:6px;padding-right:4px}.v2-req .cd-search .cd-search__f{padding-left:6px;padding-right:6px}.v2-req .cd-search__f input[type=date]::-webkit-calendar-picker-indicator{margin-left:0;padding:0;width:12px}}
