.elementor-kit-5{--e-global-color-primary:#DDD0BE;--e-global-color-secondary:#D46868;--e-global-color-text:#2B2A28;--e-global-color-accent:#FFFFFF;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#2B2A28;font-family:"Jost", Sans-serif;font-size:17px;line-height:1.7em;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:var( --e-global-color-secondary );font-family:"Jost", Sans-serif;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:0.2em;color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:var( --e-global-color-primary );color:var( --e-global-color-text );}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#2B2A28;}.elementor-kit-5 h1{color:#2B2A28;font-family:"Cormorant Garamond", Sans-serif;font-size:40px;font-weight:600;}.elementor-kit-5 h2{color:#2B2A28;font-family:"Cormorant Garamond", Sans-serif;font-size:26px;font-weight:700;}.elementor-kit-5 h3{color:var( --e-global-color-text );font-family:"Cormorant Garamond", Sans-serif;font-size:22px;font-weight:700;}.elementor-kit-5 h4{color:var( --e-global-color-text );font-family:"Cormorant Garamond", Sans-serif;font-size:26px;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   CULTURE.STYLE.LIFE. — ARTICLE STYLES
   Paste into: Elementor › Site Settings › Custom CSS

   How it works
   - Everything here only affects articles whose Post Content
     widget has the CSS class  csl-article  (set in the
     Guide Post template). Nothing else on the site changes.
   - Pieces inside an article get a class in the block editor:
     Block › Advanced › Additional CSS class(es).
   ========================================================= */


/* ---------- 1. Brand colours and fonts ---------- */
:root {
  --csl-ink: #2b2a28;
  --csl-sand: #ddd0bc;
  --csl-coral: #d46868;
  --csl-rule: rgba(43, 42, 40, .2);
  --csl-muted: rgba(43, 42, 40, .68);
  --csl-serif: "Cormorant Garamond", Georgia, serif;
  --csl-sans: "Jost", "Helvetica Neue", sans-serif;
  --csl-script: "Allura", cursive;
  --csl-gap: 120px;
}
@media (max-width: 767px) {
  :root { --csl-gap: 64px; }
}


/* ---------- 2. Article text ---------- */
.csl-article {
  font-family: var(--csl-sans);
  font-size: 17px;
  line-height: 1.7;
  font-weight: 400;
  color: var(--csl-ink);
}
.csl-article p { margin: 0 0 1.3em; }
.csl-article strong { font-weight: 500; }
.csl-article a { color: var(--csl-ink); }
.csl-article a:hover { color: var(--csl-coral); }

/* Empty lines left by pressing Enter take up no space */
.csl-article p:empty { display: none; }


/* ---------- 3. Automatic drop cap (first paragraph) ---------- */
.csl-article > .elementor-widget-container > p:first-of-type:not(.csl-label)::first-letter,
.csl-article > p:first-of-type:not(.csl-label)::first-letter,
.csl-article p.has-drop-cap:not(:focus)::first-letter {
  font-family: var(--csl-serif);
  font-weight: 500;
  font-size: 84px;
  line-height: .8;
  float: left;
  margin: 8px 12px 0 0;
  color: var(--csl-ink);
}


/* ---------- 4. Section titles (H2) and sub-titles (H3) ----------
   !important is needed here because the site's global heading
   style would otherwise take over inside articles. */
body .csl-article h2 {
  font-family: var(--csl-serif) !important;
  font-size: 36px !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--csl-ink) !important;
  margin: 88px 0 20px;
}
.csl-article h3 {
  font-family: var(--csl-serif);
  font-weight: 500;
  font-size: 26px;
  line-height: 1.2;
  margin: 48px 0 14px;
}
@media (max-width: 767px) {
  body .csl-article h2 { font-size: 30px !important; margin-top: 64px; }
}


/* ---------- 5. Small labels — class: csl-label ----------
   Inside cards and list entries: small grey capitals ("WHERE I STAY").
   Directly above a section title: a section number ("01"). */
