@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@800&display=swap');
:root{--teal:#1C7B7C;--magenta:#D1ABEC;--lightblue:#E1EFF2;--purple:#8720D3;--ink:#161616;--white:#fff}
body{font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;background:var(--white);color:var(--ink)}
h1,h2,h3,.contact a{font-family:Raleway,Avenir,"Avenir Next",sans-serif;font-weight:800;letter-spacing:-.02em}
.site-header{color:var(--white);mix-blend-mode:normal;transition:color .2s ease}
.site-nav a{transition:color .2s ease}
.site-header.header-on-dark .site-nav a{color:var(--white)}
.site-header.header-on-dark .site-nav a:hover{color:var(--magenta)}
.site-header.header-on-light .site-nav a{color:var(--purple)}
.site-header.header-on-light .site-nav a:hover{color:var(--teal)}
.wordmark{display:block;width:150px;height:auto;line-height:0;overflow:visible;flex:0 0 auto;opacity:0;pointer-events:none;transition:opacity .2s ease}.site-header.header-on-hero .wordmark{opacity:1;pointer-events:auto}.wordmark img{display:block;width:150px;height:auto;max-width:none;object-fit:contain;object-position:left top}
.hero{background:var(--teal)}.hero-video{transform:none;filter:none;object-position:center}.hero-shade{background:linear-gradient(180deg,rgba(28,123,124,.02),rgba(28,123,124,.08) 48%,rgba(28,123,124,.22))}
.hero h1{font-weight:800;letter-spacing:-.018em;line-height:.9}.hero-label{font-family:Avenir,"Avenir Next",sans-serif}
.publication{background:var(--white)}
.publication h2,.pov-copy h2,.work-heading h2,.newsletter h2,.about h2{color:var(--teal)}.publication h3,.link,.selected-work .section-label,.newsletter .section-label,.about .section-label{color:var(--purple)}
.publication-button{display:inline-flex;margin-top:24px;background:var(--teal);color:var(--white);border:0;min-height:48px;padding:0 28px;align-items:center;justify-content:center;font-weight:600}
.book-image{box-shadow:none}
.pov-copy .section-label{color:var(--teal)}.pov-copy h2 em{font-family:Raleway,Avenir,sans-serif;font-style:normal;font-weight:800;color:var(--purple)}
.method{background:var(--magenta)}.method .section-label,.method h2,.method-grid span{color:var(--purple)}.method-grid h3{color:var(--teal)}
.selected-work{background:var(--white)}
.work-heading h2{letter-spacing:-.015em;line-height:.98}.work-list h3{letter-spacing:-.012em;line-height:1.02}
.capabilities{background:var(--teal);color:var(--white)}.capabilities .section-label,.cap-grid h3{color:var(--magenta)}.capabilities>h2{color:var(--white);letter-spacing:-.015em;line-height:.98}
.newsletter{background:var(--lightblue)}.newsletter-form{border-bottom-color:var(--teal)}.newsletter-form button{color:var(--purple)}
.contact{background:var(--purple)}.contact p{color:var(--magenta)}footer{background:var(--teal);color:var(--white)}
@media(max-width:900px){.site-header,.site-nav{background:rgba(28,123,124,.94)}.site-header .site-nav a{color:var(--white)}.site-header .site-nav a:hover{color:var(--magenta)}.wordmark,.wordmark img{width:120px}}

/* Method page */
.method-page-hero{background:var(--purple)}
.method-page-hero .hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.08) 55%,rgba(0,0,0,.18))}
.method-page-hero h1 span{color:var(--magenta)}
.method-audit{display:grid;grid-template-columns:.38fr 1.2fr;gap:7vw;align-items:start;background:var(--white)}
.method-audit h2,.method-phase h2,.method-principles h2{font-family:Raleway,Avenir,"Avenir Next",sans-serif;font-weight:800;letter-spacing:-.018em;line-height:.96;margin:0}
.method-audit h2{font-size:clamp(3rem,5.3vw,6rem);color:var(--teal);max-width:1050px}
.method-audit p{font-size:1.08rem;max-width:720px;margin:32px 0 0}
.method-sequence{background:var(--lightblue)}
.method-sequence>.section-label{color:var(--teal);margin-bottom:34px}
.sequence-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(28,123,124,.35);border-bottom:1px solid rgba(28,123,124,.35)}
.sequence-grid a{padding:30px 24px 34px 0;border-right:1px solid rgba(28,123,124,.35);display:flex;flex-direction:column;min-height:185px}
.sequence-grid a+a{padding-left:24px}
.sequence-grid a:last-child{border-right:0}
.sequence-grid span{font-size:.68rem;letter-spacing:.13em;color:var(--purple)}
.sequence-grid strong{font-family:Raleway,Avenir,sans-serif;font-size:1.55rem;color:var(--teal);margin:20px 0 8px;line-height:1.05}
.sequence-grid small{font-size:.88rem}
.method-phase{display:grid;grid-template-columns:.35fr 1.2fr;gap:7vw;align-items:start}
.phase-number{font-family:Raleway,Avenir,sans-serif;font-size:clamp(5rem,11vw,12rem);line-height:.78;letter-spacing:-.06em}
.phase-copy{max-width:1000px}
.phase-copy .section-label{margin-bottom:22px}
.method-phase h2{font-size:clamp(3rem,5.7vw,6.4rem);margin-bottom:35px}
.method-phase p{font-size:1.05rem;max-width:760px;margin:0 0 18px}
.method-phase .phase-lead{font-size:clamp(1.25rem,1.8vw,1.7rem);line-height:1.25;max-width:820px;margin-bottom:30px}
.phase-light{background:var(--white)}
.phase-light .phase-number,.phase-light .section-label{color:var(--purple)}
.phase-light h2{color:var(--teal)}
.phase-blue{background:var(--lightblue)}
.phase-blue .phase-number,.phase-blue .section-label{color:var(--teal)}
.phase-blue h2{color:var(--purple)}
.phase-magenta{background:var(--magenta)}
.phase-magenta .phase-number,.phase-magenta .section-label{color:var(--purple)}
.phase-magenta h2{color:var(--teal)}
.phase-dark{background:var(--teal);color:var(--white)}
.phase-dark .phase-number,.phase-dark .section-label,.phase-dark h2{color:var(--magenta)}
.method-link-light{color:var(--white)}
.method-principles{display:grid;grid-template-columns:1fr 1fr;gap:0;padding-top:0;padding-bottom:0;background:var(--white)}
.method-principles article{padding:8vw 5vw 8vw 0}
.method-principles article+article{padding-left:5vw;border-left:1px solid rgba(28,28,26,.14)}
.method-principles .section-label{color:var(--purple);margin-bottom:24px}
.method-principles h2{font-size:clamp(2.8rem,4.5vw,5rem);color:var(--teal);margin-bottom:28px}
.method-principles p{font-size:1.02rem;max-width:650px}
.site-nav a[aria-current="page"]{border-bottom:1px solid currentColor;padding-bottom:3px}
@media(max-width:900px){
  .method-audit,.method-phase,.method-principles{grid-template-columns:1fr}
  .sequence-grid{grid-template-columns:1fr 1fr}
  .sequence-grid a:nth-child(2){border-right:0}
  .sequence-grid a:nth-child(3){padding-left:0}
  .phase-number{margin-bottom:30px}
  .method-principles article,.method-principles article+article{padding:72px 0;border-left:0}
  .method-principles article+article{border-top:1px solid rgba(28,28,26,.14)}
}
@media(max-width:600px){
  .sequence-grid{grid-template-columns:1fr}
  .sequence-grid a,.sequence-grid a+a,.sequence-grid a:nth-child(3){padding:24px 0;border-right:0;border-bottom:1px solid rgba(28,123,124,.35);min-height:0}
  .sequence-grid a:last-child{border-bottom:0}
  .method-page-hero h1{font-size:16vw}
}


