/* =========================================================
   THE CONNECTED HUMAN: shared stylesheet (one file for the whole site)
   Sections:
   1. Colours and fonts (change brand colours here)
   2. Base and text styles
   3. Header and mobile menu
   4. Page sections and layout (rows, columns, blocks)
   5. Buttons, images, rules, shapes
   6. Forms and embeds
   7. Journal list and posts
   8. Footer
   9. Journal post extras (Enneagram animation, from the original Custom CSS)
   ========================================================= */

/* 0. Fonts: Cormorant Garamond and Jost (SIL Open Font Licence), self-hosted from Google Fonts for speed.
   Same fonts, weights and styles as before; only latin and latin-ext characters. */
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300 400;font-display:swap;src:url(/fonts/cormorant-garamond-italic-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300 400;font-display:swap;src:url(/fonts/cormorant-garamond-italic-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/cormorant-garamond-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/cormorant-garamond-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Jost';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/jost-normal-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Jost';font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/jost-normal-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* 1. Colours and fonts */
:root{
  --cream:#F2ECDD;        /* main page background */
  --sand:#E8E1CF;         /* "light" sections */
  --navy:#1A3040;         /* header button, solid buttons, top strip */
  --ink:#0D1C27;          /* dark sections */
  --footer:#0A1820;       /* footer */
  --heading:#13222D;      /* headings on light backgrounds */
  --body:#2E4553;         /* body text on light backgrounds */
  --mist:#9DB3BF;         /* body text on dark backgrounds */
  --mist-2:#B5C3CC;       /* italic accents on dark backgrounds */
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Jost', 'Helvetica Neue', Arial, sans-serif;
  --gutter:4vw;           /* side margin, desktop */
  --gutter-m:24px;        /* side margin, phone */
  --max:1500px;
}

/* 2. Base and text styles */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--body);font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.6;letter-spacing:.01em}
img{max-width:100%;display:block}
a{color:inherit}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 12px;z-index:100}
.skip:focus{left:8px}
.blk-text h1,.blk-text h2,.blk-text h3,.blk-text h4,.blk-text p,.blk-text li{white-space:pre-wrap;overflow-wrap:break-word}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--heading);letter-spacing:normal}
h1{font-size:57.5px;line-height:1.07;margin:32px 0}
h2{font-size:43.6px;line-height:1.114;margin:32px 0}
h3{font-size:25.2px;line-height:1.171;margin:32px 0}
h4{font-size:14.4px;line-height:1.205;margin:0 0 32px}
p{margin:16px 0}
p.large{font-size:16px;line-height:1.6}
/* Small uppercase labels above headings (eyebrows) keep their original size and weight */
p.eyebrow{font-size:14.4px;font-weight:300;letter-spacing:.01em}
ul{padding-left:40px;margin:16px 0}
.blk-text li{list-style:none}
li p{margin:0}
strong{font-weight:700}
.blk-text a{text-decoration:underline;color:#000}
.blk-text > :first-child{margin-top:0}
.blk-text > :last-child{margin-bottom:0}
.c-white{color:#fff}
.c-black{color:#000}

/* Section colour themes (taken from the Squarespace themes) */
.t-white{background:var(--cream)}
.t-light{background:var(--sand)}
.t-bright{background:var(--navy)}
.t-white-bold{background:var(--ink)}
.t-black{background:#000}
.t-white-bold h1,.t-white-bold h2,.t-white-bold h3,.t-white-bold h4{color:var(--cream)}
.t-white-bold h2 em,.t-white-bold h1 em{color:var(--mist-2)}
.t-white-bold p,.t-white-bold li{color:var(--mist)}
.t-black h1,.t-black h2,.t-black h3,.t-black h4,.t-black p{color:#fff}

/* 3. Header and mobile menu */
.site-header{position:sticky;top:0;z-index:50;height:91.66px;background:var(--cream);display:flex;align-items:center;padding:0 var(--gutter);gap:24px}
.logo img{width:188px;height:auto}
.nav{margin-left:auto;display:flex;gap:14px;align-items:center}
.nav a{font-family:var(--sans);font-size:15.5px;font-weight:400;color:#000;text-decoration:none;padding:1.44px 0;letter-spacing:.01em}
.nav a[aria-current="page"],.nav a:hover{background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat}
.nav .nav-apply{display:none}
.header-apply{margin-left:14px;background:var(--navy);color:#C2C8CC;font-family:var(--serif);font-weight:600;font-size:16px;letter-spacing:.01em;padding:12.8px 30.4px;text-decoration:none}
.header-apply:hover{color:#fff}
/* Tablet: keep the nav on one line between 768px and 959px */
@media (min-width:768px) and (max-width:959px){.site-header{gap:16px}.nav{gap:12px}.nav a{font-size:14.4px;white-space:nowrap}.header-apply{margin-left:6px;padding:12.8px 22px}}
.burger{display:none;margin-left:auto;background:none;border:0;width:44px;height:44px;padding:10px 4px;cursor:pointer}
.burger span{display:block;height:1.5px;background:#000;margin:7px 0;transition:transform .3s}
@media (max-width:767px){
  .site-header{height:84px;padding:0 var(--gutter-m)}
  .logo img{width:203px}
  .header-apply{display:none}
  .burger{display:block}
  .nav{position:fixed;inset:84px 0 0 0;background:var(--cream);flex-direction:column;justify-content:center;gap:22px;transform:translateX(100%);transition:transform .35s ease}
  .nav a{font-size:26px;font-family:var(--serif)}
  .nav .nav-apply{display:inline-block;background:var(--navy);color:#fff;padding:12px 32px;font-size:18px}
  body.menu-open .nav{transform:none}
  body.menu-open .burger span:first-child{transform:translateY(4.5px) rotate(45deg)}
  body.menu-open .burger span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
}

/* 4. Page sections and layout
   Each section has rows; each row has columns. Positions come from the original
   Squarespace layout and are set with small variables on each element:
   --w width, --ml left gap, --mt top offset. On phones, everything stacks in --o order. */
.sec{position:relative;padding:var(--pt,80px) 0 var(--pb,80px);overflow:hidden}
.sec.spacer{padding:0;height:var(--sh)}
.sec-bg{position:absolute;inset:0;z-index:0}
.sec-bg img{width:100%;height:100%;object-fit:cover}
.sec-bg::after{content:"";position:absolute;inset:0;background:#000;opacity:var(--ov,0)}
.t-light .sec-bg::after{background:var(--sand)}
.t-white .sec-bg::after{background:var(--cream)}
.wrap{position:relative;z-index:1;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
.row{display:flex;align-items:flex-start;margin-top:var(--rmt,0)}
.col{flex:0 0 var(--w);max-width:var(--w);margin-left:var(--ml,0);margin-top:var(--mt,0)}
.blk{margin-top:var(--bmt,0);margin-left:var(--bml,0);width:var(--bw,100%);min-height:var(--minh,0)}
@media (max-width:767px){
  .sec{padding:var(--ptm,40px) 0 var(--pbm,40px)}
  .sec.spacer{height:var(--shm)}
  .wrap{padding:0 var(--gutter-m);display:flex;flex-direction:column}
  .row,.col{display:contents}
  .blk{order:var(--o,0);margin:var(--mtm,0) 0 0 var(--mlm,0);width:var(--wm,100%);min-height:var(--minhm,0)}
  h1{font-size:45.2px;line-height:1.07}
  h2{font-size:35.4px}
  h3{font-size:22.5px}
  h4{font-size:14.92px}
  p,li,body{font-size:16px}
  p.eyebrow{font-size:14.92px}
}

/* 5. Buttons, images, rules, shapes */
.blk-button{display:flex;justify-content:var(--jc,center);height:var(--h,auto)}
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;height:100%;font-family:var(--sans);font-weight:400;font-size:16px;letter-spacing:.01em;text-decoration:none;transition:opacity .2s,background .2s}
.btn-solid{background:var(--navy);color:#fff;padding:0 35.2px}
.btn-solid:hover{opacity:.85}
.btn-outline{border:1px solid currentColor;padding:0 25.6px;color:#000;background:transparent}
.t-white-bold .btn-outline{color:var(--cream)}
.btn-outline:hover{background:rgba(127,127,127,.08)}
.blk-image{aspect-ratio:var(--ar);overflow:hidden}
.blk-image img,.blk-image a{width:100%;height:100%;object-fit:cover}
.blk-rule{height:var(--h,25px);display:flex;align-items:center}
.blk-rule hr{width:100%;border:0;height:1px;background:#6A7984;margin:0}
.blk-shape{height:var(--h);background:var(--fill)}
@media (max-width:767px){
  .blk-image{aspect-ratio:var(--arm,var(--ar))}
  .blk-rule{height:var(--hm,var(--h))}
  .blk-shape{height:var(--hm,var(--h))}
  .blk-button{height:auto}
  .btn{min-height:56px;width:100%}
}

/* 6. Forms and embeds */
/* Form sizes measured from the original Squarespace form */
.form{position:relative;font-family:var(--sans);color:#000}
.form label{display:block;font-size:16px;line-height:28px;margin:0 0 20px;color:#000}
.form .req{opacity:.6}
.form input[type=text],.form input[type=email],.form select,.form textarea{display:block;width:100%;margin-top:4px;padding:10px;border:1px solid #000;background:#fff;font:inherit;font-size:16px;line-height:23px;border-radius:0;color:#000}
.form select{-webkit-appearance:none;appearance:none;height:50px;padding:10px 32px 10px 10px;font-size:17.5px;color:rgba(0,0,0,.55);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 12px center}
.form label:has(select){margin-bottom:18px}
.form select{margin-top:2px}
.form textarea{margin-top:6px;height:100px;min-height:100px;resize:vertical}
.form fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}
.form legend{font-size:16px;line-height:23px;padding:0 0 4px;margin:0;color:#000}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.field-row label{font-size:13px;line-height:20px;margin:0;padding-top:6px}
.field-row label input[type=text]{margin-top:8px}
.form .check{display:flex;gap:10px;align-items:center;margin:-13px 0 21px;font-size:17.5px}
.form .check input{width:16px;height:16px;margin:0;accent-color:#000}
.btn-submit{background:#000;color:#fff;border:0;padding:14px 33.3px;font:inherit;font-size:17.5px;line-height:26px;font-weight:600;cursor:not-allowed}
.form-note{position:absolute;left:0;top:100%;margin:8px 0 0;font-size:13px;opacity:.65}
.embed-placeholder{height:100%;min-height:300px;border:1px dashed #6A7984;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}

/* 7. Journal list and posts */
.journal-list{padding:50px 0 51px}
.post-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:50px 83px;max-width:1177px}
.post-card-img{display:block;aspect-ratio:3/2;overflow:hidden}
.post-card-img img{width:100%;height:100%;object-fit:cover}
/* Squarespace used Adobe's Minerva Modern for the list date; Cormorant Garamond is the licence-free stand-in */
.post-card-date{margin:50px 0 0;color:#000;font-family:var(--serif);font-size:17.5px;line-height:18px}
.post-card-title{font-size:25.2px;line-height:1.2;margin:36px 0 0;color:#000}
.post-card-title a{text-decoration:none}
.post-card-more{display:inline-block;margin-top:104px;color:#000;font-size:17.5px;line-height:28px}
/* Journal post: centred column, 75% of the content width, as on Squarespace */
.post{padding:51px 4vw 231px}
.post-head,.post-body{width:75%;margin-left:auto;margin-right:auto}
.post-head{margin-bottom:130px}
.post-code + .post-code{margin-top:130px}
.post-title{margin:0;color:#000;font-size:calc(22.9px + 1.62vw);line-height:1.2}
.post-body.blk-text{max-width:720px;margin:0 auto}
.post-body.blk-text img{width:100%;height:auto;margin:0 0 32px}
@media (max-width:767px){
  .post-grid{grid-template-columns:1fr}
  .journal-list{padding:8px 0 46px}
  .post-card-date{margin-top:18px;font-size:17.1px;line-height:17px}
  .post-card-title{font-size:22.5px;margin-top:8px}
  .post-card-more{margin-top:24px;font-size:17.1px;line-height:27px}
  .post{padding:23px 23px 123px}
  .post-head,.post-body{width:auto}
  .post-head{margin-bottom:134px}
  .post-title{font-size:35.44px}
}
.tch-footer.site-footer{padding-bottom:143px}
@media (max-width:767px){.tch-footer.site-footer{padding-bottom:168px}}
.blk-acuity{min-height:var(--h)}.blk-acuity .embed-placeholder{min-height:var(--h)}

/* 8. Footer (copied from the original footer code block) */

  /* Scoped to .tch-footer so it won't affect anything else on the site */
  .tch-footer {
    background: #0A1820;
    color: #8A99A3;
    padding: 80px 48px 32px;
    font-family: 'Jost', system-ui, sans-serif;
    box-sizing: border-box;
  }
  .tch-footer *, .tch-footer *::before, .tch-footer *::after { box-sizing: border-box; }
  .tch-footer a { color: inherit; text-decoration: none; transition: color 0.2s ease; }
  .tch-footer a:hover { color: #F2ECDD; }

  .tch-footer-inner {
    max-width: 1160px;
    margin: 0 auto 60px;
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 64px;
  }

  /* Brand column */
  .tch-footer-brand .tch-logo {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1;
  }
  .tch-footer-brand .tch-logo-mark {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-weight: 400;
    font-size: 24px;
    letter-spacing: 0.28em;
    color: #F2ECDD;
    padding-left: 0.28em;
  }
  .tch-footer-brand .tch-logo-sub {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-style: italic;
    font-weight: 300;
    font-size: 11px;
    letter-spacing: 0.15em;
    color: #8A99A3;
    margin-top: 6px;
  }
  .tch-footer-tagline {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-style: italic;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.65;
    color: #B5C3CC;
    margin-top: 22px;
    max-width: 280px;
  }
  .tch-footer-tagline span { display: block; }

  .tch-footer-socials {
    display: flex;
    gap: 12px;
    margin-top: 28px;
  }
  .tch-footer-socials a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(242, 236, 221, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F2ECDD;
    font-size: 13px;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
  .tch-footer-socials a:hover { background: rgba(242, 236, 221, 0.18); }

  /* Column headings */
  .tch-footer h5 {
    font-family: 'Cormorant Garamond', Georgia, serif;
    font-weight: 400;
    font-size: 17px;
    color: #F2ECDD;
    margin: 0 0 22px;
    letter-spacing: 0.02em;
  }
  .tch-footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .tch-footer ul li {
    font-size: 15.5px;
    color: #8A99A3;
    line-height: 2.3;
    font-weight: 400;
  }

  /* Contact column */
  .tch-footer-contact ul li {
    font-size: 15.5px;
    padding: 2px 0;
  }
  .tch-footer-enquire {
    display: inline-block;
    margin-top: 18px;
    background: transparent;
    color: #F2ECDD;
    border: 1px solid rgba(242, 236, 221, 0.35);
    padding: 14px 28px;
    font-family: 'Jost', system-ui, sans-serif;
    font-size: 14px;
    letter-spacing: 0.08em;
    cursor: pointer;
    transition: border-color 0.2s ease, background 0.2s ease;
  }
  .tch-footer-enquire:hover {
    border-color: #F2ECDD;
    background: rgba(242, 236, 221, 0.05);
  }

  /* Bottom bar */
  .tch-footer-bottom {
    max-width: 1160px;
    margin: 0 auto;
    padding-top: 28px;
    border-top: 1px solid rgba(242, 236, 221, 0.1);
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    color: #8A99A3;
    letter-spacing: 0.02em;
  }
  .tch-footer-bottom div { font-weight: 400; }

  /* ========= TABLET ========= */
  @media (max-width: 960px) {
    .tch-footer { padding: 60px 32px 28px; }
    .tch-footer-inner {
      grid-template-columns: 1fr 1fr;
      gap: 40px;
      margin-bottom: 48px;
    }
    .tch-footer-brand {
      grid-column: 1 / -1;
    }
  }

  /* ========= MOBILE ========= */
  @media (max-width: 600px) {
    .tch-footer { padding: 56px 24px 24px; }
    .tch-footer-inner {
      grid-template-columns: 1fr;
      gap: 40px;
      margin-bottom: 40px;
    }
    .tch-footer-brand { grid-column: auto; }
    .tch-footer-brand .tch-logo-mark { font-size: 22px; }
    .tch-footer-tagline { font-size: 15px; max-width: 100%; }
    .tch-footer h5 { font-size: 16px; margin-bottom: 14px; }
    .tch-footer ul li { font-size: 15.5px; line-height: 2.1; }
    .tch-footer-socials { margin-top: 22px; }
    .tch-footer-enquire {
      width: 100%;
      text-align: center;
      padding: 14px 24px;
    }
    .tch-footer-bottom {
      flex-direction: column;
      gap: 10px;
      text-align: left;
      font-size: 13px;
    }
  }

/* 9. Journal post extras: Enneagram animation styles, copied from the original Custom CSS */

.ch-wrap{background:#f8f3e9;border:1px solid rgba(19,34,45,.08);margin:48px 0;width:100%;box-sizing:border-box}.ch-ennea{padding:48px 24px 40px;display:flex;flex-direction:column;align-items:center;gap:24px}.ch-ennea svg{width:100%;max-width:560px;height:auto;display:block;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ch-outer{fill:none;stroke:#1f3d32;stroke-width:1.2;opacity:.3;stroke-dasharray:1420;stroke-dashoffset:1420;animation:ch-draw 2.2s cubic-bezier(.16,1,.3,1) .2s forwards,ch-breathe 11s ease-in-out 3.5s infinite;transform-origin:310px 310px}.ch-line{fill:none;stroke:#1f3d32;stroke-width:1.1;stroke-linecap:round;opacity:0}.ch-line.ch-hl{stroke-width:2.2 !important}.ch-type{opacity:0;animation:ch-fadein .7s cubic-bezier(.33,1,.68,1) forwards;cursor:pointer}.ch-type-1{animation-delay:2.7s}.ch-type-2{animation-delay:2.82s}.ch-type-3{animation-delay:2.94s}.ch-type-4{animation-delay:3.07s}.ch-type-5{animation-delay:3.18s}.ch-type-6{animation-delay:3.3s}.ch-type-7{animation-delay:3.41s}.ch-type-8{animation-delay:3.53s}.ch-type-9{animation-delay:3.64s}.ch-node-ring{fill:#f8f3e9;stroke:#1f3d32;stroke-width:1.4;transition:stroke-width .35s cubic-bezier(.33,1,.68,1)}.ch-node-fill{transition:r .35s cubic-bezier(.33,1,.68,1)}.ch-body{fill:#1f3d32}.ch-heart{fill:#2c5546}.ch-head{fill:#3a6a59}.ch-type.ch-selected .ch-node-ring{stroke-width:2.8}.ch-type.ch-node-dim{opacity:.28;transition:opacity .4s ease}.ch-type.ch-node-dim.ch-selected{opacity:1}.ch-num{fill:#f8f3e9;font-family:'Cormorant Garamond',Garamond,serif;font-weight:400;font-size:26px;text-anchor:middle;dominant-baseline:central;pointer-events:none;user-select:none}.ch-name{fill:#13222d;font-family:'Cormorant Garamond',Garamond,serif;font-style:italic;font-weight:400;font-size:13px;pointer-events:none;user-select:none;opacity:.75}.ch-hit{fill:transparent;cursor:pointer}.ch-ennea-legend{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;font-family:'Jost','Helvetica Neue',sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#5a6873;font-weight:400}.ch-ennea-legend span{display:flex;align-items:center;gap:7px}.ch-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.ch-dot-body{background:#1f3d32}.ch-dot-heart{background:#2c5546}.ch-dot-head{background:#3a6a59}.ch-ennea-panel{width:100%;max-width:560px;background:#efe8d7;border:1px solid rgba(19,34,45,.12);padding:0 28px;opacity:0;max-height:0;overflow:hidden;transition:opacity .5s cubic-bezier(.33,1,.68,1),max-height .55s cubic-bezier(.33,1,.68,1),padding .55s cubic-bezier(.33,1,.68,1);box-sizing:border-box}.ch-ennea-panel.ch-panel-open{opacity:1;max-height:320px;padding:28px 28px 24px}.ch-panel-eyebrow{font-family:'Jost','Helvetica Neue',sans-serif;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#5a6873;font-weight:400;margin-bottom:6px}.ch-panel-name{font-family:'Cormorant Garamond',Garamond,serif;font-weight:400;font-size:28px;color:#13222d;margin-bottom:16px;line-height:1.15}.ch-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}@media (max-width:480px){.ch-panel-grid{grid-template-columns:1fr}}.ch-panel-row-label{font-family:'Jost','Helvetica Neue',sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#5a6873;margin-bottom:3px;font-weight:400}.ch-panel-row-val{font-family:'Cormorant Garamond',Garamond,serif;font-size:16px;color:#2c3e48;line-height:1.4}.ch-panel-close{float:right;font-family:'Jost','Helvetica Neue',sans-serif;font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:#5a6873;cursor:pointer;background:none;border:none;padding:0;font-weight:400}.ch-panel-close:hover{color:#1f3d32}.ch-ennea-caption{font-family:'Cormorant Garamond',Garamond,serif;font-style:italic;color:#5a6873;font-size:15px;text-align:center;max-width:480px;line-height:1.55}.ch-depth{padding:48px 32px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;box-sizing:border-box}@media (max-width:700px){.ch-depth{grid-template-columns:1fr;gap:32px;padding:36px 24px}}.ch-depth-svg-wrap{display:flex;align-items:center;justify-content:center}.ch-depth-svg-wrap svg{width:100%;max-width:340px;height:auto;display:block}@media (max-width:700px){.ch-depth-svg-wrap svg{max-width:260px}}.ch-ring{stroke:#1f3d32;stroke-width:1.2;fill-opacity:0;opacity:0;transform-origin:300px 300px;transform:scale(.15);transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1),fill-opacity 1.2s cubic-bezier(.33,1,.68,1)}.ch-depth.ch-visible .ch-ring{opacity:1;transform:scale(1)}.ch-ring-1{fill:#1f3d32;transition-delay:0s}.ch-ring-2{fill:#1f3d32;transition-delay:.18s}.ch-ring-3{fill:#1f3d32;transition-delay:.36s}.ch-ring-4{fill:#1f3d32;transition-delay:.54s}.ch-depth.ch-visible .ch-ring-1{fill-opacity:.04}.ch-depth.ch-visible .ch-ring-2{fill-opacity:.09}.ch-depth.ch-visible .ch-ring-3{fill-opacity:.16}.ch-depth.ch-visible .ch-ring-4{fill-opacity:1}.ch-depth.ch-visible .ch-ring-1:hover{fill-opacity:.09;transition:fill-opacity .5s cubic-bezier(.33,1,.68,1)}.ch-depth.ch-visible .ch-ring-2:hover{fill-opacity:.16;transition:fill-opacity .5s cubic-bezier(.33,1,.68,1)}.ch-depth.ch-visible .ch-ring-3:hover{fill-opacity:.24;transition:fill-opacity .5s cubic-bezier(.33,1,.68,1)}.ch-depth.ch-visible .ch-ring-1:hover~.ch-rl-1,.ch-depth.ch-visible .ch-ring-2:hover~.ch-rl-2,.ch-depth.ch-visible .ch-ring-3:hover~.ch-rl-3{fill:#1f3d32;letter-spacing:.26em;transition:letter-spacing .5s cubic-bezier(.33,1,.68,1),fill .5s ease}#chWoundBtn{cursor:pointer}#chWoundBtn:hover .ch-ring-4{filter:brightness(1.18);transition:filter .3s ease}.ch-ring-label{font-family:'Jost','Helvetica Neue',sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;text-anchor:middle;fill:#2c3e48;opacity:0;transition:opacity .8s cubic-bezier(.33,1,.68,1),letter-spacing .6s ease,fill .5s ease;pointer-events:none}.ch-ring-label-core{fill:#f8f3e9}.ch-depth.ch-visible .ch-ring-label{opacity:1}.ch-depth.ch-visible .ch-rl-1{transition-delay:.65s}.ch-depth.ch-visible .ch-rl-2{transition-delay:.82s}.ch-depth.ch-visible .ch-rl-3{transition-delay:.99s}.ch-depth.ch-visible .ch-rl-4{transition-delay:1.16s}.ch-depth-copy h4{font-family:'Cormorant Garamond',Garamond,serif;font-weight:400;font-size:22px;line-height:1.3;color:#13222d;margin-bottom:20px}.ch-depth-copy h4 em{font-style:italic;color:#1f3d32}.ch-layer-row{display:grid;grid-template-columns:88px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid rgba(19,34,45,.07);align-items:baseline}.ch-layer-row:last-child{border-bottom:none}.ch-layer-name{font-family:'Jost','Helvetica Neue',sans-serif;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#1f3d32;font-weight:400;padding-top:2px}.ch-layer-desc{font-family:'Cormorant Garamond',Garamond,serif;font-size:16px;line-height:1.45;color:#2c3e48}.ch-layer-desc em{font-style:italic;color:#1f3d32}.ch-table{padding:40px 32px;overflow-x:auto;box-sizing:border-box}@media (max-width:600px){.ch-table{padding:28px 18px}}.ch-table table{width:100%;border-collapse:collapse;font-family:'Jost','Helvetica Neue',sans-serif;font-weight:400;min-width:520px}@media (max-width:600px){.ch-table table{min-width:unset}.ch-table thead{display:none}.ch-table tbody tr{display:block;padding:20px 0;border-bottom:1px solid rgba(19,34,45,.1)}.ch-table tbody td{display:block;padding:2px 0;border:none !important}.ch-td-num{font-size:34px}.ch-td-name{font-size:22px}.ch-td-centre{display:inline-block;margin-bottom:6px}}.ch-table thead th{text-align:left;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:#5a6873;padding:10px 12px;border-bottom:1px solid rgba(19,34,45,.18);font-weight:400}.ch-table tbody tr{transition:background .3s ease}.ch-table tbody tr:hover{background:rgba(31,61,50,.04)}.ch-table tbody td{padding:15px 12px;border-bottom:1px solid rgba(19,34,45,.06);vertical-align:top;color:#2c3e48;font-size:16px;line-height:1.5}.ch-table tbody tr:last-child td{border-bottom:none}.ch-td-num{font-family:'Cormorant Garamond',Garamond,serif;font-size:30px;font-weight:400;color:#1f3d32;width:44px;line-height:1;padding-top:13px}.ch-td-name{font-family:'Cormorant Garamond',Garamond,serif;font-style:italic;font-size:18px;color:#13222d;width:160px}.ch-td-centre{font-size:12px;letter-spacing:.18em;text-transform:uppercase;width:70px}.ch-td-centre-body{color:#1f3d32}.ch-td-centre-heart{color:#2c5546}.ch-td-centre-head{color:#3a6a59}.ch-toc-block{display:grid;grid-template-columns:230px 1fr}@media (max-width:860px){.ch-toc-block{grid-template-columns:1fr}.ch-toc-sidebar{display:none}.ch-toc-mobile{display:block}}.ch-toc-sidebar{background:#efe8d7;border-right:1px solid rgba(19,34,45,.08);padding:36px 24px;position:sticky;top:80px;height:fit-content;align-self:start}.ch-toc-sidebar-label{font-family:'Jost','Helvetica Neue',sans-serif;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:#5a6873;margin-bottom:18px;font-weight:400}.ch-toc-list{list-style:none;margin:0;padding:0;counter-reset:ch-toc}.ch-toc-list li{counter-increment:ch-toc;padding:7px 0;border-bottom:1px solid rgba(19,34,45,.06)}.ch-toc-list li:last-child{border-bottom:none}.ch-toc-list a{font-family:'Cormorant Garamond',Garamond,serif;font-size:15px;line-height:1.35;color:#2c3e48;text-decoration:none;display:grid;grid-template-columns:24px 1fr;gap:6px;transition:color .3s ease}.ch-toc-list a::before{content:counter(ch-toc,lower-roman);font-family:'Jost','Helvetica Neue',sans-serif;font-size:12px;letter-spacing:.1em;color:#5a6873;padding-top:3px;transition:color .3s ease}.ch-toc-list a:hover,.ch-toc-list a.ch-active{color:#1f3d32}.ch-toc-list a:hover::before,.ch-toc-list a.ch-active::before{color:#1f3d32}.ch-toc-list a.ch-active{font-style:italic}.ch-toc-mobile{display:none;background:#efe8d7;border-bottom:1px solid rgba(19,34,45,.08);padding:24px 22px}.ch-toc-mobile summary{font-family:'Jost','Helvetica Neue',sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:#5a6873;cursor:pointer;list-style:none;font-weight:400;-webkit-tap-highlight-color:transparent}.ch-toc-mobile summary::-webkit-details-marker{display:none}.ch-toc-mobile summary::after{content:'  ↓'}.ch-toc-mobile[open] summary::after{content:'  ↑'}.ch-toc-mobile .ch-toc-list{margin-top:16px}@keyframes ch-draw{to{stroke-dashoffset:0}}@keyframes ch-fadein{to{opacity:1}}@keyframes ch-breathe{0%,100%{opacity:.3;transform:scale(1)}50%{opacity:.38;transform:scale(1.012)}}
/* Like-for-like nudges measured against the original */
@media (min-width:768px){.pt23{padding-top:23px}}
picture{display:contents}
/* 404 page: Squarespace's standard "page not found" text on the site's navy, as on the original */
.system-page{background:var(--navy);color:#000;padding:10px 4vw 112px;font-size:16px;line-height:23.04px}
.system-page p{margin:0 0 16px}.system-page ul{margin:16px 0}
.system-page a{color:#000;text-decoration:none}
@media (max-width:767px){.system-page{padding:10px 23px 112px;font-size:16px}}
/* A page's main heading styled exactly like an H2 (Contact and Apply, where the original had no H1) */
h1.as-h2{font-size:43.6px;line-height:1.114;margin:32px 0}
.blk-text > h1.as-h2:first-child{margin-top:0}
@media (max-width:767px){h1.as-h2{font-size:35.4px}}
body:has(.system-page){background:#0A1820}