body .csl-article .csl-label {
  font-family: var(--csl-sans) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--csl-muted) !important;
  font-variant-numeric: lining-nums;
  margin: 0 0 10px;
}

/* Section number above a section title */
body .csl-article > .elementor-widget-container > p.csl-label,
body .csl-article > p.csl-label {
  font-family: var(--csl-serif) !important;
  font-size: 22px !important;
  letter-spacing: .06em !important;
  color: rgba(43, 42, 40, .6) !important;
  margin: 88px 0 4px;
}

/* Keep the section title tight under its number */
body .csl-article .csl-label + h2,
body .csl-article .csl-label + p:empty + h2,
body .csl-article .csl-label + p:empty + p:empty + h2 {
  margin-top: 0 !important;
}


/* ---------- 6. Details line and links ---------- */
/* Address · price · book ahead — class: csl-details */
.csl-article .csl-details {
  font-size: 12px;
  letter-spacing: .04em;
  color: var(--csl-muted);
  border-top: 1px solid var(--csl-rule);
  padding-top: 14px;
}

/* "RESERVE A TABLE →" style link — class: csl-cta */
.csl-article .csl-cta,
.csl-article .csl-cta a {
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
}

/* Big list number "01" — class: csl-number */
.csl-article .csl-number {
  font-family: var(--csl-serif);
  font-weight: 300;
  font-size: 80px;
  line-height: .9;
  font-variant-numeric: lining-nums;
  margin: 0 0 12px;
}

/* Signature "Amanda" — class: csl-sign */
.csl-article .csl-sign {
  font-family: var(--csl-script);
  font-size: 48px;
  line-height: 1.1;
  text-align: right;
  margin-top: 16px;
}


/* ---------- 7. Captions ---------- */
.csl-article figcaption,
.csl-article .wp-element-caption {
  font-size: 12px;
  line-height: 1.5;
  color: var(--csl-muted);
  text-align: left;
  margin-top: 10px;
}


/* ---------- 8. Photo widths ---------- */
/* Wider than the text — class: csl-wide (Image, Gallery or Columns) */
/* Edge to edge — class: csl-full (Image) */
.csl-article .csl-wide,
.csl-article .csl-full {
  max-width: none;
  margin-left: 50%;
  transform: translateX(-50%);
  margin-top: 56px;
  margin-bottom: 56px;
}
.csl-article .csl-wide { width: calc(100vw - 48px); max-width: 1040px; }
.csl-article .csl-full { width: 100vw; }
.csl-article .csl-wide img,
.csl-article .csl-full img { width: 100%; height: auto; display: block; }
.csl-article .csl-full figcaption { padding: 0 24px; }

/* Two portrait photos side by side — class: csl-pair (Columns or Gallery) */
.csl-article .csl-pair { gap: 20px; }
.csl-article .csl-pair img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }


/* ---------- 9. Pull-quote — class: csl-pullquote (Pullquote block) ---------- */
.csl-article .csl-pullquote {
  border: 0;
  border-top: 1px solid var(--csl-sand);
  border-bottom: 1px solid var(--csl-sand);
  padding: 40px 0;
  margin: 96px 0;
  text-align: center;
}
.csl-article .csl-pullquote blockquote { margin: 0; border: 0; padding: 0; }
.csl-article .csl-pullquote p {
  font-family: var(--csl-serif);
  font-style: italic;
  font-size: 34px;
  line-height: 1.3;
  margin: 0;
}
.csl-article .csl-pullquote cite {
  display: block;
  margin-top: 16px;
  font-family: var(--csl-sans);
  font-style: normal;
  font-size: 11px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--csl-muted);
}
@media (max-width: 767px) {
  .csl-article .csl-pullquote p { font-size: 26px; }
}