/* Faithful Method page */
.method-page-faithful{background:var(--white)}
.method-faithful-hero{padding:150px 3.4vw 7vw;background:var(--white);border-bottom:1px solid rgba(28,28,26,.14)}
.method-faithful-inner{max-width:1200px}
.method-faithful-hero .section-label{color:var(--purple);margin-bottom:28px}
.method-faithful-hero h1{font-family:Raleway,Avenir,sans-serif;font-size:clamp(3.4rem,6vw,6.8rem);line-height:.93;letter-spacing:-.018em;color:var(--teal);margin:0;max-width:1200px}
.method-kicker{font-size:clamp(1.25rem,1.8vw,1.65rem);margin:34px 0 16px}
.method-audit-copy{font-size:1.05rem;max-width:800px;margin:0}
.method-faithful-block{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;align-items:center;padding:8vw 3.4vw;border-bottom:1px solid rgba(28,28,26,.14);background:var(--white)}
.method-faithful-reverse .method-faithful-image{order:2}
.method-faithful-reverse .method-faithful-copy{order:1}
.method-faithful-image img{width:100%;height:auto;object-fit:cover}
.method-faithful-copy{max-width:800px}
.method-faithful-copy h2{font-family:Raleway,Avenir,sans-serif;font-size:clamp(2.8rem,4.6vw,5.2rem);line-height:.95;letter-spacing:-.018em;color:var(--teal);margin:0 0 16px}
.method-faithful-copy h3{font-family:Avenir,"Avenir Next",sans-serif;font-size:clamp(1.05rem,1.5vw,1.35rem);font-weight:400;color:var(--purple);margin:0 0 28px;letter-spacing:0}
.method-faithful-copy p{font-size:1.03rem;max-width:760px;margin:0 0 18px}
.method-image-collage{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.method-image-collage img:first-child{grid-column:1/3}
.method-faithful-innovation{background:var(--lightblue)}
.method-faithful-modular{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--magenta)}
.method-faithful-modular>div{padding:7vw 5vw 7vw 3.4vw}
.method-faithful-modular>div+div{border-left:1px solid rgba(135,32,211,.25);padding-left:5vw}
.method-faithful-modular h2{font-family:Raleway,Avenir,sans-serif;font-size:clamp(2.5rem,4vw,4.6rem);line-height:.98;letter-spacing:-.018em;color:var(--purple);margin:0 0 28px}
.method-faithful-modular p{font-size:1.03rem;max-width:660px;margin:0}
@media(max-width:900px){
  .method-faithful-block,.method-faithful-modular{grid-template-columns:1fr}
  .method-faithful-reverse .method-faithful-image,.method-faithful-reverse .method-faithful-copy{order:initial}
  .method-faithful-modular>div,.method-faithful-modular>div+div{padding:70px 3.4vw;border-left:0}
  .method-faithful-modular>div+div{border-top:1px solid rgba(135,32,211,.25)}
}
@media(max-width:600px){
  .method-faithful-hero{padding:120px 20px 70px}
  .method-faithful-block{padding:70px 20px;gap:42px}
  .method-faithful-modular>div,.method-faithful-modular>div+div{padding:60px 20px}
}


/* Method phase consistency */
.method-page-faithful .method-faithful-block{
  background:var(--lightblue);
}
.method-page-faithful .method-faithful-image{
  width:100%;
  aspect-ratio:1 / 1;
  overflow:hidden;
}
.method-page-faithful .method-faithful-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.method-page-faithful .method-image-collage{
  display:block;
}


/* Shared phase icon system */
.method-card-visual{
  width:100%;
  height:118px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:34px;
  overflow:visible;
}
.method-card-visual img{
  width:96px;
  height:96px;
  object-fit:contain;
  object-position:center;
  display:block;
}
.method-page-faithful .wordmark{
  opacity:1;
  pointer-events:auto;
}
.method-page-faithful .method-faithful-block{
  background:var(--lightblue);
}
.method-page-faithful .method-faithful-image{
  width:100%;
  aspect-ratio:1 / 1;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:var(--lightblue);
}
.method-page-faithful .method-faithful-image img{
  width:78%;
  height:78%;
  object-fit:contain;
  object-position:center;
  display:block;
}
@media(max-width:600px){
  .method-card-visual{height:92px;margin-bottom:24px}
  .method-card-visual img{width:76px;height:76px}
  .method-page-faithful .method-faithful-image img{width:74%;height:74%}
}


/* Work page */
.work-page{background:var(--white)}
.work-page .wordmark{opacity:1;pointer-events:auto}
.work-page-intro{padding:150px 3.4vw 45px;background:var(--white)}
.work-page-intro .section-label{color:var(--purple)}
.work-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3vw;padding:0 3.4vw 8vw;background:var(--white)}
.work-project-card img{width:100%;aspect-ratio:1.1/1;object-fit:cover;display:block;margin-bottom:20px}
.work-project-card h2{font-family:Avenir,"Avenir Next",sans-serif;font-size:1.05rem;font-weight:600;letter-spacing:0;color:var(--ink);margin:0 0 6px}
.work-project-card p{font-size:.92rem;line-height:1.35;margin:0;color:#383838}
.work-companies{padding:8vw 3.4vw;background:var(--lightblue);border-top:1px solid rgba(28,28,26,.14)}
.work-companies>.section-label{color:var(--purple);margin-bottom:45px}
.work-company-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px 4vw}
.work-company-grid h3{font-family:Raleway,Avenir,sans-serif;font-size:1.2rem;line-height:1.05;color:var(--teal);margin:0 0 13px}
.work-company-grid p{font-size:.92rem;line-height:1.55;margin:0}
.work-disclaimer{margin:60px 0 0;font-size:.8rem}
@media(max-width:1000px){
  .contact-wix-intro{
    grid-template-columns:1fr;
    min-height:0;
  }
  .contact-wix-copy{
    padding:60px 28px 64px;
  }
  .contact-wix-image{
    width:100%;
  }
  .contact-wix-image img,
  .contact-water-still{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16 / 9!important;
  }
  .contact-form-panel{padding:60px 28px 70px}
}
@media(max-width:700px){
  .contact-wix-copy{padding:46px 20px 50px}
  .contact-wix-copy h1{
    font-size:clamp(1.9rem,8.5vw,2.7rem)!important;
    line-height:1.12!important;
  }
  .contact-wix-copy p{
    font-size:1.35rem!important;
    margin-top:24px!important;
  }
  .contact-form-panel{padding:52px 20px 60px}
  .contact-form{grid-template-columns:1fr;gap:28px}
  .contact-field-wide{grid-column:auto}
  .contact-submit-row{
    flex-direction:column;
    align-items:flex-start;
  }
  .contact-submit-row button{width:100%}
}


