@font-face{font-family:"Barlow";font-weight:400;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:500;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow";font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Semi Condensed";font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-semi-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Semi Condensed";font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/barlow-semi-condensed-latin-700-normal.woff2) format("woff2")}

:root{
  --bg:#fff; --text:#000; --heading:#0E1015; --menu:#4C4C4C; --accent:#E91E63;
  --rule:rgba(0,0,0,.1); --footer:#0E1015; --input-border:#E3E3E3; --button:#1A1A1A;
  --mark:#FFF3A3; --container:1170px; --measure:860px; --gutter:15px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 20px/1.5 "Barlow",system-ui,sans-serif}
.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}
a{color:var(--accent);text-decoration:none}
a:hover,a:focus-visible{text-decoration:underline}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px;z-index:1000}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* header */
.site-header{position:sticky;top:0;z-index:999;background:#fff;border-bottom:1px solid var(--rule)}
.bar{display:flex;align-items:center;justify-content:space-between;padding-top:10px;padding-bottom:10px;min-height:72px}
.logo{display:flex;align-items:center;gap:16px;color:var(--heading);line-height:1}
.logo-img{height:72px;width:auto;display:block}
.logo-text{display:flex;flex-direction:column}
.portrait{float:right;width:160px;height:160px;border-radius:50%;margin:4px 0 16px 24px}
.logo:hover{text-decoration:none}
.logo-mark{font:700 34px/1 "Barlow Semi Condensed",system-ui,sans-serif;letter-spacing:-.5px}
.logo-mark span{color:var(--accent)}
.logo-sub{font:500 12px/1.4 "Barlow",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:var(--menu);margin-top:4px}
.menu{display:flex;gap:28px}
.menu a{font:500 13px/1 "Barlow",system-ui,sans-serif;text-transform:uppercase;letter-spacing:-1px;color:var(--menu);padding:8px 0}
.menu a[aria-current=page]{color:var(--accent)}
.menu{align-items:center}
.menu-group{position:relative;display:flex;align-items:center}
.menu a.in-section{color:var(--accent)}
.sub-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-12px -14px -12px -10px;padding:0;background:none;border:0;color:var(--accent);cursor:pointer}
.sub-toggle[hidden]{display:none}
.sub-toggle svg{transition:transform .2s ease}
.sub-toggle[aria-expanded=true] svg{transform:rotate(180deg)}
.submenu{position:absolute;top:calc(100% + 32px);left:-20px;min-width:180px;margin:0;padding:8px 0;list-style:none;background:#fff;border:1px solid var(--rule)}
.submenu[hidden]{display:none}
.submenu li{margin:0}
.menu .submenu a{display:block;padding:10px 20px;font:500 16px/1.3 "Barlow",system-ui,sans-serif;text-transform:none;letter-spacing:0;color:var(--heading)}
.menu .submenu a:hover,.menu .submenu a:focus-visible{color:var(--accent);text-decoration:none}
.menu .submenu a[aria-current=page]{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
@media (prefers-reduced-motion:reduce){.sub-toggle svg{transition:none}}
.menu-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:3px;background:var(--accent);margin:4px 0}

/* content */
main.container{padding-top:56px;padding-bottom:72px}
.content{max-width:var(--measure)}
.content p,.content li{margin:0 0 20px}
h1,h2,h3{color:var(--heading)}
h1{font:600 40px/1.15 "Barlow Semi Condensed",system-ui,sans-serif;margin:0 0 32px}
h2{font:400 32px/40px "Barlow",system-ui,sans-serif;margin:48px 0 16px}
h3{font:400 24px/32px "Barlow",system-ui,sans-serif;margin:32px 0 12px}
.kicker{font:500 14px/1 "Barlow",system-ui,sans-serif;text-transform:uppercase;letter-spacing:1px;color:var(--menu);margin:0 0 12px}
.display{font:600 40px/1.1 "Barlow Semi Condensed",system-ui,sans-serif;color:var(--heading);margin:40px 0 12px!important}
.lead{font-weight:600}
.content ul,.content ol{padding-left:1.2em}
.content li::marker{color:var(--accent)}
blockquote{margin:0 0 20px;padding:4px 0 4px 20px;border-left:3px solid var(--heading)}
blockquote p{margin:0!important}
mark{background:var(--mark);color:inherit;padding:0 2px}

/* page illustration under the headline (problem pages) */
.page-image{display:block;width:100%;max-width:var(--measure);height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin:8px 0 40px}

/* decision table (404 page): every row is a page, the last row is the address nobody has */
.decision{width:100%;max-width:var(--measure);border-collapse:collapse;margin:0 0 40px;font-size:18px;line-height:1.35}
.decision th,.decision td{text-align:left;vertical-align:top;padding:10px 14px;border:1px solid var(--rule)}
.decision thead th{background:#F5F5F5;font:500 13px/1.2 "Barlow",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:var(--menu)}
.decision td:first-child{width:42%;color:var(--menu);overflow-wrap:break-word}
.decision .nomatch td{font-weight:600;color:var(--heading);border-top:2px solid var(--heading)}

/* foot of each problem page: the other three problem pages */
.related{margin:48px 0 0;padding-top:32px;border-top:1px solid var(--rule)}
.related-heading{font:600 24px/1.3 "Barlow",system-ui,sans-serif;color:var(--heading);margin:0 0 12px!important}
.related ul{list-style:none;padding:0;margin:0}
.related li{margin:0 0 8px}

/* pitch hero: the image is a link to Discover */
.hero{display:block;max-width:var(--measure);margin:0 0 8px;transition:transform .2s ease}
.hero img{display:block;width:100%;height:auto}
.hero:hover,.hero:focus-visible{transform:translateY(-3px);text-decoration:none}
.hero:focus-visible{outline-offset:6px}
@media (prefers-reduced-motion:reduce){.hero{transition:none}.hero:hover,.hero:focus-visible{transform:none}}
/* pitch credos. Two layouts, chosen with "credoLayout" in site.json:
   rows: one credo per row, image left (4:3); grid: two columns, image as a strip on top (3:1).
   Images are greyscale and turn to colour on hover. To show colour always, set --strip-filter:none */
.credos{--strip-filter:grayscale(1) contrast(1.3);display:grid;grid-template-columns:1fr 1fr;gap:8px 56px;margin-bottom:24px}
.kind-pitch .content{max-width:var(--container)}
.kind-pitch .content > :not(.credos){max-width:var(--measure)}
.credo .display{font-size:64px;margin-top:24px!important}
.credo-strip{display:block;margin-top:32px}
.credo-strip img{display:block;width:100%;height:auto;aspect-ratio:3/1;object-fit:cover;border-radius:10px;filter:var(--strip-filter);transition:filter .35s ease}
.credo-strip + .display{margin-top:16px!important}
.credo:hover .credo-strip img,.credo:focus-within .credo-strip img{filter:none}
@media (prefers-reduced-motion:reduce){.credo-strip img{transition:none}}
@media (min-width:768px){
  .credos-rows .credos{grid-template-columns:1fr;gap:0;max-width:var(--measure)}
  .credos-rows .credo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:48px;align-content:center;padding:40px 0;border-top:1px solid var(--rule)}
  .credos-rows .credo:first-child{border-top:0}
  .credos-rows .credo > *{grid-column:2}
  .credos-rows .credo-strip{grid-column:1;grid-row:1 / span 3;margin:0;align-self:center}
  .credos-rows .credo-strip img{aspect-ratio:4/3}
  .credos-rows .credo .display,.credos-rows .credo-strip + .display{margin-top:0!important;font-size:56px}
  .credos-rows .credo > p:last-child{margin-bottom:0}
}

/* Kit form */
.kit{display:grid;gap:14px;max-width:460px;margin:8px 0 20px}
.kit label{display:grid;gap:6px;font-size:16px;font-weight:500}
.kit input{font:400 18px/1.4 "Barlow",system-ui,sans-serif;padding:10px 12px;border:1px solid var(--input-border);border-radius:4px;background:#fff;color:var(--text)}
.kit button{justify-self:start;font:600 18px/1 "Barlow",system-ui,sans-serif;padding:14px 22px;border:0;border-radius:4px;background:var(--button);color:#fff;cursor:pointer}
.kit .note{font-size:14px;margin:0}

/* footer */
.site-footer{background:var(--footer);color:#fff;padding:72px 0}
.site-footer p{max-width:var(--measure);margin:0 0 1.4em}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover,.site-footer a:focus-visible{text-decoration:underline}
.site-footer strong,.site-footer .footer-links a{font-weight:600}
.footer-contact p{font-size:20px;line-height:1.35}
.footer-links{font-size:16px;margin:56px 0 40px}
.footer-legal p{font-size:16px;line-height:1.75;margin-bottom:1.6em}
.footer-legal p:last-child{margin-bottom:0}
.site-footer mark{background:var(--mark);color:#000;padding:0 2px}

@media (max-width:767px){
  .menu-toggle{display:block}
  .menu{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--rule);flex-direction:column;gap:0;padding:8px 16px 16px}
  .menu.open{display:flex}
  .menu a{font-size:16px;padding:12px 0;letter-spacing:0}
  .menu{align-items:stretch}
  .menu-group{flex-wrap:wrap}
  .menu-group>a{flex:1}
  .sub-toggle{margin:0 -12px 0 0}
  .submenu{position:static;flex-basis:100%;min-width:0;padding:0 0 8px 16px;border:0}
  .menu .submenu a{padding:10px 0;font-size:16px}
  .container{padding:0 16px}
  .bar{position:relative;min-height:64px}
  .logo-mark{font-size:26px}
  .logo-img{height:48px}
  .logo-sub{font-size:10px}
  .portrait{width:112px;height:112px}
  main.container{padding-top:32px}
  h1{font-size:32px}
  h2{font-size:26px;line-height:32px}
  .display{font-size:32px}
  .credos{grid-template-columns:1fr;gap:0}
  .credo .display{font-size:48px}
  .decision{font-size:16px}
  .decision th,.decision td{padding:8px 10px}
}

/* Links to a section (e.g. /challenge/#take-it-upstairs) land below the sticky header */
:target{scroll-margin-top:7rem}
/* v2.0: portrait of the protagonist, floated left beside the credo text on the problem pages */
.face{float:left;width:320px;max-width:40%;margin:10px 32px 40px 0}
.face img{display:block;width:100%;height:auto;border-radius:12px}
.face + .credo .display,.face + .display{margin-top:0!important}
h2{clear:both}
@media (max-width:767px){.face{float:none;width:60%;max-width:none;margin:8px 0 24px}.face + .credo .display,.face + .display{margin-top:16px!important}}
/* v2.0: a list beside a portrait wraps next to it; the Kit form always starts below it */
.face ~ ul{display:flow-root}
.kit{clear:both}
/* v2.0: a portrait on the right (Play: Isard) */
.face-right{float:right;margin:10px 0 40px 32px}
@media (max-width:767px){.face-right{float:none;margin:8px 0 24px}}
/* v2.0: a portrait in the last section never hangs into the footer */
main::after{content:"";display:block;clear:both}

/* No Tie Generation additions (12 October 2026). Everything above is the BRF.plus stylesheet (v2.0), unchanged. */
/* Picture under the headline: the FIT 4 SAP diagram, shown whole (never cropped) */
.lead-image{display:block;max-width:var(--measure);margin:0 0 40px}
.lead-image img{display:block;width:100%;height:auto}
/* Headings may hold line breaks (carried over from the WordPress pages) */
.content h2 strong,.content h3 strong{font-weight:600}
/* Pictures in the text: the diagrams full width, the book cover and portrait at their own size */
.content figure{margin:40px 0;max-width:var(--measure)}
.content figure img{display:block;max-width:100%;height:auto}
.content figcaption{font-size:16px;line-height:1.4;color:var(--menu);margin-top:10px}
/* Thin line between sections (Read Me) */
.content hr{border:0;border-top:1px solid var(--rule);margin:48px 0;max-width:var(--measure)}
/* Book cover beside its title and blurb (Resources) */
.media{display:grid;grid-template-columns:160px minmax(0,1fr);column-gap:32px;align-items:start;margin:32px 0}
.media-img img{display:block;width:160px;height:auto;border-radius:4px;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.media-text h3{margin-top:0}
.media-text p:last-child{margin-bottom:0}
/* Facts table (About My Book), styled like the 404 decision table */
.facts{width:100%;max-width:var(--measure);border-collapse:collapse;margin:0 0 40px;font-size:18px;line-height:1.35}
.facts caption{text-align:left;font-size:16px;color:var(--menu);padding:0 0 10px}
.facts th,.facts td{text-align:left;vertical-align:top;padding:10px 14px;border:1px solid var(--rule)}
.facts thead th{background:#F5F5F5;font:500 13px/1.2 "Barlow",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.5px;color:var(--menu)}
.facts tbody th{font-weight:600;color:var(--heading)}
.updated{font-size:16px;color:var(--menu)}
.note{font-size:16px}
/* Six menu items beside the logo: a little tighter on mid-size screens */
@media (min-width:768px) and (max-width:1100px){.menu{gap:18px}.logo-text{display:none}}
@media (max-width:767px){
  .media{grid-template-columns:96px minmax(0,1fr);column-gap:20px}
  .media-img img{width:96px}
  .facts{font-size:16px}.facts th,.facts td{padding:8px 10px}
}
/* A book cover in the text (About My Book): about the size WordPress showed it */
.content figure.book img{width:296px;box-shadow:0 10px 28px rgba(0,0,0,.18)}
.content figure.book figcaption{max-width:420px}
/* A watercolour in the text (Home): the page-image look, no 16:9 crop needed for these 16:9 originals */
.content figure .page-image{margin:0}
/* Home: the four managers' portraits beside their sections (the brf.plus .face, alternating sides) */
.kind-home .face{width:300px;margin-top:6px}
.kind-home .face-right{margin-left:32px;margin-right:0}
.content h3{clear:both}
@media (max-width:767px){.kind-home .face,.kind-home .face-right{width:60%;margin:8px 0 24px}}
/* (fix) .content figure sets margins too: give the portraits their gutter back, and let the form sit beside Claire */
.content figure.face{margin:6px 36px 32px 0}
.content figure.face-right{margin:6px 0 32px 36px}
.kind-home .kit{clear:none}
@media (max-width:767px){.content figure.face,.content figure.face-right{margin:8px 0 24px}}
/* Home (Isard, 12 October 2026): portrait, section heading and text form one block, so the portrait starts level with the heading */
.persona{display:flow-root;clear:both;margin-top:32px}
.persona-h2{margin-top:48px}
.persona > h2,.persona > h3{margin-top:0;clear:none}
.kind-home .content .persona figure.face{margin:4px 36px 24px 0}
.kind-home .content .persona figure.face-right{margin:4px 0 24px 36px}
@media (max-width:767px){.kind-home .content .persona figure.face,.kind-home .content .persona figure.face-right{float:none;width:60%;margin:0 0 20px}}
/* FIT 4 SAP sub-pages (moved from Notion, 12 October 2026): small headings, example entries, comparison table */
.content h4{font:600 20px/28px "Barlow",system-ui,sans-serif;color:var(--heading);margin:28px 0 8px}
.content blockquote{font-size:18px;line-height:1.5;max-width:var(--measure)}
.content blockquote p{margin:0 0 4px!important}
/* Footer: the No Tie Generation ecosystem, the parent site pointing to its children (12 October 2026) */
.footer-family p{font-size:18px;line-height:1.6;margin:40px 0 0}
.site-footer .footer-family + .footer-links{margin:40px 0}
/* Footer links turn pink on hover and keyboard focus only (Isard, 12 October 2026); white at rest keeps them readable on the dark footer */
.site-footer a:hover,.site-footer a:focus-visible{color:var(--accent)}

/* Section headings on every page (Isard, 13 October 2026, D25): bold condensed like the page headline, with a short
   pink bar above. flow-root keeps the bar beside a floated portrait instead of above it. The line straight under the
   "See where it breaks" picture (Home, Read Me, White Paper) is its subtitle, not a section: it keeps the plain style. */
.content h2{display:flow-root;font:600 34px/1.15 "Barlow Semi Condensed",system-ui,sans-serif}
.content h2::before{content:"";display:block;width:56px;height:5px;background:var(--accent);margin:0 0 14px}
.content .lead-image + h2{display:block;font:400 32px/40px "Barlow",system-ui,sans-serif}
.content .lead-image + h2::before{content:none}
@media (max-width:767px){.content h2{font-size:28px}.content .lead-image + h2{font-size:26px;line-height:32px}}

/* Home portrait sections as two columns (Isard, 13 October 2026): the portrait in one column, the heading and text in
   the other, so text never runs underneath the picture. persona-right puts the portrait in the right-hand column.
   On phones the portrait stacks above the heading, as before. */
.kind-home .persona{display:grid;grid-template-columns:300px minmax(0,1fr);column-gap:36px;align-items:start}
.kind-home .persona-right{grid-template-columns:minmax(0,1fr) 300px}
.kind-home .content .persona figure.face{float:none;width:auto;max-width:none;margin:4px 0 0;grid-column:1;grid-row:1}
.kind-home .content .persona-right figure.face{grid-column:2}
.kind-home .persona-text{grid-row:1;min-width:0}
.kind-home .persona-right .persona-text{grid-column:1}
.kind-home .persona-text > h2{margin-top:0}
.kind-home .persona-text > :last-child{margin-bottom:0}
@media (max-width:767px){
  .kind-home .persona,.kind-home .persona-right{display:block}
  .kind-home .content .persona figure.face{width:60%;margin:0 0 20px}
}
/* Persona role line under each persona heading on Home (13 October 2026): a signpost, not a caption */
.kind-home .persona-text h2 + p:has(> em:only-child){font-size:18px;color:var(--menu);margin:-6px 0 18px}
/* Home on phones (13 October 2026, D39): portraits at about a third of the width, beside the heading and role line
   instead of above them, so Home is about 800px shorter; text continues underneath. */
@media (max-width:767px){
  .kind-home .persona,.kind-home .persona-right{display:flow-root}
  .kind-home .content .persona figure.face{float:left;width:34%;margin:4px 16px 10px 0}
  .kind-home .content .persona-right figure.face{float:right;margin:4px 0 10px 16px}
  .kind-home .persona-text > h2{clear:none}
  .kind-home .persona-text ul,.kind-home .persona-text form{display:flow-root}
}
