/*
Theme Name: C4 Events
Theme URI: https://wearec4e.com/
Author: C4 Events
Author URI: https://wearec4e.com/
Description: Child theme of Twenty Twenty-Five for C4 Events. Full-bleed hero, dark chrome, red accent.
Template: twentytwentyfive
Version: 1.0.4
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: c4events
*/

:root{
  --c4-ink:#15151c;
  --c4-paper:#fbfaf7;
  --c4-line:#e8e3da;
  --c4-accent:#ff0032;
  --c4-muted:#5a6270;
}

body{
  background:var(--c4-paper);
  color:var(--c4-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none}

/* ---------------- site header ---------------- */
.c4-header{padding:22px 52px !important}
.c4-header .wp-block-site-logo img{height:44px;width:44px;border-radius:8px}
.c4-header .wp-block-navigation{gap:34px}
.c4-header .wp-block-navigation a{color:#fff;font-size:15.5px;opacity:.92}
.c4-header .wp-block-navigation a:hover{opacity:1;text-decoration:underline}
.c4-header .wp-block-button__link{
  background:#fff;color:var(--c4-ink);border-radius:999px;
  padding:12px 22px;font-weight:600;font-size:15.5px;
}
/* interior pages: dark type on light chrome */
body:not(.home) .c4-header{background:var(--c4-paper);border-bottom:1px solid var(--c4-line)}
body:not(.home) .c4-header .wp-block-navigation a{color:var(--c4-ink)}
body:not(.home) .c4-header .wp-block-button__link{background:var(--c4-ink);color:#fff}

/* ---------------- hero ---------------- */
.c4-hero{
  position:relative;min-height:100vh;display:flex;align-items:flex-end;
  color:#fff;overflow:hidden;padding:0 52px 104px !important;margin:0 !important;
  background-image:
    linear-gradient(to bottom, rgba(10,10,14,.70) 0%, rgba(10,10,14,.28) 30%, rgba(10,10,14,.58) 70%, rgba(10,10,14,.88) 100%),
    linear-gradient(to right, rgba(10,10,14,.64) 0%, rgba(10,10,14,.18) 55%, rgba(10,10,14,0) 100%),
    url('https://wearec4e.com/wp-content/uploads/2026/07/unnamed-file-5.png');
  background-size:cover,cover,cover;
  background-position:center,center,center 55%;
}
.c4-hero > *{position:relative;z-index:2;max-width:1120px}
.c4-hero h1{
  font-size:clamp(44px,6.2vw,86px);line-height:1.03;letter-spacing:-.028em;
  font-weight:800;max-width:17ch;margin:0 0 26px;color:#fff;
}
.c4-hero p{font-size:clamp(17px,1.5vw,21px);line-height:1.56;max-width:60ch;margin:0 0 38px;color:#fff;opacity:.94}
.c4-hero .wp-block-buttons{gap:14px}
.c4-hero .wp-block-button__link{padding:16px 30px;border-radius:10px;font-weight:600;font-size:17px}
.c4-hero .is-style-c4-primary .wp-block-button__link,
.c4-hero .wp-block-button:first-child .wp-block-button__link{background:var(--c4-accent);color:#fff}
.c4-hero .wp-block-button:last-child .wp-block-button__link{
  background:rgba(20,20,26,.55);color:#fff;border:1px solid rgba(255,255,255,.32);backdrop-filter:blur(4px);
}

/* ---------------- proof strip ---------------- */
.c4-strip{background:var(--c4-ink);color:#fff;padding:28px 52px !important;margin:0 !important}
.c4-strip .wp-block-column{flex-basis:auto}
.c4-strip strong{display:block;font-size:28px;font-weight:800;letter-spacing:-.02em;margin-bottom:3px}
.c4-strip p{margin:0;font-size:15px;color:#fff}
.c4-strip em{font-style:normal;opacity:.62}

/* ---------------- client logos ---------------- */
.c4-clients{padding:64px 52px !important;border-bottom:1px solid var(--c4-line);margin:0 !important}
.c4-clients > p{margin:0 0 34px;font-size:16px;color:var(--c4-muted)}
.c4-clients .wp-block-gallery{gap:34px 44px !important}
.c4-clients figure.wp-block-image{margin:0}
.c4-clients img{
  height:42px !important;width:auto !important;max-width:100%;object-fit:contain;
  filter:grayscale(1);opacity:.62;transition:opacity .15s ease,filter .15s ease;
}
.c4-clients img:hover{opacity:1;filter:grayscale(0)}

/* ---------------- generic sections ---------------- */
.c4-section{padding:96px 52px !important;margin:0 !important}
.c4-section h2,.c4-places h2{
  font-size:clamp(30px,3.5vw,46px);letter-spacing:-.022em;line-height:1.08;
  font-weight:800;max-width:22ch;margin:0 0 16px;
}
.c4-lede{font-size:19px;line-height:1.62;color:var(--c4-muted);max-width:64ch;margin:0 0 52px !important}

.c4-cards{gap:20px !important}
.c4-cards .wp-block-column{
  border:1px solid var(--c4-line);border-radius:14px;padding:26px 26px 30px;background:#fff;
  transition:transform .15s ease,box-shadow .15s ease;
}
.c4-cards .wp-block-column:hover{transform:translateY(-3px);box-shadow:0 12px 34px rgba(21,21,28,.09)}
.c4-cards h3{margin:0 0 8px;font-size:19px;font-weight:700;letter-spacing:-.01em}
.c4-cards p{margin:0;color:var(--c4-muted);font-size:15.5px;line-height:1.55}
.c4-cards a.c4-ar{margin-top:18px;display:inline-block;color:var(--c4-accent);font-weight:600;font-size:15px}

/* ---------------- destinations ---------------- */
.c4-places{background:#fff;border-top:1px solid var(--c4-line);border-bottom:1px solid var(--c4-line);padding:96px 52px !important;margin:0 !important}
.c4-tiles{gap:16px !important}
.c4-tiles .wp-block-cover{aspect-ratio:3/4;min-height:unset !important;border-radius:12px;overflow:hidden;padding:18px !important;align-items:flex-end}
.c4-tiles .wp-block-cover strong{display:block;font-size:18px;font-weight:700}
.c4-tiles .wp-block-cover em{display:block;font-style:normal;font-size:13.5px;opacity:.78;margin-top:3px}
.c4-tiles .wp-block-cover p{margin:0;color:#fff}

/* ---------------- enquiry band ---------------- */
.c4-enquire{background:var(--c4-ink);color:#fff;padding:92px 52px !important;margin:0 !important}
.c4-enquire h2{color:#fff}
.c4-enquire .c4-lede{color:rgba(255,255,255,.68)}
.c4-enquire .c4-contact{font-size:17px;line-height:1.9;color:rgba(255,255,255,.8)}
.c4-enquire .c4-contact a{border-bottom:1px solid rgba(255,255,255,.35);color:#fff}
.c4-formcard{background:#fff;border-radius:16px;padding:30px 32px}
.c4-formcard .wpforms-container{margin:0}
.c4-formcard .wpforms-field{padding:0 0 16px !important}
.c4-formcard .wpforms-field-label{font-size:13.5px !important;font-weight:600 !important;margin-bottom:7px !important;color:var(--c4-ink) !important}
.c4-formcard .wpforms-field-sublabel{font-size:12px !important;color:var(--c4-muted) !important}
.c4-formcard input[type=text],.c4-formcard input[type=email],.c4-formcard input[type=tel],
.c4-formcard select,.c4-formcard textarea{
  width:100% !important;padding:13px 14px !important;border:1px solid var(--c4-line) !important;
  border-radius:9px !important;font-size:16px !important;font-family:inherit !important;
  background:#fff !important;color:var(--c4-ink) !important;box-shadow:none !important;max-width:none !important;
}
.c4-formcard textarea{min-height:118px !important}
.c4-formcard input:focus,.c4-formcard select:focus,.c4-formcard textarea:focus{
  outline:2px solid var(--c4-accent) !important;outline-offset:1px;border-color:transparent !important}
.c4-formcard button[type=submit]{
  width:100% !important;background:var(--c4-accent) !important;color:#fff !important;border:0 !important;
  border-radius:10px !important;padding:16px !important;font-size:17px !important;font-weight:700 !important;
  font-family:inherit !important;cursor:pointer;
}
.c4-formcard .wpforms-required-label{color:var(--c4-accent) !important}

/* ---------------- footer ---------------- */
.c4-footer{margin:0 !important}
.c4-footer .wp-block-site-logo img{height:40px;width:40px;border-radius:8px}
.c4-footer .wp-block-navigation{flex-direction:column;gap:11px}
.c4-footer .wp-block-navigation a{color:var(--c4-muted)}
.c4-footer .wp-block-navigation a:hover{color:var(--c4-accent)}
.c4-footer .c4-fline{margin:14px 0 0;color:var(--c4-ink);font-weight:600;max-width:30ch}
.c4-promise{border-left:3px solid var(--c4-accent);padding-left:16px;max-width:44ch;margin-top:22px}
.c4-promise p{margin:0 0 10px;line-height:1.6}
.c4-promise .c4-sig{font-weight:700;color:var(--c4-ink)}
.c4-fbar{border-top:1px solid var(--c4-line);margin-top:54px !important;padding-top:22px !important;font-size:13.5px}
.c4-fbar p{margin:0}
.c4-fbar a{color:var(--c4-muted)}

/* ---------------- interior pages ---------------- */
.c4-page-body{padding:56px 52px 96px !important}
.c4-page-body h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.022em;line-height:1.08;font-weight:800;margin:0 0 24px}

/* ---------------- responsive ---------------- */
@media (max-width:900px){
  .c4-header{padding:16px 22px !important}
  .c4-hero{padding:0 22px 60px !important}
  .c4-strip,.c4-clients,.c4-section,.c4-places,.c4-enquire,.c4-footer{padding-left:22px !important;padding-right:22px !important}
  .c4-section,.c4-places{padding-top:64px !important;padding-bottom:64px !important}
  .c4-page-body{padding:36px 22px 64px !important}
}


/* ============================================================================
   Folded in from Additional CSS (global styles post 211) at 1.0.1.
   This block loads last on purpose: it is the live iteration layer and must
   win over everything above it. Do not reorder.
   ============================================================================ */

/* ---- hero: stack the children, they were laying out in a row ---- */
.c4-hero{flex-direction:column !important;justify-content:flex-end !important;align-items:flex-start !important}
.c4-hero > *{width:100%;max-width:1120px;margin-left:0 !important;margin-right:auto !important;text-align:left}
.c4-hero .wp-block-heading,.c4-hero p{margin-left:0 !important}
.c4-hero .wp-block-buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:14px;justify-content:flex-start}
.c4-hero .wp-block-button{width:auto}

/* ---- header: readable over the photo, clear of the hero type ---- */
.c4-header{align-items:center}
.c4-header .wp-block-site-logo{margin-right:6px}
.c4-header .wp-block-site-logo img{height:44px !important;width:44px !important;border-radius:8px}
.c4-header .wp-block-navigation__container{gap:34px}
body.home .c4-header .wp-block-navigation a,
body.home .c4-header .wp-block-navigation .wp-block-navigation-item__content{color:#fff !important;opacity:.95}
body:not(.home) .c4-header .wp-block-navigation a,
body:not(.home) .c4-header .wp-block-navigation .wp-block-navigation-item__content{color:var(--c4-ink) !important;opacity:.9}
body:not(.home) .c4-header{position:relative !important;background:var(--c4-paper) !important;border-bottom:1px solid var(--c4-line)}
body:not(.home) .c4-header .wp-block-button__link{background:var(--c4-ink) !important;color:#fff !important}
body.home .c4-header{
  position:sticky !important;
  background:rgba(14,14,19,.72) !important;
  backdrop-filter:saturate(160%) blur(16px);
  -webkit-backdrop-filter:saturate(160%) blur(16px);
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  box-shadow:0 1px 24px rgba(0,0,0,.28);
}
body.home .c4-header .wp-block-navigation a{color:#fff !important}
body.home .c4-header .wp-block-button__link{background:#fff !important;color:var(--c4-ink) !important}
body:not(.home) .c4-header{
  background:rgba(251,250,247,.88) !important;
  backdrop-filter:saturate(180%) blur(14px);
  -webkit-backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--c4-line) !important;
  box-shadow:0 1px 20px rgba(21,21,28,.06);
}
body.admin-bar .c4-header{top:32px}
@media (max-width:782px){body.admin-bar .c4-header{top:46px}}

/* ==================== page + post banners ==================== */
.c4-pagebanner,.c4-postbanner{
  background:var(--c4-ink);color:#fff;padding:104px 52px 56px !important;margin:0 !important;
  background-image:radial-gradient(1200px 380px at 12% -10%, rgba(255,0,50,.22), transparent 60%);
}
body:not(.home) .c4-pagebanner,body:not(.home) .c4-postbanner{padding-top:64px !important}
.c4-pagebanner > *,.c4-postbanner > *{margin-left:0 !important;margin-right:auto !important;max-width:1320px}
.c4-pagebanner h1,.c4-postbanner h1{
  color:#fff !important;font-size:clamp(32px,4.4vw,58px);line-height:1.06;
  letter-spacing:-.024em;font-weight:800;margin:0;max-width:22ch;
}
.c4-eyebrow,.c4-eyebrow a{
  color:var(--c4-accent) !important;font-size:12.5px !important;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700;margin:0 0 14px !important;
}
.c4-banner-lede{color:rgba(255,255,255,.7) !important;font-size:18px;max-width:60ch;margin:18px 0 0 !important}
.c4-meta{color:rgba(255,255,255,.6);font-size:14.5px;gap:10px;margin-top:18px !important}
.c4-meta p{margin:0}

.c4-chips{gap:10px;margin-top:26px !important}
.c4-chips p{margin:0}
.c4-chips a{
  display:inline-block;border:1px solid rgba(255,255,255,.3);border-radius:999px;
  padding:7px 16px;font-size:14px;color:#fff !important;
}
.c4-chips a:hover{background:#fff;color:var(--c4-ink) !important}

/* ==================== article shell + sidebar ==================== */
.c4-shell{padding:56px 52px 88px !important;max-width:1320px;margin:0 auto !important}
.c4-shell > *{max-width:none !important;margin-left:0 !important;margin-right:0 !important}
.c4-related > *,.c4-endcta > *{max-width:1320px}
.c4-related > *{margin-left:0 !important;margin-right:auto !important}
.c4-with-side{gap:56px !important;align-items:flex-start}
.c4-article > *{max-width:none}
.c4-article .wp-block-post-featured-image img{width:100%;height:auto;border-radius:14px;margin-bottom:32px}

.c4-sidebar{position:sticky;top:110px;display:flex;flex-direction:column;gap:20px}
.c4-side-cta{background:var(--c4-ink);color:#fff;border-radius:14px;padding:26px}
.c4-side-cta h3{color:#fff;margin:0 0 10px;font-size:19px;font-weight:700}
.c4-side-cta p{color:rgba(255,255,255,.72);font-size:15px;line-height:1.55;margin:0 0 18px}
.c4-side-cta .wp-block-button__link{background:var(--c4-accent);color:#fff;border-radius:9px;padding:12px 20px;font-weight:600;font-size:15px}
.c4-side-box{background:#fff;border:1px solid var(--c4-line);border-radius:14px;padding:22px 24px}
.c4-side-head{
  font-size:12px !important;letter-spacing:.12em;text-transform:uppercase;
  font-weight:700;color:var(--c4-ink) !important;margin:0 0 14px !important;
}
.c4-side-box ul{list-style:none;padding:0;margin:0}
.c4-side-box li{margin-bottom:10px;line-height:1.4}
.c4-side-box a{color:var(--c4-muted);font-size:15px}
.c4-side-box a:hover{color:var(--c4-accent)}
.c4-side-box .wp-block-latest-posts__post-date{display:block;font-size:12.5px;color:var(--c4-muted);opacity:.75;margin-top:2px}
.c4-side-box .wp-block-navigation{gap:10px}

/* ==================== pagination ==================== */
.wp-block-query-pagination{gap:12px;margin-top:28px}
.wp-block-query-pagination a,.wp-block-query-pagination span{
  border:1px solid var(--c4-line);border-radius:8px;padding:8px 14px;font-size:15px;color:var(--c4-muted);
}
.wp-block-query-pagination .current{background:var(--c4-ink);color:#fff;border-color:var(--c4-ink)}

/* ==================== related posts ==================== */
.c4-related{background:#fff;border-top:1px solid var(--c4-line);padding:72px 52px 88px !important;margin:0 !important}
.c4-related h2{font-size:clamp(24px,2.6vw,34px);font-weight:800;letter-spacing:-.018em;margin:0 0 32px}
.c4-postgrid{gap:24px !important}
.c4-postgrid img{width:100%;height:auto;border-radius:12px;margin-bottom:14px}
.c4-postgrid h3{font-size:18px;line-height:1.3;font-weight:700;margin:0 0 8px}
.c4-postgrid h3 a{color:var(--c4-ink)}
.c4-postgrid h3 a:hover{color:var(--c4-accent)}
.c4-postgrid .wp-block-post-excerpt__excerpt{color:var(--c4-muted);font-size:15px;line-height:1.5}

/* ==================== end-of-page CTA ==================== */
.c4-endcta{
  background:var(--c4-ink);color:#fff;padding:72px 52px !important;margin:0 !important;text-align:center;
  background-image:radial-gradient(900px 300px at 50% 0%, rgba(255,0,50,.2), transparent 62%);
}
.c4-endcta h2{color:#fff;font-size:clamp(26px,3vw,40px);font-weight:800;letter-spacing:-.02em;margin:0 0 12px}
.c4-endcta p{color:rgba(255,255,255,.7);font-size:18px;margin:0 0 26px}
.c4-endcta .wp-block-buttons{justify-content:center}
.c4-endcta .wp-block-button__link{background:var(--c4-accent);color:#fff;border-radius:10px;padding:16px 30px;font-weight:700;font-size:17px}

/* interior body no longer needs its own top padding, the banner handles it */
.c4-page-body{padding-top:56px !important}

@media (max-width:1000px){
  .c4-with-side{flex-wrap:wrap !important}
  .c4-with-side .wp-block-column{flex-basis:100% !important}
  .c4-sidebar{position:static}
}
@media (max-width:900px){
  .c4-pagebanner,.c4-postbanner,.c4-shell,.c4-related,.c4-endcta{padding-left:22px !important;padding-right:22px !important}
}


/* ==================== category pages ==================== */
.c4-catbanner{
  background:var(--c4-ink);color:#fff;padding:64px 52px 56px !important;margin:0 !important;
  background-image:
    radial-gradient(900px 340px at 8% -20%, rgba(255,0,50,.26), transparent 62%),
    radial-gradient(700px 300px at 82% 120%, rgba(255,0,50,.12), transparent 60%);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.c4-catbanner > *{margin-left:0 !important;margin-right:auto !important;max-width:1320px}
.c4-catbanner h1{
  color:#fff !important;font-size:clamp(36px,5vw,64px);line-height:1.04;
  letter-spacing:-.026em;font-weight:800;margin:0;
}
.c4-catbanner .c4-eyebrow a{color:var(--c4-accent) !important;border-bottom:1px solid rgba(255,0,50,.4)}
.c4-catbanner .wp-block-term-description{
  color:rgba(255,255,255,.72) !important;font-size:19px;line-height:1.6;max-width:62ch;margin:18px 0 0;
}
.c4-catbanner .wp-block-term-description p{margin:0;color:inherit}

/* card grid used on category pages */
.c4-cardgrid{gap:28px !important;list-style:none;padding:0}
.c4-cardgrid > li{
  list-style:none;background:#fff;border:1px solid var(--c4-line);border-radius:14px;
  overflow:hidden;padding:0 0 22px;display:flex;flex-direction:column;
  transition:transform .15s ease,box-shadow .15s ease;
}
.c4-cardgrid > li:hover{transform:translateY(-3px);box-shadow:0 14px 38px rgba(21,21,28,.10)}
.c4-cardgrid img{width:100%;height:auto;border-radius:0;margin:0 0 16px}
.c4-cardgrid .c4-eyebrow{padding:0 22px;margin:0 0 8px !important;font-size:11.5px !important}
.c4-cardgrid h2{font-size:20px;line-height:1.26;letter-spacing:-.012em;font-weight:800;margin:0 0 10px;padding:0 22px}
.c4-cardgrid h2 a{color:var(--c4-ink)}
.c4-cardgrid h2 a:hover{color:var(--c4-accent)}
.c4-cardgrid .wp-block-post-excerpt{padding:0 22px}
.c4-cardgrid .wp-block-post-excerpt__excerpt{color:var(--c4-muted);font-size:15.5px;line-height:1.55}
.c4-cardgrid .wp-block-post-excerpt__more-text{display:none}
.c4-cardgrid .wp-block-post-date{padding:0 22px;margin-top:auto;font-size:13px;color:var(--c4-muted);opacity:.8}

@media (max-width:900px){
  .c4-catbanner{padding-left:22px !important;padding-right:22px !important}
  .c4-cardgrid{grid-template-columns:1fr !important}
}


/* ==================== long-form typography ==================== */
.c4-article,.c4-page-body{--measure:70ch}
.c4-article .wp-block-post-content > *,
.c4-page-body .wp-block-post-content > *{max-width:var(--measure)}
.c4-article .wp-block-post-content > table,
.c4-article .wp-block-post-content > figure,
.c4-article .wp-block-post-content > .wp-block-table,
.c4-page-body .wp-block-post-content > table,
.c4-page-body .wp-block-post-content > .wp-block-table{max-width:none}

.c4-article p,.c4-page-body p{font-size:18px;line-height:1.72;margin:0 0 1.35em;color:#22242c}
.c4-article .wp-block-post-content > p:first-of-type,
.c4-page-body p.lead{font-size:21px;line-height:1.62;color:var(--c4-ink);font-weight:500}

.c4-article h2,.c4-page-body h2{
  font-size:clamp(26px,2.5vw,34px);line-height:1.16;letter-spacing:-.018em;font-weight:800;
  margin:3rem 0 .85rem;padding-top:1.6rem;border-top:1px solid var(--c4-line);max-width:var(--measure);
}
.c4-article h2:first-child,.c4-page-body h2:first-child{border-top:0;padding-top:0;margin-top:0}
.c4-article h3,.c4-page-body h3{
  font-size:clamp(19px,1.6vw,22px);line-height:1.3;letter-spacing:-.01em;font-weight:700;
  margin:2.1rem 0 .6rem;max-width:var(--measure);
}
.c4-article h4,.c4-page-body h4{font-size:17px;font-weight:700;margin:1.6rem 0 .5rem;letter-spacing:.01em}

.c4-article ul,.c4-article ol,.c4-page-body ul,.c4-page-body ol{
  margin:0 0 1.5em;padding-left:1.3em;max-width:var(--measure);
}
.c4-article li,.c4-page-body li{font-size:18px;line-height:1.68;margin-bottom:.55em;padding-left:.25em}
.c4-article li::marker,.c4-page-body li::marker{color:var(--c4-accent)}
.c4-article ol li::marker,.c4-page-body ol li::marker{font-weight:700}

.c4-article a,.c4-page-body a{
  color:var(--c4-ink);text-decoration:underline;text-decoration-color:rgba(255,0,50,.45);
  text-underline-offset:3px;text-decoration-thickness:2px;
}
.c4-article a:hover,.c4-page-body a:hover{color:var(--c4-accent);text-decoration-color:var(--c4-accent)}

.c4-article strong,.c4-page-body strong{font-weight:700;color:var(--c4-ink)}
.c4-article blockquote,.c4-page-body blockquote{
  margin:2rem 0;padding:4px 0 4px 26px;border-left:4px solid var(--c4-accent);max-width:var(--measure);
}
.c4-article blockquote p,.c4-page-body blockquote p{font-size:21px;line-height:1.55;font-weight:500;color:var(--c4-ink)}
.c4-article hr,.c4-page-body hr{border:0;border-top:1px solid var(--c4-line);margin:2.6rem 0;max-width:var(--measure)}
.c4-article code,.c4-page-body code{
  background:#f2efe9;border:1px solid var(--c4-line);border-radius:5px;
  padding:2px 6px;font-size:.9em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
}
.c4-article figure,.c4-page-body figure{margin:2.2rem 0}
.c4-article figure img,.c4-page-body figure img{width:100%;height:auto;border-radius:12px;display:block}
.c4-article figcaption,.c4-page-body figcaption{
  font-size:14.5px;color:var(--c4-muted);margin-top:10px;line-height:1.5;max-width:var(--measure);
}

/* ==================== tables ==================== */
.c4-article table,.c4-page-body table,
.c4-article .wp-block-table table,.c4-page-body .wp-block-table table{
  width:100%;border-collapse:separate;border-spacing:0;margin:2.2rem 0;
  font-size:16px;line-height:1.5;
  border:1px solid var(--c4-line);border-radius:14px;overflow:hidden;
  background:#fff;box-shadow:0 1px 0 rgba(21,21,28,.03);
}
.c4-article thead th,.c4-page-body thead th{
  background:var(--c4-ink);color:#fff;text-align:left;
  font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;
  padding:15px 18px;vertical-align:bottom;border:0;white-space:nowrap;
}
.c4-article thead th:first-child,.c4-page-body thead th:first-child{width:34%;min-width:180px}
.c4-article tbody td,.c4-page-body tbody td{
  padding:15px 18px;border-top:1px solid var(--c4-line);vertical-align:top;color:#22242c;
}
.c4-article tbody tr:nth-child(even) td,.c4-page-body tbody tr:nth-child(even) td{background:#faf8f4}
.c4-article tbody tr:hover td,.c4-page-body tbody tr:hover td{background:#f4f1ea}
.c4-article tbody td:first-child,.c4-page-body tbody td:first-child{
  font-weight:650;color:var(--c4-ink);
}
.c4-article tbody td + td,.c4-page-body tbody td + td{border-left:1px solid var(--c4-line)}
.c4-article thead th + th,.c4-page-body thead th + th{border-left:1px solid rgba(255,255,255,.14)}
.c4-article table caption,.c4-page-body table caption{
  caption-side:bottom;text-align:left;font-size:14px;color:var(--c4-muted);padding-top:10px;
}
/* let wide tables scroll rather than squash on small screens */
.c4-article .wp-block-table,.c4-page-body .wp-block-table{overflow-x:auto;margin:2.2rem 0}
@media (max-width:700px){
  .c4-article table,.c4-page-body table{display:block;overflow-x:auto;white-space:nowrap}
  .c4-article tbody td:first-child,.c4-page-body tbody td:first-child{white-space:normal;min-width:150px}
}


/* ==================== format cards: photo + icon ==================== */
.c4-cards{gap:26px !important;align-items:stretch}
.c4-cards .wp-block-column.c4-card{
  padding:0 0 26px !important;overflow:visible;position:relative;
  border:1px solid var(--c4-line);border-radius:16px;background:#fff;
  display:flex;flex-direction:column;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.c4-cards .c4-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(21,21,28,.12);border-color:#dcd6ca}
.c4-card .c4-card-img{margin:0 !important;border-radius:16px 16px 0 0;overflow:hidden;line-height:0}
.c4-card .c4-card-img img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}
.c4-cardicon{
  position:relative;z-index:3;display:flex;align-items:center;justify-content:center;
  width:56px;height:56px;border-radius:15px;background:var(--c4-accent);color:#fff;
  margin:-28px 0 0 24px;box-shadow:0 10px 24px rgba(255,0,50,.34);
  border:3px solid #fff;
}
.c4-cardicon svg{width:26px;height:26px}
.c4-card h3{margin:18px 24px 8px !important;font-size:20px;font-weight:800;letter-spacing:-.012em;line-height:1.25}
.c4-card p{margin:0 24px 0 !important;color:var(--c4-muted);font-size:15.5px;line-height:1.58}
.c4-card .c4-ar{margin:18px 24px 0 !important}
.c4-card .c4-ar a{color:var(--c4-accent);font-weight:700;font-size:15px;text-decoration:none}
.c4-card .c4-ar{margin-top:auto !important;padding-top:18px}

/* ==================== destination tiles: equal + aligned ==================== */
.c4-tiles{gap:18px !important;align-items:stretch}
.c4-tiles .wp-block-column{display:flex}
.c4-tiles .wp-block-cover{
  width:100%;aspect-ratio:3/4 !important;min-height:0 !important;height:auto !important;
  border-radius:14px;overflow:hidden;padding:20px !important;
  align-items:flex-end !important;justify-content:flex-start !important;
}
.c4-tiles .wp-block-cover__image-background{object-fit:cover !important;object-position:center}
.c4-tiles .wp-block-cover__inner-container{width:100%}
.c4-tiles .wp-block-cover p{margin:0;color:#fff;line-height:1.32}
.c4-tiles .wp-block-cover strong{display:block;font-size:19px;font-weight:800;letter-spacing:-.01em;margin-bottom:4px}
.c4-tiles .wp-block-cover em{display:block;font-style:normal;font-size:13.5px;opacity:.8;line-height:1.35;min-height:2.7em}
@media (max-width:900px){.c4-tiles .wp-block-cover em{min-height:0}}

/* ==================== client logos: bigger ==================== */
.c4-clients{padding:72px 52px !important}
.c4-clients > p{font-size:12.5px !important;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--c4-muted);margin:0 0 40px !important}
.c4-clients .wp-block-gallery.has-nested-images{
  grid-template-columns:repeat(7,1fr) !important;gap:44px 40px !important;
}
.c4-clients .wp-block-gallery.has-nested-images figure.wp-block-image img{
  height:64px !important;opacity:.78;mix-blend-mode:multiply;
}
.c4-clients .wp-block-gallery.has-nested-images figure.wp-block-image img:hover{opacity:1}
@media (max-width:1200px){.c4-clients .wp-block-gallery.has-nested-images{grid-template-columns:repeat(5,1fr) !important}}
@media (max-width:900px){.c4-clients .wp-block-gallery.has-nested-images{grid-template-columns:repeat(3,1fr) !important;gap:32px 24px !important}
  .c4-clients .wp-block-gallery.has-nested-images figure.wp-block-image img{height:48px !important}}

/* ==================== footer with the form ==================== */
.c4-footer{background:var(--c4-ink) !important;color:#fff;border-top:0 !important;padding:80px 52px 34px !important}
.c4-foot-top{gap:56px !important;align-items:flex-start;margin-bottom:64px !important}
.c4-footer .wp-block-site-logo img{height:44px;width:44px;border-radius:9px}
.c4-foot-h{color:#fff !important;font-size:clamp(28px,3vw,40px) !important;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:22px 0 12px !important}
.c4-foot-lede{color:rgba(255,255,255,.66) !important;font-size:18px;line-height:1.6;max-width:44ch;margin:0 0 26px !important}
.c4-steps{display:flex;flex-direction:column;gap:10px;margin:0 0 26px !important}
.c4-steps p{margin:0;color:rgba(255,255,255,.8);font-size:15.5px;display:flex;gap:12px;align-items:baseline}
.c4-steps strong{
  flex:0 0 26px;height:26px;border-radius:50%;background:rgba(255,255,255,.1);
  color:var(--c4-accent);display:inline-flex;align-items:center;justify-content:center;
  font-size:13px;font-weight:800;
}
.c4-foot-mail{color:rgba(255,255,255,.66) !important;font-size:16px;margin:0 !important}
.c4-foot-mail a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}

.c4-foot-links{gap:36px !important;border-top:1px solid rgba(255,255,255,.10);padding-top:44px !important;margin-bottom:44px !important}
.c4-foot-links .wp-block-column{flex-basis:0 !important;flex-grow:1 !important;min-width:0}
.c4-footer .c4-fhead{
  color:rgba(255,255,255,.95) !important;font-size:11.5px !important;letter-spacing:.14em;
  text-transform:uppercase;font-weight:700;margin:0 0 18px !important;line-height:1.2;
}
.c4-footer .wp-block-navigation{flex-direction:column;gap:12px !important;align-items:flex-start}
.c4-footer .wp-block-navigation a{
  color:rgba(255,255,255,.6);font-size:15px;line-height:1.35;
  overflow-wrap:anywhere;word-break:break-word;
}
.c4-footer .wp-block-navigation a:hover{color:#fff}
.c4-footer .c4-promise{
  border-left:3px solid var(--c4-accent);padding:2px 0 2px 18px;max-width:62ch;
  margin:0 0 40px !important;
}
.c4-footer .c4-promise p{color:rgba(255,255,255,.7);font-size:15.5px;line-height:1.62;margin:0 0 10px}
.c4-footer .c4-promise .c4-sig{color:#fff !important;font-weight:700}
.c4-fbar{
  border-top:1px solid rgba(255,255,255,.10) !important;margin-top:0 !important;padding-top:24px !important;
  font-size:13.5px;color:rgba(255,255,255,.45);gap:20px;
}
.c4-fbar p{margin:0;color:inherit}

/* the form card sits on the dark footer now */
.c4-footer .c4-formcard{background:#fff;border-radius:18px;padding:32px 34px;box-shadow:0 24px 60px rgba(0,0,0,.35)}

@media (max-width:1000px){
  .c4-foot-top{gap:36px !important}
  .c4-foot-links{gap:28px !important}
  .c4-foot-links .wp-block-column{flex-basis:45% !important;flex-grow:0 !important}
}
@media (max-width:900px){
  .c4-footer{padding:56px 22px 28px !important}
  .c4-cards .wp-block-column.c4-card{margin-bottom:0}
}
/* ==================== OVERRIDES: beat theme style.css (loads after) ==================== */

/* --- sticky header: the sticky must sit on the template-part wrapper, not the
       inner group. The inner group's parent is exactly its own height, so
       position:sticky there has zero room to travel. --- */
.wp-site-blocks > header.wp-block-template-part{
  position:sticky !important;top:0;z-index:60;
}
body.admin-bar .wp-site-blocks > header.wp-block-template-part{top:32px}

/* --- the open mobile menu painted under page content. Two causes, both here.
       1. .c4-header carries backdrop-filter on every page. A filtered element
          becomes the containing block for position:fixed descendants, so the
          nav overlay was clipped to the 78px header strip instead of covering
          the viewport, and the page showed through below it. Drop the filter
          while the modal is open.
       2. The sticky header wrapper is a stacking context at z-index 60, so
          core's z-index:100000 on the overlay could never escape it. Lift the
          wrapper while the modal is open.
       WordPress puts .has-modal-open on <html> whenever the overlay is open. --- */
html.has-modal-open .c4-header,
html.has-modal-open body.home .c4-header,
html.has-modal-open body:not(.home) .c4-header{
  backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  filter:none !important;transform:none !important;
}
html.has-modal-open .wp-site-blocks > header.wp-block-template-part{z-index:100001 !important}
.wp-block-navigation__responsive-container.is-menu-open{z-index:100000 !important}

/* The overlay draws on white, but body.home forces header nav links to #fff, so
   the open menu was white on white on the home page. Ink inside the overlay,
   on every page. */
html.has-modal-open .wp-block-navigation__responsive-container.is-menu-open a,
html.has-modal-open .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
body.home .c4-header .wp-block-navigation__responsive-container.is-menu-open a,
body.home .c4-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
  color:var(--c4-ink) !important;opacity:1 !important;
}
html.has-modal-open .wp-block-navigation__responsive-container-close{color:var(--c4-ink) !important}
html.has-modal-open .wp-block-navigation__responsive-container.is-menu-open .wp-block-button__link{
  background:var(--c4-ink) !important;color:#fff !important;
}
@media (max-width:782px){body.admin-bar .wp-site-blocks > header.wp-block-template-part{top:46px}}
body .c4-header{position:static !important;top:auto !important}
body.home .c4-header{
  background:rgba(14,14,19,.80) !important;
  backdrop-filter:saturate(160%) blur(16px);
  -webkit-backdrop-filter:saturate(160%) blur(16px);
  border-bottom:1px solid rgba(255,255,255,.10) !important;
}
body.home .c4-hero{padding-top:96px !important}

/* --- section headings: constrained layout + max-width was auto-centring them --- */
body .c4-section > *,
body .c4-places > *{margin-left:0 !important;margin-right:0 !important}
body .c4-section h2,
body .c4-places h2{max-width:24ch;text-align:left}
body .c4-section .c4-lede,
body .c4-places .c4-lede{text-align:left}

/* --- footer: theme style.css set every footer heading to ink 13px --- */
body .c4-footer{background:var(--c4-ink) !important;color:rgba(255,255,255,.7) !important;
  padding:84px 52px 34px !important;font-size:15.5px}
body .c4-footer .c4-foot-h{
  color:#fff !important;font-size:clamp(28px,3vw,40px) !important;font-weight:800 !important;
  letter-spacing:-.02em !important;text-transform:none !important;line-height:1.1 !important;
  margin:20px 0 14px !important;max-width:16ch;
}
body .c4-footer .c4-fhead{
  color:#fff !important;font-size:11.5px !important;letter-spacing:.14em !important;
  text-transform:uppercase !important;font-weight:700 !important;margin:0 0 16px !important;
  line-height:1.2 !important;
}
body .c4-footer h2,body .c4-footer h3{color:#fff !important}
body .c4-footer .wp-block-navigation a{color:rgba(255,255,255,.62) !important;font-size:15px}
body .c4-footer .wp-block-navigation a:hover{color:#fff !important}
body .c4-footer .wp-block-site-logo img{height:44px !important;width:44px !important;border-radius:9px}
body .c4-footer .c4-promise{
  border-left:3px solid var(--c4-accent) !important;padding:2px 0 2px 18px !important;
  max-width:64ch !important;margin:0 0 36px !important;
}
body .c4-footer .c4-promise p{color:rgba(255,255,255,.7) !important}
body .c4-footer .c4-promise .c4-sig{color:#fff !important}

/* left column no longer floats in dead space next to the tall form card */
body .c4-foot-top{align-items:stretch !important;gap:64px !important;margin-bottom:72px !important}
body .c4-foot-top > .wp-block-column:first-child{
  display:flex;flex-direction:column;justify-content:center;
}
body .c4-foot-links{
  border-top:1px solid rgba(255,255,255,.10) !important;padding-top:44px !important;
  margin-bottom:48px !important;gap:36px !important;
}