/* =========================================================
   CONTACT PAGE — FINAL LOCKED STYLES
   Keep this block last so legacy/page rules cannot override it.
   ========================================================= */
.contact-page{
  background:var(--white)!important;
}
.contact-page .site-header:not(.logo-at-top) .internal-logo-mask{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.contact-page .site-header.logo-at-top .internal-logo-mask{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

.contact-page .contact-wix{
  padding-top:var(--internal-page-top-clearance,150px)!important;
  background:var(--white)!important;
}

/* Opening composition */
.contact-page .contact-wix-intro{
  display:grid!important;
  grid-template-columns:minmax(0,46%) minmax(0,54%)!important;
  gap:0!important;
  align-items:stretch!important;
  min-height:600px!important;
  padding:0!important;
  margin:0!important;
  background:var(--lightblue)!important;
  overflow:hidden!important;
}

.contact-page .contact-wix-copy{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
  padding:64px 5.2vw 64px 7vw!important;
  background:var(--lightblue)!important;
}

.contact-page .contact-wix-copy h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2rem,2.55vw,3.25rem)!important;
  line-height:1.12!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  color:var(--ink)!important;
  margin:0!important;
  max-width:680px!important;
}

.contact-page .contact-wix-copy p{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.3rem,1.55vw,1.7rem)!important;
  line-height:1.1!important;
  font-weight:600!important;
  color:var(--teal)!important;
  margin:30px 0 0!important;
}

.contact-page .contact-wix-image{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:100%!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
}

.contact-page .contact-wix-image img,
.contact-page .contact-water-still{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:100%!important;
  min-height:600px!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:var(--teal)!important;
}

/* Form */
.contact-page .contact-form-panel{
  padding:82px 7vw 92px!important;
  background:var(--white)!important;
}

.contact-page .contact-form{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:34px 44px!important;
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
}

.contact-page .contact-field{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  min-width:0!important;
}

.contact-page .contact-field-wide{
  grid-column:1 / -1!important;
}

.contact-page .contact-field label{
  display:block!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.82rem!important;
  line-height:1.2!important;
  font-weight:400!important;
  color:var(--purple)!important;
  margin:0!important;
}

.contact-page .contact-field input,
.contact-page .contact-field textarea,
.contact-page .contact-field select{
  appearance:none!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  border:0!important;
  border-bottom:1px solid rgba(22,22,22,.38)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--ink)!important;
  box-shadow:none!important;
  outline:none!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:1.05rem!important;
  line-height:1.45!important;
  font-weight:300!important;
  padding:10px 0 12px!important;
  margin:0!important;
}

.contact-page .contact-field textarea{
  min-height:120px!important;
  resize:vertical!important;
}

.contact-page .contact-field select{
  padding-right:34px!important;
  background-image:
    linear-gradient(45deg,transparent 50%,var(--purple) 50%),
    linear-gradient(135deg,var(--purple) 50%,transparent 50%)!important;
  background-position:
    calc(100% - 13px) 50%,
    calc(100% - 7px) 50%!important;
  background-size:6px 6px,6px 6px!important;
  background-repeat:no-repeat!important;
}

.contact-page .contact-field input:focus,
.contact-page .contact-field textarea:focus,
.contact-page .contact-field select:focus{
  border-bottom-color:var(--teal)!important;
}

.contact-page .contact-submit-row{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  margin-top:12px!important;
}

.contact-page .contact-submit-row button{
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:225px!important;
  min-height:54px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--teal)!important;
  color:#fff!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:1rem!important;
  line-height:1!important;
  font-weight:600!important;
  padding:0 30px!important;
  cursor:pointer!important;
}

.contact-page .contact-submit-row button:hover{
  background:var(--purple)!important;
}

.contact-page .contact-submit-row a{
  color:var(--purple)!important;
  text-decoration:none!important;
  border-bottom:1px solid currentColor!important;
  padding-bottom:3px!important;
  font-size:.95rem!important;
}

.contact-page .contact-newsletter{
  background:var(--lightblue)!important;
}

.contact-page .contact-newsletter h2{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-weight:400!important;
  color:var(--teal)!important;
}

/* Tablet */
@media(max-width:1000px){
  .contact-page .contact-wix-intro{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }

  .contact-page .contact-wix-copy{
    padding:58px 28px 62px!important;
  }

  .contact-page .contact-wix-copy h1{
    max-width:760px!important;
  }

  .contact-page .contact-wix-image{
    position:relative!important;
    aspect-ratio:16 / 9!important;
    height:auto!important;
  }

  .contact-page .contact-wix-image img,
  .contact-page .contact-water-still{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
  }

  .contact-page .contact-form-panel{
    padding:68px 28px 76px!important;
  }
}

