@font-face { font-family: "Schibsted Grotesk"; font-style: normal; font-weight: 400 600; font-display: swap; src: url("../fonts/schibsted-grotesk.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/ibm-plex-mono-400.woff2") format("woff2"); }
@font-face { font-family: "IBM Plex Mono"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/ibm-plex-mono-500.woff2") format("woff2"); }
:root { color-scheme: light; }
[hidden] { display: none !important; }
.skip-link { position: absolute; left: 20px; top: -100px; z-index: 10; padding: 12px 16px; background: #111111; color: #FAFAF8; border-radius: 8px; text-decoration: none; font: 500 15px/1.2 "Schibsted Grotesk", system-ui, sans-serif; }
.skip-link:focus { top: 8px; color: #FAFAF8; }
body{margin:0;background:#FAFAF8}
a{color:#111111}a:hover{color:#111111}
a:focus-visible,button:focus-visible{outline:2px solid #E5482D;outline-offset:2px}
.work:hover .shot{background:#E6E5E1}
.row:hover{background: #F1F0EC}
@media (max-width:767px){
  .grid{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .steps{grid-template-columns:repeat(1,minmax(0,1fr)) !important}
  .h1{font-size:40px !important}
  .h2{font-size:24px !important}
  .wrap{padding-left:20px !important;padding-right:20px !important}
}
.vid:hover{filter:brightness(1.04)}
@media (max-width:767px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr)) !important}.grid4 .wide{grid-column:1/-1}.grid5{grid-template-columns:repeat(2,minmax(0,1fr)) !important}}
.card:hover{border-color:#686864}
@media (max-width:767px){.g2,.g3,.g4{grid-template-columns:1fr !important}.hero2{grid-template-columns:1fr !important}}
.announce-link:hover{color:#A3E4B2 !important}.announce-link:focus-visible{outline:2px solid #86D99A;outline-offset:2px}
summary{list-style:none;cursor:pointer}
summary::-webkit-details-marker{display:none}
details[open] .plus{transform:rotate(45deg)}
.plus{transition:transform .2s ease}
@media (max-width:900px){.two{grid-template-columns:1fr !important}}

/* Phone fixes (Oct 20) */
@media (max-width:600px){
  header a, nav a{white-space:nowrap}
  header a[aria-label]{min-height:44px;align-items:center}
  [style*="grid-template-columns: 1fr auto"]{grid-template-columns:1fr !important}
  [style*="padding: 48px"],[style*="padding: 56px"]{padding:24px !important}
  [style*="font-size: 40px"]{font-size:28px !important}
  [style*="font-size: 60px"]{font-size:34px !important}
  [style*="font-size: 52px"]{font-size:32px !important}
  [style*="font-size: 44px"]{font-size:26px !important;overflow-wrap:anywhere}
  [style*="min-height: 300px"]{min-height:0 !important}
  [style*="padding: 112px 24px"],[style*="padding: 120px 24px"]{padding-top:72px !important;padding-bottom:72px !important}
  .four{grid-template-columns:1fr !important}
  .four>li{border-left:0 !important;padding-left:0 !important;padding-right:0 !important}
  .h1{font-size:40px !important}
  .h2{font-size:30px !important}
  a[style*="height: 56px"],a[style*="height: 52px"]{white-space:nowrap}
}

/* Phone header like Home: wordmark left, "Book a call" top right, links on the row below (2026-10-21) */
@media (max-width: 559px) {
  header:has(> nav[aria-label="Main"]) { justify-content: flex-start !important; gap: 0 4px !important; padding-top: 8px !important; padding-bottom: 8px !important; }
  header:has(> nav[aria-label="Main"])::after { content: ""; order: 2; width: 100%; }
  header > nav[aria-label="Main"] { display: contents !important; }
  header > nav[aria-label="Main"] > a[data-cfg-href="calendly"] { order: 1; margin-left: auto !important; }
  header > nav[aria-label="Main"] > a:not([data-cfg-href]) { order: 3; }
  header > nav[aria-label="Main"] > a:not([data-cfg-href]) { padding: 0 20px 0 0 !important; }
}
