:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #FFFFFF;--wp--preset--color--contrast: #111111;--wp--preset--color--accent-1: #FFEE58;--wp--preset--color--accent-2: #F6CFF4;--wp--preset--color--accent-3: #503AA8;--wp--preset--color--accent-4: #686868;--wp--preset--color--accent-5: #FBFAF3;--wp--preset--color--accent-6: color-mix(in srgb, currentColor 20%, transparent);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 0.875rem;--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.196), 1.125rem);--wp--preset--font-size--large: clamp(1.125rem, 1.125rem + ((1vw - 0.2rem) * 0.392), 1.375rem);--wp--preset--font-size--x-large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.392), 2rem);--wp--preset--font-size--xx-large: clamp(2.15rem, 2.15rem + ((1vw - 0.2rem) * 1.333), 3rem);--wp--preset--font-family--manrope: Manrope, sans-serif;--wp--preset--font-family--fira-code: "Fira Code", monospace;--wp--preset--font-family--ssl-display: "Fraunces",Georgia,serif;--wp--preset--font-family--ssl-text: "Karla",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;--wp--preset--spacing--20: 10px;--wp--preset--spacing--30: 20px;--wp--preset--spacing--40: 30px;--wp--preset--spacing--50: clamp(30px, 5vw, 50px);--wp--preset--spacing--60: clamp(30px, 7vw, 70px);--wp--preset--spacing--70: clamp(50px, 7vw, 90px);--wp--preset--spacing--80: clamp(70px, 10vw, 140px);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:root { --wp--style--global--content-size: 645px;--wp--style--global--wide-size: 1340px; }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 1.2rem; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 1.2rem; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 1.2rem;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 1.2rem;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 1.2rem;}:root :where(.is-layout-grid){gap: 1.2rem;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{background-color: #FAF8F4;color: #17201F;font-family: var(--wp--preset--font-family--ssl-text);font-size: clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.392), 18px);font-weight: 300;letter-spacing: -0.1px;line-height: 1.72;--wp--style--root--padding-top: 0px;--wp--style--root--padding-right: var(--wp--preset--spacing--50);--wp--style--root--padding-bottom: 0px;--wp--style--root--padding-left: var(--wp--preset--spacing--50);}a:where(:not(.wp-element-button)){color: #14494F;}:root :where(a:where(:not(.wp-element-button)):hover){text-decoration: none;}h1, h2, h3, h4, h5, h6{font-weight: 400;letter-spacing: -0.1px;line-height: 1.125;}h1{font-family: var(--wp--preset--font-family--ssl-display);font-size: var(--wp--preset--font-size--xx-large);}h2{font-family: var(--wp--preset--font-family--ssl-display);font-size: var(--wp--preset--font-size--x-large);}h3{font-family: var(--wp--preset--font-family--ssl-display);font-size: var(--wp--preset--font-size--large);}h4{font-family: var(--wp--preset--font-family--ssl-display);font-size: var(--wp--preset--font-size--medium);}h5{font-size: var(--wp--preset--font-size--small);letter-spacing: 0.5px;}h6{font-size: var(--wp--preset--font-size--small);font-weight: 700;letter-spacing: 1.4px;text-transform: uppercase;}:root :where(.wp-element-button, .wp-block-button__link){background-color: var(--wp--preset--color--contrast);border-width: 0;color: var(--wp--preset--color--base);font-family: inherit;font-size: var(--wp--preset--font-size--medium);font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: 1rem;padding-right: 2.25rem;padding-bottom: 1rem;padding-left: 2.25rem;text-decoration: none;text-transform: inherit;}:root :where(.wp-element-button:hover, .wp-block-button__link:hover){background-color: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent);border-color: transparent;color: var(--wp--preset--color--base);}:root :where(.wp-element-button:focus, .wp-block-button__link:focus){outline-color: var(--wp--preset--color--accent-4);outline-offset: 2px;}:root :where(.wp-element-caption, .wp-block-audio figcaption, .wp-block-embed figcaption, .wp-block-gallery figcaption, .wp-block-image figcaption, .wp-block-table figcaption, .wp-block-video figcaption){font-size: var(--wp--preset--font-size--small);line-height: 1.4;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-accent-1-color{color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-color{color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-color{color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-color{color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-color{color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-color{color: var(--wp--preset--color--accent-6) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-accent-1-background-color{background-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-background-color{background-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-background-color{background-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-background-color{background-color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-background-color{background-color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-background-color{background-color: var(--wp--preset--color--accent-6) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-accent-1-border-color{border-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-border-color{border-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-border-color{border-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-border-color{border-color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-border-color{border-color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-border-color{border-color: var(--wp--preset--color--accent-6) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}.has-manrope-font-family{font-family: var(--wp--preset--font-family--manrope) !important;}.has-fira-code-font-family{font-family: var(--wp--preset--font-family--fira-code) !important;}.has-ssl-display-font-family{font-family: var(--wp--preset--font-family--ssl-display) !important;}.has-ssl-text-font-family{font-family: var(--wp--preset--font-family--ssl-text) !important;}/* ==========================================================================
   Small Shop Lab — brand layer
   Fraunces (display) + Karla (text) · petrol #14494F · brass #9C6F26
   ========================================================================== */