/* Mobile */
@media(max-width:700px){
  .contact-page .contact-wix-copy{
    padding:46px 20px 50px!important;
  }

  .contact-page .contact-wix-copy h1{
    font-size:clamp(1.85rem,8.3vw,2.55rem)!important;
    line-height:1.13!important;
  }

  .contact-page .contact-wix-copy p{
    font-size:1.3rem!important;
    margin-top:24px!important;
  }

  .contact-page .contact-wix-image{
    aspect-ratio:4 / 3!important;
  }

  .contact-page .contact-form-panel{
    padding:54px 20px 62px!important;
  }

  .contact-page .contact-form{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .contact-page .contact-field-wide,
  .contact-page .contact-submit-row{
    grid-column:auto!important;
  }

  .contact-page .contact-submit-row{
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .contact-page .contact-submit-row button{
    width:100%!important;
  }
}


/* Contact refinements — focused form width + visible top logo */
.contact-page .contact-form-panel{
  padding-left:7vw!important;
  padding-right:7vw!important;
}
.contact-page .contact-form{
  max-width:860px!important;
  margin:0 auto!important;
}
.contact-page .contact-page .site-header .internal-logo-mask{
  display:block!important;
}
.contact-page .site-header.logo-at-top .internal-logo-mask{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:150px!important;
  height:86px!important;
  flex:0 0 150px!important;
}
.contact-page .site-header.logo-at-top .internal-logo-mask span{
  display:block!important;
  width:150px!important;
  height:86px!important;
  background:var(--teal)!important;
  -webkit-mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
  mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
}
@media(max-width:900px){
  .contact-page .contact-form{
    max-width:700px!important;
  }
  .contact-page .site-header.logo-at-top .internal-logo-mask{
    width:120px!important;
    height:69px!important;
    flex-basis:120px!important;
  }
  .contact-page .site-header.logo-at-top .internal-logo-mask span{
    width:120px!important;
    height:69px!important;
  }
}
@media(max-width:700px){
  .contact-page .contact-form{
    max-width:100%!important;
  }
}


/* =========================================================
   FAQ PAGE
   ========================================================= */
.faq-page{background:var(--white)!important}
.faq-page .site-header:not(.logo-at-top) .internal-logo-mask{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.faq-page .site-header.logo-at-top .internal-logo-mask{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:150px!important;
  height:86px!important;
  flex:0 0 150px!important;
}
.faq-page .site-header.logo-at-top .internal-logo-mask span{
  display:block!important;
  width:150px!important;
  height:86px!important;
  background:var(--teal)!important;
  -webkit-mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
  mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
}
.faq-shell{
  padding:var(--internal-page-top-clearance,150px) 4.5vw 8vw;
  background:var(--white);
}
.faq-shell h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2.8rem,4.4vw,5.2rem)!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.03em!important;
  color:var(--ink)!important;
  text-transform:lowercase!important;
  text-align:center;
  margin:0 auto 48px!important;
}
.faq-list{
  width:min(100%,1260px);
  margin:0 auto;
}
.faq-item{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  border:1px solid rgba(22,22,22,.7);
  margin:0 0 14px;
  background:#fff;
  overflow:hidden;
}
.faq-item summary{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:132px minmax(0,1fr) 34px;
  align-items:center;
  list-style:none;
  min-height:112px;
  cursor:pointer;
  position:relative;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-number{
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--teal);
  color:#fff;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;
  font-size:1.45rem;
  font-weight:300;
}
.faq-question{
  padding:28px 34px;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;
  font-size:clamp(1.2rem,1.55vw,1.6rem);
  line-height:1.25;
  font-weight:300;
  color:var(--ink);
}
.faq-icon{
  width:15px;
  height:15px;
  margin-right:26px;
  border-right:2px solid var(--ink);
  border-bottom:2px solid var(--ink);
  transform:rotate(45deg);
  transition:transform .2s ease;
}
.faq-item[open] .faq-icon{
  transform:rotate(225deg);
}
.faq-answer{
  grid-column:2 / -1;
  padding:0 74px 34px 34px;
}
.faq-answer p{
  max-width:980px;
  margin:0;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;
  font-size:1.02rem;
  line-height:1.62;
  font-weight:300;
  color:var(--ink);
}
.faq-answer a{
  color:var(--purple);
  text-decoration:underline;
  text-underline-offset:3px;
}
@media(max-width:900px){
  .faq-page .site-header.logo-at-top .internal-logo-mask{
    width:120px!important;
    height:69px!important;
    flex-basis:120px!important;
  }
  .faq-page .site-header.logo-at-top .internal-logo-mask span{
    width:120px!important;
    height:69px!important;
  }
  .faq-shell{padding-left:24px;padding-right:24px}
  .faq-item,
  .faq-item summary{
    grid-template-columns:96px minmax(0,1fr) 28px;
  }
  .faq-number{font-size:1.2rem}
  .faq-question{padding:24px 24px}
  .faq-answer{grid-column:2 / -1;padding:0 52px 28px 24px}
}
@media(max-width:600px){
  .faq-shell{padding-left:20px;padding-right:20px}
  .faq-shell h1{text-align:left;margin-bottom:34px!important}
  .faq-item,
  .faq-item summary{
    grid-template-columns:64px minmax(0,1fr) 24px;
  }
  .faq-item summary{min-height:88px}
  .faq-number{font-size:1rem}
  .faq-question{
    padding:20px 16px;
    font-size:1.08rem;
  }
  .faq-icon{
    width:12px;height:12px;margin-right:14px;
  }
  .faq-answer{
    grid-column:2 / -1;
    padding:0 32px 24px 16px;
  }
  .faq-answer p{font-size:.98rem;line-height:1.55}
}


/* =========================================================
   HOMEPAGE HERO — FINAL LOCKED TREATMENT
   ========================================================= */
body:not([class]) .hero{
  min-height:100vh!important;
}
body:not([class]) .hero-content{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  right:0!important;
  bottom:auto!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:170px 5vw 80px!important;
}
body:not([class]) .hero-label{
  margin:0 0 28px!important;
  text-align:center!important;
}
body:not([class]) .hero h1{
  font-size:clamp(4.1rem,9.3vw,9.2rem)!important;
  line-height:.9!important;
  letter-spacing:-.018em!important;
  text-align:center!important;
  max-width:1200px!important;
  margin:0 auto 34px!important;
}
body:not([class]) .hero-intro{
  max-width:620px!important;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(1.05rem,1.45vw,1.35rem)!important;
  line-height:1.4!important;
}
body:not([class]) .hero-scroll{
  right:3.4vw!important;
  bottom:6vh!important;
}
@media(max-width:900px){
  body:not([class]) .hero-content{
    padding:145px 24px 70px!important;
  }
  body:not([class]) .hero h1{
    font-size:clamp(3.5rem,13vw,7rem)!important;
  }
}
@media(max-width:600px){
  body:not([class]) .hero-content{
    padding:125px 20px 68px!important;
  }
  body:not([class]) .hero-label{
    margin-bottom:22px!important;
  }
  body:not([class]) .hero h1{
    font-size:clamp(3.2rem,16vw,5.4rem)!important;
    margin-bottom:28px!important;
  }
}


/* FAQ refinements — match Contact form width and stabilize open answers */
.faq-page .faq-list{
  width:100%!important;
  max-width:860px!important;
  margin:0 auto!important;
}
.faq-page .faq-item{
  display:block!important;
  width:100%!important;
  margin:0 0 14px!important;
}
.faq-page .faq-item summary{
  display:grid!important;
  grid-template-columns:96px minmax(0,1fr) 34px!important;
  width:100%!important;
  min-height:104px!important;
}
.faq-page .faq-number{
  width:96px!important;
}
.faq-page .faq-answer{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0 64px 32px 130px!important;
}
.faq-page .faq-answer p{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
@media(max-width:900px){
  .faq-page .faq-list{
    max-width:700px!important;
  }
  .faq-page .faq-item summary{
    grid-template-columns:82px minmax(0,1fr) 30px!important;
  }
  .faq-page .faq-number{
    width:82px!important;
  }
  .faq-page .faq-answer{
    padding:0 46px 28px 106px!important;
  }
}
@media(max-width:600px){
  .faq-page .faq-list{
    max-width:100%!important;
  }
  .faq-page .faq-item summary{
    grid-template-columns:58px minmax(0,1fr) 24px!important;
  }
  .faq-page .faq-number{
    width:58px!important;
  }
  .faq-page .faq-answer{
    padding:0 28px 24px 74px!important;
  }
}


/* =========================================================
   PUBLICATIONS PAGE — FINAL LOCKED STYLES
   ========================================================= */
.publications-page{background:var(--white)!important}

.publications-page .site-header:not(.logo-at-top) .internal-logo-mask{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.publications-page .site-header.logo-at-top .internal-logo-mask{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:150px!important;
  height:86px!important;
  flex:0 0 150px!important;
}
.publications-page .site-header.logo-at-top .internal-logo-mask span{
  display:block!important;
  width:150px!important;
  height:86px!important;
  background:var(--teal)!important;
  -webkit-mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
  mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
}

/* Hero */
.publications-page .publications-hero{
  display:grid!important;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)!important;
  gap:8vw!important;
  align-items:center!important;
  padding:var(--internal-page-top-clearance,150px) 5vw 8vw!important;
  background:var(--white)!important;
}
.publications-page .publications-cover-wrap{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  min-width:0!important;
}
.publications-page .publications-cover{
  display:block!important;
  width:min(100%,430px)!important;
  max-width:430px!important;
  height:auto!important;
  object-fit:contain!important;
  margin:0!important;
}
.publications-page .publications-hero-copy{
  min-width:0!important;
  max-width:820px!important;
}
.publications-page .publications-hero-copy .section-label{
  color:var(--purple)!important;
  margin-bottom:24px!important;
}
.publications-page .publications-hero-copy h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-weight:400!important;
  font-size:clamp(2.7rem,4.5vw,5.2rem)!important;
  line-height:1.02!important;
  letter-spacing:-.025em!important;
  color:var(--ink)!important;
  margin:0 0 30px!important;
  max-width:800px!important;
}
.publications-page .publications-lead{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.15rem,1.6vw,1.5rem)!important;
  line-height:1.55!important;
  font-weight:300!important;
  max-width:760px!important;
  margin:0!important;
}
.publications-page .publications-buy{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:24px!important;
  background:var(--teal)!important;
  color:#fff!important;
  padding:14px 24px!important;
  text-decoration:none!important;
}
.publications-page .publications-meta{
  margin-top:16px!important;
  font-size:.9rem!important;
  color:var(--purple)!important;
}