/* ---------- 10. Hotel card — class: csl-card (Media & Text block) ---------- */
.csl-article .wp-block-media-text.csl-card {
  border: 1px solid var(--csl-rule);
  width: calc(100vw - 48px);
  max-width: 960px;
  margin: 48px 0 48px 50%;
  transform: translateX(-50%);
}
.csl-article .csl-card .wp-block-media-text__content { padding: 40px; }
body .csl-article .csl-card h2,
.csl-article .csl-card h3 { margin-top: 0; }


/* ---------- 11. List entry — class: csl-entry (Media & Text block) ----------
   Use "Show media on right" on every second entry. */
.csl-article .wp-block-media-text.csl-entry {
  width: calc(100vw - 48px);
  max-width: 1120px;
  margin: var(--csl-gap) 0 0 50%;
  transform: translateX(-50%);
  column-gap: 56px;
}
.csl-article .csl-entry .wp-block-media-text__content { padding: 0; }
.csl-article .csl-entry .wp-block-media-text__media img { aspect-ratio: 4 / 5; object-fit: cover; }
body .csl-article .csl-entry h2 { margin-top: 0; }
@media (max-width: 781px) {
  .csl-article .wp-block-media-text.csl-entry { row-gap: 28px; }
}


/* ---------- 12. Boxes ---------- */
/* Sand box: verdict or editor's note — class: csl-verdict (Group block) */
.csl-article .csl-verdict {
  background: var(--csl-sand);
  padding: 48px;
  margin: 96px 0;
}
.csl-article .csl-verdict p:not(.csl-label):not(.csl-sign) {
  font-family: var(--csl-serif);
  font-size: 24px;
  line-height: 1.45;
}
@media (max-width: 767px) {
  .csl-article .csl-verdict { padding: 32px 24px; }
}

/* "In this guide" contents — class: csl-contents (Group block with a list) */
.csl-article .csl-contents {
  border-top: 1px solid var(--csl-rule);
  border-bottom: 1px solid var(--csl-rule);
  padding: 28px 0;
  margin: 56px 0;
}
.csl-article .csl-contents ol,
.csl-article .csl-contents ul {
  list-style: none;
  margin: 0;
  padding: 0;
  column-count: 2;
  column-gap: 32px;
  font-family: var(--csl-serif);
  font-size: 21px;
  line-height: 1.6;
}
.csl-article .csl-contents a { text-decoration: none; }
@media (max-width: 600px) {
  .csl-article .csl-contents ol,
  .csl-article .csl-contents ul { column-count: 1; }
}

/* "What I loved / Worth knowing" — class: csl-twocol (Columns block) */
.csl-article .csl-twocol .wp-block-column {
  border-top: 1px solid var(--csl-rule);
  padding-top: 22px;
}
.csl-article .csl-twocol h3 { margin-top: 0; }
.csl-article .csl-twocol ul { list-style: none; padding: 0; margin: 0; }
.csl-article .csl-twocol li::before { content: "— "; }

/* "What came home with me" products — class: csl-products (Columns of Images) */
.csl-article .csl-products { gap: 20px; }
.csl-article .csl-products img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.csl-article .csl-products figcaption {
  font-family: var(--csl-serif);
  font-size: 19px;
  color: var(--csl-ink);
}

.csl-article .csl-contents a { color: var(--csl-ink) !important; }
.csl-article .csl-contents a:hover { color: var(--csl-coral) !important; }

.csl-article .csl-contents { font-variant-numeric: lining-nums; }

/* ---------- 13. Journal — Post Content class: csl-article csl-journal ---------- */
.csl-journal { font-size: 18px; line-height: 1.75; }

.csl-journal figcaption,
.csl-journal .wp-element-caption {
  font-family: var(--csl-serif);
  font-style: italic;
  font-size: 16px;
  color: rgba(43, 42, 40, .75);
}

.csl-journal .csl-pullquote {
  text-align: left;
  border-bottom: 0;
  padding-bottom: 0;
}
.csl-journal .csl-pullquote p { font-size: 44px; line-height: 1.2; }
@media (max-width: 767px) {
  .csl-journal .csl-pullquote p { font-size: 30px; }
}/* End custom CSS */