:root{
  --ssl-paper:#FAF8F4; --ssl-surface:#FFFFFF; --ssl-ink:#17201F;
  --ssl-muted:#5F6A64; --ssl-line:#E5E1D8; --ssl-line-2:#CFC9BB;
  --ssl-petrol:#14494F; --ssl-petrol-2:#0E363B;
  --ssl-brass:#9C6F26; --ssl-brass-soft:#F5EBD9; --ssl-brass-lite:#D3A45C;
  --ssl-measure:68ch;
  --ssl-serif:"Fraunces","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --ssl-sans:"Karla",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

html{scroll-behavior:smooth}
body{
  background:var(--ssl-paper); color:var(--ssl-ink);
  font-family:var(--ssl-sans); font-size:18px; line-height:1.72;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  font-feature-settings:"kern" 1,"liga" 1;
}

/* ---------- type ---------- */
h1,h2,h3,h4,.wp-block-post-title,.wp-block-site-title,.wp-block-query-title{
  font-family:var(--ssl-serif); font-weight:600; letter-spacing:-.022em;
  line-height:1.1; text-wrap:balance; color:var(--ssl-ink);
}
h1,.wp-block-post-title{font-size:clamp(34px,5vw,54px)}
h2{font-size:clamp(26px,3.4vw,36px); margin-top:2.1em; margin-bottom:.5em}
h3{font-size:clamp(20px,2.4vw,25px); margin-top:1.8em; margin-bottom:.4em}
p,li{max-width:var(--ssl-measure)}
strong{font-weight:700}
a{color:var(--ssl-petrol); text-underline-offset:3px; text-decoration-thickness:1px}
a:hover{color:var(--ssl-brass)}
:focus-visible{outline:2px solid var(--ssl-petrol); outline-offset:3px; border-radius:3px}
::selection{background:var(--ssl-brass-soft); color:var(--ssl-ink)}

/* the opening line of every post and page */
.ssl-lede{
  font-size:clamp(20px,2.2vw,23px); line-height:1.6; color:#2C3733;
  border-left:3px solid var(--ssl-brass); padding-left:20px; margin-bottom:2em;
}

/* ---------- header ---------- */
.wp-site-blocks > header, header.wp-block-template-part{
  background:rgba(250,248,244,.86); border-bottom:1px solid var(--ssl-line);
  position:sticky; top:0; z-index:60;
  backdrop-filter:saturate(150%) blur(10px); -webkit-backdrop-filter:saturate(150%) blur(10px);
}
.wp-block-site-title{font-size:23px; letter-spacing:-.028em}
.wp-block-site-title a{text-decoration:none; color:var(--ssl-ink)}
.wp-block-navigation{font-family:var(--ssl-sans)}
.wp-block-navigation a{
  font-size:15px; font-weight:600; text-decoration:none; color:var(--ssl-ink);
  padding-bottom:2px; border-bottom:2px solid transparent; transition:border-color .15s ease,color .15s ease;
}
.wp-block-navigation a:hover{color:var(--ssl-petrol); border-bottom-color:var(--ssl-brass)}
.wp-block-navigation .current-menu-item a{border-bottom-color:var(--ssl-brass)}

/* ---------- buttons ---------- */
.wp-block-button__link{
  background:var(--ssl-petrol); color:var(--ssl-paper); border-radius:6px;
  padding:12px 22px; font-family:var(--ssl-sans); font-weight:700; font-size:15px;
  letter-spacing:.01em; text-decoration:none;
  transition:transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.wp-block-button__link:hover{
  background:var(--ssl-petrol-2); color:#fff; transform:translateY(-1px);
  box-shadow:0 6px 18px -8px rgba(20,73,79,.55);
}
.is-style-outline .wp-block-button__link{
  background:transparent; color:var(--ssl-petrol); border:1.5px solid var(--ssl-petrol);
}
.is-style-outline .wp-block-button__link:hover{background:var(--ssl-petrol); color:var(--ssl-paper)}

/* ---------- article rhythm ---------- */
.wp-block-post-content > *{margin-block:1.15em}
.wp-block-post-content > h2 + p, .wp-block-post-content > h3 + p{margin-top:.55em}
.entry-content > *{margin-block:1.15em}

blockquote{
  border-left:3px solid var(--ssl-brass); background:var(--ssl-brass-soft);
  margin:2.2em 0; padding:20px 26px; font-family:var(--ssl-serif);
  font-size:20px; line-height:1.5; font-style:normal;
}
blockquote p{margin:0; max-width:none}

figure{margin:2.2em 0}
figure img, .wp-block-image img{border-radius:8px; display:block}
figcaption, .wp-block-image figcaption{
  font-size:14.5px; line-height:1.55; color:var(--ssl-muted); text-align:left;
  border-left:2px solid var(--ssl-line-2); padding-left:12px; margin-top:12px; max-width:60ch;
}

/* ---------- tables carry the numbers ---------- */
.wp-block-table{overflow-x:auto; margin:2.2em 0}
table{
  border-collapse:collapse; width:100%; font-size:16px;
  font-variant-numeric:tabular-nums lining-nums;
}
thead th, table th{
  text-align:left; font-family:var(--ssl-sans); font-size:11.5px; font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; color:var(--ssl-muted);
  border-bottom:2px solid var(--ssl-ink); padding:0 16px 9px 0; white-space:nowrap;
}
table td{
  border-bottom:1px solid var(--ssl-line); padding:12px 16px 12px 0; vertical-align:top;
}
table tbody tr:last-child td{border-bottom:none}
table tbody tr:last-child td strong{color:var(--ssl-petrol)}
.wp-block-table figcaption{margin-top:14px}

/* ---------- the signature element ---------- */
.ssl-data{
  background:var(--ssl-brass-soft); border-radius:10px;
  padding:22px 26px; margin:2.4em 0; border:1px solid #EADFC6;
}
.ssl-data::before{
  content:"FROM MY OWN SHOP"; display:block; margin-bottom:9px;
  font-family:var(--ssl-sans); font-size:11px; font-weight:700;
  letter-spacing:.18em; color:var(--ssl-brass);
}
.ssl-data p{margin:0; max-width:none; font-size:18.5px; line-height:1.6}

/* proof strip on the homepage */
.ssl-proof{border-block:2px solid var(--ssl-ink); padding-block:26px; margin-block:0}
.ssl-proof .wp-block-column{padding-inline:6px}
.ssl-proof .ssl-num{
  font-family:var(--ssl-serif); font-size:clamp(30px,4vw,42px); font-weight:600;
  line-height:1; color:var(--ssl-petrol); margin:0 0 6px; letter-spacing:-.03em;
}
.ssl-proof .ssl-lab{
  font-size:14.5px; line-height:1.45; color:var(--ssl-muted); margin:0; max-width:32ch;
}

/* eyebrow label */
.ssl-eyebrow{
  font-size:12px; font-weight:700; letter-spacing:.2em; text-transform:uppercase;
  color:var(--ssl-brass); margin-bottom:10px;
}

/* card grid for the three paths */
.ssl-path{
  background:var(--ssl-surface); border:1px solid var(--ssl-line); border-radius:12px;
  padding:26px 24px; height:100%;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ssl-path:hover{transform:translateY(-3px); box-shadow:0 14px 34px -22px rgba(23,32,31,.45); border-color:var(--ssl-line-2)}
.ssl-path h3{margin-top:0; font-size:21px}
.ssl-path p{font-size:16px; color:var(--ssl-muted)}

/* ---------- post lists ---------- */
.wp-block-post-template{gap:0}
.wp-block-post-template li{
  max-width:none; border-bottom:1px solid var(--ssl-line); padding-block:26px;
}
.wp-block-post-template li:last-child{border-bottom:none}
.wp-block-post-title a{text-decoration:none; font-size:clamp(21px,2.4vw,26px); line-height:1.2}
.wp-block-post-title a:hover{color:var(--ssl-petrol)}
.wp-block-post-excerpt__excerpt{color:var(--ssl-muted); font-size:16.5px}
.wp-block-post-date, .wp-block-post-terms{
  font-size:12px; letter-spacing:.14em; text-transform:uppercase;
  font-weight:700; color:var(--ssl-brass);
}
.wp-block-post-terms a{color:var(--ssl-brass); text-decoration:none}

/* ---------- author box ---------- */
.ssl-author{
  border-top:2px solid var(--ssl-ink); margin-top:3.5em; padding-top:26px;
}
.ssl-author .wp-block-image img{
  width:82px; height:82px; border-radius:50%; object-fit:cover;
}
.ssl-author p{font-size:16.5px; color:var(--ssl-muted); margin:6px 0 0; max-width:60ch}
.ssl-author .ssl-name{
  font-family:var(--ssl-serif); font-size:19px; font-weight:600; color:var(--ssl-ink); margin:0;
}

/* ---------- newsletter band ---------- */
.ssl-band{
  background:var(--ssl-petrol); color:var(--ssl-paper);
  border-radius:14px; padding:44px 40px; margin-block:3em;
}
.ssl-band h2, .ssl-band h3{color:var(--ssl-paper); margin-top:0}
.ssl-band p{color:#CFE0DF; max-width:56ch}
.ssl-band .wp-block-button__link{background:var(--ssl-brass-lite); color:var(--ssl-ink)}
.ssl-band .wp-block-button__link:hover{background:#E3BC7C; color:var(--ssl-ink)}

/* ---------- footer ---------- */
.wp-site-blocks > footer, footer.wp-block-template-part{
  background:var(--ssl-ink); color:var(--ssl-paper); margin-top:5em; padding-block:60px 44px;
}
.wp-site-blocks > footer p, footer.wp-block-template-part p{color:#A8B2AE; font-size:15.5px}
.wp-site-blocks > footer a, footer.wp-block-template-part a{color:var(--ssl-paper); opacity:.88; text-decoration:none}
.wp-site-blocks > footer a:hover, footer.wp-block-template-part a:hover{opacity:1; color:var(--ssl-brass-lite)}
footer .wp-block-heading{color:var(--ssl-paper); font-family:var(--ssl-sans); font-size:12px;
  letter-spacing:.18em; text-transform:uppercase; font-weight:700; margin-bottom:14px}
footer .ssl-fine{font-size:13.5px; color:#7E8985; border-top:1px solid #2B3532; padding-top:22px; margin-top:34px}

/* ---------- misc ---------- */
hr.wp-block-separator{border:none; border-top:1px solid var(--ssl-line); margin:3em auto}
.ssl-quiet{color:var(--ssl-muted); font-size:15.5px}
@media (max-width:781px){
  body{font-size:17px}
  .ssl-band{padding:32px 24px}
  .ssl-lede{padding-left:16px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important; animation:none!important; scroll-behavior:auto!important}}

/* ---------- free tool: calculator ---------- */
.ssl-calc{
  background:var(--ssl-surface); border:1px solid var(--ssl-line); border-radius:14px;
  padding:34px 32px; margin:2.5em 0;
}
.ssl-calc-eyebrow{
  font-size:11.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase;
  color:var(--ssl-brass); margin:0 0 8px;
}
.ssl-calc h2{margin:0 0 10px; font-size:clamp(24px,3vw,31px)}
.ssl-calc-sub{font-size:16.5px; color:var(--ssl-muted); margin:0 0 26px; max-width:70ch}
.ssl-calc-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px 22px}
.ssl-calc-grid label{
  display:block; font-size:14px; font-weight:600; color:var(--ssl-muted);
  position:relative; max-width:none; line-height:1.35;
}
.ssl-calc-grid input{
  display:block; width:100%; margin-top:7px; padding:11px 12px 11px 32px;
  font-family:var(--ssl-sans); font-size:17px; font-weight:600; color:var(--ssl-ink);
  background:var(--ssl-paper); border:1px solid var(--ssl-line-2); border-radius:7px;
  font-variant-numeric:tabular-nums;
}
.ssl-calc-grid input:focus{outline:2px solid var(--ssl-petrol); outline-offset:1px; border-color:var(--ssl-petrol)}
.ssl-u{
  position:absolute; left:12px; bottom:12px; font-size:15px; font-weight:700; color:var(--ssl-muted);
}
.ssl-calc-out{margin-top:30px; border-top:2px solid var(--ssl-ink); padding-top:24px}
.ssl-calc-big{display:flex; align-items:baseline; gap:16px; flex-wrap:wrap; margin-bottom:20px}
.ssl-calc-big span{
  font-family:var(--ssl-serif); font-size:clamp(42px,6vw,62px); font-weight:600;
  color:var(--ssl-petrol); line-height:1; letter-spacing:-.03em;
}
.ssl-calc-big small{font-size:16.5px; color:var(--ssl-muted); max-width:26ch; line-height:1.4}
.ssl-calc-out table{width:100%; font-size:16.5px}
.ssl-calc-out td{padding:10px 0; border-bottom:1px solid var(--ssl-line)}
.ssl-calc-out td:last-child{text-align:right; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap}
.ssl-calc-hl td{background:var(--ssl-brass-soft)}
.ssl-calc-hl td:first-child{padding-left:12px; border-radius:6px 0 0 6px}
.ssl-calc-hl td:last-child{padding-right:12px; border-radius:0 6px 6px 0}
.ssl-calc-tot td{border-bottom:none; border-top:2px solid var(--ssl-ink); font-weight:700; font-size:18.5px}
.ssl-calc-note{font-size:15.5px; color:var(--ssl-muted); margin-top:18px; max-width:74ch; line-height:1.55}

@media (max-width:600px){
  .wp-block-site-title{font-size:19px;line-height:1.15}
  .wp-block-site-title a{white-space:nowrap}
  .ssl-cta a,.wp-block-button__link{padding:9px 14px;font-size:13.5px}
  .wp-site-blocks > header, header.wp-block-template-part{padding-block:10px}
  .ssl-proof .wp-block-column{padding-block:10px}
  h1,.wp-block-post-title{font-size:clamp(30px,8vw,40px)}
  .ssl-calc{padding:24px 18px}
  table{font-size:15px}
}

/* calculator layout fix */
.ssl-calc, .ssl-calc *{box-sizing:border-box}
.ssl-calc{max-width:100%; overflow:hidden}
.ssl-calc-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); align-items:end}
.ssl-calc-grid > label{min-width:0; max-width:100%}
.ssl-calc-grid input{max-width:100%}
.ssl-calc-out table{table-layout:auto}

/* site-logo sizing */
.wp-block-site-logo{line-height:0}
.wp-block-site-logo img{width:216px;height:auto;max-width:216px}
@media (max-width:600px){.wp-block-site-logo img{width:158px;max-width:158px}}

/* ---------- cookie notice ---------- */
.ssl-consent[hidden]{display:none!important}
.ssl-consent{position:fixed;right:20px;bottom:20px;z-index:200;width:min(408px,calc(100vw - 40px));
  background:var(--ssl-surface);border:1px solid var(--ssl-line-2);border-radius:14px;
  box-shadow:0 20px 48px rgba(20,32,31,.17),0 2px 6px rgba(20,32,31,.06);
  opacity:0;transform:translateY(14px);transition:opacity .24s ease,transform .24s ease}
.ssl-consent.is-in{opacity:1;transform:none}
.ssl-consent__in{padding:20px 22px 19px}
.ssl-consent__t{font-family:var(--ssl-serif);font-weight:600;font-size:19px;line-height:1.25;
  letter-spacing:-.02em;margin:0 0 7px;max-width:none;color:var(--ssl-ink)}
.ssl-consent__b{font-size:14.5px;line-height:1.6;color:var(--ssl-muted);margin:0 0 15px;max-width:none}
.ssl-consent__b a{color:var(--ssl-petrol);text-decoration:underline}
.ssl-consent__row{display:flex;gap:10px;flex-wrap:wrap}
.ssl-consent__btn{font-family:var(--ssl-sans);font-size:14px;font-weight:600;line-height:1;
  border-radius:999px;padding:12px 20px;cursor:pointer;border:1px solid transparent;
  transition:background .15s ease,color .15s ease,border-color .15s ease}
.ssl-consent__btn--y{background:var(--ssl-petrol);color:#fff}
.ssl-consent__btn--y:hover{background:var(--ssl-petrol-2)}
.ssl-consent__btn--n{background:transparent;color:var(--ssl-ink);border-color:var(--ssl-line-2)}
.ssl-consent__btn--n:hover{border-color:var(--ssl-petrol);color:var(--ssl-petrol)}
@media (max-width:600px){.ssl-consent{left:10px;right:10px;bottom:10px;width:auto}
  .ssl-consent__in{padding:17px 18px 16px}
  .ssl-consent__btn{flex:1 1 auto;text-align:center}}
@media (prefers-reduced-motion:reduce){.ssl-consent{transition:none}}

/* ---------- ssl-fix-v2: focus ring only for keyboard ---------- */
:focus:not(:focus-visible){outline:none!important;box-shadow:none}
.wp-site-blocks :focus:not(:focus-visible){outline:none!important}
a:focus:not(:focus-visible),button:focus:not(:focus-visible),.custom-logo-link:focus:not(:focus-visible){outline:none!important}

/* ---------- ssl-fix-v2: tables read as editorial, and they close ---------- */
.wp-block-table table{border-collapse:collapse; border:0}
.wp-block-table table td,.wp-block-table table th{
  border-left:0; border-right:0; border-top:0;
  border-bottom:1px solid var(--ssl-line);
}
.wp-block-table table thead th{border-bottom:2px solid var(--ssl-ink)}
.wp-block-table table tbody tr:first-child td{border-top:2px solid var(--ssl-ink)}
.wp-block-table table thead+tbody tr:first-child td{border-top:0}
.wp-block-table table tbody tr:last-child td{border-bottom:2px solid var(--ssl-ink)}

/* ---------- ssl-fix-v3: EVERY table on the site, block or raw HTML ---------- */
table{border-collapse:collapse}
table td,table th{border-left:0; border-right:0}
table tbody tr:first-child td{border-top:2px solid var(--ssl-ink)}
table thead+tbody tr:first-child td{border-top:0}
table tbody tr:last-child td{border-bottom:2px solid var(--ssl-ink)}
/* the calculator result keeps its own ending */
.ssl-calc-out table tbody tr:first-child td{border-top:0}
.ssl-calc-out table tbody tr:last-child td{border-bottom:0; border-top:2px solid var(--ssl-ink)}

/* ---------- ssl-fix-v4: outline button matches the solid one exactly ---------- */
:root :where(.wp-block-button.is-style-outline>.wp-block-button__link),
:root :where(.wp-block-button .wp-block-button__link.is-style-outline),
.wp-block-button.is-style-outline>.wp-block-button__link,
.wp-block-button .wp-block-button__link.is-style-outline{
  border-width:1.5px;
  padding:calc(12px - 1.5px) calc(22px - 1.5px);
  font-size:15px; line-height:inherit; border-radius:6px;
}

/* ================= ssl-fix-v5 ================= */

/* hero: what you get here */
.ssl-hero-list{margin-top:34px; padding-top:24px; border-top:1px solid var(--ssl-line)}
.ssl-hero-list .ssl-eyebrow{font-size:11px; margin:0 0 15px}
.ssl-hero-list ul{list-style:none; margin:0; padding:0}
.ssl-hero-list li{
  position:relative; padding-left:27px; margin:0 0 11px; max-width:46ch;
  font-size:15.5px; line-height:1.55; color:var(--ssl-muted);
}
.ssl-hero-list li::before{
  content:""; position:absolute; left:0; top:10px; width:15px; height:2px;
  background:var(--ssl-brass); border-radius:2px;
}
.ssl-hero-list li:last-child{margin-bottom:0}

/* the newsletter band */
.ssl-band{
  position:relative; overflow:hidden; isolation:isolate;
  background:
    radial-gradient(120% 150% at 86% -10%, rgba(211,164,92,.20) 0%, rgba(211,164,92,0) 58%),
    linear-gradient(168deg, #175A62 0%, #14494F 46%, #0E363B 100%);
  color:var(--ssl-paper); border-radius:18px;
  padding:52px 52px 48px; margin-block:3.4em;
  box-shadow:0 26px 64px rgba(14,54,59,.24);
}
.ssl-band::before{
  content:""; position:absolute; left:0; right:0; top:0; height:2px; z-index:2;
  background:linear-gradient(90deg,var(--ssl-brass) 0%,var(--ssl-brass-lite) 30%,rgba(211,164,92,0) 74%);
}
.ssl-band::after{
  content:""; position:absolute; right:-96px; bottom:-128px; width:330px; height:330px;
  border:1px solid rgba(250,248,244,.09); border-radius:50%; z-index:0; pointer-events:none;
}
.ssl-band > *{position:relative; z-index:1}
.ssl-band .ssl-eyebrow{color:var(--ssl-brass-lite); margin:0 0 12px}
.ssl-band h2,.ssl-band h3{color:var(--ssl-paper); margin-top:0; letter-spacing:-.025em}
.ssl-band p{color:#C6DAD9; max-width:58ch}
.ssl-band .ssl-band-note{font-size:13.5px; color:#8FAEAD; margin:16px 0 0; letter-spacing:.01em}
.ssl-band .wp-block-button__link{background:var(--ssl-brass-lite); color:var(--ssl-ink); font-weight:700}
.ssl-band .wp-block-button__link:hover{background:#E7C68F}

/* footer — compact, quiet, premium */
.wp-site-blocks > footer, footer.wp-block-template-part{
  background:var(--ssl-ink); color:var(--ssl-paper); margin-top:5em;
  padding-block:54px 28px;
}
.ssl-foot-logo{margin:0 0 15px}
.ssl-foot-logo img{width:186px; height:auto; max-width:186px}
.ssl-foot-blurb{max-width:33ch; margin:0 0 16px}
footer p.ssl-foot-blurb{font-size:14.5px; line-height:1.62; color:#8D9A96}
footer .ssl-foot-mail{margin:0; font-size:14px}
footer .ssl-foot-mail a{color:#B9C4C0; border-bottom:1px solid #313B38; padding-bottom:2px; opacity:1}
footer .ssl-foot-mail a:hover{color:var(--ssl-brass-lite); border-bottom-color:var(--ssl-brass)}
footer .wp-block-heading{
  color:var(--ssl-brass-lite); font-family:var(--ssl-sans); font-size:10.5px;
  letter-spacing:.2em; text-transform:uppercase; font-weight:700; margin:0 0 16px;
}
footer .wp-block-list{list-style:none; margin:0; padding:0}
footer .wp-block-list li{margin:0 0 10px; padding:0; font-size:14.5px; line-height:1.4; max-width:none}
footer .wp-block-list li:last-child{margin-bottom:0}
footer .wp-block-list li::marker{content:""}
footer a{color:#D5DCD9; opacity:1; text-decoration:none; transition:color .15s ease}
footer a:hover{color:var(--ssl-brass-lite)}
footer .ssl-fine{
  font-size:12.5px; line-height:1.65; color:#6C7773; max-width:none;
  border-top:1px solid #232C2A; padding-top:20px; margin-top:40px;
}
footer .ssl-fine a{color:#8D9A96; border-bottom:1px solid #313B38; padding-bottom:1px}
footer .ssl-fine a:hover{color:var(--ssl-brass-lite); border-bottom-color:var(--ssl-brass)}
@media (max-width:781px){
  .wp-site-blocks > footer, footer.wp-block-template-part{padding-block:44px 24px}
  .ssl-foot-blurb{max-width:none}
  footer .ssl-fine{margin-top:30px}
}

/* ================= ssl-dark-v1 — glass header + real dark mode ================= */

:root{
  --ssl-cream:#FAF8F4;
  --ssl-lede-ink:#2C3733;
  --ssl-data-line:#EADFC6;
  --ssl-footer-bg:#17201F;
  --ssl-glass:rgba(250,248,244,.62);
  --ssl-glass-strong:rgba(250,248,244,.86);
  --ssl-glass-line:rgba(207,201,187,.55);
  --ssl-shadow:rgba(20,32,31,.14);
}
:root[data-theme="dark"]{
  --ssl-paper:#0E1513;
  --ssl-surface:#151E1B;
  --ssl-ink:#E9EDEA;
  --ssl-muted:#95A39E;
  --ssl-line:#212B28;
  --ssl-line-2:#2F3B37;
  --ssl-petrol:#7CC9D0;
  --ssl-petrol-2:#A3DEE3;
  --ssl-brass:#D3A45C;
  --ssl-brass-soft:#1D190F;
  --ssl-brass-lite:#E3BF85;
  --ssl-lede-ink:#C4CFCA;
  --ssl-data-line:#3B3218;
  --ssl-footer-bg:#0A100F;
  --ssl-glass:rgba(14,21,19,.58);
  --ssl-glass-strong:rgba(14,21,19,.84);
  --ssl-glass-line:rgba(60,74,70,.6);
  --ssl-shadow:rgba(0,0,0,.5);
}
:root[data-theme="dark"] body{background:var(--ssl-paper); color:var(--ssl-ink)}
:root[data-theme="dark"] img:not(.custom-logo){filter:brightness(.94) contrast(1.02)}

/* things that must stay light-on-dark whatever the mode */
.ssl-band h2,.ssl-band h3{color:var(--ssl-cream)}
.wp-site-blocks > footer, footer.wp-block-template-part{background:var(--ssl-footer-bg)}
.wp-site-blocks > footer a, footer.wp-block-template-part a{color:#D5DCD9; opacity:1}
.wp-site-blocks > footer a:hover, footer.wp-block-template-part a:hover{color:var(--ssl-brass-lite)}
.ssl-lede{color:var(--ssl-lede-ink)}
.ssl-data{border-color:var(--ssl-data-line)}
.wp-block-button__link:hover{color:var(--ssl-paper)}
.ssl-band .wp-block-button__link,.ssl-band .wp-block-button__link:hover{color:#17201F}

/* dark-mode logo swap */
:root[data-theme="dark"] .wp-block-site-logo img.custom-logo{
  content:url("https://smallshoplab.com/wp-content/uploads/2026/09/small-shop-lab-logo-light.png");
}

/* ---------- glass header ---------- */
.wp-site-blocks > header, header.wp-block-template-part{
  background:var(--ssl-glass);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid var(--ssl-glass-line);
  box-shadow:none;
  transition:background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ssl-scrolled .wp-site-blocks > header, .ssl-scrolled header.wp-block-template-part{
  background:var(--ssl-glass-strong);
  box-shadow:0 10px 34px -20px var(--ssl-shadow);
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .wp-site-blocks > header, header.wp-block-template-part{background:var(--ssl-glass-strong)}
}

/* ---------- light / dark toggle ---------- */
.ssl-theme-toggle{
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; padding:0; flex:0 0 38px;
  border-radius:999px; cursor:pointer; background:transparent;
  border:1px solid var(--ssl-line-2); color:var(--ssl-ink);
  transition:border-color .15s ease, color .15s ease, background .15s ease;
}
.ssl-theme-toggle:hover{border-color:var(--ssl-petrol); color:var(--ssl-petrol)}
.ssl-theme-toggle svg{width:17px; height:17px; display:block}
.ssl-theme-toggle .ssl-i-moon{display:none}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-i-sun{display:none}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-i-moon{display:block}
@media (max-width:781px){.ssl-theme-toggle{width:34px;height:34px;flex-basis:34px}}

/* ---------- ssl-fix-v6: fine print sits in its own measure ---------- */
footer .ssl-fine{font-size:11.5px; line-height:1.75; letter-spacing:.005em; max-width:82ch; padding-right:8%}
@media (max-width:781px){footer .ssl-fine{padding-right:0; max-width:none; font-size:11.5px}}
.ssl-foot-top{row-gap:36px}
.ssl-foot-logo a{display:inline-block; line-height:0}


/* ---------- ssl-top-v2: back to top, with scroll progress ---------- */
.ssl-top[hidden]{display:none!important}
.ssl-top{
  position:fixed; right:24px; bottom:24px; z-index:150;
  width:50px; height:50px; padding:0; border:0; background:none; cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center;
  opacity:0; transform:translateY(12px) scale(.96);
  transition:opacity .25s ease, transform .25s cubic-bezier(.2,.8,.2,1);
}
.ssl-top.is-in{opacity:1; transform:none}
.ssl-top::before{
  content:""; position:absolute; inset:0; border-radius:999px;
  background:var(--ssl-glass-strong);
  -webkit-backdrop-filter:saturate(180%) blur(14px); backdrop-filter:saturate(180%) blur(14px);
  border:1px solid var(--ssl-glass-line);
  box-shadow:0 16px 34px -16px var(--ssl-shadow);
  transition:border-color .18s ease, box-shadow .18s ease;
}
.ssl-top:hover::before{border-color:var(--ssl-brass); box-shadow:0 20px 42px -14px var(--ssl-shadow)}
.ssl-top-ring{position:absolute; inset:3px; width:44px; height:44px; transform:rotate(-90deg); overflow:visible}
.ssl-top-ring circle{fill:none; stroke-width:2}
.ssl-top-track{stroke:var(--ssl-line-2); opacity:.85}
.ssl-top-bar{stroke:var(--ssl-brass); stroke-linecap:round; transition:stroke-dashoffset .1s linear}
.ssl-top-arrow{position:relative; width:16px; height:16px; color:var(--ssl-ink); transition:transform .18s ease, color .18s ease}
.ssl-top:hover .ssl-top-arrow{transform:translateY(-2px); color:var(--ssl-brass)}
@media (max-width:600px){.ssl-top{right:14px; bottom:14px; width:46px; height:46px}
  .ssl-top-ring{inset:3px; width:40px; height:40px}}
@media (prefers-reduced-motion:reduce){.ssl-top,.ssl-top-arrow,.ssl-top-bar{transition:none}}

/* ---------- ssl-search-v1: header icons + search overlay ---------- */
footer .ssl-fine{margin-left:0; margin-right:auto}

.ssl-icons{display:inline-flex; align-items:center; gap:8px}
.ssl-icon-btn,.ssl-theme-toggle{
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; padding:0; flex:0 0 38px;
  border-radius:999px; cursor:pointer; background:transparent;
  border:1px solid var(--ssl-line-2); color:var(--ssl-ink);
  transition:border-color .15s ease, color .15s ease;
}
.ssl-icon-btn:hover,.ssl-theme-toggle:hover{border-color:var(--ssl-petrol); color:var(--ssl-petrol)}
.ssl-icon-btn svg{width:17px; height:17px; display:block}
@media (max-width:781px){.ssl-icon-btn{width:34px;height:34px;flex-basis:34px}}

html.ssl-search-open{overflow:hidden}
.ssl-search[hidden]{display:none!important}
.ssl-search{position:fixed; inset:0; z-index:400; opacity:0; transition:opacity .2s ease}
.ssl-search.is-in{opacity:1}
.ssl-search__scrim{
  position:absolute; inset:0; background:rgba(10,16,15,.55);
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
.ssl-search__panel{
  position:relative; margin:9vh auto 0; width:min(680px,calc(100vw - 32px));
  background:var(--ssl-surface); border:1px solid var(--ssl-line-2); border-radius:16px;
  box-shadow:0 40px 90px -30px rgba(10,16,15,.6);
  overflow:hidden; transform:translateY(-10px); transition:transform .22s cubic-bezier(.2,.8,.2,1);
}
.ssl-search.is-in .ssl-search__panel{transform:none}
.ssl-search__form{display:flex; align-items:center; gap:12px; padding:16px 18px; border-bottom:1px solid var(--ssl-line)}
.ssl-search__icon{display:flex; color:var(--ssl-muted)}
.ssl-search__icon svg{width:19px; height:19px}
.ssl-search__input{
  flex:1 1 auto; min-width:0; border:0; outline:0; background:transparent;
  font-family:var(--ssl-sans); font-size:18px; color:var(--ssl-ink); padding:4px 0;
}
.ssl-search__input::placeholder{color:var(--ssl-muted)}
.ssl-search__input::-webkit-search-cancel-button{display:none}
.ssl-search__esc{
  flex:0 0 auto; font-family:var(--ssl-sans); font-size:11px; font-weight:700; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ssl-muted); background:transparent;
  border:1px solid var(--ssl-line-2); border-radius:6px; padding:5px 9px; cursor:pointer;
}
.ssl-search__esc:hover{color:var(--ssl-ink); border-color:var(--ssl-ink)}
.ssl-search__body{max-height:min(58vh,460px); overflow-y:auto; padding:8px}
.ssl-search__hint{margin:12px 12px 14px; font-size:14px; color:var(--ssl-muted); max-width:none}
.ssl-search__list{list-style:none; margin:0; padding:0}
.ssl-search__list li{margin:0; padding:0; max-width:none}
.ssl-search__list a{
  display:flex; align-items:baseline; justify-content:space-between; gap:16px;
  padding:12px 14px; border-radius:10px; text-decoration:none; color:var(--ssl-ink);
}
.ssl-search__list li.is-on a,.ssl-search__list a:hover{background:var(--ssl-brass-soft)}
.ssl-search__t{font-size:16px; line-height:1.4; font-weight:600}
.ssl-search__t mark{background:transparent; color:var(--ssl-brass); font-weight:700}
.ssl-search__k{
  flex:0 0 auto; font-size:10.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--ssl-muted);
}
@media (max-width:600px){.ssl-search__panel{margin-top:6vh} .ssl-search__input{font-size:16px}}
@media (prefers-reduced-motion:reduce){.ssl-search,.ssl-search__panel{transition:none}}

/* ---------- ssl-labels-v1: icon buttons say what they do ---------- */
.ssl-icons{gap:10px}
.ssl-icon-btn,.ssl-theme-toggle{
  flex-direction:column; gap:3px;
  width:auto; height:auto; flex:0 0 auto;
  min-width:52px; padding:7px 10px 6px;
  border-radius:10px;
}
.ssl-icon-btn svg,.ssl-theme-toggle svg{width:16px; height:16px}
.ssl-btn-label{
  font-family:var(--ssl-sans); font-size:9px; font-weight:700; line-height:1;
  letter-spacing:.13em; text-transform:uppercase; color:var(--ssl-muted);
  transition:color .15s ease;
}
.ssl-icon-btn:hover .ssl-btn-label,.ssl-theme-toggle:hover .ssl-btn-label{color:var(--ssl-petrol)}
/* the icon and the word name the mode you switch TO */
.ssl-theme-toggle .ssl-i-sun{display:none}
.ssl-theme-toggle .ssl-i-moon{display:block}
.ssl-theme-toggle .ssl-l-light{display:none}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-i-sun{display:block}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-i-moon{display:none}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-l-dark{display:none}
:root[data-theme="dark"] .ssl-theme-toggle .ssl-l-light{display:block}
@media (max-width:781px){
  .ssl-icon-btn,.ssl-theme-toggle{min-width:46px; padding:6px 8px 5px}
  .ssl-btn-label{font-size:8.5px; letter-spacing:.1em}
}

/* ---------- ssl-width-v1: a wider, easier reading column ---------- */
:root{--ssl-measure:78ch}
.wp-block-post-content,.entry-content{max-width:880px}
.wp-block-post-content > *,.entry-content > *{max-width:100%}
.wp-block-post-title,.wp-block-post-content .wp-block-heading{max-width:100%}
@media (max-width:940px){.wp-block-post-content,.entry-content{max-width:100%}}

/* ---------- ssl-width-v2: beat the theme layout rule ---------- */
.wp-site-blocks .wp-block-post-content,
.wp-site-blocks .entry-content,
body .wp-block-post-content.wp-block-post-content{max-width:880px}
@media (max-width:960px){
  .wp-site-blocks .wp-block-post-content,
  .wp-site-blocks .entry-content,
  body .wp-block-post-content.wp-block-post-content{max-width:100%}
}

/* ---------- ssl-share-v1: sticky share rail beside the article ---------- */
.ssl-share{
  position:fixed; left:calc(50% - 592px); top:50%; transform:translateY(-50%) translateX(-6px);
  z-index:120; display:flex; flex-direction:column; align-items:center; gap:10px;
  padding:16px 10px; border-radius:999px;
  background:var(--ssl-glass-strong);
  -webkit-backdrop-filter:saturate(180%) blur(16px); backdrop-filter:saturate(180%) blur(16px);
  border:1px solid var(--ssl-glass-line);
  box-shadow:0 18px 40px -22px var(--ssl-shadow);
  opacity:0; pointer-events:none;
  transition:opacity .3s ease, transform .3s cubic-bezier(.2,.8,.2,1);
}
.ssl-share.is-in{opacity:1; transform:translateY(-50%); pointer-events:auto}
.ssl-share__cap{
  font-family:var(--ssl-sans); font-size:9px; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--ssl-brass); writing-mode:vertical-rl;
  margin-bottom:2px; padding-bottom:8px; border-bottom:1px solid var(--ssl-line);
}
.ssl-share__btn{
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; padding:0; border-radius:999px; cursor:pointer;
  background:transparent; border:1px solid transparent; color:var(--ssl-muted);
  transition:color .15s ease, background .15s ease, border-color .15s ease;
}
.ssl-share__btn:hover{color:var(--ssl-petrol); background:var(--ssl-brass-soft); border-color:var(--ssl-line-2)}
.ssl-share__btn svg{width:18px; height:18px; display:block}
.ssl-share__wrap{position:relative}
.ssl-share__menu{
  position:absolute; left:calc(100% + 12px); top:50%; transform:translateY(-50%) scale(.96);
  min-width:170px; padding:8px; border-radius:12px;
  background:var(--ssl-surface); border:1px solid var(--ssl-line-2);
  box-shadow:0 22px 50px -22px var(--ssl-shadow);
  display:flex; flex-direction:column; gap:2px;
  opacity:0; visibility:hidden; transition:opacity .16s ease, transform .16s ease, visibility .16s;
}
.ssl-share.is-open .ssl-share__menu{opacity:1; visibility:visible; transform:translateY(-50%) scale(1)}
.ssl-share__menu a{
  padding:9px 12px; border-radius:8px; text-decoration:none;
  font-family:var(--ssl-sans); font-size:14.5px; font-weight:600; color:var(--ssl-ink);
}
.ssl-share__menu a:hover{background:var(--ssl-brass-soft); color:var(--ssl-petrol)}
.ssl-share__toast{
  position:absolute; left:calc(100% + 12px); bottom:12px; white-space:nowrap;
  font-family:var(--ssl-sans); font-size:12px; font-weight:700; letter-spacing:.04em;
  color:var(--ssl-paper); background:var(--ssl-ink); padding:7px 11px; border-radius:8px;
  opacity:0; transform:translateX(-6px); pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.ssl-share__toast.is-on{opacity:1; transform:none}
@media (max-width:1240px){.ssl-share{display:none}}
@media (prefers-reduced-motion:reduce){.ssl-share,.ssl-share__menu,.ssl-share__toast{transition:none}}

/* ---------- ssl-foot-v3: quieter footer type ---------- */
footer p.ssl-foot-blurb{font-size:13px; line-height:1.6; max-width:31ch}
footer .ssl-foot-mail{font-size:13px}
footer .wp-block-list li{font-size:14px}
footer .wp-block-heading{font-size:10px}
.ssl-foot-logo img{width:168px; max-width:168px}

/* ---------- ssl-foot-v4 ---------- */
footer .ssl-fine{font-size:10.5px; line-height:1.8; letter-spacing:.01em; color:#616C68}
@media (max-width:781px){footer .ssl-fine{font-size:10.5px}}

/* ---------- ssl-share-v2: horizontal caption ---------- */
.ssl-share{padding:14px 12px 16px; border-radius:26px; gap:8px}
.ssl-share__cap{
  writing-mode:horizontal-tb; font-size:8.5px; letter-spacing:.15em;
  color:var(--ssl-brass); margin:2px 0 4px; padding:0 0 10px;
  border-bottom:1px solid var(--ssl-line); width:100%; text-align:center;
}

/* ---------- ssl-align-v1: title lines up with the body text ---------- */
body.single .wp-site-blocks > main > *,
body.page:not(.home) .wp-site-blocks > main > *,
body.single .wp-site-blocks > main > .wp-block-group,
body.page:not(.home) .wp-site-blocks > main > .wp-block-group{
  max-width:880px; margin-left:auto; margin-right:auto;
}
body.single .wp-block-post-title,
body.page:not(.home) .wp-block-post-title{max-width:880px; margin-bottom:.35em}
body.single .wp-block-post-content,
body.page:not(.home) .wp-block-post-content{margin-top:1.6em}
@media (max-width:960px){
  body.single .wp-site-blocks > main > *,
  body.page:not(.home) .wp-site-blocks > main > *{max-width:100%}
}

/* ---------- ssl-share-v3: the rail reads clearly on paper ---------- */
.ssl-share{
  background:var(--ssl-surface);
  -webkit-backdrop-filter:none; backdrop-filter:none;
  border:1px solid var(--ssl-line-2);
  box-shadow:0 16px 36px -20px var(--ssl-shadow), 0 1px 2px rgba(20,32,31,.05);
}
.ssl-share__cap{color:var(--ssl-brass); opacity:1; font-weight:700}
.ssl-share__btn{color:var(--ssl-ink); opacity:.6}
.ssl-share__btn:hover{opacity:1; color:var(--ssl-petrol)}
.ssl-share__btn svg{stroke-width:1.8}

/* ---------- ssl-foot-v5: credit on one line ---------- */
footer .ssl-fine{
  font-size:10px; line-height:1.6; letter-spacing:.012em;
  max-width:none; padding-right:0; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis;
}
@media (max-width:900px){footer .ssl-fine{white-space:normal; font-size:10px}}

/* ================= ssl-kit-v1 ================= */

/* reading progress */
.ssl-progress{position:fixed; left:0; right:0; top:0; height:2px; z-index:300; pointer-events:none; background:transparent}
.ssl-progress i{display:block; height:100%; width:100%; transform:scaleX(0); transform-origin:0 50%;
  background:linear-gradient(90deg,var(--ssl-brass),var(--ssl-brass-lite)); will-change:transform}
.admin-bar .ssl-progress{top:32px}
@media (max-width:782px){.admin-bar .ssl-progress{top:46px}}

/* meta row extras */
.ssl-meta-dot{color:var(--ssl-line-2); margin:0 4px}
.ssl-meta-read,.ssl-meta-upd{font-family:var(--ssl-sans); font-size:12px; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; color:var(--ssl-muted)}
.ssl-meta-upd{color:var(--ssl-brass)}

/* breadcrumbs */
.ssl-crumbs{font-family:var(--ssl-sans); font-size:12px; font-weight:600; letter-spacing:.06em;
  text-transform:uppercase; color:var(--ssl-muted); margin:0 0 14px; display:flex; flex-wrap:wrap; align-items:center; gap:2px}
.ssl-crumbs a{color:var(--ssl-muted); text-decoration:none}
.ssl-crumbs a:hover{color:var(--ssl-petrol)}
.ssl-crumbs__s{opacity:.5; margin:0 7px}
.ssl-crumbs__c{color:var(--ssl-ink); max-width:36ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

/* table of contents */
.ssl-toc{
  margin:0 0 2.4em; padding:20px 24px 22px; border-radius:12px;
  background:var(--ssl-surface); border:1px solid var(--ssl-line); max-width:100%;
}
.ssl-toc__h{
  display:flex; align-items:center; justify-content:space-between; width:100%;
  background:none; border:0; padding:0; cursor:pointer; text-align:left;
  font-family:var(--ssl-sans); font-size:11px; font-weight:700; letter-spacing:.17em;
  text-transform:uppercase; color:var(--ssl-brass);
}
.ssl-toc__x{width:11px; height:11px; position:relative; flex:0 0 11px}
.ssl-toc__x::before,.ssl-toc__x::after{content:""; position:absolute; background:currentColor; transition:transform .2s ease}
.ssl-toc__x::before{left:0; top:4.5px; width:11px; height:2px}
.ssl-toc__x::after{left:4.5px; top:0; width:2px; height:11px; transform:scaleY(0)}
.ssl-toc.is-closed .ssl-toc__x::after{transform:scaleY(1)}
.ssl-toc__l{list-style:none; margin:16px 0 0; padding:0; display:grid; gap:9px}
.ssl-toc.is-closed .ssl-toc__l{display:none}
.ssl-toc__l li{margin:0; padding:0; max-width:none}
.ssl-toc__l li.is-sub{padding-left:20px}
.ssl-toc__l a{
  font-size:15.5px; line-height:1.45; color:var(--ssl-muted); text-decoration:none;
  border-left:2px solid transparent; padding-left:12px; display:block; transition:color .15s ease, border-color .15s ease;
}
.ssl-toc__l a:hover{color:var(--ssl-ink)}
.ssl-toc__l a.is-on{color:var(--ssl-ink); border-left-color:var(--ssl-brass); font-weight:600}

/* related posts */
.ssl-related{max-width:880px; margin:3.4em auto 0; padding-top:2.4em; border-top:1px solid var(--ssl-line)}
.ssl-related__h{font-size:clamp(22px,2.6vw,28px); margin:0 0 1.1em}
.ssl-related__grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:26px}
.ssl-related__card{display:block; text-decoration:none; color:inherit; group:card}
.ssl-related__card img{width:100%; height:150px; object-fit:cover; border-radius:10px; display:block; margin:0 0 12px;
  transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.ssl-related__card:hover img{transform:translateY(-3px)}
.ssl-related__t{font-family:var(--ssl-serif); font-weight:600; font-size:18.5px; line-height:1.25;
  letter-spacing:-.015em; color:var(--ssl-ink); display:block}
.ssl-related__card:hover .ssl-related__t{color:var(--ssl-petrol)}

/* print */
@media print{
  header.wp-block-template-part,.wp-site-blocks > header,
  footer.wp-block-template-part,.wp-site-blocks > footer,
  .ssl-share,.ssl-top,.ssl-progress,.ssl-toc,.ssl-related,.ssl-band,.ssl-consent,.ssl-search,
  #wpadminbar,.ssl-pop{display:none!important}
  body{background:#fff!important; color:#000!important; font-size:11.5pt}
  .wp-site-blocks > main > *,.wp-block-post-content,.entry-content{max-width:100%!important}
  a{color:#000!important; text-decoration:underline}
  .wp-block-post-content a[href^="http"]::after{content:" (" attr(href) ")"; font-size:9pt; color:#555}
  table{page-break-inside:auto} tr{page-break-inside:avoid}
  h1,h2,h3{page-break-after:avoid}
  figure,.ssl-data{page-break-inside:avoid}
  @page{margin:18mm 16mm}
}

/* ---------- ssl-band-v2: everything in the band starts on one line ---------- */
.ssl-band > *{margin-left:0; margin-right:auto}
.ssl-band h2,.ssl-band h3{max-width:20ch}
.ssl-band p{max-width:56ch}

/* ---------- ssl-pop-v1: exit-intent newsletter ---------- */
.ssl-pop[hidden]{display:none!important}
.ssl-pop{position:fixed; inset:0; z-index:500; opacity:0; transition:opacity .24s ease}
.ssl-pop.is-in{opacity:1}
.ssl-pop__scrim{position:absolute; inset:0; background:rgba(10,16,15,.58);
  -webkit-backdrop-filter:blur(5px); backdrop-filter:blur(5px)}
.ssl-pop__card{
  position:relative; margin:12vh auto 0; width:min(520px,calc(100vw - 32px));
  padding:38px 40px 32px; border-radius:18px; overflow:hidden;
  background:radial-gradient(120% 150% at 88% -10%, rgba(211,164,92,.20) 0%, rgba(211,164,92,0) 58%),
             linear-gradient(168deg,#175A62 0%,#14494F 46%,#0E363B 100%);
  border:1px solid rgba(250,248,244,.10);
  box-shadow:0 44px 90px -34px rgba(10,16,15,.7);
  transform:translateY(-12px) scale(.98); transition:transform .26s cubic-bezier(.2,.8,.2,1);
}
.ssl-pop.is-in .ssl-pop__card{transform:none}
.ssl-pop__card::before{content:""; position:absolute; left:0; right:0; top:0; height:2px;
  background:linear-gradient(90deg,var(--ssl-brass) 0%,var(--ssl-brass-lite) 30%,rgba(211,164,92,0) 74%)}
.ssl-pop__x{position:absolute; right:14px; top:14px; width:34px; height:34px; padding:0;
  display:inline-flex; align-items:center; justify-content:center;
  background:transparent; border:1px solid rgba(250,248,244,.18); border-radius:999px;
  color:#C6DAD9; cursor:pointer; transition:color .15s ease, border-color .15s ease}
.ssl-pop__x:hover{color:#fff; border-color:rgba(250,248,244,.5)}
.ssl-pop__x svg{width:15px; height:15px}
.ssl-pop__eyebrow{font-family:var(--ssl-sans); font-size:10.5px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ssl-brass-lite); margin:0 0 10px; max-width:none}
.ssl-pop__t{font-family:var(--ssl-serif); font-weight:600; font-size:clamp(26px,3.4vw,32px);
  line-height:1.12; letter-spacing:-.025em; color:#FAF8F4; margin:0 0 12px; max-width:none}
.ssl-pop__b{font-size:15.5px; line-height:1.6; color:#C6DAD9; margin:0 0 22px; max-width:none}
.ssl-pop__row{display:flex; align-items:center; gap:14px; flex-wrap:wrap}
.ssl-pop__cta{display:inline-block; background:var(--ssl-brass-lite); color:#17201F;
  font-family:var(--ssl-sans); font-weight:700; font-size:15px; text-decoration:none;
  padding:12px 22px; border-radius:6px; transition:background .15s ease}
.ssl-pop__cta:hover{background:#E7C68F; color:#17201F}
.ssl-pop__no{background:none; border:0; cursor:pointer; padding:8px 2px;
  font-family:var(--ssl-sans); font-size:14px; font-weight:600; color:#8FAEAD}
.ssl-pop__no:hover{color:#C6DAD9}
.ssl-pop__fine{font-size:12.5px; color:#7FA09F; margin:18px 0 0; max-width:none}
@media (max-width:600px){.ssl-pop__card{margin-top:auto; margin-bottom:0; padding:30px 24px 26px;
  position:absolute; left:8px; right:8px; bottom:8px; width:auto; border-radius:16px}
  .ssl-pop{display:flex}}
@media (prefers-reduced-motion:reduce){.ssl-pop,.ssl-pop__card{transition:none}}

/* ---------- ssl-foot-v6: credit centred ---------- */
footer .ssl-fine{text-align:center; margin-left:auto; margin-right:auto}

/* ---------- ssl-band-v3: force one left edge inside the band ---------- */
.wp-site-blocks .ssl-band > *,
body .ssl-band > .wp-block-heading,
body .ssl-band > .wp-block-paragraph,
body .ssl-band > p,
body .ssl-band > .wp-block-buttons{
  margin-left:0!important; margin-right:auto!important; text-align:left;
}
body .ssl-band > .wp-block-buttons{justify-content:flex-start}

/* ---------- ssl-author-v2 ---------- */
.ssl-author{
  max-width:880px; margin:3.4em auto 0; padding:28px 30px 26px;
  background:var(--ssl-brass-soft); border:1px solid var(--ssl-data-line); border-radius:14px;
}
.ssl-author__eyebrow{font-family:var(--ssl-sans); font-size:10.5px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ssl-brass); margin:0 0 18px; max-width:none}
.ssl-author__row{display:flex; gap:22px; align-items:flex-start}
.ssl-author__img{width:88px; height:88px; border-radius:999px; object-fit:cover; flex:0 0 88px;
  border:2px solid var(--ssl-surface); box-shadow:0 6px 18px -10px var(--ssl-shadow)}
.ssl-author__body{min-width:0}
.ssl-author__name{font-family:var(--ssl-serif); font-weight:600; font-size:21px; line-height:1.1;
  letter-spacing:-.02em; margin:0 0 4px; color:var(--ssl-ink); max-width:none}
.ssl-author__role{font-size:13px; font-weight:600; letter-spacing:.02em; color:var(--ssl-muted);
  margin:0 0 12px; max-width:none}
.ssl-author__bio{font-size:15.5px; line-height:1.6; color:var(--ssl-ink); margin:0 0 14px; max-width:62ch}
.ssl-author__links{font-size:14px; font-weight:600; margin:0; max-width:none; display:flex; flex-wrap:wrap; gap:0 4px}
.ssl-author__links a{color:var(--ssl-petrol); text-decoration:none; border-bottom:1px solid var(--ssl-line-2)}
.ssl-author__links a:hover{color:var(--ssl-brass); border-bottom-color:var(--ssl-brass)}
.ssl-author__sep{color:var(--ssl-line-2); margin:0 8px}
@media (max-width:600px){.ssl-author{padding:22px 20px}.ssl-author__row{flex-direction:column; gap:16px}
  .ssl-author__img{width:72px;height:72px;flex-basis:72px}}

/* ---------- comments ---------- */
.ssl-comments{max-width:880px; margin:3.4em auto 0; padding-top:2.4em; border-top:1px solid var(--ssl-line)}
.ssl-comments .wp-block-comments-title,.ssl-comments__h{font-size:clamp(22px,2.6vw,28px); margin:0 0 1.2em}
.ssl-comments .wp-block-comment-author-name{font-family:var(--ssl-sans); font-weight:700; font-size:15px; color:var(--ssl-ink)}
.ssl-comments .wp-block-comment-author-name a{text-decoration:none; color:inherit}
.ssl-comments .wp-block-comment-date{font-size:13px; color:var(--ssl-muted)}
.ssl-comments .wp-block-comment-date a{text-decoration:none; color:inherit}
.ssl-comments .wp-block-comment-content p{font-size:16.5px; line-height:1.65; max-width:64ch}
.ssl-comments .wp-block-comment-reply-link a{font-size:13px; font-weight:700; letter-spacing:.06em;
  text-transform:uppercase; color:var(--ssl-petrol); text-decoration:none}
.ssl-comments .wp-block-comment-template > li{margin-bottom:2em; padding-bottom:2em; border-bottom:1px solid var(--ssl-line); list-style:none}
.ssl-comments .wp-block-comment-template > li:last-child{border-bottom:0}
.ssl-comments .wp-block-post-comments-form{margin-top:2.6em}
.ssl-comments .comment-reply-title{font-family:var(--ssl-serif); font-size:22px; font-weight:600; letter-spacing:-.02em; margin:0 0 .3em}
.ssl-comments .comment-notes,.ssl-comments .comment-form-cookies-consent label{font-size:13.5px; color:var(--ssl-muted)}
.ssl-comments textarea,.ssl-comments input[type=text],.ssl-comments input[type=email],.ssl-comments input[type=url]{
  width:100%; box-sizing:border-box; font-family:var(--ssl-sans); font-size:16px; color:var(--ssl-ink);
  background:var(--ssl-surface); border:1px solid var(--ssl-line-2); border-radius:8px; padding:12px 14px;
}
.ssl-comments textarea:focus,.ssl-comments input:focus{outline:2px solid var(--ssl-petrol); outline-offset:1px; border-color:var(--ssl-petrol)}
.ssl-comments label{display:block; font-size:13.5px; font-weight:600; color:var(--ssl-muted); margin-bottom:6px}
.ssl-comments .form-submit input[type=submit]{
  background:var(--ssl-petrol); color:var(--ssl-paper); border:0; border-radius:6px;
  font-family:var(--ssl-sans); font-weight:700; font-size:15px; padding:12px 22px; cursor:pointer;
}
.ssl-comments .form-submit input[type=submit]:hover{background:var(--ssl-petrol-2)}

/* ---------- ssl-faq-v1 ---------- */
.ssl-faq{margin:3em 0 0; padding-top:2.2em; border-top:1px solid var(--ssl-line)}
.ssl-faq__h{font-size:clamp(22px,2.6vw,28px); margin:0 0 1.1em!important}
.ssl-faq details{border-bottom:1px solid var(--ssl-line); padding:0}
.ssl-faq details:first-of-type{border-top:1px solid var(--ssl-line)}
.ssl-faq summary{
  list-style:none; cursor:pointer; padding:20px 44px 20px 0; position:relative;
  font-family:var(--ssl-serif); font-weight:600; font-size:19.5px; line-height:1.35;
  letter-spacing:-.015em; color:var(--ssl-ink);
}
.ssl-faq summary::-webkit-details-marker{display:none}
.ssl-faq summary::after{
  content:""; position:absolute; right:6px; top:50%; width:12px; height:12px; margin-top:-6px;
  border-right:2px solid var(--ssl-brass); border-bottom:2px solid var(--ssl-brass);
  transform:rotate(45deg) translateY(-3px); transform-origin:center; transition:transform .2s ease;
}
.ssl-faq details[open] summary::after{transform:rotate(225deg) translateY(-3px)}
.ssl-faq summary:hover{color:var(--ssl-petrol)}
.ssl-faq__a{padding:0 0 22px; margin:0}
.ssl-faq__a p{margin:0 0 .9em; font-size:17px; line-height:1.65; color:var(--ssl-muted); max-width:66ch}
.ssl-faq__a p:last-child{margin-bottom:0}
.ssl-faq__a strong{color:var(--ssl-ink)}

/* ---------- ssl-band-v4: two columns, with a real email box ---------- */
.ssl-band{
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  gap:44px; align-items:center; padding:46px 48px 44px;
  max-width:880px; margin-inline:auto;
}
.ssl-band__l,.ssl-band__r{position:relative; z-index:1; min-width:0}
.ssl-band__eyebrow{color:var(--ssl-brass-lite)!important; margin:0 0 12px!important; max-width:none}
.ssl-band__h{font-family:var(--ssl-serif); font-weight:600; font-size:clamp(27px,3.2vw,34px);
  line-height:1.1; letter-spacing:-.028em; color:#FAF8F4; margin:0 0 14px; max-width:14ch}
.ssl-band__p{font-size:15.5px; line-height:1.62; color:#BFD6D5; margin:0; max-width:42ch}

.ssl-mini{
  background:rgba(250,248,244,.055); border:1px solid rgba(250,248,244,.14);
  border-radius:14px; padding:22px 22px 20px;
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
.ssl-mini__label{display:block; font-family:var(--ssl-sans); font-size:10.5px; font-weight:700;
  letter-spacing:.17em; text-transform:uppercase; color:var(--ssl-brass-lite); margin:0 0 10px}
.ssl-mini__row{display:flex; flex-direction:column; gap:10px}
.ssl-mini__input{
  width:100%; box-sizing:border-box; font-family:var(--ssl-sans); font-size:15.5px;
  color:#FAF8F4; background:rgba(10,22,24,.42); border:1px solid rgba(250,248,244,.2);
  border-radius:8px; padding:13px 15px; transition:border-color .15s ease, background .15s ease;
}
.ssl-mini__input::placeholder{color:#7FA09F}
.ssl-mini__input:focus{outline:none; border-color:var(--ssl-brass-lite); background:rgba(10,22,24,.6)}
.ssl-mini__btn{
  width:100%; font-family:var(--ssl-sans); font-size:15px; font-weight:700; cursor:pointer;
  color:#17201F; background:var(--ssl-brass-lite); border:0; border-radius:8px; padding:13px 18px;
  transition:background .15s ease, transform .15s ease;
}
.ssl-mini__btn:hover{background:#E7C68F; transform:translateY(-1px)}
.ssl-mini__fine{font-size:11.5px; line-height:1.55; color:#7FA09F; margin:12px 0 0; max-width:none}
@media (max-width:820px){
  .ssl-band{grid-template-columns:1fr; gap:26px; padding:34px 26px 30px}
  .ssl-band__h{max-width:none} .ssl-band__p{max-width:none}
}

/* ---------- ssl-band-v5 ---------- */
.wp-site-blocks .ssl-band{max-width:1080px; margin-inline:auto}
body.single .wp-site-blocks .ssl-band,
body.page:not(.home) .wp-site-blocks .ssl-band{max-width:880px}

/* ---------- ssl-comments-v2: collapsed by default ---------- */
.ssl-comments .wp-block-comments[hidden]{display:none!important}
.ssl-comments__toggle{
  display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%;
  background:var(--ssl-surface); border:1px solid var(--ssl-line-2); border-radius:12px;
  padding:16px 20px; cursor:pointer; text-align:left;
  transition:border-color .15s ease, background .15s ease;
}
.ssl-comments__toggle:hover{border-color:var(--ssl-petrol)}
.ssl-comments__tl{font-family:var(--ssl-sans); font-size:14px; font-weight:700;
  letter-spacing:.1em; text-transform:uppercase; color:var(--ssl-ink)}
.ssl-comments__tx{position:relative; width:12px; height:12px; flex:0 0 12px; color:var(--ssl-brass)}
.ssl-comments__tx::before,.ssl-comments__tx::after{content:""; position:absolute; background:currentColor; transition:transform .2s ease}
.ssl-comments__tx::before{left:0; top:5px; width:12px; height:2px}
.ssl-comments__tx::after{left:5px; top:0; width:2px; height:12px}
.ssl-comments:not(.is-collapsed) .ssl-comments__tx::after{transform:scaleY(0)}
.ssl-comments .wp-block-comments{margin-top:26px}
.ssl-comments .wp-block-comments-title{display:none}

/* ---------- ssl-share-v4: menu rows with monogram tiles ---------- */
.ssl-share__menu{min-width:206px; max-height:min(70vh,520px); overflow-y:auto; padding:8px}
.ssl-share__menu a,.ssl-share__native{
  display:flex; align-items:center; gap:12px; width:100%;
  padding:8px 10px; border:0; border-radius:9px; background:transparent; cursor:pointer;
  text-decoration:none; text-align:left;
  font-family:var(--ssl-sans); font-size:14.5px; font-weight:600; color:var(--ssl-ink);
}
.ssl-share__menu a:hover,.ssl-share__native:hover{background:var(--ssl-brass-soft); color:var(--ssl-petrol)}
.ssl-share__m{
  flex:0 0 28px; width:28px; height:28px; border-radius:8px;
  display:inline-flex; align-items:center; justify-content:center;
  font-family:var(--ssl-serif); font-weight:600; font-size:14px; line-height:1;
  color:var(--ssl-petrol); background:var(--ssl-brass-soft); border:1px solid var(--ssl-data-line);
}
.ssl-share__menu a:hover .ssl-share__m,.ssl-share__native:hover .ssl-share__m{
  color:var(--ssl-brass); border-color:var(--ssl-brass);
}
.ssl-share__n{min-width:0}


/* ---------- ssl-side-v2: the custom rail lives in the sidebar ---------- */
.ssl-share{display:none}
@media (min-width:1200px){
  body.single .ssl-side .ssl-share{
    display:flex; position:static; transform:none; opacity:1; pointer-events:auto;
    flex-direction:row; flex-wrap:wrap; gap:6px; align-items:center; justify-content:flex-start;
    width:auto; padding:0; margin:0; background:transparent; border:0; box-shadow:none;
  }
  body.single .ssl-side .ssl-share__cap{display:none}
  body.single .ssl-side .ssl-share__btn{
    width:38px; height:38px; border-radius:10px; opacity:1; color:var(--ssl-ink);
    background:var(--ssl-surface); border:1px solid var(--ssl-line-2);
  }
  body.single .ssl-side .ssl-share__btn:hover{color:var(--ssl-petrol); border-color:var(--ssl-petrol); background:var(--ssl-brass-soft)}
  body.single .ssl-side .ssl-share__wrap{position:relative}
  body.single .ssl-side .ssl-share__menu{
    left:0; top:calc(100% + 10px); transform:translateY(-4px) scale(.98); min-width:196px; max-height:340px;
  }
  body.single .ssl-side .ssl-share.is-open .ssl-share__menu{transform:none}
  body.single .ssl-side .ssl-share__toast{left:0; bottom:auto; top:calc(100% + 12px); transform:translateY(-4px)}
  body.single .ssl-side .ssl-share__toast.is-on{transform:none}
}

/* ---------- ssl-grid-v1: article shifted right, sticky left sidebar ---------- */
.ssl-side{display:none}
@media (min-width:1200px){
  body.single .wp-site-blocks > main{
    display:grid!important;
    grid-template-columns:262px minmax(0,820px)!important;
    column-gap:60px; justify-content:center; align-items:start;
  }
  body.single .wp-site-blocks > main > *{grid-column:2; max-width:820px; margin-left:0!important; margin-right:0!important}
  body.single .wp-site-blocks > main > .ssl-side{
    display:block; grid-column:1; grid-row:1 / span 40;
    position:sticky; top:104px; align-self:start; max-width:262px; margin:0!important;
  }
  body.single .ssl-related,body.single .ssl-author,body.single .ssl-comments,
  body.single .wp-site-blocks .ssl-band{max-width:820px}
  body.single .a2a_floating_style{display:none!important}
  body.single .ssl-side .ssl-toc{
    margin:22px 0 0; padding:20px 0 0; background:transparent; border:0; border-top:1px solid var(--ssl-line);
  }
  body.single .ssl-side .ssl-toc__x{display:none}
  body.single .ssl-side .ssl-toc__h{cursor:default}
  body.single .ssl-side .ssl-toc__l{max-height:calc(100vh - 300px); overflow-y:auto; padding-right:6px}
  body.single .ssl-side .ssl-toc__l a{font-size:14.5px; line-height:1.4}
}

/* ---------- ssl-share-colour: each tile in its platform's colour ---------- */
.ssl-share__m{
  color:#fff; border:1px solid transparent; font-family:var(--ssl-sans); font-weight:700; font-size:13px;
  box-shadow:0 1px 2px rgba(20,32,31,.14);
}
.ssl-share__menu a:nth-of-type(1) .ssl-share__m{background:#1877F2; border-color:#1877F2; color:#fff}
.ssl-share__menu a:nth-of-type(2) .ssl-share__m{background:#E60023; border-color:#E60023; color:#fff}
.ssl-share__menu a:nth-of-type(3) .ssl-share__m{background:#111111; border-color:#111111; color:#fff}
.ssl-share__menu a:nth-of-type(4) .ssl-share__m{background:#0A66C2; border-color:#0A66C2; color:#fff}
.ssl-share__menu a:nth-of-type(5) .ssl-share__m{background:#25D366; border-color:#25D366; color:#fff}
.ssl-share__menu a:nth-of-type(6) .ssl-share__m{background:#229ED9; border-color:#229ED9; color:#fff}
.ssl-share__menu a:nth-of-type(7) .ssl-share__m{background:#FF4500; border-color:#FF4500; color:#fff}
.ssl-share__menu a:nth-of-type(8) .ssl-share__m{background:#111111; border-color:#111111; color:#fff}
.ssl-share__menu a:nth-of-type(9) .ssl-share__m{background:#0285FF; border-color:#0285FF; color:#fff}
.ssl-share__menu a:nth-of-type(10) .ssl-share__m{background:#32506D; border-color:#32506D; color:#fff}
.ssl-share__native .ssl-share__m{background:var(--ssl-petrol); border-color:var(--ssl-petrol); color:#fff}
.ssl-share__menu a:hover .ssl-share__m,.ssl-share__native:hover .ssl-share__m{color:#fff; filter:brightness(1.12)}
.ssl-share__menu a,.ssl-share__native{color:var(--ssl-ink)}
.ssl-share__menu a:hover,.ssl-share__native:hover{background:var(--ssl-brass-soft); color:var(--ssl-ink)}

/* ---------- ssl-saved-v1: calculations kept in the browser ---------- */
.ssl-saved{
  background:var(--ssl-surface); border:1px solid var(--ssl-line); border-radius:14px;
  padding:28px 30px 26px; margin:2.6em 0 0;
}
.ssl-saved__cap{
  font-family:var(--ssl-sans); font-size:11px; font-weight:700; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ssl-brass); margin:0 0 8px; max-width:none;
}
.ssl-saved__sub{font-size:14.5px; line-height:1.55; color:var(--ssl-muted); margin:0 0 18px; max-width:62ch}
.ssl-saved__restored{
  font-size:13.5px; font-weight:600; color:var(--ssl-petrol); margin:0 0 16px; max-width:none;
  background:var(--ssl-brass-soft); border-radius:8px; padding:9px 13px; display:inline-block;
}
.ssl-saved__restored[hidden]{display:none}
.ssl-saved__row{display:flex; gap:10px; flex-wrap:wrap; margin:0 0 18px}
.ssl-saved__name{
  flex:1 1 260px; min-width:0; box-sizing:border-box;
  font-family:var(--ssl-sans); font-size:15.5px; color:var(--ssl-ink);
  background:var(--ssl-paper); border:1px solid var(--ssl-line-2); border-radius:8px; padding:12px 14px;
}
.ssl-saved__name:focus{outline:2px solid var(--ssl-petrol); outline-offset:1px; border-color:var(--ssl-petrol)}
.ssl-saved__btn{
  flex:0 0 auto; font-family:var(--ssl-sans); font-size:15px; font-weight:700; cursor:pointer;
  background:var(--ssl-petrol); color:var(--ssl-paper); border:0; border-radius:8px; padding:12px 20px;
  transition:background .15s ease;
}
.ssl-saved__btn:hover{background:var(--ssl-petrol-2)}
.ssl-saved__list{list-style:none; margin:0; padding:0; display:grid; gap:8px}
.ssl-saved__i{display:flex; align-items:stretch; gap:8px; margin:0; padding:0; max-width:none}
.ssl-saved__load{
  flex:1 1 auto; text-align:left; cursor:pointer; min-width:0;
  background:var(--ssl-paper); border:1px solid var(--ssl-line); border-radius:10px;
  padding:12px 15px; display:flex; flex-direction:column; gap:3px;
  transition:border-color .15s ease, background .15s ease;
}
.ssl-saved__load:hover{border-color:var(--ssl-petrol); background:var(--ssl-brass-soft)}
.ssl-saved__t{font-family:var(--ssl-sans); font-size:15.5px; font-weight:700; color:var(--ssl-ink)}
.ssl-saved__m{font-family:var(--ssl-sans); font-size:12.5px; color:var(--ssl-muted); font-variant-numeric:tabular-nums}
.ssl-saved__x{
  flex:0 0 40px; width:40px; cursor:pointer; font-size:19px; line-height:1; color:var(--ssl-muted);
  background:transparent; border:1px solid var(--ssl-line); border-radius:10px;
  transition:color .15s ease, border-color .15s ease;
}
.ssl-saved__x:hover{color:#B4442F; border-color:#B4442F}
.ssl-saved__empty{font-size:14.5px; color:var(--ssl-muted); margin:0; max-width:none}
.ssl-saved__empty[hidden]{display:none}
.ssl-saved__clear{
  margin-top:16px; background:none; border:0; padding:6px 0; cursor:pointer;
  font-family:var(--ssl-sans); font-size:13px; font-weight:600; color:var(--ssl-muted);
  border-bottom:1px solid var(--ssl-line-2);
}
.ssl-saved__clear:hover{color:#B4442F; border-bottom-color:#B4442F}
.ssl-saved__clear[hidden]{display:none}
@media (max-width:600px){.ssl-saved{padding:22px 20px} .ssl-saved__btn{width:100%}}
@media print{.ssl-saved{display:none!important}}

/* ssl-hdr-v1 ----------------------------------------------------- */
body.single .ssl-byline{display:flex;align-items:center;flex-wrap:wrap;gap:0 10px;margin:0 0 12px!important;font-family:var(--ssl-sans);font-size:.86rem;line-height:1.45}
body.single .ssl-byline p{margin:0;font-size:inherit;line-height:inherit;color:var(--ssl-muted)}
body.single .ssl-byline__by{font-weight:600;color:var(--ssl-ink)}
body.single .ssl-byline__by a{color:var(--ssl-brass);text-decoration:none;border-bottom:1px solid transparent}
body.single .ssl-byline__by a:hover{border-bottom-color:currentColor}
body.single .ssl-byline__sep{color:var(--ssl-line-2)}
body.single .ssl-byline .wp-block-post-date{margin:0;font-size:.78rem;color:var(--ssl-muted);letter-spacing:.09em;text-transform:uppercase;font-weight:600}
body.single .ssl-byline__cmt{color:var(--ssl-muted);text-decoration:none;border-bottom:1px solid var(--ssl-line-2)}
body.single .ssl-byline__cmt:hover{color:var(--ssl-brass);border-bottom-color:currentColor}
body.single .ssl-byline .ssl-meta-dot,body.single .ssl-byline .ssl-meta-read{display:none}
body.single .wp-block-post-title{margin-top:0!important;margin-bottom:0!important}
body.single .ssl-strip{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;margin:22px 0 0!important;padding:12px 18px;background:var(--ssl-surface);border:1px solid var(--ssl-line);border-radius:14px;font-family:var(--ssl-sans);font-size:.85rem;font-weight:600;color:var(--ssl-muted);box-shadow:0 1px 2px rgba(23,32,31,.04)}
.ssl-strip__i{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;line-height:1}
.ssl-strip__share{cursor:pointer;border-radius:8px;transition:color .18s ease}
.ssl-strip__share:hover{color:var(--ssl-brass)}
.ssl-strip__ico{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:var(--ssl-brass);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ssl-strip__catwrap{display:flex;align-items:center;gap:7px;margin:0}
.ssl-strip .wp-block-post-terms{margin:0;font-size:inherit;line-height:1}
.ssl-strip .wp-block-post-terms a{color:var(--ssl-muted);text-decoration:none;border-bottom:1px solid var(--ssl-line-2)}
.ssl-strip .wp-block-post-terms a:hover{color:var(--ssl-brass);border-bottom-color:currentColor}
.ssl-strip [data-slot="react"]{display:inline-flex}
.ssl-strip .ssl-react{gap:18px}
@media(max-width:700px){body.single .ssl-strip{gap:9px 16px;padding:11px 14px;font-size:.8rem}}
@media print{.ssl-strip__share,.ssl-byline__cmt{display:none}}

/* ssl-hdr-v2 ---------------------------------------------------- */
.ssl-strip .ssl-crumbs{display:none!important}
.ssl-strip .ssl-react__cmt{display:none!important}
.ssl-strip .ssl-react{gap:0}
body.single .ssl-byline__cmt{white-space:nowrap}

/* ssl-strip-share-v1 -------------------------------------------- */
.ssl-strip__sharewrap{position:relative;display:inline-flex}
.ssl-strip__sharewrap .ssl-share__menu{position:absolute!important;top:calc(100% + 14px)!important;right:0!important;left:auto!important;bottom:auto!important;z-index:70;transform:none!important}
.ssl-strip__sharewrap.is-here .ssl-strip__share{color:var(--ssl-brass)}
@media(max-width:700px){.ssl-strip__sharewrap .ssl-share__menu{right:auto!important;left:0!important}}

/* ssl-strip-share-v2 -------------------------------------------- */
.ssl-strip__sharewrap.is-here .ssl-share__menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}

/* ssl-social-v1 ------------------------------------------------- */
.ssl-foot-blurb{font-size:13px!important;line-height:1.65!important;margin:14px 0 16px!important;max-width:30ch}
.ssl-foot-mail a{font-size:13px!important}
.ssl-social{margin:18px 0 0}
.ssl-social.is-pending{display:none}
.ssl-social__t{margin:0 0 10px!important;font-family:var(--ssl-sans);font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ssl-brass-lite)}
.ssl-social__row{display:flex;align-items:center;gap:9px;flex-wrap:nowrap}
.ssl-social__i{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;border:1px solid rgba(255,255,255,.16);color:#B9C2BE;text-decoration:none;transition:color .18s ease,border-color .18s ease,background .18s ease}
.ssl-social__i:hover{color:#fff;border-color:var(--ssl-brass-lite);background:rgba(211,164,92,.14)}
.ssl-social__i svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.ssl-social{margin-top:14px}}
@media print{.ssl-social{display:none}}

/* ssl-hometop-v1 ------------------------------------------------ */
body.home .wp-site-blocks > main{margin-top:0!important}
body.home .wp-site-blocks > main > .wp-block-group:first-child{padding-top:52px!important}
@media(max-width:781px){body.home .wp-site-blocks > main > .wp-block-group:first-child{padding-top:32px!important}}

/* ssl-mobile-v1 ================================================== */
@media (max-width:781px){
  .wp-site-blocks{overflow-x:clip}
  /* --- header --- */
  .wp-site-blocks > header .wp-block-group.has-global-padding{padding-left:16px!important;padding-right:16px!important;padding-top:10px!important;padding-bottom:10px!important}
  .wp-site-blocks > header .is-content-justification-space-between{gap:8px!important;flex-wrap:nowrap!important}
  .wp-site-blocks > header .is-content-justification-right{gap:6px!important;flex-wrap:nowrap!important}
  .wp-block-site-logo,.wp-block-site-logo a{max-width:118px!important}
  .wp-block-site-logo img{width:118px!important;max-width:118px!important;height:auto!important}
  .ssl-icons{gap:4px!important}
  .ssl-btn-label{display:none!important}
  .ssl-icon-btn,.ssl-search-open-btn,.ssl-theme-toggle{width:36px!important;height:36px!important;min-width:36px!important;padding:0!important}
  .ssl-cta .wp-block-button__link{font-size:12px!important;padding:9px 12px!important;white-space:nowrap!important;letter-spacing:.01em!important}
  .wp-block-navigation__responsive-container-open{margin:0 2px!important}
  /* --- content --- */
  .wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .wp-block-table table{min-width:520px}
  body.single .wp-block-post-title{font-size:clamp(1.7rem,7.2vw,2.3rem)!important;line-height:1.16!important}
  body.single .ssl-byline{font-size:.8rem!important;gap:0 8px!important}
  body.single .ssl-byline .wp-block-post-date{font-size:.72rem!important}
  /* --- footer, compact --- */
  .wp-site-blocks > footer .wp-block-group.has-global-padding{padding:34px 18px 26px!important}
  .ssl-foot-top{gap:22px 16px!important}
  .ssl-foot-top > .wp-block-column{flex-basis:100%!important}
  .ssl-foot-top > .wp-block-column:not(:first-child){flex-basis:calc(50% - 8px)!important}
  .ssl-foot-logo img{width:132px!important;max-width:132px!important}
  .ssl-foot-blurb{font-size:12.5px!important;margin:10px 0 10px!important;max-width:38ch}
  .ssl-foot-mail a{font-size:12.5px!important}
  .ssl-social{margin-top:12px!important}
  .ssl-social__i{width:28px!important;height:28px!important;border-radius:8px!important}
  .ssl-social__i svg{width:14px!important;height:14px!important}
  .wp-site-blocks > footer h3{font-size:11px!important;letter-spacing:.12em!important;margin-bottom:8px!important}
  .wp-site-blocks > footer .wp-block-list{margin:0!important}
  .wp-site-blocks > footer .wp-block-list li{margin:0 0 6px!important;font-size:12.5px!important;line-height:1.45!important}
  .ssl-fine{font-size:11px!important;padding-top:16px!important;margin-top:22px!important;line-height:1.6!important}
}
@media (max-width:420px){
  .ssl-cta .wp-block-button__link{font-size:11.5px!important;padding:8px 10px!important}
}

/* ssl-mobile-v2 ------------------------------------------------- */
@media (max-width:781px){
  .ssl-toc{margin:22px 0!important}
  .ssl-toc__h{width:100%}
  .ssl-band{padding:22px 18px!important;gap:16px!important}
  .ssl-react--big{padding:15px 16px!important;margin:32px 0 4px!important}
  .ssl-author{padding:20px 18px!important}
  .ssl-crumbs{font-size:11px!important}
  #ssl-search .ssl-search__box{width:calc(100vw - 28px)!important;max-width:none!important}
}

/* ssl-path-v2 --------------------------------------------------- */
.wp-block-column:has(> .ssl-path),.wp-block-column:has(> .ssl-path) > .ssl-path{display:flex}
.wp-block-column:has(> .ssl-path){flex-direction:column}
.ssl-path{flex-direction:column;height:100%;border-radius:18px;border:1px solid transparent;padding:30px 30px 28px!important;box-shadow:none;transition:transform .22s ease,box-shadow .22s ease}
.ssl-path:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(23,32,31,.10)}
.ssl-path h3{font-size:1.3rem;line-height:1.24;margin:0 0 12px!important;letter-spacing:-.012em}
.ssl-path p{font-size:.98rem;line-height:1.62;color:var(--ssl-muted);margin:0 0 20px!important}
.ssl-path p:last-child{margin:auto 0 0!important}
.ssl-path p:last-child a{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:11px;font-family:var(--ssl-sans);font-size:.92rem;font-weight:700;color:#FFF9F0!important;text-decoration:none!important;border:0!important;box-shadow:0 1px 0 rgba(23,32,31,.10);transition:filter .18s ease,transform .18s ease}
.ssl-path p:last-child a:hover{filter:brightness(1.09);transform:translateY(-1px)}
.ssl-path--1{background:#F8F0E1;border-color:#EBDDC1}
.ssl-path--1 h3{color:#5E4413}
.ssl-path--1 p:last-child a{background:#9C6F26}
.ssl-path--2{background:#E8F1F0;border-color:#CFE0DE}
.ssl-path--2 h3{color:#0E363B}
.ssl-path--2 p:last-child a{background:#14494F}
.ssl-path--3{background:#F9EDE6;border-color:#EDD8CB}
.ssl-path--3 h3{color:#7C3F26}
.ssl-path--3 p:last-child a{background:#A15535}
[data-theme="dark"] .ssl-path--1{background:rgba(211,164,92,.10);border-color:rgba(211,164,92,.26)}
[data-theme="dark"] .ssl-path--1 h3{color:#E6C58B}
[data-theme="dark"] .ssl-path--2{background:rgba(93,178,181,.10);border-color:rgba(93,178,181,.26)}
[data-theme="dark"] .ssl-path--2 h3{color:#8FCFD2}
[data-theme="dark"] .ssl-path--3{background:rgba(214,133,98,.10);border-color:rgba(214,133,98,.26)}
[data-theme="dark"] .ssl-path--3 h3{color:#E8A183}
[data-theme="dark"] .ssl-path:hover{box-shadow:0 14px 34px rgba(0,0,0,.35)}
@media(max-width:781px){.ssl-path{padding:24px 22px 22px!important;border-radius:15px}.ssl-path h3{font-size:1.18rem}.ssl-path p{font-size:.94rem;margin-bottom:16px!important}.ssl-path p:last-child a{padding:11px 17px;font-size:.88rem}}

/* ssl-related-v2 ------------------------------------------------ */
.ssl-related__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important;align-items:start}
.ssl-related__card{display:flex;flex-direction:column;gap:12px;text-decoration:none!important;min-width:0}
.ssl-related__card img,.ssl-related__ph{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;border:1px solid var(--ssl-line);background:var(--ssl-brass-soft)}
.ssl-related__card:hover img{border-color:var(--ssl-brass-lite)}
.ssl-related__t{font-family:var(--ssl-serif);font-size:1.02rem;line-height:1.32;color:var(--ssl-ink);letter-spacing:-.01em}
.ssl-related__card:hover .ssl-related__t{color:var(--ssl-brass)}
@media(max-width:900px){.ssl-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}}
@media(max-width:600px){.ssl-related__grid{grid-template-columns:1fr!important;gap:18px!important}.ssl-related__t{font-size:1rem}}

/* ssl-navmenu-v1 ------------------------------------------------ */
/* the header's backdrop-filter was making it the containing block for the
   fixed overlay, so the menu was trapped inside a 44px box. */
.wp-site-blocks > header:has(.is-menu-open),
.wp-site-blocks > header:has(.has-modal-open){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;transform:none!important;will-change:auto!important}
.wp-block-navigation__responsive-container.is-menu-open{position:fixed!important;inset:0!important;min-height:100vh!important;min-height:100dvh!important;max-height:none!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;z-index:100000!important;background:var(--ssl-paper)!important;padding:22px 26px 40px!important;display:flex!important;flex-direction:column!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{display:flex!important;flex-direction:column!important;width:100%;margin-top:52px}
.wp-block-navigation__responsive-container-close{position:absolute!important;top:18px;right:20px;width:42px!important;height:42px!important;display:flex;align-items:center;justify-content:center;border:1px solid var(--ssl-line-2);border-radius:12px;background:var(--ssl-surface);color:var(--ssl-ink)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{display:flex!important;flex-direction:column!important;gap:0!important;align-items:stretch!important;width:100%}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid var(--ssl-line)}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{border-bottom:0}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block;width:100%;padding:17px 2px!important;font-family:var(--ssl-serif);font-size:1.28rem!important;line-height:1.3;font-weight:600;letter-spacing:-.012em;color:var(--ssl-ink)!important;text-decoration:none!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover{color:var(--ssl-brass)!important}
.ssl-navcta{margin-top:auto;padding-top:28px}
.ssl-navcta a{display:block;text-align:center;padding:15px 20px;border-radius:12px;background:var(--ssl-petrol);color:#FFF9F0!important;font-family:var(--ssl-sans);font-size:1rem;font-weight:700;text-decoration:none!important}
.ssl-navnote{margin-top:16px;font-family:var(--ssl-sans);font-size:.82rem;color:var(--ssl-muted);text-align:center}
.ssl-navnote a{color:var(--ssl-brass);text-decoration:none;border-bottom:1px solid currentColor}

/* ssl-sub-v1 ---------------------------------------------------- */
.ssl-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.ssl-mini__msg{margin:10px 0 0!important;font-family:var(--ssl-sans);font-size:.88rem;line-height:1.5;color:var(--ssl-muted)}
.ssl-mini__msg[data-ok="1"]{color:var(--ssl-petrol);font-weight:600}
[data-theme="dark"] .ssl-mini__msg[data-ok="1"]{color:#8FCFD2}
.ssl-mini__msg[data-ok="0"]{color:#A1442E}
[data-theme="dark"] .ssl-mini__msg[data-ok="0"]{color:#E8A183}
.ssl-pop__row .ssl-mini{width:100%}
.ssl-pop__row{flex-wrap:wrap}
@media(max-width:600px){.ssl-mini__row{flex-direction:column;align-items:stretch;gap:10px}.ssl-mini__btn{width:100%}}

/* ssl-mobile-v3 ------------------------------------------------- */
@media (max-width:781px){
  /* back to top: same design as desktop, just placed for a thumb */
  body .ssl-top{display:flex!important;right:16px!important;bottom:calc(16px + env(safe-area-inset-bottom,0px))!important}
  /* bigger logos */
  .wp-block-site-logo,.wp-block-site-logo a{max-width:146px!important}
  .wp-block-site-logo img{width:146px!important;max-width:146px!important}
  .ssl-foot-logo img{width:168px!important;max-width:168px!important}
  /* less air above the footer logo */
  .wp-site-blocks > footer .wp-block-group.has-global-padding{padding-top:24px!important}
  .ssl-foot-logo{margin:0 0 4px!important}
  .ssl-foot-top{gap:18px 16px!important}
  /* menu: everything on one screen, clear of the browser bar */
  .wp-block-navigation__responsive-container.is-menu-open{padding:18px 24px calc(20px + env(safe-area-inset-bottom,0px))!important}
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{margin-top:40px}
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:13px 2px!important;font-size:1.2rem!important}
  .ssl-navcta{padding-top:18px}
  .ssl-navcta a{padding:14px 20px}
  .ssl-navnote{margin-top:12px;padding-bottom:2px}
}
@media (max-width:420px){
  .wp-block-site-logo img{width:132px!important;max-width:132px!important}
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:11px 2px!important;font-size:1.14rem!important}
}
@media (max-width:781px) and (max-height:700px){
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog{margin-top:30px}
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:10px 2px!important;font-size:1.08rem!important}
}

/* ssl-mobile-v4 ------------------------------------------------- */
@media (max-width:781px){
  body.single .wp-site-blocks > main,
  body.page:not(.home) .wp-site-blocks > main,
  body.archive .wp-site-blocks > main,
  body.blog .wp-site-blocks > main{margin-top:0!important;padding-top:26px!important}
  body.single .ssl-crumbs{margin-top:0!important}
}

/* ssl-lb-v1: full screen image viewer ---------------------------- */
img[data-ssl-lb]{cursor:zoom-in;transition:filter .2s ease,transform .25s ease}
img[data-ssl-lb]:hover{filter:brightness(1.03)}
img[data-ssl-lb]:focus-visible{outline:2px solid var(--ssl-brass);outline-offset:3px}
html.ssl-lb-on{overflow:hidden}
.ssl-lb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .22s ease}
.ssl-lb[data-in="1"]{opacity:1}
.ssl-lb[hidden]{display:none!important}
.ssl-lb__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(8,12,11,.96)}
.ssl-lb__stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:64px 20px 92px;overflow:hidden;touch-action:none}
.ssl-lb__img{max-width:100%;max-height:100%;width:auto;height:auto;display:block;border-radius:8px;box-shadow:0 24px 70px rgba(0,0,0,.55);transform-origin:center center;transition:transform .22s cubic-bezier(.2,.8,.2,1);user-select:none;-webkit-user-drag:none;cursor:zoom-in}
.ssl-lb[data-zoomed="1"] .ssl-lb__img{cursor:grab}
.ssl-lb[data-zoomed="1"] .ssl-lb__img:active{cursor:grabbing}
.ssl-lb__img.is-loading{opacity:.25}
.ssl-lb__x,.ssl-lb__nav,.ssl-lb__zoom{position:absolute;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#F4F1EA;border-radius:12px;cursor:pointer;padding:0;transition:background .18s ease,border-color .18s ease,color .18s ease}
.ssl-lb__x:hover,.ssl-lb__nav:hover,.ssl-lb__zoom:hover{background:rgba(255,255,255,.16);border-color:var(--ssl-brass-lite);color:#fff}
.ssl-lb__x svg,.ssl-lb__nav svg,.ssl-lb__zoom svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ssl-lb__x{top:18px;right:18px;width:46px;height:46px;z-index:3}
.ssl-lb__nav{top:50%;transform:translateY(-50%);width:48px;height:48px;z-index:3}
.ssl-lb__prev{left:18px}.ssl-lb__next{right:18px}
.ssl-lb:not([data-multi="1"]) .ssl-lb__nav{display:none}
.ssl-lb__foot{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 22px calc(18px + env(safe-area-inset-bottom,0px))}
.ssl-lb__cap{margin:0;font-family:var(--ssl-sans);font-size:.9rem;line-height:1.5;color:rgba(244,241,234,.82);max-width:70ch}
.ssl-lb__cap[hidden]{display:none}
.ssl-lb__tools{display:flex;align-items:center;gap:12px;margin-left:auto;flex:0 0 auto}
.ssl-lb__count{font-family:var(--ssl-sans);font-size:.82rem;font-weight:700;letter-spacing:.1em;color:rgba(244,241,234,.7);font-variant-numeric:tabular-nums}
.ssl-lb__zoom{position:relative;width:44px;height:44px}
@media (max-width:781px){
  .ssl-lb__stage{padding:56px 10px 96px}
  .ssl-lb__x{top:12px;right:12px;width:42px;height:42px}
  .ssl-lb__nav{width:42px;height:42px}
  .ssl-lb__prev{left:10px}.ssl-lb__next{right:10px}
  .ssl-lb__foot{flex-direction:column;align-items:flex-start;gap:10px;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px))}
  .ssl-lb__cap{font-size:.84rem}
  .ssl-lb__tools{margin-left:0}
}
@media print{.ssl-lb{display:none!important}}


/* ---------- ssl-navmenu-v2: overlay extras must never leak into the desktop header ---------- */
.ssl-navcta,.ssl-navnote{display:none}
.wp-block-navigation__responsive-container.is-menu-open .ssl-navcta{display:block}
.wp-block-navigation__responsive-container.is-menu-open .ssl-navnote{display:block}

/* ---------- ssl-search-v2: scrim blur and panel arrive on the same frame ---------- */
.ssl-search{opacity:1!important; transition:none!important}
.ssl-search__scrim{opacity:0; will-change:opacity; transition:opacity .17s ease}
.ssl-search.is-in .ssl-search__scrim{opacity:1}
.ssl-search__panel{opacity:0; transition:opacity .17s ease, transform .17s cubic-bezier(.2,.8,.2,1)}
.ssl-search.is-in .ssl-search__panel{opacity:1; transform:none}
@media (prefers-reduced-motion:reduce){.ssl-search__scrim,.ssl-search__panel{transition:none}}

/* ---------- ssl-foot-v3: a little air before the Site column on phones ---------- */
@media (max-width:781px){
  .ssl-foot-top > .wp-block-column:nth-child(3){padding-left:16px}
}

/* ---------- ssl-mshare-v1: floating share column above back-to-top (phones + tablets) ---------- */
@media (max-width:1199px){
  body.single .ssl-share{
    display:flex!important; left:auto!important; top:auto!important;
    right:16px; bottom:calc(74px + env(safe-area-inset-bottom,0px));
    transform:none!important; z-index:390;
    flex-direction:column; align-items:center; gap:8px;
    padding:9px 7px; border-radius:16px;
    opacity:0!important; visibility:hidden!important; pointer-events:none!important;
    transition:opacity .2s ease, visibility .2s;
  }
  body.single .ssl-share.is-live{opacity:1!important; visibility:visible!important; pointer-events:auto!important}
  body.single .ssl-share__cap{display:none}
  body.single .ssl-share__btn{width:34px; height:34px; border-radius:11px; color:var(--ssl-ink); border-color:var(--ssl-line-2)}
  body.single .ssl-share__btn svg{width:16px; height:16px}
  body.single .ssl-share__menu{
    left:auto; right:calc(100% + 12px); top:auto; bottom:0;
    transform:translateX(6px) scale(.97); min-width:190px; max-height:60vh; overflow-y:auto;
  }
  body.single .ssl-share.is-open .ssl-share__menu{transform:none}
  body.single .ssl-share__toast{left:auto; right:calc(100% + 12px); top:auto; bottom:2px; transform:none}
}
@media (prefers-reduced-motion:reduce){body.single .ssl-share{transition:none}}

/* ---------- ssl-foot-v4: keep Topics and Site side by side on phones ---------- */
@media (max-width:781px){
  .ssl-foot-top > .wp-block-column:not(:first-child){flex-basis:46%!important}
}

/* ---------- ssl-mshare-v2: the rail itself is invisible, only the icons float ---------- */
@media (max-width:1199px){
  body.single .ssl-share{
    background:transparent!important; border:0!important; box-shadow:none!important;
    -webkit-backdrop-filter:none!important; backdrop-filter:none!important;
    padding:0!important; gap:9px;
  }
  body.single .ssl-share__btn{
    background:var(--ssl-glass-strong);
    -webkit-backdrop-filter:saturate(180%) blur(14px); backdrop-filter:saturate(180%) blur(14px);
    border:1px solid var(--ssl-glass-line);
    box-shadow:0 10px 24px -16px var(--ssl-shadow);
  }
  body.single .ssl-share__btn:hover,body.single .ssl-share__btn:active{color:var(--ssl-petrol); border-color:var(--ssl-line-2)}
}

/* ---------- ssl-mshare-v3: bigger icons, dead-centre over back-to-top ---------- */
@media (max-width:1199px){
  body.single .ssl-share{right:17px!important; gap:10px}
  body.single .ssl-share__btn{width:44px; height:44px; border-radius:999px}
  body.single .ssl-share__btn svg{width:19px; height:19px}
  body.single .ssl-share__menu{right:calc(100% + 10px)}
  body.single .ssl-share__toast{right:calc(100% + 10px)}
}

:root :where(.wp-block-columns-is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.wp-block-columns-is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-flow) > *{margin-block-start: var(--wp--preset--spacing--50);margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.wp-block-columns-is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-constrained) > *{margin-block-start: var(--wp--preset--spacing--50);margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-flex){gap: var(--wp--preset--spacing--50);}:root :where(.wp-block-columns-is-layout-grid){gap: var(--wp--preset--spacing--50);}
:root :where(.wp-block-buttons-is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.wp-block-buttons-is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.wp-block-buttons-is-layout-flow) > *{margin-block-start: 16px;margin-block-end: 0;}:root :where(.wp-block-buttons-is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.wp-block-buttons-is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.wp-block-buttons-is-layout-constrained) > *{margin-block-start: 16px;margin-block-end: 0;}:root :where(.wp-block-buttons-is-layout-flex){gap: 16px;}:root :where(.wp-block-buttons-is-layout-grid){gap: 16px;}
:root :where(.wp-block-term-description){font-size: var(--wp--preset--font-size--medium);}
:root :where(.wp-block-navigation){font-size: var(--wp--preset--font-size--medium);}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button))){text-decoration: none;}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
:root :where(.wp-block-list li){margin-top: 0.5rem;}