/* What you'll find inside */
.publications-page .publications-inside-wix{
  position:relative!important;
  overflow:hidden!important;
  padding:3vw 5vw 6vw!important;
  background:
    linear-gradient(rgba(28,123,124,.18),rgba(28,123,124,.18)),
    url("/assets/site/publications-background.png")
    center/cover no-repeat!important;
}
.publications-page .publications-inside-wix>.section-label{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2.8rem,4.8vw,5.4rem)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
  color:#fff!important;
  text-align:center!important;
  text-transform:none!important;
  margin:0 0 5vw!important;
}
.publications-page .publications-inside-wix .publications-inside-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:3vw!important;
  max-width:1320px!important;
  margin:0 auto!important;
  align-items:stretch!important;
}
.publications-page .publications-inside-wix .publications-inside-grid article{
  position:relative!important;
  background:#fff!important;
  min-height:520px!important;
  padding:105px 42px 48px!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.publications-page .publications-inside-wix .publications-number{
  position:absolute!important;
  top:-38px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:96px!important;
  height:96px!important;
  border-radius:50%!important;
  background:var(--magenta)!important;
  color:#000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:2.45rem!important;
  line-height:1!important;
  font-weight:600!important;
  margin:0!important;
}
.publications-page .publications-inside-wix .publications-inside-grid h2{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.55rem,1.8vw,2rem)!important;
  line-height:1.15!important;
  font-weight:600!important;
  letter-spacing:-.015em!important;
  color:#000!important;
  margin:0 0 42px!important;
}
.publications-page .publications-inside-wix .publications-inside-grid p{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:1.05rem!important;
  line-height:1.85!important;
  font-weight:300!important;
  color:#242424!important;
  margin:0!important;
}

/* Methodology */
.publications-page .publications-methodology-wix{
  padding:5vw 5vw 6vw!important;
  background:var(--lightblue)!important;
  text-align:center!important;
}
.publications-page .publications-methodology-wix>h2{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2rem,3vw,3.5rem)!important;
  line-height:1.08!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
  color:var(--ink)!important;
  margin:0 0 3.8vw!important;
}
.publications-page .publications-steps-wix{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:1.6vw!important;
  border:0!important;
  max-width:1460px!important;
  margin:0 auto!important;
}
.publications-page .publications-steps-wix>div{
  background:var(--teal)!important;
  border:0!important;
  border-radius:36px!important;
  min-height:220px!important;
  padding:34px 24px 30px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
}
.publications-page .publications-steps-wix span{
  display:block!important;
  color:#fff!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.2rem,1.45vw,1.65rem)!important;
  font-weight:300!important;
  margin:0 0 26px!important;
}
.publications-page .publications-steps-wix strong{
  display:block!important;
  color:#fff!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.8rem,2.2vw,2.6rem)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
}
.publications-page .publications-steps-wix em{
  display:block!important;
  color:#fff!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.2rem,1.5vw,1.7rem)!important;
  line-height:1.2!important;
  font-style:normal!important;
  font-weight:300!important;
  margin-top:30px!important;
}
.publications-page .publications-intro-wix{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:28px!important;
  padding:6vw 0 0!important;
  background:transparent!important;
}
.publications-page .publications-intro-wix h3{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2rem,2.6vw,3rem)!important;
  line-height:1!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
  color:var(--ink)!important;
  margin:0!important;
}
.publications-page .publications-intro-button{
  display:inline-flex!important;
  min-width:330px!important;
  min-height:84px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 38px!important;
  background:var(--magenta)!important;
  color:#000!important;
  border:0!important;
  text-decoration:none!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:1.25rem!important;
  font-weight:600!important;
}

/* Responsive */
@media(max-width:900px){
  .publications-page .site-header.logo-at-top .internal-logo-mask{
    width:120px!important;
    height:69px!important;
    flex-basis:120px!important;
  }
  .publications-page .site-header.logo-at-top .internal-logo-mask span{
    width:120px!important;
    height:69px!important;
  }
  .publications-page .publications-hero{
    grid-template-columns:1fr!important;
    gap:50px!important;
    padding:var(--internal-page-top-clearance,120px) 24px 70px!important;
  }
  .publications-page .publications-cover{
    width:min(75vw,420px)!important;
  }
  .publications-page .publications-inside-wix{
    padding-top:70px!important;
  }
  .publications-page .publications-inside-wix .publications-inside-grid{
    grid-template-columns:1fr!important;
    gap:72px!important;
    max-width:620px!important;
  }
  .publications-page .publications-inside-wix .publications-inside-grid article{
    min-height:0!important;
    padding:95px 34px 42px!important;
  }
  .publications-page .publications-steps-wix{
    grid-template-columns:1fr 1fr!important;
    gap:20px!important;
  }
  .publications-page .publications-steps-wix>div{
    min-height:200px!important;
  }
}
@media(max-width:600px){
  .publications-page .publications-methodology-wix{
    padding:60px 20px!important;
  }
  .publications-page .publications-steps-wix{
    grid-template-columns:1fr!important;
  }
  .publications-page .publications-intro-wix{
    padding-top:55px!important;
  }
  .publications-page .publications-intro-button{
    min-width:0!important;
    width:100%!important;
    max-width:340px!important;
  }
}


/* =========================================================
   QC LOCK — SHARED INTERNAL HEADER
   ========================================================= */
.method-page .site-header.logo-at-top .internal-logo-mask,
.about-page .site-header.logo-at-top .internal-logo-mask,
.insights-page .site-header.logo-at-top .internal-logo-mask,
.insight-article-page .site-header.logo-at-top .internal-logo-mask,
.work-page .site-header.logo-at-top .internal-logo-mask,
.publications-page .site-header.logo-at-top .internal-logo-mask,
.contact-page .site-header.logo-at-top .internal-logo-mask,
.faq-page .site-header.logo-at-top .internal-logo-mask{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  width:150px!important;
  height:86px!important;
  flex:0 0 150px!important;
}
.method-page .site-header.logo-at-top .internal-logo-mask span,
.about-page .site-header.logo-at-top .internal-logo-mask span,
.insights-page .site-header.logo-at-top .internal-logo-mask span,
.insight-article-page .site-header.logo-at-top .internal-logo-mask span,
.work-page .site-header.logo-at-top .internal-logo-mask span,
.publications-page .site-header.logo-at-top .internal-logo-mask span,
.contact-page .site-header.logo-at-top .internal-logo-mask span,
.faq-page .site-header.logo-at-top .internal-logo-mask span{
  display:block!important;
  width:150px!important;
  height:86px!important;
  background:var(--teal)!important;
  -webkit-mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
  mask:url('/assets/naked-river-logo-white.png?v=7') left center / contain no-repeat!important;
}
.method-page .site-header:not(.logo-at-top) .internal-logo-mask,
.about-page .site-header:not(.logo-at-top) .internal-logo-mask,
.insights-page .site-header:not(.logo-at-top) .internal-logo-mask,
.insight-article-page .site-header:not(.logo-at-top) .internal-logo-mask,
.work-page .site-header:not(.logo-at-top) .internal-logo-mask,
.publications-page .site-header:not(.logo-at-top) .internal-logo-mask,
.contact-page .site-header:not(.logo-at-top) .internal-logo-mask,
.faq-page .site-header:not(.logo-at-top) .internal-logo-mask{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
@media(max-width:900px){
  .method-page .site-header.logo-at-top .internal-logo-mask,
  .about-page .site-header.logo-at-top .internal-logo-mask,
  .insights-page .site-header.logo-at-top .internal-logo-mask,
  .insight-article-page .site-header.logo-at-top .internal-logo-mask,
  .work-page .site-header.logo-at-top .internal-logo-mask,
  .publications-page .site-header.logo-at-top .internal-logo-mask,
  .contact-page .site-header.logo-at-top .internal-logo-mask,
  .faq-page .site-header.logo-at-top .internal-logo-mask{
    width:120px!important;
    height:69px!important;
    flex-basis:120px!important;
  }
  .method-page .site-header.logo-at-top .internal-logo-mask span,
  .about-page .site-header.logo-at-top .internal-logo-mask span,
  .insights-page .site-header.logo-at-top .internal-logo-mask span,
  .insight-article-page .site-header.logo-at-top .internal-logo-mask span,
  .work-page .site-header.logo-at-top .internal-logo-mask span,
  .publications-page .site-header.logo-at-top .internal-logo-mask span,
  .contact-page .site-header.logo-at-top .internal-logo-mask span,
  .faq-page .site-header.logo-at-top .internal-logo-mask span{
    width:120px!important;
    height:69px!important;
  }
}

/* =========================================================
   QC LOCK — HOMEPAGE METHOD INTRO
   ========================================================= */
body:not([class]) .method .method-intro{
  display:block!important;
  margin:0 0 6vw!important;
  max-width:1050px!important;
}
body:not([class]) .method .method-intro .section-label{
  display:block!important;
  margin:0 0 24px!important;
}
body:not([class]) .method .method-intro h2{
  margin:0 0 20px!important;
  max-width:980px!important;
}
body:not([class]) .method .method-intro p{
  margin:0!important;
  max-width:620px!important;
}
@media(max-width:600px){
  body:not([class]) .method .method-intro{
    margin-bottom:50px!important;
  }
  body:not([class]) .method .method-intro .section-label{
    margin-bottom:18px!important;
  }
}

/* =========================================================
   QC LOCK — ABOUT PAGE
   ========================================================= */
.about-page{background:var(--white)!important}
.about-page .about-wix{
  display:grid!important;
  grid-template-columns:minmax(0,1.42fr) minmax(360px,.95fr)!important;
  min-height:calc(100vh - 90px)!important;
  padding-top:var(--internal-page-top-clearance,150px)!important;
  align-items:stretch!important;
}
.about-page .about-wix-copy{
  background:var(--lightblue)!important;
  padding:4.6vw 6.2vw 6vw 9vw!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:0!important;
}
.about-page .about-wix-copy h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2.6rem,3.4vw,4rem)!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
  color:var(--ink)!important;
  text-transform:lowercase!important;
  margin:0 0 2.6vw!important;
  text-align:left!important;
}
.about-page .about-wix-copy p{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1rem,1.04vw,1.14rem)!important;
  line-height:1.48!important;
  font-weight:300!important;
  color:var(--ink)!important;
  margin:0 0 1.25em!important;
  max-width:760px!important;
}
.about-page .about-wix-copy .about-positioning{
  max-width:820px!important;
  margin:1.1vw 0 1.7em!important;
  padding:1.3em 0 1.3em 1.4em!important;
  border-left:3px solid var(--teal)!important;
  font-size:clamp(1.18rem,1.34vw,1.48rem)!important;
  line-height:1.38!important;
  font-weight:300!important;
  color:var(--teal)!important;
}
.about-page .about-wix-copy .about-positioning strong{
  display:block!important;
  margin-top:.48em!important;
  font-weight:600!important;
  color:var(--purple)!important;
}
.about-page .about-linkedin-name{
  color:var(--ink)!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}
.about-page .about-linkedin-name:hover{
  color:var(--purple)!important;
}
.about-page .about-work-button{
  display:inline-flex!important;
  min-width:190px!important;
  min-height:52px!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:flex-start!important;
  background:var(--teal)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:600!important;
  margin:1.4vw 0 0!important;
  padding:0 28px!important;
}
.about-page .about-wix-image{
  min-height:100%!important;
  overflow:hidden!important;
}
.about-page .about-wix-image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:calc(100vh - 90px)!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.about-page .about-newsletter{
  background:var(--lightblue)!important;
}
.about-page .about-newsletter h2{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-weight:400!important;
  color:var(--teal)!important;
  max-width:900px!important;
}
@media(max-width:1200px){
  .about-page .about-wix-copy{
    padding-left:6vw!important;
    padding-right:5vw!important;
  }
}
@media(max-width:1000px){
  .about-page .about-wix{
    grid-template-columns:1fr!important;
    padding-top:var(--internal-page-top-clearance,120px)!important;
  }
  .about-page .about-wix-copy{
    padding:55px 28px 65px!important;
    justify-content:flex-start!important;
  }
  .about-page .about-wix-image img{
    min-height:0!important;
    height:auto!important;
  }
}
@media(max-width:600px){
  .about-page .about-wix-copy{
    padding:44px 20px 55px!important;
  }
  .about-page .about-wix-copy p{
    font-size:1rem!important;
    line-height:1.35!important;
  }
  .about-page .about-wix-copy .about-positioning{
    padding-left:1em!important;
    font-size:1.12rem!important;
    line-height:1.42!important;
  }
}

/* =========================================================
   QC LOCK — INSIGHTS INDEX
   ========================================================= */
.insights-page{background:var(--white)!important}
.insights-page .insights-intro{
  padding:var(--internal-page-top-clearance,150px) 3.4vw 3.5vw!important;
  background:var(--white)!important;
}
.insights-page .insights-intro .section-label{
  color:var(--purple)!important;
  margin-bottom:22px!important;
}
.insights-page .insights-intro h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2.5rem,4vw,4.7rem)!important;
  line-height:1.05!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  color:var(--ink)!important;
  max-width:1200px!important;
  margin:0!important;
}
.insights-page .insights-filters{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px 22px!important;
  padding:0 3.4vw 3vw!important;
  background:var(--white)!important;
}
.insights-page .insights-filter{
  appearance:none!important;
  border:0!important;
  border-bottom:1px solid transparent!important;
  border-radius:0!important;
  background:transparent!important;
  padding:0 0 4px!important;
  color:var(--purple)!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.9rem!important;
  line-height:1.2!important;
  cursor:pointer!important;
}
.insights-page .insights-filter:hover,
.insights-page .insights-filter.active{
  border-bottom-color:currentColor!important;
}
.insights-page .insights-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4.5vw 2.6vw!important;
  padding:0 3.4vw 8vw!important;
  background:var(--white)!important;
}
.insights-page .insight-card{
  min-width:0!important;
}
.insights-page .insight-card a{
  display:block!important;
  color:inherit!important;
  text-decoration:none!important;
}
.insights-page .insight-card img{
  display:block!important;
  width:100%!important;
  aspect-ratio:4 / 3!important;
  height:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  margin:0 0 18px!important;
  background:#eee!important;
}
.insights-page .insight-card--quiet img{
  object-position:left center!important;
}
.insights-page .insight-card--executor img{
  object-fit:contain!important;
  background:#111!important;
}
.insights-page .insight-meta{
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin:0 0 12px!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.68rem!important;
  line-height:1.3!important;
  color:var(--purple)!important;
}
.insights-page .insight-card h2{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1.45rem,1.8vw,2.25rem)!important;
  line-height:1.04!important;
  font-weight:400!important;
  letter-spacing:-.02em!important;
  color:var(--ink)!important;
  margin:0 0 12px!important;
}
.insights-page .insight-card p{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.95rem!important;
  line-height:1.45!important;
  font-weight:300!important;
  color:#383838!important;
  margin:0!important;
}
@media(max-width:1050px){
  .insights-page .insights-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  .insights-page .insights-intro{
    padding:var(--internal-page-top-clearance,120px) 20px 36px!important;
  }
  .insights-page .insights-filters{
    padding:0 20px 40px!important;
  }
  .insights-page .insights-grid{
    grid-template-columns:1fr!important;
    padding:0 20px 70px!important;
  }
  .insights-page .insight-meta{
    flex-direction:column!important;
    gap:4px!important;
  }
}


/* =========================================================
   INTERNAL PAGE TITLE SYSTEM
   ========================================================= */
.page-kicker{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.82rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--purple)!important;
  margin:0 0 24px!important;
}

.about-page .about-page-title{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(2.2rem,3.4vw,4rem)!important;
  line-height:1.06!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  color:var(--ink)!important;
  text-transform:none!important;
  text-align:left!important;
  margin:0 0 2.2vw!important;
  max-width:760px!important;
}

.contact-page .contact-wix-copy .page-kicker{
  margin-bottom:28px!important;
}

.faq-page .faq-shell>.page-kicker{
  width:min(100%,860px)!important;
  margin:0 auto 24px!important;
}

.faq-page .faq-shell h1{
  text-transform:none!important;
  text-align:left!important;
  width:min(100%,860px)!important;
  margin:0 auto 48px!important;
  font-size:clamp(2.5rem,4vw,4.7rem)!important;
  font-weight:400!important;
  line-height:1.04!important;
}


/* About title/content rhythm — align with internal page system */
.about-page .about-wix-copy .page-kicker{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.82rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--purple)!important;
  margin:0 0 24px!important;
}
.about-page .about-wix-copy .about-opening{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:clamp(1rem,1.04vw,1.14rem)!important;
  line-height:1.48!important;
  font-weight:300!important;
  color:var(--ink)!important;
  margin:0 0 1.25em!important;
  max-width:760px!important;
}


/* Final page-kicker normalization */
.method-page .page-kicker,
.publications-page .page-kicker,
.work-page .page-kicker,
.insights-page .page-kicker,
.about-page .page-kicker,
.contact-page .page-kicker,
.faq-page .page-kicker{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.82rem!important;
  line-height:1!important;
  font-weight:600!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--purple)!important;
  margin:0 0 24px!important;
}


/* Homepage hero fine-tuning */
body:not([class]) .hero-label{
  margin:0 0 34px!important;
}
body:not([class]) .hero h1{
  font-size:clamp(3.9rem,8.75vw,8.65rem)!important;
  margin:0 auto 26px!important;
}
body:not([class]) .hero-intro{
  margin:0 auto!important;
  max-width:600px!important;
  line-height:1.35!important;
}
@media(max-width:900px){
  body:not([class]) .hero h1{
    font-size:clamp(3.35rem,12.2vw,6.6rem)!important;
  }
}
@media(max-width:600px){
  body:not([class]) .hero-label{
    margin-bottom:26px!important;
  }
  body:not([class]) .hero h1{
    font-size:clamp(3rem,15vw,5rem)!important;
    margin-bottom:22px!important;
  }
}


/* Accessibility helper */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}


/* 404 page */
.not-found-page{background:var(--lightblue)!important}
.not-found{
  min-height:100vh;
  padding:180px 7vw 80px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  max-width:980px;
}
.not-found h1{
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif;
  font-size:clamp(3rem,6vw,6.5rem);
  line-height:.98;
  font-weight:400;
  letter-spacing:-.03em;
  color:var(--teal);
  margin:0 0 24px;
}
.not-found p{
  font-size:1.1rem;
  line-height:1.5;
  margin:0 0 30px;
}


/* Homepage publication image reveal — preserve Wix motion feel */
body:not([class]) .publication .book-image{
  opacity:0;
  transform:translateY(42px) rotate(-5deg);
  transform-origin:50% 80%;
  transition:
    opacity .72s ease-out,
    transform .86s cubic-bezier(.22,.75,.25,1);
  will-change:transform,opacity;
}
body:not([class]) .publication .book-image.is-revealed{
  opacity:1;
  transform:translateY(0) rotate(0deg);
}
@media (prefers-reduced-motion: reduce){
  body:not([class]) .publication .book-image{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* Homepage publication image reveal — stronger turn-up motion */
body:not([class]) .publication{
  perspective:1200px;
}
body:not([class]) .publication .book-image{
  opacity:0;
  transform:
    translate3d(85px,110px,0)
    rotateZ(8deg)
    rotateY(-10deg)
    scale(.94);
  transform-origin:78% 88%;
  transition:
    opacity .8s ease-out,
    transform 1.35s cubic-bezier(.16,.84,.24,1);
  will-change:transform,opacity;
}
body:not([class]) .publication .book-image.is-revealed{
  opacity:1;
  transform:
    translate3d(0,0,0)
    rotateZ(0deg)
    rotateY(0deg)
    scale(1);
}
@media (prefers-reduced-motion: reduce){
  body:not([class]) .publication .book-image{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* Homepage Method phases — sequential reveal */
body:not([class]) .method-grid article{
  opacity:0;
  transform:translateY(28px);
  transition:
    opacity .62s ease-out,
    transform .72s cubic-bezier(.22,.75,.25,1);
}
body:not([class]) .method-grid.is-revealed article{
  opacity:1;
  transform:translateY(0);
}
body:not([class]) .method-grid.is-revealed article:nth-child(1){transition-delay:.05s}
body:not([class]) .method-grid.is-revealed article:nth-child(2){transition-delay:.25s}
body:not([class]) .method-grid.is-revealed article:nth-child(3){transition-delay:.45s}
body:not([class]) .method-grid.is-revealed article:nth-child(4){transition-delay:.65s}
@media (prefers-reduced-motion: reduce){
  body:not([class]) .method-grid article{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
}


/* Method page phase icons — subtle scale emphasis on entry */
.method-page-faithful .method-faithful-image img{
  transform:scale(1);
  transform-origin:center center;
}
.method-page-faithful .method-faithful-image img.icon-pulse{
  animation:methodIconPulse .82s cubic-bezier(.22,.75,.25,1) both;
}
@keyframes methodIconPulse{
  0%{transform:scale(1)}
  45%{transform:scale(1.065)}
  100%{transform:scale(1)}
}
@media (prefers-reduced-motion: reduce){
  .method-page-faithful .method-faithful-image img.icon-pulse{
    animation:none!important;
  }
}


/* Method page phase icon emphasis — reliable section-triggered version */
.method-page-faithful .method-faithful-block .method-faithful-image img{
  transform:scale(1);
  transform-origin:center center;
}
.method-page-faithful .method-faithful-block.icon-animate .method-faithful-image img{
  animation:methodIconExpandReturn 1s cubic-bezier(.22,.75,.25,1) both;
}
@keyframes methodIconExpandReturn{
  0%{transform:scale(1)}
  48%{transform:scale(1.11)}
  100%{transform:scale(1)}
}
@media (prefers-reduced-motion: reduce){
  .method-page-faithful .method-faithful-block.icon-animate .method-faithful-image img{
    animation:none!important;
  }
}


/* Method page icon motion — simple zoom with slight end shake */
.method-page-faithful .method-faithful-block.icon-animate .method-faithful-image img{
  animation:methodIconZoomShake 1.05s ease-out both;
}
@keyframes methodIconZoomShake{
  0%{transform:scale(.92) translateX(0)}
  68%{transform:scale(1.07) translateX(0)}
  82%{transform:scale(1) translateX(0)}
  88%{transform:scale(1) translateX(-4px)}
  92%{transform:scale(1) translateX(4px)}
  96%{transform:scale(1) translateX(-2px)}
  100%{transform:scale(1) translateX(0)}
}
@media (prefers-reduced-motion: reduce){
  .method-page-faithful .method-faithful-block.icon-animate .method-faithful-image img{
    animation:none!important;
  }
}


/* Newsletter form status */
.newsletter-form .newsletter-status{
  width:100%;
  margin:12px 0 0!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.86rem!important;
  line-height:1.35!important;
  font-weight:400!important;
}
.newsletter-form .newsletter-status.is-success{
  color:var(--teal)!important;
}
.newsletter-form .newsletter-status.is-error{
  color:#9b2c2c!important;
}
.newsletter-form button:disabled{
  opacity:.65!important;
  cursor:wait!important;
}


/* Newsletter form layout — final spacing refinement */
.newsletter-form{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  column-gap:20px!important;
  row-gap:0!important;
  width:100%!important;
}
.newsletter-form input[type="email"]{
  flex:1 1 320px!important;
  min-width:0!important;
  width:auto!important;
}
.newsletter-form button[type="submit"]{
  flex:0 0 auto!important;
  margin-left:auto!important;
}
.newsletter-form .newsletter-status{
  flex:0 0 100%!important;
  width:100%!important;
  margin:20px 0 0!important;
  padding:0!important;
  text-align:left!important;
}
@media(max-width:600px){
  .newsletter-form{
    column-gap:14px!important;
  }
  .newsletter-form input[type="email"]{
    flex-basis:220px!important;
  }
  .newsletter-form .newsletter-status{
    margin-top:16px!important;
  }
}


/* Contact form operational states */
.contact-honeypot{
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.contact-form-status{
  margin:18px 0 0!important;
  font-family:Avenir,"Avenir Next","Helvetica Neue",Arial,sans-serif!important;
  font-size:.92rem!important;
  line-height:1.4!important;
}
.contact-form-status.is-success{color:var(--teal)!important}
.contact-form-status.is-error{color:#9b2c2c!important}
.contact-form button:disabled{
  opacity:.65!important;
  cursor:wait!important;
}


/* =========================================================
   FINAL RESPONSIVE QC
   ========================================================= */
html,body{
  overflow-x:hidden;
}

/* Work page */
@media(max-width:1100px){
  .work-page .work-project-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:46px 28px!important;
  }
  .work-page .work-company-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:38px 34px!important;
  }
}
@media(max-width:650px){
  .work-page .work-page-intro{
    padding:var(--internal-page-top-clearance,120px) 20px 34px!important;
  }
  .work-page .work-project-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
    padding:0 20px 70px!important;
  }
  .work-page .work-project-card img{
    margin-bottom:16px!important;
  }
  .work-page .work-companies{
    padding:64px 20px!important;
  }
  .work-page .work-company-grid{
    grid-template-columns:1fr!important;
    gap:30px!important;
  }
}

/* Narrow-phone newsletter layout */
@media(max-width:480px){
  .newsletter-form{
    display:grid!important;
    grid-template-columns:1fr!important;
    column-gap:0!important;
  }
  .newsletter-form input[type="email"]{
    width:100%!important;
    min-width:0!important;
    flex:none!important;
  }
  .newsletter-form button[type="submit"]{
    margin:8px 0 0!important;
    padding-left:0!important;
    justify-self:start!important;
  }
  .newsletter-form .newsletter-status{
    margin-top:16px!important;
  }
}

/* Mobile navigation consistency */
@media(max-width:900px){
  .site-header{
    z-index:100!important;
  }
  .site-nav{
    max-height:calc(100vh - 90px)!important;
    overflow-y:auto!important;
  }
  .site-nav a{
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
  }
}
