:root {
  --paper:#f4f0e6;
  --green:#183e35;
  --plum:#584666;
  --gold:#bead74;
  --ink:#19382f;
  --line:rgba(24,62,53,.22);
  --serif:Georgia,'Times New Roman',serif;
  --sans:Arial,Helvetica,sans-serif
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:92px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  overflow-x:hidden
}
body:after {
  content:'';
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:100;
  opacity:.04;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.7' filter='url(%23n)'/%3E%3C/svg%3E")
}
a {
  color:inherit;
  text-decoration:none
}
button,input {
  font:inherit
}
button,a {
   -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
button:focus-visible,a:focus-visible,input:focus-visible {
  outline:3px solid var(--gold);
  outline-offset:5px
}
button {
  color:inherit
}
::selection {
  background:var(--gold);
  color:var(--green)
}
img {
  max-width:100%;
  display:block
}
p {
  line-height:1.7
}
h1,h2,h3,p {
  margin-top:0
}
h1,h2,h3 {
  font-family:var(--serif);
  font-weight:400;
  letter-spacing:-.045em
}
h2 {
  font-size:clamp(44px,6.5vw,94px);
  line-height:1.02
}
h3 {
  font-size:32px;
  line-height:1.12
}
.wrap {
  width:min(1320px,calc(100% - 100px));
  margin:auto
}
.eyebrow {
  font-size:10px;
  line-height:1.6;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-weight:600
}
.muted {
  opacity:.65
}
.wordmark {
  font-family:var(--serif);
  font-weight:900;
  letter-spacing:-.075em;
  font-size:37px;
  line-height:1
}
.wordmark .b {
  display:inline-block;
  transform:rotate(-5deg)
}
.nav {
  position:fixed;
  inset:0 0 auto;
  z-index:30;
  background:rgba(244,240,230,.95);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line)
}
.nav-inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  height:86px;
  gap:30px
}
.navlinks {
  display:flex;
  align-items:center;
  gap:30px;
  font-size:12px
}
.navlinks>a {
  position:relative;
  padding:12px 0
}
.navlinks>a:after {
  content:'';
  position:absolute;
  left:0;
  bottom:6px;
  height:1px;
  background:var(--plum);
  width:0;
  transition:width .25s
}
.navlinks>a:hover:after {
  width:100%
}
.nav-cta {
  border:1px solid var(--green);
  border-radius:30px;
  padding:12px 21px!important
}
.menu {
  display:none;
  background:none;
  border:0;
  padding:12px;
  font-size:22px
}
.progress {
  position:absolute;
  bottom:-1px;
  left:0;
  height:2px;
  background:var(--gold);
  width:0
}
.hero {
  margin-top:86px;
  position:relative;
  min-height:820px;
  height:calc(100svh - 86px);
  max-height:1050px;
  background:var(--green);
  color:var(--paper);
  overflow:hidden
}
.hero-image {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:60% 50%;
  filter:brightness(.73);
  transform:scale(1.025)
}
.hero:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,35,27,.82) 0%,rgba(9,35,27,.38) 52%,rgba(9,35,27,.05) 100%),linear-gradient(0deg,rgba(9,35,27,.7),transparent 30%)
}
.hero-content {
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:10px;
  padding-bottom:140px
}
.hero-top {
  display:flex;
  align-items:center;
  gap:15px;
  margin-bottom:35px
}
.tiny-star {
  font-size:27px;
  color:var(--gold)
}
h1 {
  font-size:clamp(67px,8.3vw,128px);
  max-width:950px;
  line-height:.98;
  margin:0 0 30px;
  letter-spacing:-.055em
}
.hero h1 em {
  color:var(--gold);
  font-weight:400
}
.hero-copy {
  font-size:15px;
  max-width:365px;
  line-height:1.8;
  color:#e4e4d7;
  margin-bottom:29px
}
.pill {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  padding:17px 24px;
  border-radius:40px;
  font-size:12px;
  border:1px solid transparent;
  transition:background .2s,transform .2s
}
.pill:hover {
  transform:translateY(-3px)
}
.pill.gold {
  background:var(--gold);
  color:var(--green)
}
.pill.plum {
  background:var(--plum);
  color:var(--paper)
}
.pill.outline {
  border-color:currentColor
}
.arrow {
  font-size:22px;
  line-height:1
}
.hero-actions {
  display:flex;
  gap:22px;
  align-items:center
}
.textlink {
  font-size:12px;
  border-bottom:1px solid currentColor;
  padding-bottom:6px
}
.hero-bottom {
  position:absolute;
  bottom:40px;
  left:0;
  right:0;
  z-index:3;
  display:flex;
  align-items:flex-end;
  justify-content:space-between
}
.hero-bottom p {
  font-family:var(--serif);
  font-style:italic;
  font-size:20px;
  line-height:1.4;
  margin:0;
  max-width:240px
}
.scroll-link {
  display:flex;
  gap:17px;
  align-items:center
}
.scroll-circle {
  display:grid;
  place-items:center;
  width:45px;
  height:45px;
  border:1px solid #b0b4a270;
  border-radius:50%
}
.hero-label {
  position:absolute;
  right:46px;
  top:40px;
  z-index:3;
  writing-mode:vertical-rl;
  color:var(--paper);
  opacity:.7
}
.hero-path {
  position:absolute;
  right:-60px;
  top:80px;
  bottom:0;
  z-index:2;
  width:43%;
  height:80%;
  pointer-events:none;
  opacity:.65
}
.hero-path path {
  stroke:var(--gold);
  stroke-width:1.1;
  fill:none;
  stroke-dasharray:1100;
  stroke-dashoffset:1100;
  animation:draw 3s .4s forwards
}
@keyframes draw {
  to {
    stroke-dashoffset:0
  }
  
}
.ticker {
  background:var(--gold);
  border-bottom:1px solid var(--green);
  overflow:hidden;
  padding:20px 0
}
.ticker-track {
  display:flex;
  gap:40px;
  width:max-content;
  animation:ticker 38s linear infinite;
  align-items:center
}
.ticker span {
  font-family:var(--serif);
  font-size:26px;
  white-space:nowrap
}
.ticker i {
  font-size:17px;
  font-style:normal
}
@keyframes ticker {
  to {
    transform:translateX(-50%)
  }
  
}
.section {
  padding:112px 0
}
.section-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:45px;
  margin-bottom:50px
}
.section-head h2 {
  margin-bottom:0
}
.section-head .intro-text {
  max-width:300px;
  font-size:14px;
  margin-bottom:6px
}
.section-index {
  margin-bottom:20px;
  display:flex;
  gap:20px;
  align-items:center
}
.section-index:before {
  content:'';
  width:38px;
  height:1px;
  background:currentColor
}
.intro-grid {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:90px;
  align-items:center
}
.intro-art {
  position:relative;
  min-height:470px;
  background:var(--green);
  border-radius:48% 48% 2px 2px;
  overflow:hidden
}
.intro-art img {
  width:100%;
  height:470px;
  object-fit:cover;
  object-position:82% center;
  filter:brightness(.7)
}
.intro-art:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#183e35bb,transparent 60%)
}
.intro-art .monogram {
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  z-index:1;
  font-family:var(--serif);
  font-size:320px;
  font-style:italic;
  color:var(--paper);
  mix-blend-mode:screen;
  line-height:1;
  transform:rotate(-8deg)
}
.art-caption {
  position:absolute;
  bottom:30px;
  left:30px;
  color:var(--paper);
  z-index:2
}
.intro-body h2 {
  font-size:clamp(42px,5vw,71px);
  margin-bottom:30px
}
.intro-body h2 em {
  color:var(--plum)
}
.intro-body p {
  font-size:15px;
  max-width:465px
}
.signature {
  font-family:var(--serif);
  font-style:italic;
  font-size:35px;
  margin-top:35px;
  transform:rotate(-5deg);
  display:inline-block
}
.signature small {
  display:block;
  font-family:var(--sans);
  font-size:9px;
  letter-spacing:.15em;
  font-style:normal;
  transform:rotate(5deg);
  margin-top:12px
}
.topics {
  background:var(--plum);
  color:var(--paper);
  position:relative;
  overflow:hidden
}
.topics:before {
  content:'?';
  font-family:var(--serif);
  font-style:italic;
  font-size:600px;
  line-height:1;
  position:absolute;
  right:-20px;
  top:40px;
  opacity:.04;
  pointer-events:none
}
.topics .section-head {
  position:relative
}
.topic-list {
  border-top:1px solid #f4f0e63d;
  position:relative
}
.topic-row {
  border-bottom:1px solid #f4f0e63d
}
.topic-button {
  width:100%;
  background:transparent;
  border:0;
  text-align:left;
  display:grid;
  grid-template-columns:55px 1fr 300px 45px;
  gap:20px;
  align-items:center;
  padding:27px 0;
  transition:padding .3s
}
.topic-button:hover {
  padding-left:12px
}
.topic-num {
  font-size:10px;
  color:var(--gold)
}
.topic-name {
  font-family:var(--serif);
  font-size:clamp(30px,3.9vw,54px);
  letter-spacing:-.045em
}
.topic-summary {
  font-size:12px;
  opacity:.7;
  line-height:1.6
}
.topic-plus {
  font-size:28px;
  font-weight:200;
  color:var(--gold);
  transition:transform .3s
}
.topic-button[aria-expanded=true] .topic-plus {
  transform:rotate(45deg)
}
.topic-detail {
  display:none;
  margin:0 65px 27px;
  font-size:14px;
  max-width:660px
}
.topic-detail p {
  opacity:.85
}
.topic-detail .textlink {
  color:var(--gold)
}
.topic-row.open .topic-detail {
  display:block
}
.writing-top {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:0 0 38px
}
.filter {
  background:none;
  border:1px solid var(--line);
  border-radius:25px;
  padding:10px 16px;
  font-size:11px;
  transition:all .2s
}
.filter:hover,.filter.active {
  background:var(--green);
  color:var(--paper);
  border-color:var(--green)
}
.article-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:27px
}
.article {
  padding-bottom:27px;
  border-bottom:1px solid var(--line)
}
.article[hidden] {
  display:none
}
.article-cover {
  height:230px;
  position:relative;
  overflow:hidden;
  background:var(--green);
  margin-bottom:24px;
  display:grid;
  place-items:center
}
.article-cover img {
  height:100%;
  width:100%;
  object-fit:cover;
  transition:transform .7s
}
.article:hover .article-cover img {
  transform:scale(1.07)
}
.article-cover .cover-word {
  font-family:var(--serif);
  font-size:85px;
  font-style:italic;
  letter-spacing:-.06em;
  color:var(--paper);
  position:relative;
  z-index:2
}
.cover-2 {
  background:var(--plum)
}
.cover-2:after {
  content:'';
  position:absolute;
  width:170px;
  height:170px;
  border:1px solid var(--gold);
  border-radius:50%;
  transform:translateX(45px)
}
.cover-3 {
  background:var(--gold)
}
.cover-3 .cover-word {
  color:var(--green)
}
.cover-3:before,.cover-3:after {
  content:'';
  position:absolute;
  width:110px;
  height:180px;
  border:1px solid #183e3570;
  border-radius:100%;
  transform:rotate(35deg);
  left:80px
}
.cover-3:after {
  left:140px;
  transform:rotate(-35deg)
}
.cover-4 img {
  object-position:85% center;
  filter:brightness(.7)
}
.cover-5 {
  background:#e6e0d4
}
.cover-5 .cover-word {
  color:var(--plum);
  font-size:72px
}
.cover-6 {
  background:var(--green)
}
.cover-6 .orbit {
  position:absolute;
  inset:40px;
  border:1px solid var(--gold);
  border-radius:50%;
  transform:rotate(-30deg)
}
.article-meta {
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:16px;
  color:var(--plum);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.12em
}
.article h3 {
  font-size:30px;
  margin-bottom:14px
}
.article p {
  font-size:12px;
  opacity:.75;
  margin-bottom:22px
}
.article-link {
  background:none;
  border:0;
  padding:0 0 5px;
  border-bottom:1px solid var(--line);
  font-size:11px;
  display:flex;
  align-items:center;
  gap:20px
}
.article-link:hover {
  color:var(--plum)
}
.sample-note {
  font-size:11px;
  opacity:.65;
  margin-top:26px;
  max-width:650px
}
.timeline-section {
  background:var(--green);
  color:var(--paper);
  position:relative;
  overflow:hidden
}
.timeline-section h2 em {
  color:var(--gold)
}
.timeline-grid {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:100px
}
.timeline-lead {
  align-self:start;
  position:sticky;
  top:125px
}
.timeline-lead>p {
  font-size:14px;
  max-width:300px;
  color:#f4f0e6b0
}
.timeline-lead .eyebrow {
  color:var(--gold)
}
.timeline-quote {
  font-family:var(--serif);
  font-size:30px;
  font-style:italic;
  line-height:1.3;
  border-left:1px solid var(--gold);
  padding-left:22px;
  margin-top:55px;
  max-width:320px
}
.timeline {
  position:relative;
  padding-left:42px
}
.timeline:before {
  content:'';
  position:absolute;
  left:4px;
  top:7px;
  bottom:65px;
  width:1px;
  background:linear-gradient(var(--gold),#bead7433)
}
.milestone {
  padding-bottom:48px;
  position:relative
}
.milestone:before {
  content:'';
  position:absolute;
  left:-42px;
  top:5px;
  width:9px;
  height:9px;
  border:1px solid var(--gold);
  border-radius:50%;
  background:var(--green)
}
.milestone:last-child:before {
  background:var(--gold);
  box-shadow:0 0 0 6px #bead741c
}
.milestone .eyebrow {
  color:var(--gold);
  margin-bottom:13px
}
.milestone h3 {
  font-size:38px;
  margin-bottom:15px
}
.milestone p {
  font-size:13px;
  color:#f4f0e6b0;
  max-width:480px
}
.milestone small {
  font-size:10px;
  color:var(--gold);
  border-bottom:1px solid #bead7444;
  padding-bottom:4px
}
.timeline-note {
  font-size:10px!important;
  margin-top:35px;
  color:#f4f0e68c!important
}
.works {
  padding-bottom:120px
}
.works-grid {
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:30px
}
.work {
  min-height:440px;
  padding:35px;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  color:var(--paper)
}
.work-film {
  background:var(--green)
}
.work-film>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  filter:brightness(.4)
}
.work-film:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#183e35,transparent 70%)
}
.work-top,.work-bottom {
  z-index:2;
  position:relative
}
.work-top {
  display:flex;
  align-items:center;
  justify-content:space-between
}
.work-bottom h3 {
  font-size:47px;
  margin-bottom:12px
}
.work-bottom p {
  font-size:13px;
  max-width:300px;
  margin-bottom:20px
}
.work-book {
  background:var(--plum)
}
.book-mini {
  position:absolute;
  width:150px;
  height:206px;
  background:var(--paper);
  right:38px;
  top:75px;
  color:var(--green);
  box-shadow:15px 18px 0 #0002;
  transform:rotate(10deg);
  padding:16px;
  border-left:5px solid #e2dccc;
  display:flex;
  flex-direction:column;
  justify-content:space-between
}
.book-mini strong {
  font-family:var(--serif);
  font-size:12px;
  letter-spacing:-.06em
}
.book-mini span {
  font-family:var(--serif);
  font-size:27px;
  line-height:1.1
}
.book-mini small {
  font-size:8px;
  letter-spacing:.15em
}
.work-book .work-bottom {
  max-width:230px
}
.work-book .work-bottom h3 {
  font-size:43px
}
.work .textlink {
  background:none;
  border:0;
  border-bottom:1px solid #f4f0e670;
  color:inherit;
  cursor:pointer
}
.interlude {
  padding:85px 0 95px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  text-align:center;
  position:relative
}
.interlude .eyebrow {
  color:var(--plum)
}
.interlude blockquote {
  font-family:var(--serif);
  font-size:clamp(38px,5.5vw,76px);
  line-height:1.12;
  letter-spacing:-.045em;
  max-width:980px;
  margin:28px auto
}
.interlude em {
  color:var(--plum)
}
.newsletter {
  padding:115px 0;
  background:#e8e2d5
}
.newsletter-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:100px;
  align-items:center
}
.newsletter h2 {
  font-size:clamp(48px,5.2vw,78px);
  margin-bottom:24px
}
.newsletter h2 em {
  color:var(--plum)
}
.newsletter p {
  font-size:14px;
  max-width:360px
}
.newsletter-form {
  border-top:1px solid var(--green);
  padding-top:28px
}
.form-label {
  display:block;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:15px
}
.email-row {
  display:flex;
  border-bottom:1px solid var(--green);
  padding-bottom:13px;
  gap:12px
}
.email-row input {
  border:0;
  background:transparent;
  min-width:0;
  flex:1;
  padding:12px 0;
  font-size:17px;
  color:var(--green)
}
.email-row input::placeholder {
  color:#183e3580
}
.email-row button {
  background:var(--plum);
  color:var(--paper);
  border:0;
  border-radius:50%;
  width:48px;
  height:48px;
  font-size:23px;
  flex-shrink:0
}
.preferences {
  border:0;
  padding:0;
  margin:28px 0 18px
}
.preferences legend {
  font-size:11px;
  margin-bottom:14px
}
.check-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:13px
}
.check-grid label {
  font-size:12px;
  display:flex;
  gap:8px;
  align-items:center;
  cursor:pointer
}
.check-grid input {
  accent-color:var(--plum);
  width:15px;
  height:15px
}
.form-note {
  font-size:10px!important;
  max-width:none!important;
  opacity:.65;
  line-height:1.6
}
.form-status {
  font-size:12px;
  padding:16px 0;
  color:var(--plum);
  margin:0;
  min-height:30px
}
.footer {
  background:var(--green);
  color:var(--paper);
  padding:60px 0 25px
}
.footer-top {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:40px;
  margin-bottom:65px
}
.footer .wordmark {
  font-size:clamp(66px,11vw,160px)
}
.footer-top p {
  font-size:12px;
  max-width:225px;
  opacity:.7
}
.footer-bottom {
  border-top:1px solid #f4f0e633;
  padding-top:23px;
  display:flex;
  justify-content:space-between;
  gap:25px;
  font-size:10px;
  color:#f4f0e699
}
.footer-links {
  display:flex;
  gap:22px
}
.footer-links a:hover {
  color:var(--gold)
}
.palette {
  display:flex;
  gap:6px;
  align-items:center
}
.palette i {
  width:12px;
  height:12px;
  border:1px solid #fff2;
  border-radius:50%;
  display:block
}
.palette i:nth-child(1) {
  background:var(--paper)
}
.palette i:nth-child(2) {
  background:var(--gold)
}
.palette i:nth-child(3) {
  background:var(--plum)
}
.palette i:nth-child(4) {
  background:var(--green)
}
.reveal {
  transition:transform .8s,opacity .8s
}
.js .reveal {
  opacity:0;
  transform:translateY(30px)
}
.js .reveal.visible {
  opacity:1;
  transform:none
}
dialog {
  border:0;
  background:var(--paper);
  color:var(--green);
  width:min(760px,calc(100% - 32px));
  max-height:85svh;
  padding:55px;
  border-radius:3px;
  box-shadow:0 30px 100px #0005
}
dialog::backdrop {
  background:#0b211dd9;
  backdrop-filter:blur(8px)
}
dialog h2 {
  font-size:50px;
  line-height:1.05;
  margin-bottom:25px
}
dialog p {
  font-size:15px
}
dialog .close {
  position:absolute;
  top:15px;
  right:18px;
  border:0;
  background:none;
  font-size:27px
}
dialog .eyebrow {
  color:var(--plum);
  margin-bottom:25px
}
.dialog-footer {
  border-top:1px solid var(--line);
  padding-top:20px;
  margin-top:28px;
  font-size:11px!important;
  opacity:.7
}
.backtop {
  position:fixed;
  right:22px;
  bottom:20px;
  z-index:15;
  width:42px;
  height:42px;
  border:1px solid var(--gold);
  background:var(--green);
  color:var(--paper);
  display:grid;
  place-items:center;
  border-radius:50%;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s
}
.backtop.show {
  opacity:1;
  pointer-events:auto
}

@media(min-width:1650px) {
  .hero-content {
    padding-bottom:160px
  }
  
}
@media(max-width:1100px) {
  .wrap {
    width:calc(100% - 60px)
  }
  .navlinks {
    gap:20px
  }
  .hero {
    min-height:750px
  }
  .intro-grid {
    gap:50px
  }
  .timeline-grid {
    gap:65px
  }
  .newsletter-grid {
    gap:50px
  }
  .topic-button {
    grid-template-columns:35px 1fr 210px 30px
  }
  .article-cover {
    height:190px
  }
  .book-mini {
    width:120px;
    height:170px;
    right:22px
  }
  .book-mini span {
    font-size:23px
  }
  .work-book .work-bottom {
    max-width:210px
  }
  
}
@media(max-width:760px) {
  .wrap {
    width:calc(100% - 40px)
  }
  .nav-inner {
    height:70px
  }
  .wordmark {
    font-size:32px
  }
  .menu {
    display:block
  }
  .navlinks {
    display:none;
    position:absolute;
    top:70px;
    left:0;
    right:0;
    padding:25px 20px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    align-items:flex-start
  }
  .navlinks.open {
    display:flex;
    flex-direction:column;
    gap:12px
  }
  .nav-cta {
    margin-top:10px
  }
  .hero {
    margin-top:70px;
    height:calc(100svh - 70px);
    min-height:700px;
    max-height:900px
  }
  .hero-content {
    padding-bottom:120px;
    padding-top:30px
  }
  .hero h1 {
    font-size:clamp(57px,12vw,87px);
    line-height:1.03
  }
  .hero-copy {
    font-size:13px;
    max-width:290px
  }
  .hero-image {
    object-position:65% center
  }
  .hero:after {
    background:linear-gradient(90deg,#09231bdd,#09231b44),linear-gradient(0deg,#09231baa,transparent 40%)
  }
  .hero-label {
    display:none
  }
  .hero-top {
    margin-bottom:24px
  }
  .hero-bottom {
    bottom:25px
  }
  .hero-bottom p {
    font-size:16px;
    max-width:170px
  }
  .hero-bottom .eyebrow {
    font-size:8px
  }
  .hero-actions {
    gap:15px
  }
  .pill {
    gap:23px;
    padding:15px 20px
  }
  .hero-path {
    width:60%;
    opacity:.3;
    right:-110px
  }
  .ticker {
    padding:15px 0
  }
  .ticker span {
    font-size:22px
  }
  .section {
    padding:75px 0
  }
  .section-head {
    display:block;
    margin-bottom:35px
  }
  .section-head .intro-text {
    margin-top:25px
  }
  .intro-grid {
    grid-template-columns:1fr;
    gap:38px
  }
  .intro-art {
    min-height:360px;
    width:85%;
    margin:auto
  }
  .intro-art img {
    height:360px
  }
  .intro-art .monogram {
    font-size:250px
  }
  .intro-body h2 {
    font-size:49px
  }
  .intro-body p {
    font-size:14px
  }
  .topic-button {
    grid-template-columns:25px 1fr 25px;
    gap:10px;
    padding:23px 0
  }
  .topic-summary {
    display:none
  }
  .topic-name {
    font-size:36px
  }
  .topic-detail {
    margin-left:35px;
    margin-right:25px;
    font-size:13px
  }
  .article-grid {
    grid-template-columns:1fr 1fr;
    gap:25px 18px
  }
  .article-cover {
    height:180px;
    margin-bottom:19px
  }
  .article h3 {
    font-size:25px
  }
  .article p {
    font-size:11px
  }
  .article-meta {
    font-size:8px;
    flex-direction:column;
    gap:5px
  }
  .article-cover .cover-word {
    font-size:62px
  }
  .cover-5 .cover-word {
    font-size:46px
  }
  .cover-3:before {
    left:35px
  }
  .cover-3:after {
    left:80px
  }
  .timeline-grid {
    grid-template-columns:1fr;
    gap:50px
  }
  .timeline-lead {
    position:static
  }
  .timeline-lead h2 {
    margin-bottom:25px
  }
  .timeline-quote {
    font-size:27px;
    margin-top:30px;
    max-width:100%
  }
  .timeline {
    padding-left:35px
  }
  .milestone:before {
    left:-35px
  }
  .milestone h3 {
    font-size:32px
  }
  .works-grid {
    grid-template-columns:1fr
  }
  .work {
    min-height:440px;
    padding:27px
  }
  .work-book .work-bottom {
    max-width:240px
  }
  .book-mini {
    width:140px;
    height:190px;
    right:28px;
    top:80px
  }
  .interlude {
    padding:65px 0
  }
  .newsletter {
    padding:75px 0
  }
  .newsletter-grid {
    grid-template-columns:1fr;
    gap:40px
  }
  .newsletter h2 {
    font-size:54px
  }
  .footer-top {
    flex-direction:column;
    gap:25px;
    margin-bottom:40px
  }
  .footer .wordmark {
    font-size:95px
  }
  .footer-bottom {
    flex-wrap:wrap;
    line-height:1.6
  }
  .footer-links {
    gap:14px
  }
  .footer-top p {
    max-width:280px
  }
  .backtop {
    right:14px;
    bottom:14px
  }
  dialog {
    padding:45px 25px
  }
  dialog h2 {
    font-size:36px
  }
  dialog p {
    font-size:14px
  }
  
}

@media(max-width:420px) {
  .article-grid {
    grid-template-columns:1fr
  }
  .article-cover {
    height:230px
  }
  .hero h1 {
    font-size:57px
  }
  .hero-actions {
    gap:18px
  }
  .hero-actions .textlink {
    font-size:11px
  }
  .work-book .work-bottom {
    max-width:200px
  }
  .book-mini {
    width:112px;
    height:160px;
    right:20px;
    top:75px
  }
  .book-mini span {
    font-size:22px
  }
  .check-grid {
    gap:12px 5px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    animation:none!important;
    transition:none!important
  }
  .js .reveal {
    opacity:1;
    transform:none
  }
  .hero-path path {
    stroke-dashoffset:0
  }
  
}

/* Motion layer: progressive enhancement, disabled for reduced motion. */
.hero-image {
  will-change:transform
}
.hero h1 {
  animation:heroIn 1.15s cubic-bezier(.18,.65,.24,1) both
}
.hero-top {
  animation:heroIn .8s .1s both
}
.hero-copy,.hero-actions {
  animation:heroIn 1s .2s both
}
@keyframes heroIn {
  from {
    opacity:0;
    transform:translateY(38px);
    filter:blur(8px)
  }
  to {
    opacity:1;
    transform:translateY(0);
    filter:blur(0)
  }
  
}

.timeline-fill {
  position:absolute;
  left:4px;
  top:7px;
  width:1px;
  height:0;
  background:var(--gold);
  box-shadow:0 0 9px #bead7455;
  z-index:1
}
.milestone:before {
  z-index:2
}
.milestone.current:before {
  box-shadow:0 0 0 7px #bead7425;
  background:var(--gold)
}
.work {
  transform-style:preserve-3d;
  transition:transform .35s ease,box-shadow .35s ease;
  will-change:transform
}
.work:hover {
  box-shadow:0 22px 50px #183e351b
}
.work-bottom {
  transition:transform .4s
}
.work:hover .work-bottom {
  transform:translateY(-7px)
}
.cursor-glow {
  position:fixed;
  z-index:20;
  left:0;
  top:0;
  width:260px;
  height:260px;
  background:radial-gradient(circle,#bead740d,transparent 68%);
  pointer-events:none;
  opacity:0;
  transform:translate(-50%,-50%);
  mix-blend-mode:screen
}
.interlude blockquote {
  --lit:0%;
  background:linear-gradient(90deg,var(--green) var(--lit),#183e3560 var(--lit));
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent
}
.interlude blockquote em {
  color:inherit
}
.intro-art {
  transition:border-radius 1s
}
.intro-art:hover {
  border-radius:38% 48% 2px 2px
}
.intro-art img {
  transition:transform 1.4s
}
.intro-art:hover img {
  transform:scale(1.08)
}
.ticker:hover .ticker-track {
  animation-play-state:paused
}
.article-cover {
  border-radius:2px
}
.topic-button .topic-name {
  transition:color .3s,letter-spacing .3s
}
.topic-button:hover .topic-name {
  color:var(--gold);
  letter-spacing:-.025em
}

@media(pointer:coarse) {
  .cursor-glow {
    display:none
  }
  .work {
    transform:none!important
  }
  
}
@media(prefers-reduced-motion:reduce) {
  .cursor-glow {
    display:none
  }
  .interlude blockquote {
    background:none;
    color:var(--green)
  }
  .hero-image,.work {
    transform:none!important
  }
  .hero h1,.hero-top,.hero-copy,.hero-actions {
    animation:none
  }
  .timeline-fill {
    box-shadow:none
  }
  
}


/* Editorial invitation to slow down. */
.hero-copy {
  max-width:470px;
  font-size:16px;
  line-height:1.75
}
.hero-copy strong {
  font-weight:400;
  color:var(--paper)
}
.hero-invitation {
  display:block;
  margin-top:15px;
  font-size:12px;
  line-height:1.75;
  color:#e4e4d7c4
}
.interlude-copy {
  font-size:14px;
  line-height:1.8;
  margin:0 auto 30px;
  max-width:560px;
  opacity:.75
}
@media(max-width:760px) {
  .hero-copy {
    max-width:325px;
    font-size:14px
  }
  .hero-invitation {
    font-size:11px;
    margin-top:13px
  }
  .interlude-copy {
    font-size:13px
  }
  .hero-actions {
    flex-wrap:wrap;
    gap:16px
  }
  
}


/* V3 — expansive navigation and horizontal life chapters. */
html {
  scroll-padding-top:140px
}
.nav-inner {
  height:116px;
  gap:32px
}
.nav .wordmark {
  font-size:46px;
  flex-shrink:0
}
.navlinks {
  gap:25px;
  font-family:var(--serif);
  font-size:24px;
  letter-spacing:-.03em;
  white-space:nowrap
}
.navlinks>a {
  padding:18px 0
}
.mega-trigger {
  font:inherit;
  letter-spacing:inherit;
  background:none;
  border:0;
  padding:18px 0;
  display:flex;
  align-items:center;
  gap:9px
}
.mega-trigger span {
  font-family:var(--sans);
  font-size:18px;
  transition:transform .25s
}
.mega-trigger[aria-expanded=true] span {
  transform:rotate(180deg)
}
.mega-panel[hidden] {
  display:none
}
.mega-panel {
  position:absolute;
  top:100%;
  left:0;
  right:0;
  background:var(--paper);
  border-bottom:1px solid var(--gold);
  box-shadow:0 28px 50px #102c2b28;
  display:grid;
  grid-template-columns:.75fr 1.8fr;
  gap:70px;
  padding:46px max(50px,calc((100vw - 1320px)/2));
  white-space:normal;
  animation:megaIn .25s ease both
}
.mega-intro {
  padding-right:38px;
  border-right:1px solid var(--line)
}
.mega-intro .eyebrow {
  font-family:var(--sans);
  letter-spacing:.15em
}
.mega-intro h2 {
  font-size:54px;
  margin:20px 0
}
.mega-intro h2 em {
  color:var(--plum)
}
.mega-intro p {
  font-family:var(--sans);
  font-size:12px;
  letter-spacing:0;
  opacity:.7
}
.mega-all {
  font-family:var(--sans);
  font-size:12px;
  letter-spacing:0;
  display:flex;
  justify-content:space-between;
  padding:14px 0;
  border-top:1px solid var(--line);
  margin-top:25px
}
.mega-topics {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px 25px
}
.mega-topic {
  display:flex;
  flex-direction:column;
  position:relative;
  padding:17px 12px 20px 0;
  border-bottom:1px solid var(--line);
  transition:transform .25s,color .25s
}
.mega-topic:hover {
  transform:translateY(-4px);
  color:var(--plum)
}
.mega-topic .eyebrow {
  font-family:var(--sans);
  font-size:8px;
  letter-spacing:.13em;
  color:var(--plum)
}
.mega-topic strong {
  font-family:var(--serif);
  font-weight:400;
  font-size:26px;
  line-height:1.15;
  margin:15px 0 8px;
  letter-spacing:-.04em
}
.mega-topic>span:last-of-type {
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:0;
  line-height:1.6;
  opacity:.65
}
.mega-topic i {
  position:absolute;
  right:0;
  top:14px;
  font-style:normal;
  font-size:17px;
  color:var(--plum)
}
@keyframes megaIn {
  from {
    opacity:0;
    transform:translateY(-10px)
  }
  to {
    opacity:1;
    transform:none
  }
  
}
.hero {
  margin-top:116px;
  height:calc(100svh - 116px)
}

.timeline-grid {
  display:block
}
.timeline-lead {
  position:static;
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:90px
}
.timeline-lead .section-index,.timeline-lead h2 {
  grid-column:1
}
.timeline-lead h2 {
  grid-row:2/5;
  margin-bottom:20px
}
.timeline-lead>p {
  grid-column:2;
  grid-row:2;
  max-width:430px
}
.timeline-lead .timeline-quote {
  grid-column:2;
  grid-row:3;
  font-size:28px;
  margin:12px 0 24px;
  max-width:400px
}
.timeline-lead .timeline-note {
  grid-column:2;
  grid-row:4;
  margin-top:0;
  max-width:430px
}
.timeline-controls {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:35px 0 20px
}
.timeline-controls .eyebrow {
  color:var(--gold)
}
.timeline-controls>div {
  display:flex;
  gap:9px
}
.timeline-controls button {
  background:none;
  border:1px solid #bead7460;
  color:var(--gold);
  border-radius:50%;
  width:48px;
  height:48px;
  font-size:21px;
  transition:background .2s,color .2s
}
.timeline-controls button:hover:not(:disabled) {
  background:var(--gold);
  color:var(--green)
}
.timeline-controls button:disabled {
  opacity:.25;
  cursor:default
}
.timeline-viewport {
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  scrollbar-color:var(--gold) #ffffff12;
  padding-bottom:18px
}
.timeline {
  padding:0;
  display:flex;
  gap:32px;
  width:max-content;
  min-width:100%;
  position:relative
}
.timeline:before {
  top:16px;
  left:8px;
  right:180px;
  bottom:auto;
  width:auto;
  height:1px;
  background:#bead743d
}
.timeline-fill {
  left:8px;
  top:16px;
  height:1px;
  width:0;
  max-width:calc(100% - 188px)
}
.milestone {
  width:345px;
  flex:0 0 345px;
  scroll-snap-align:start;
  padding:52px 25px 24px 0;
  margin:0;
  transition:opacity .3s
}
.milestone:before {
  left:4px;
  top:12px
}
.milestone h3 {
  font-size:35px
}
.milestone p {
  font-size:13px;
  max-width:300px
}
.milestone small {
  display:block;
  font-size:10px;
  line-height:1.7;
  border:0
}
.milestone:last-child {
  padding-right:0
}
.milestone .textlink {
  font-size:11px;
  display:inline-block;
  line-height:1.8
}
.wander {
  background:#e8e2d5
}
.wander-grid {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:90px;
  align-items:center
}
.wander-visual {
  height:540px;
  position:relative;
  overflow:hidden;
  border-radius:2px 160px 2px 2px
}
.wander-visual img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:70% center;
  filter:brightness(.75)
}
.wander-visual>.eyebrow {
  position:absolute;
  left:25px;
  bottom:25px;
  color:var(--paper);
  max-width:200px
}
.wander-symbol {
  font-family:var(--serif);
  font-size:220px;
  position:absolute;
  right:20px;
  bottom:30px;
  color:var(--gold);
  line-height:1
}
.wander-copy h2 em,.coaching h2 em,#sportok h2 em {
  color:var(--plum)
}
.wander-copy p {
  font-size:14px;
  max-width:430px
}
.wander-copy .pill {
  margin-top:15px
}
.sports-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line)
}
.sport-card {
  padding:32px 30px 38px;
  border-right:1px solid var(--line);
  position:relative;
  overflow:hidden
}
.sport-card:first-child {
  padding-left:0
}
.sport-card:last-child {
  border:0
}
.sport-number {
  font-family:var(--serif);
  font-style:italic;
  font-size:20px;
  color:var(--plum)
}
.sport-card svg {
  display:block;
  width:180px;
  height:140px;
  margin:25px auto 40px;
  fill:none;
  stroke:var(--plum);
  stroke-width:1.2;
  transition:transform .5s
}
.sport-card:hover svg {
  transform:translateY(-9px) rotate(-3deg)
}
.sport-card h3 {
  font-size:40px;
  margin-bottom:15px
}
.sport-card p {
  font-size:13px;
  max-width:280px
}
.sport-card .textlink {
  background:none;
  border:0;
  border-bottom:1px solid var(--line);
  padding:0 0 7px;
  font-size:11px
}
.enterprise {
  background:var(--plum);
  color:var(--paper)
}
.enterprise-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  align-items:center
}
.enterprise h2 {
  margin-bottom:0
}
.enterprise h2 em {
  color:var(--gold)
}
.enterprise-copy p {
  font-size:15px;
  max-width:450px
}
.enterprise-copy .pill {
  margin-top:15px
}
.coaching-inner {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:90px;
  border-bottom:1px solid var(--line);
  padding-bottom:50px
}
.coaching h2 {
  font-size:clamp(45px,5.5vw,78px);
  margin-bottom:0
}
.coaching p {
  font-size:14px;
  max-width:430px
}
.coaching-inner>div:last-child {
  align-self:center
}
#film {
  scroll-margin-top:145px
}

@media(max-width:1350px) and (min-width:1181px) {
  .navlinks {
    font-size:21px;
    gap:20px
  }
  .nav-inner {
    gap:24px
  }
  .nav .wordmark {
    font-size:40px
  }
  .mega-panel {
    gap:35px
  }
  .mega-topics {
    gap:15px
  }
  
}

@media(max-width:1180px) {
  html {
    scroll-padding-top:105px
  }
  .nav-inner {
    height:90px
  }
  .nav .wordmark {
    font-size:40px
  }
  .menu {
    display:block
  }
  .navlinks {
    display:none;
    position:absolute;
    top:90px;
    left:0;
    right:0;
    padding:20px 30px 30px;
    background:var(--paper);
    border-bottom:1px solid var(--line);
    align-items:stretch;
    max-height:calc(100svh - 90px);
    overflow-y:auto;
    gap:0
  }
  .navlinks.open {
    display:flex;
    flex-direction:column
  }
  .navlinks>a {
    font-size:30px;
    padding:13px 0;
    border-bottom:1px solid var(--line)
  }
  .navlinks>a:after {
    display:none
  }
  .mega-trigger {
    font-size:30px;
    padding:13px 0;
    width:100%;
    justify-content:space-between
  }
  .mega-panel {
    position:static;
    box-shadow:none;
    border:0;
    padding:15px 0 0;
    gap:0;
    display:block;
    background:transparent
  }
  .mega-intro {
    display:none
  }
  .mega-topics {
    grid-template-columns:repeat(3,1fr);
    gap:12px 25px
  }
  .mega-topic strong {
    font-size:25px
  }
  .hero {
    margin-top:90px;
    height:calc(100svh - 90px)
  }
  
}

@media(max-width:760px) {
  .nav-inner {
    height:80px
  }
  .nav .wordmark {
    font-size:36px
  }
  .navlinks {
    top:80px;
    max-height:calc(100svh - 80px);
    padding:15px 20px 25px
  }
  .navlinks>a,.mega-trigger {
    font-size:29px
  }
  .mega-topics {
    grid-template-columns:1fr 1fr;
    gap:10px 20px
  }
  .mega-topic {
    padding:10px 0 15px
  }
  .mega-topic strong {
    font-size:23px;
    margin-top:11px
  }
  .mega-topic>span:last-of-type {
    font-size:9px
  }
  .mega-topic .eyebrow {
    font-size:7px
  }
  .hero {
    margin-top:80px;
    height:calc(100svh - 80px)
  }
  .timeline-lead {
    display:block
  }
  .timeline-lead h2 {
    margin-bottom:25px
  }
  .timeline-lead .timeline-quote {
    margin:25px 0
  }
  .timeline-lead .timeline-note {
    margin-top:20px
  }
  .timeline-controls {
    margin-top:25px
  }
  .milestone {
    width:min(310px,calc(100vw - 65px));
    flex-basis:min(310px,calc(100vw - 65px));
    padding-top:47px
  }
  .milestone h3 {
    font-size:32px
  }
  .timeline {
    gap:20px
  }
  .timeline:before {
    right:80px
  }
  .timeline-fill {
    max-width:calc(100% - 88px)
  }
  .wander-grid,.enterprise-grid,.coaching-inner {
    grid-template-columns:1fr;
    gap:40px
  }
  .wander-visual {
    height:360px;
    border-top-right-radius:100px
  }
  .wander-symbol {
    font-size:150px
  }
  .sports-grid {
    grid-template-columns:1fr
  }
  .sport-card,.sport-card:first-child {
    border-right:0;
    border-bottom:1px solid var(--line);
    padding:32px 0
  }
  .sport-card svg {
    width:140px;
    height:100px;
    position:absolute;
    right:0;
    top:25px;
    margin:0;
    opacity:.65
  }
  .sport-card h3 {
    margin-top:30px;
    font-size:36px
  }
  .sport-card p {
    max-width:75%
  }
  .enterprise h2 {
    font-size:58px
  }
  .coaching-inner {
    padding-bottom:0;
    border:0
  }
  
}

.timeline .milestone:last-child:before {
  background:var(--green);
  box-shadow:none
}
.timeline .milestone.current:before {
  background:var(--gold);
  box-shadow:0 0 0 7px #bead7425
}


/* V4 — anchored chapter previews render outside the horizontal scroll container. */
.chapter-trigger {
  font:inherit;
  letter-spacing:inherit;
  line-height:inherit;
  text-align:left;
  background:none;
  border:0;
  padding:0;
  color:inherit;
  position:relative;
  transition:color .22s
}
.chapter-trigger:hover,.chapter-trigger[aria-expanded=true] {
  color:var(--gold)
}
.chapter-hint {
  display:inline-block;
  font-family:var(--sans);
  font-size:19px;
  color:var(--gold);
  margin-left:10px;
  vertical-align:middle;
  transition:transform .22s
}
.chapter-trigger:hover .chapter-hint {
  transform:translate(3px,-3px)
}
.chapter-preview[hidden] {
  display:none
}
.chapter-preview {
  position:fixed;
  z-index:45;
  width:min(340px,calc(100vw - 32px));
  max-height:calc(100svh - 32px);
  overflow-y:auto;
  background:var(--paper);
  color:var(--green);
  border:1px solid var(--gold);
  border-radius:3px;
  box-shadow:0 20px 65px #071e1b66;
  animation:chapterIn .2s ease both;
  overscroll-behavior:contain
}
.chapter-preview-image {
  height:145px;
  position:relative;
  overflow:hidden
}
.chapter-preview-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:var(--crop,50% 50%);
  filter:brightness(.86)
}
.chapter-preview-image>.eyebrow {
  position:absolute;
  bottom:10px;
  left:17px;
  color:var(--paper);
  font-size:7px;
  background:#183e35c9;
  padding:4px 7px
}
.chapter-preview-close {
  position:absolute;
  top:9px;
  right:9px;
  z-index:2;
  border:1px solid #f4f0e655;
  border-radius:50%;
  background:#183e35ce;
  color:var(--paper);
  width:30px;
  height:30px;
  font-size:20px;
  line-height:1
}
.chapter-preview-body {
  padding:21px 23px 23px
}
.chapter-preview-body>.eyebrow {
  color:var(--plum);
  font-size:8px;
  margin-bottom:10px
}
.chapter-preview h4 {
  font-family:var(--serif);
  font-size:28px;
  font-weight:400;
  line-height:1.1;
  letter-spacing:-.04em;
  margin:0 0 12px
}
.chapter-preview p {
  font-size:12px;
  line-height:1.7;
  margin:0 0 17px;
  opacity:.8
}
.chapter-preview a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-top:1px solid var(--line);
  padding-top:14px;
  font-size:11px;
  color:var(--plum)
}
.chapter-preview a:hover {
  color:var(--green)
}
.chapter-preview a i {
  font-style:normal;
  font-size:20px
}
@keyframes chapterIn {
  from {
    opacity:0;
    transform:translateY(7px)
  }
  to {
    opacity:1;
    transform:none
  }
  
}
@media(max-width:760px) {
  .chapter-preview-image {
    height:125px
  }
  .chapter-preview-body {
    padding:18px 21px
  }
  .chapter-preview h4 {
    font-size:27px
  }
  .chapter-hint {
    font-size:17px
  }
  
}


/* V5 — full desktop navigation, photographic topic links, immersive scroll chapter. */
:root {
  --nav-height:128px
}
html {
  scroll-padding-top:calc(var(--nav-height) + 20px)
}
.nav-inner {
  height:var(--nav-height);
  display:block;
  position:relative
}
.brand-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:62px;
  border-bottom:1px solid var(--line)
}
.nav .wordmark {
  font-size:37px
}
.header-follow {
  font-family:var(--sans);
  font-size:11px;
  letter-spacing:.025em;
  display:flex;
  align-items:center;
  gap:20px;
  padding:10px 20px;
  background:var(--green);
  color:var(--paper);
  border-radius:30px;
  transition:background .2s
}
.header-follow:hover {
  background:var(--plum)
}
.header-follow span {
  font-size:17px
}
.desktop-nav-row {
  height:66px;
  display:flex;
  align-items:center
}
.menu {
  display:none
}
.navlinks,.navlinks.open {
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  position:static;
  top:auto;
  left:auto;
  right:auto;
  width:100%;
  max-height:none;
  overflow:visible;
  background:none;
  border:0;
  padding:0;
  gap:18px;
  font-family:var(--serif);
  font-size:clamp(23px,2.35vw,34px);
  letter-spacing:-.035em
}
.navlinks>a {
  font-size:inherit;
  padding:13px 0;
  border:0;
  white-space:nowrap
}
.navlinks>a:after {
  display:block
}
.mega-trigger {
  font-size:inherit;
  padding:13px 0;
  width:auto;
  justify-content:initial;
  white-space:nowrap
}
.mega-panel {
  position:absolute;
  top:100%;
  left:calc(-1 * max(50px,calc((100vw - 1320px)/2)));
  right:calc(-1 * max(50px,calc((100vw - 1320px)/2)));
  display:grid;
  grid-template-columns:.75fr 1.8fr;
  padding:42px max(50px,calc((100vw - 1320px)/2));
  gap:60px;
  border-bottom:1px solid var(--gold);
  background:var(--paper);
  box-shadow:0 28px 50px #102c2b28
}
.mega-intro {
  display:block
}
.mega-topics {
  grid-template-columns:repeat(3,1fr);
  gap:20px 25px
}
.hero {
  margin-top:var(--nav-height);
  height:calc(100svh - var(--nav-height))
}
.topic-image-preview[hidden] {
  display:none
}
.topic-image-preview {
  position:fixed;
  z-index:44;
  width:min(345px,calc(100vw - 40px));
  height:220px;
  box-shadow:0 25px 65px #160d2659;
  border:1px solid #bead7444;
  display:block;
  overflow:hidden;
  transform:rotate(-3deg);
  animation:topicPhotoIn .35s cubic-bezier(.2,.75,.25,1) both;
  transition:transform .3s;
  cursor:pointer;
  background:var(--green)
}
.topic-image-preview:hover {
  transform:rotate(0deg) scale(1.03)
}
.topic-image-preview img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s
}
.topic-image-preview:hover img {
  transform:scale(1.06)
}
@keyframes topicPhotoIn {
  from {
    opacity:0;
    transform:translateY(18px) rotate(-7deg) scale(.94)
  }
  to {
    opacity:1;
    transform:translateY(0) rotate(-3deg) scale(1)
  }
  
}

.threshold {
  height:190svh;
  background:var(--paper);
  position:relative
}
.threshold-stage {
  height:calc(100svh - var(--nav-height));
  position:sticky;
  top:var(--nav-height);
  overflow:hidden;
  --unfold:0;
  --one:1;
  --two:0;
  --three:0
}
.threshold-stage>img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  clip-path:inset(calc((1 - var(--unfold))*12%) calc((1 - var(--unfold))*33%) round calc((1 - var(--unfold))*230px));
  transform:scale(calc(1.23 - var(--unfold)*.23));
  will-change:clip-path,transform;
  filter:brightness(.62)
}
.threshold-shade {
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#183e3570,#183e3510);
  clip-path:inset(calc((1 - var(--unfold))*12%) calc((1 - var(--unfold))*33%) round calc((1 - var(--unfold))*230px));
  pointer-events:none
}
.threshold-copy {
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  color:var(--paper);
  padding:30px 20px
}
.threshold-copy>.eyebrow {
  color:var(--gold);
  font-size:9px
}
.threshold-lines {
  position:relative;
  width:100%;
  height:250px;
  margin:25px 0 5px
}
.threshold-line {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  margin:0;
  font-size:clamp(55px,8.5vw,126px);
  line-height:1.05;
  letter-spacing:-.055em;
  pointer-events:none
}
.threshold-line em {
  color:var(--gold)
}
.phase-one {
  opacity:var(--one);
  transform:translateY(calc((1 - var(--one))*-25px))
}
.phase-two {
  opacity:var(--two);
  transform:translateY(calc((1 - var(--two))*25px))
}
.phase-three {
  opacity:var(--three);
  transform:translateY(calc((1 - var(--three))*25px))
}
.threshold-copy>p {
  font-size:12px;
  line-height:1.8;
  margin:15px 0 0
}
.threshold-scroll {
  position:absolute;
  left:30px;
  bottom:30px;
  color:var(--paper);
  font-size:8px
}
.threshold-track {
  position:absolute;
  bottom:35px;
  right:30px;
  width:120px;
  height:1px;
  background:#f4f0e644
}
.threshold-track span {
  display:block;
  width:calc(var(--unfold)*100%);
  height:1px;
  background:var(--gold)
}

@media(min-width:900px) and (max-width:1180px) {
  .nav-inner.wrap {
    width:calc(100% - 48px)
  }
  .mega-panel {
    left:-24px;
    right:-24px;
    padding:35px 30px;
    gap:30px
  }
  .mega-intro h2 {
    font-size:42px
  }
  .mega-topic strong {
    font-size:24px
  }
  .navlinks,.navlinks.open {
    gap:12px;
    font-size:23px
  }
  
}

@media(max-width:899px) {
  :root {
    --nav-height:80px
  }
  .nav-inner {
    height:80px
  }
  .brand-row {
    height:80px;
    border:0;
    padding-right:45px
  }
  .nav .wordmark {
    font-size:34px
  }
  .header-follow {
    font-size:10px;
    gap:10px;
    padding:10px 15px
  }
  .desktop-nav-row {
    height:0
  }
  .menu {
    display:block;
    position:absolute;
    right:-10px;
    top:18px;
    font-size:25px;
    padding:9px
  }
  .navlinks,.navlinks.open {
    display:none;
    position:absolute;
    top:80px;
    left:-20px;
    right:-20px;
    width:auto;
    padding:15px 20px 25px;
    border-bottom:1px solid var(--line);
    background:var(--paper);
    max-height:calc(100svh - 80px);
    overflow-y:auto;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0;
    font-size:29px
  }
  .navlinks.open {
    display:flex
  }
  .navlinks>a {
    padding:13px 0;
    border-bottom:1px solid var(--line)
  }
  .navlinks>a:after {
    display:none
  }
  .mega-trigger {
    width:100%;
    justify-content:space-between;
    font-size:29px
  }
  .mega-panel {
    position:static;
    padding:15px 0 0;
    display:block;
    box-shadow:none;
    border:0;
    background:none
  }
  .mega-intro {
    display:none
  }
  .mega-topics {
    grid-template-columns:1fr 1fr;
    gap:10px 20px
  }
  .mega-topic strong {
    font-size:23px
  }
  .mega-topic .eyebrow {
    font-size:7px
  }
  .mega-topic>span:last-of-type {
    font-size:9px
  }
  .hero {
    margin-top:80px;
    height:calc(100svh - 80px)
  }
  .threshold {
    height:155svh
  }
  .threshold-stage>img,.threshold-shade {
    clip-path:inset(calc((1 - var(--unfold))*8%) calc((1 - var(--unfold))*14%) round calc((1 - var(--unfold))*160px))
  }
  .threshold-lines {
    height:200px
  }
  .threshold-line {
    font-size:clamp(48px,10vw,80px)
  }
  .threshold-scroll {
    left:20px;
    bottom:23px
  }
  .threshold-track {
    right:20px;
    bottom:27px;
    width:75px
  }
  .topic-image-preview {
    width:260px;
    height:175px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .threshold {
    height:auto
  }
  .threshold-stage {
    height:650px;
    position:relative;
    top:0;
    --unfold:1;
    --one:0;
    --two:0;
    --three:1
  }
  .threshold-stage>img,.threshold-shade {
    clip-path:none;
    transform:none;
    will-change:auto
  }
  .threshold-line {
    transform:none
  }
  .threshold-scroll,.threshold-track {
    display:none
  }
  .topic-image-preview {
    animation:none;
    transform:none;
    transition:none
  }
  
}


.phase-one {
  font-size:clamp(48px,6vw,90px)
}
.topic-page {
  padding-top:calc(var(--nav-height) + 60px)
}
.topic-page-intro {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:70px;
  align-items:center;
  padding-bottom:65px
}
.topic-page-intro h1 {
  font-size:clamp(54px,6vw,95px);
  margin:25px 0;
  color:var(--green)
}
.topic-page-intro h1 em {
  color:var(--plum)
}
.topic-page-intro p {
  font-size:15px;
  max-width:440px
}
.topic-page-intro img {
  height:420px;
  width:100%;
  object-fit:cover;
  border-radius:2px 120px 2px 2px
}
.topic-reading {
  border-top:1px solid var(--line);
  padding:60px 0 80px;
  max-width:750px;
  margin:auto
}
.topic-reading h2 {
  font-size:clamp(39px,5vw,65px);
  margin:20px 0 30px
}
.topic-reading p {
  font-family:var(--serif);
  font-size:20px;
  line-height:1.8
}
.topic-reading .sample-note {
  font-family:var(--sans);
  font-size:11px
}
.topic-other {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding-bottom:70px
}
.topic-other a {
  padding:10px 16px;
  border:1px solid var(--line);
  border-radius:30px;
  font-size:11px
}
.topic-other a:hover {
  background:var(--green);
  color:var(--paper)
}
@media(max-width:899px) {
  .topic-page {
    padding-top:125px
  }
  .topic-page-intro {
    grid-template-columns:1fr;
    gap:25px
  }
  .topic-page-intro img {
    height:300px
  }
  .topic-reading p {
    font-size:18px
  }
  
}


/* V6 — menu-row CTA and comfortable reading typography throughout. */
.navlinks,.navlinks.open {
  font-size:clamp(20px,1.95vw,28px);
  gap:clamp(12px,1.6vw,23px)
}
.navlinks>.header-follow {
  font-family:var(--sans);
  font-size:13px;
  letter-spacing:0;
  line-height:1.2;
  padding:13px 20px;
  background:var(--green);
  color:var(--paper);
  border:0;
  border-radius:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  flex-shrink:0;
  margin-left:8px
}
.navlinks>.header-follow:after {
  display:none
}
.navlinks>.header-follow:hover {
  background:var(--plum)
}
.navlinks>.header-follow span {
  font-size:19px
}
.mega-trigger {
  font-size:inherit
}
.mega-parent {
  align-self:stretch;
  display:flex;
  align-items:center
}
.mega-topic strong {
  font-size:28px
}
.mega-topic>span:last-of-type {
  font-size:13px;
  line-height:1.6
}
.mega-intro p {
  font-size:18px
}

body p:not([data-small-print]) {
  font-size:18px;
  line-height:1.8
}
body .section-head .intro-text {
  font-size:18px;
  line-height:1.8
}
.hero-copy {
  max-width:535px
}
.hero-invitation {
  font-size:15px;
  line-height:1.8
}
.topic-page .topic-reading p:not([data-small-print]) {
  font-size:22px;
  line-height:1.85
}
.chapter-preview {
  width:min(375px,calc(100vw - 32px))
}
.chapter-preview-body {
  padding:21px 24px
}
.chapter-preview-body p:not([data-small-print]) {
  font-size:16px;
  line-height:1.75
}
.article p:not([data-small-print]) {
  font-size:17px;
  line-height:1.75
}
.article-cover {
  margin-bottom:25px
}
.milestone {
  width:370px;
  flex-basis:370px
}
.milestone p:not([data-small-print]) {
  max-width:330px
}
.work {
  min-height:490px
}
.work-bottom p:not([data-small-print]) {
  font-size:17px;
  line-height:1.75
}
.work-book .work-bottom {
  max-width:250px
}
.work-bottom p {
  max-width:360px
}
.sport-card p {
  max-width:320px
}
.footer-top p {
  max-width:310px
}
.threshold-copy>p {
  font-size:17px
}
.topic-preview-body p {
  font-size:16px
}

@media(min-width:900px) and (max-width:1180px) {
  .navlinks,.navlinks.open {
    font-size:20px;
    gap:11px
  }
  .navlinks>.header-follow {
    font-size:12px;
    padding:12px 15px;
    gap:10px;
    margin-left:0
  }
  .mega-panel {
    gap:30px
  }
  .mega-topic strong {
    font-size:25px
  }
  .mega-topic>span:last-of-type {
    font-size:12px
  }
  
}

@media(max-width:899px) {
  .navlinks,.navlinks.open {
    font-size:29px;
    gap:0
  }
  .mega-parent {
    display:block;
    align-self:auto
  }
  .navlinks>.header-follow {
    align-self:flex-start;
    margin:22px 0 0;
    padding:15px 23px;
    font-size:14px;
    gap:25px
  }
  .brand-row {
    padding-right:45px
  }
  .mega-topic strong {
    font-size:24px
  }
  .mega-topic>span:last-of-type {
    font-size:12px
  }
  body p:not([data-small-print]),body .section-head .intro-text {
    font-size:17px;
    line-height:1.8
  }
  .hero-copy {
    max-width:355px
  }
  .hero-invitation {
    font-size:14px
  }
  .hero-content {
    padding-top:20px;
    padding-bottom:115px
  }
  .hero h1 {
    font-size:clamp(52px,10.7vw,83px)
  }
  .hero-bottom p:not([data-small-print]) {
    font-size:15px;
    line-height:1.5
  }
  .article p:not([data-small-print]) {
    font-size:16px;
    line-height:1.75
  }
  .milestone {
    width:min(330px,calc(100vw - 65px));
    flex-basis:min(330px,calc(100vw - 65px))
  }
  .chapter-preview-body p:not([data-small-print]) {
    font-size:16px
  }
  .chapter-preview-image {
    height:115px
  }
  .topic-page .topic-reading p:not([data-small-print]) {
    font-size:20px;
    line-height:1.85
  }
  .threshold-copy>p {
    font-size:16px
  }
  .work-bottom p:not([data-small-print]) {
    font-size:17px
  }
  .work-book .work-bottom {
    max-width:240px
  }
  .sport-card p {
    max-width:85%
  }
  
}

@media(max-width:420px) {
  .hero {
    min-height:810px
  }
  .hero h1 {
    font-size:52px
  }
  .hero-copy {
    max-width:310px
  }
  .hero-actions .textlink {
    font-size:12px
  }
  .work-book {
    min-height:520px
  }
  .work-book .work-bottom {
    max-width:100%
  }
  .work-book .book-mini {
    top:65px
  }
  .threshold-lines {
    height:185px
  }
  
}


/* V7 — seven expanding spheres, grounded in personal responsibility. */
.responsibility {
  background:#e7e2d6;
  position:relative
}
.responsibility h2 em {
  color:var(--plum)
}
.responsibility-grid {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:85px;
  align-items:start
}
.responsibility-graphic {
  position:sticky;
  top:calc(var(--nav-height) + 24px);
  align-self:start
}
.responsibility-axis {
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:var(--plum);
  margin-bottom:20px
}
.responsibility-axis>span:last-child {
  font-size:24px
}
.responsibility-pyramid {
  display:block;
  width:100%;
  height:auto;
  max-height:calc(100svh - var(--nav-height) - 270px);
  min-height:320px;
  overflow:visible
}
.responsibility-band {
  cursor:pointer;
  outline:none
}
.responsibility-band path {
  stroke:transparent;
  stroke-width:1.5;
  transition:filter .25s,stroke .25s
}
.responsibility-band:hover path,.responsibility-band.is-selected path {
  filter:brightness(1.1);
  stroke:var(--plum)
}
.responsibility-band:focus-visible path {
  stroke:var(--plum);
  stroke-width:5
}
.responsibility-band .band-title {
  font-family:var(--serif);
  fill:var(--green);
  letter-spacing:-.03em
}
.responsibility-band[data-responsibility=individual] .band-title,.responsibility-band[data-responsibility=relational] .band-title,.responsibility-band[data-responsibility=community] .band-title {
  fill:var(--paper)
}
.responsibility-band .band-marker {
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:.11em;
  fill:#faf5df
}
.responsibility-band .band-index {
  font-family:var(--sans);
  font-size:9px;
  letter-spacing:.16em;
  fill:var(--green);
  opacity:.7
}
.responsibility-band.is-current path {
  stroke:var(--gold);
  stroke-width:3
}
.responsibility-foundation {
  text-align:center;
  margin:8px 0 22px
}
.responsibility-foundation .eyebrow {
  color:var(--plum);
  font-size:8px
}
.responsibility-foundation p:not([data-small-print]) {
  font-size:15px;
  line-height:1.6;
  margin:9px 0 0;
  color:var(--green)
}
.responsibility-now {
  display:flex;
  gap:13px;
  align-items:flex-start;
  padding:19px 20px;
  background:var(--green);
  color:var(--paper);
  border-radius:3px
}
.responsibility-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--gold);
  flex-shrink:0;
  margin-top:6px;
  box-shadow:0 0 0 5px #bead7422
}
.responsibility-now .eyebrow {
  color:var(--gold);
  font-size:8px
}
.responsibility-now strong {
  display:block;
  font-family:var(--serif);
  font-size:23px;
  font-weight:400;
  letter-spacing:-.03em;
  margin:8px 0
}
.responsibility-now div>span:last-child {
  font-size:11px;
  opacity:.8;
  line-height:1.6
}
.responsibility-note {
  font-size:11px;
  line-height:1.8;
  margin:17px 0 0;
  opacity:.7;
  max-width:450px
}
.responsibility-explanation {
  padding:23px 0 25px 24px;
  border-left:2px solid #183e3520;
  border-bottom:1px solid var(--line);
  transition:background .25s,border-color .25s;
  scroll-margin-top:calc(var(--nav-height) + 20px)
}
.responsibility-explanation .eyebrow {
  font-size:9px;
  color:var(--plum);
  margin-bottom:13px
}
.responsibility-explanation h3 {
  font-size:32px;
  line-height:1.15;
  margin:0 0 14px
}
.responsibility-explanation h3 button {
  font:inherit;
  color:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  background:none;
  border:0;
  padding:0;
  text-align:left
}
.responsibility-explanation p:not([data-small-print]) {
  font-size:17px;
  line-height:1.8;
  margin-bottom:16px
}
.responsibility-explanation.is-selected {
  border-left-color:var(--plum);
  background:#f4f0e655
}
.responsibility-explanation.is-current {
  border-left-color:var(--gold)
}
.responsibility-explanation.is-current .eyebrow {
  color:var(--green);
  font-weight:700
}
.responsibility-scope {
  font-size:10px;
  line-height:1.7;
  letter-spacing:.03em;
  color:var(--plum)
}
.responsibility-sources {
  border-top:1px solid var(--line);
  padding-top:24px;
  margin-top:45px;
  max-width:920px
}
.responsibility-sources summary {
  font-size:12px;
  line-height:1.7;
  cursor:pointer;
  color:var(--plum)
}
.responsibility-sources p {
  margin:20px 0
}
.responsibility-sources a {
  display:block;
  font-size:12px;
  line-height:1.8;
  margin:10px 0;
  text-decoration:underline;
  text-underline-offset:4px
}

@media(max-width:1100px) {
  .responsibility-grid {
    gap:45px
  }
  .responsibility-explanation h3 {
    font-size:28px
  }
  .responsibility-now {
    padding:17px 15px
  }
  .responsibility-now strong {
    font-size:21px
  }
  
}

@media(max-width:899px) {
  .responsibility-grid {
    grid-template-columns:1fr;
    gap:40px
  }
  .responsibility-graphic {
    position:static;
    max-width:550px;
    width:100%;
    margin:auto
  }
  .responsibility-pyramid {
    max-height:none;
    min-height:0
  }
  .responsibility-explanation {
    padding:23px 15px 25px 20px
  }
  .responsibility-explanation h3 {
    font-size:28px
  }
  .responsibility-explanation p:not([data-small-print]) {
    font-size:17px
  }
  .responsibility-axis {
    margin-bottom:10px
  }
  .responsibility-now strong {
    font-size:24px
  }
  .responsibility-foundation p:not([data-small-print]) {
    font-size:16px
  }
  .responsibility-sources {
    margin-top:30px
  }
  
}


/* V8 — original partner artwork: monochrome at rest, color on interaction. */
.partners-section {
  padding:75px 0 85px;
  border-top:1px solid var(--line);
  background:var(--paper)
}
.partners-heading {
  text-align:center
}
.partners-heading .section-index {
  justify-content:center;
  margin-bottom:20px
}
.partners-heading h2 {
  font-size:clamp(39px,4.4vw,62px);
  line-height:1.08;
  margin-bottom:45px
}
.partners-heading h2 em {
  color:var(--plum)
}
.partner-logos {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  align-items:center;
  gap:38px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:35px 0
}
.partner-logo {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:145px;
  padding:10px;
  position:relative
}
.partner-logo img {
  display:block;
  max-width:100%;
  width:auto;
  height:auto;
  max-height:120px;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.68;
  mix-blend-mode:multiply;
  transition:filter .35s ease,opacity .35s ease,transform .35s ease
}
.partner-logo:hover img,.partner-logo:focus-visible img {
  filter:grayscale(0);
  opacity:1;
  transform:translateY(-4px)
}
.partner-logo.partner-fhe img {
  max-height:145px
}
.partner-logo.partner-decathlon img {
  max-width:180px;
  width:100%
}
.partner-logo.partner-orzse img {
  max-width:168px
}
.partner-logo.partner-mke img {
  max-height:112px
}
.partner-logo.partner-ntk img {
  max-width:155px;
  width:100%
}

@media(max-width:899px) {
  .partners-section {
    padding:60px 0
  }
  .partner-logos {
    gap:18px;
    grid-template-columns:repeat(3,1fr);
    padding:25px 0
  }
  .partner-logo {
    min-height:130px;
    padding:10px
  }
  .partner-logo.partner-fhe img {
    max-height:130px
  }
  .partner-logo img {
    max-height:110px
  }
  .partners-heading h2 {
    margin-bottom:30px
  }
  
}

@media(max-width:500px) {
  .partner-logos {
    grid-template-columns:repeat(2,1fr);
    gap:16px 20px
  }
  .partner-logo:last-child {
    grid-column:1/-1
  }
  .partner-logo.partner-decathlon img {
    max-width:140px
  }
  .partner-logo.partner-orzse img {
    max-width:140px
  }
  .partner-logo.partner-mke img {
    max-height:105px
  }
  .partners-heading h2 {
    font-size:40px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .partner-logo img {
    transition:none
  }
  .partner-logo:hover img,.partner-logo:focus-visible img {
    transform:none
  }
  
}


/* V9 — a larger responsibility diagram and two complementary worlds of value. */
.responsibility-grid {
  grid-template-columns:1.12fr 1fr;
  gap:60px
}
.responsibility-pyramid {
  width:100%;
  height:auto;
  max-height:none;
  min-height:0;
  max-width:680px;
  margin:0 auto
}
.responsibility-graphic {
  top:calc(var(--nav-height) + 20px)
}
.responsibility-foundation {
  margin-top:10px
}
.responsibility-now {
  margin-top:26px
}
.responsibility-explanation h3 {
  font-size:30px
}
.value-worlds {
  background:var(--paper);
  border-bottom:1px solid var(--line)
}
.value-worlds h2 em {
  color:var(--plum)
}
.value-world-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:26px;
  align-items:stretch
}
.value-world {
  position:relative;
  overflow:hidden;
  min-height:780px;
  padding:40px;
  display:flex;
  flex-direction:column;
  isolation:isolate;
  color:var(--paper);
  border-radius:3px;
  transition:box-shadow .4s
}
.value-world:hover {
  box-shadow:0 23px 65px #183e3528
}
.value-online {
  background:var(--plum)
}
.value-offline {
  background:var(--green)
}
.value-world-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  position:relative;
  z-index:2;
  margin-bottom:40px
}
.value-world-top .eyebrow {
  font-size:9px;
  color:var(--gold)
}
.value-symbol {
  font-size:30px;
  color:var(--gold)
}
.value-world-intro {
  position:relative;
  z-index:2;
  margin-bottom:35px
}
.value-world-intro h3 {
  font-size:clamp(62px,6vw,88px);
  letter-spacing:-.06em;
  margin:0 0 18px;
  line-height:1
}
.value-world-intro p:not([data-small-print]) {
  font-size:18px;
  line-height:1.7;
  opacity:.8;
  margin-bottom:0
}
.value-network {
  position:absolute;
  inset:0;
  width:100%;
  height:65%;
  z-index:0;
  fill:none;
  stroke:var(--gold);
  stroke-width:.8;
  opacity:.14;
  pointer-events:none
}
.value-network circle {
  fill:var(--gold);
  stroke:none;
  animation:networkPulse 4s ease-in-out infinite
}
.value-network circle:nth-of-type(2) {
  animation-delay:1s
}
.value-network circle:nth-of-type(3) {
  animation-delay:2s
}
@keyframes networkPulse {
  0%,100% {
    opacity:.25
  }
  50% {
    opacity:1
  }
  
}
.value-projects {
  position:relative;
  z-index:2;
  margin-top:auto
}
.value-project {
  display:grid;
  grid-template-columns:23px 1fr 25px;
  gap:14px;
  padding:24px 0;
  border-top:1px solid #f4f0e63b;
  align-items:start;
  transition:padding .25s,color .25s
}
.value-project:hover {
  color:var(--gold);
  padding-left:8px
}
.value-project-index {
  font-family:var(--sans);
  font-size:9px;
  line-height:1.7;
  color:var(--gold);
  padding-top:7px
}
.value-project strong {
  font-family:var(--serif);
  font-weight:400;
  font-size:31px;
  line-height:1.2;
  letter-spacing:-.035em;
  display:block
}
.value-project div>span {
  display:block;
  font-size:14px;
  line-height:1.7;
  opacity:.75;
  margin-top:10px;
  max-width:330px
}
.value-project i {
  font-style:normal;
  font-size:24px;
  padding-top:5px
}
.value-world-bottom {
  position:relative;
  z-index:2;
  border-top:1px solid #f4f0e63b;
  padding-top:22px;
  margin-top:25px;
  font-size:8px;
  color:var(--gold);
  letter-spacing:.12em
}
.value-offline-landscape {
  position:absolute;
  z-index:-2;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:75% center;
  opacity:.33;
  transition:transform 1.4s
}
.value-offline:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(0deg,#183e35 10%,#183e35a0 65%,#183e3540)
}
.value-offline:hover .value-offline-landscape {
  transform:scale(1.06)
}
.value-offline-content {
  position:relative;
  z-index:2;
  margin-top:auto
}
.value-offline-content>.eyebrow {
  color:var(--gold);
  font-size:8px
}
.value-offline-content h4 {
  font-family:var(--serif);
  font-weight:400;
  font-size:46px;
  letter-spacing:-.045em;
  margin:14px 0 20px
}
.value-offline-content p:not([data-small-print]) {
  font-size:18px;
  line-height:1.8;
  max-width:430px;
  opacity:.9
}
.value-experiences {
  display:flex;
  gap:9px;
  flex-wrap:wrap;
  margin:23px 0 27px
}
.value-experiences>span {
  font-size:11px;
  letter-spacing:.02em;
  border:1px solid #bead7470;
  border-radius:25px;
  padding:10px 13px;
  line-height:1.3;
  color:var(--paper);
  background:#183e3540;
  transition:background .25s
}
.value-experiences>span:hover {
  background:#bead7420
}
.value-offline-link {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  font-size:13px;
  line-height:1.7;
  border-top:1px solid #f4f0e63b;
  padding-top:20px
}
.value-offline-link>span {
  font-size:24px;
  color:var(--gold)
}
.value-offline-link:hover {
  color:var(--gold)
}
.value-bridge {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:25px;
  text-align:left;
  padding:36px 15px 0
}
.value-bridge>span {
  font-size:32px;
  color:var(--plum)
}
.value-bridge p:not([data-small-print]) {
  font-family:var(--serif);
  font-size:24px;
  line-height:1.5;
  letter-spacing:-.02em;
  margin:0;
  color:var(--plum)
}


@media(max-width:1100px) {
  .responsibility-grid {
    gap:40px
  }
  .value-world {
    padding:30px;
    min-height:780px
  }
  .value-project strong {
    font-size:28px
  }
  .value-project {
    gap:10px;
    grid-template-columns:18px 1fr 21px
  }
  .value-offline-content h4 {
    font-size:41px
  }
  .value-world-bottom {
    font-size:7px
  }
  .value-world-intro h3 {
    font-size:70px
  }
  
}

@media(max-width:899px) {
  .responsibility-grid {
    grid-template-columns:1fr;
    gap:40px
  }
  .responsibility-graphic {
    position:static;
    max-width:650px
  }
  .responsibility-explanation h3 {
    font-size:28px
  }
  .value-world-grid {
    grid-template-columns:1fr;
    gap:24px
  }
  .value-world {
    min-height:720px;
    padding:32px
  }
  .value-world-intro h3 {
    font-size:78px
  }
  .value-world-top {
    margin-bottom:35px
  }
  .value-offline {
    min-height:770px
  }
  .value-bridge p:not([data-small-print]) {
    font-size:22px
  }
  .value-bridge {
    gap:18px;
    padding-top:30px
  }
  .value-bridge br {
    display:none
  }
  
}

@media(max-width:420px) {
  .value-world {
    padding:25px;
    min-height:735px
  }
  .value-offline {
    min-height:790px
  }
  .value-world-intro h3 {
    font-size:67px
  }
  .value-project strong {
    font-size:27px
  }
  .value-world-bottom {
    font-size:7px;
    letter-spacing:.08em
  }
  .value-offline-content h4 {
    font-size:40px
  }
  .value-world-intro p:not([data-small-print]),.value-offline-content p:not([data-small-print]) {
    font-size:17px
  }
  .value-experiences>span {
    font-size:10px;
    padding:9px 11px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .value-network circle {
    animation:none
  }
  .value-world,.value-offline-landscape,.value-project {
    transition:none
  }
  .value-offline:hover .value-offline-landscape {
    transform:none
  }
  
}


/* V10 — keep the complete left diagram visible while its explanations scroll. */
@supports (overflow:clip) {
  body {
    overflow-x:clip
  }
  
}

@media(min-width:900px) {
  .responsibility-grid {
    align-items:start
  }
  .responsibility-graphic {
    position:sticky;
    top:calc(var(--nav-height) + 18px);
    align-self:start;
    display:flex;
    flex-direction:column;
    gap:14px;
    max-width:none;
    width:100%;
    max-height:calc(100svh - var(--nav-height) - 36px)
  }
  .responsibility-pyramid {
    width:100%;
    height:auto;
    min-height:0;
    max-height:calc(100svh - var(--nav-height) - 230px);
    flex:0 1 auto;
    display:block;
    overflow:visible
  }
  .responsibility-foundation {
    margin:0;
    flex-shrink:0
  }
  .responsibility-foundation p:not([data-small-print]) {
    margin:6px 0 0;
    font-size:15px;
    line-height:1.55
  }
  .responsibility-now {
    margin:0;
    padding:14px 18px;
    flex-shrink:0
  }
  .responsibility-now strong {
    font-size:22px;
    margin:6px 0;
    line-height:1.2
  }
  .responsibility-now div>span:last-child {
    font-size:11px;
    line-height:1.5
  }
  
}

@media(max-width:899px) {
  .responsibility-graphic {
    position:static;
    display:block;
    max-height:none
  }
  .responsibility-pyramid {
    height:auto;
    max-height:none
  }
  .responsibility-foundation {
    margin:10px 0 22px
  }
  .responsibility-now {
    margin-top:26px
  }
  
}


/* V11 — the sticky left column is entirely dedicated to the enlarged pyramid. */
@media(min-width:900px) {
  .responsibility-graphic {
    gap:0;
    max-height:calc(100svh - var(--nav-height) - 36px)
  }
  .responsibility-pyramid {
    max-width:none;
    width:100%;
    height:auto;
    max-height:calc(100svh - var(--nav-height) - 36px);
    min-height:0;
    flex:0 1 auto
  }
  
}
.responsibility-band .band-marker {
  font-size:12px;
  letter-spacing:.08em
}
.responsibility-band .band-index {
  font-size:11px;
  letter-spacing:.12em
}


/* V12 — expanded navigation, scroll-ink headings, seven sport scenes and professional footer. */
.navlinks,.navlinks.open {
  font-size:clamp(18px,1.7vw,25px);
  gap:clamp(9px,1.2vw,19px)
}
.navlinks>.header-follow {
  font-size:12px;
  padding:12px 18px;
  gap:10px;
  margin-left:0
}
.mega-trigger {
  font-size:inherit
}
.milestones-menu .mega-intro h2 {
  font-size:48px
}
.heading-ink {
  color:transparent!important;
  background:linear-gradient(90deg,var(--heading-ink) var(--heading-reveal,100%),var(--heading-muted) var(--heading-reveal,100%));
  background-clip:text;
  -webkit-background-clip:text;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone
}
.scroll-heading em {
  color:inherit
}
.scroll-heading .heading-ink {
  font:inherit;
  letter-spacing:inherit;
  line-height:inherit
}
.sports-grid {
  grid-template-columns:repeat(3,1fr);
  gap:0
}
.sport-card {
  padding:35px 28px 40px!important;
  border-bottom:1px solid var(--line);
  border-right:1px solid var(--line);
  min-height:440px;
  isolation:isolate;
  transition:color .4s,background .4s
}
.sport-card:nth-child(3n) {
  border-right:0
}
.sport-card:last-child {
  border-bottom:1px solid var(--line)
}
.sport-card:before {
  content:'';
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:var(--sport-image,url('river.jpg'));
  background-size:cover;
  background-position:var(--sport-position,center);
  opacity:0;
  transform:scale(1.12);
  transition:opacity .5s,transform 1s;
  pointer-events:none
}
.sport-card:after {
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(0deg,#183e35ef,#183e3588);
  opacity:0;
  transition:opacity .5s;
  pointer-events:none
}
.sport-card:hover,.sport-card:focus-within {
  color:var(--paper)
}
.sport-card:hover:before,.sport-card:focus-within:before {
  opacity:1;
  transform:scale(1)
}
.sport-card:hover:after,.sport-card:focus-within:after {
  opacity:1
}
.sport-card:hover .sport-number,.sport-card:focus-within .sport-number {
  color:var(--gold)
}
.sport-card:hover svg,.sport-card:focus-within svg {
  stroke:var(--gold)
}
.sport-card:hover .textlink,.sport-card:focus-within .textlink {
  border-bottom-color:#f4f0e655
}
.sport-card:hover .heading-ink,.sport-card:focus-within .heading-ink {
  --heading-ink:var(--paper)!important;
  --heading-muted:#f4f0e6aa!important
}
.sport-card p {
  max-width:100%
}
.sport-card[data-sport-background=hegymaszas] {
  --sport-image:var(--sport-hegymasz-image,url('river.jpg'));
  --sport-position:90% 35%
}
.sport-card[data-sport-background=evezes] {
  --sport-image:var(--sport-evezes-image,url('river.jpg'));
  --sport-position:50% 80%
}
.sport-card[data-sport-background=motorozas] {
  --sport-image:var(--sport-motorozas-image,url('river.jpg'));
  --sport-position:15% 60%
}
.sport-card[data-sport-background=slackline] {
  --sport-image:var(--sport-slackline-image,url('river.jpg'))
}
.sport-card[data-sport-background=boulder] {
  --sport-image:var(--sport-boulder-image,url('river.jpg'));
  --sport-position:90% 50%
}
.sport-card[data-sport-background=via-ferrata] {
  --sport-image:var(--sport-via-ferrata-image,url('river.jpg'));
  --sport-position:85% 25%
}
.sport-card[data-sport-background=tanc] {
  --sport-image:var(--sport-tanc-image,url('river.jpg'))
}
.professional-footer {
  padding:65px 0 26px
}
.footer-columns {
  display:grid;
  grid-template-columns:1.35fr .85fr .9fr 1fr;
  gap:45px;
  margin-bottom:55px
}
.footer-brand .wordmark {
  font-size:70px
}
.footer-brand p:not([data-small-print]) {
  font-size:16px;
  line-height:1.8;
  opacity:.7;
  margin-top:23px;
  max-width:270px
}
.footer-contact {
  font-size:12px;
  color:var(--gold);
  line-height:1.8
}
.footer-column h3 {
  font-family:var(--sans);
  font-size:11px;
  line-height:1.5;
  letter-spacing:.11em;
  text-transform:uppercase;
  margin:7px 0 24px;
  color:var(--gold)
}
.footer-column>a {
  display:block;
  font-size:13px;
  line-height:1.7;
  color:#f4f0e6b0;
  margin:12px 0;
  transition:color .2s
}
.footer-column>a:hover {
  color:var(--gold)
}
.footer-social>a {
  display:flex;
  justify-content:space-between;
  gap:15px;
  max-width:165px;
  border-bottom:1px solid #f4f0e62b;
  padding-bottom:11px
}
.footer-credit {
  margin-top:23px
}
.footer-credit>span {
  display:block;
  font-size:10px;
  line-height:1.6;
  color:#f4f0e67a;
  margin-bottom:5px
}
.footer-credit>a {
  font-family:var(--serif);
  font-size:23px;
  letter-spacing:-.02em;
  color:var(--paper)
}
.footer-credit>a:hover {
  color:var(--gold)
}
.professional-footer .footer-bottom {
  font-size:11px;
  line-height:1.8
}
.privacy-page {
  padding-top:calc(var(--nav-height) + 55px);
  padding-bottom:80px;
  max-width:950px
}
.privacy-page>.section-index {
  margin-top:45px
}
.privacy-page h1 {
  font-size:clamp(50px,7vw,90px);
  line-height:1.1;
  margin:25px 0
}
.privacy-page h1 em {
  color:var(--plum)
}
.privacy-page>section {
  padding:35px 0;
  border-top:1px solid var(--line);
  scroll-margin-top:160px
}
.privacy-page h2 {
  font-size:35px;
  line-height:1.2;
  margin-bottom:20px
}
.privacy-page p {
  max-width:750px
}
.privacy-page a {
  text-decoration:underline;
  text-underline-offset:4px
}
.partners-section {
  padding-bottom:65px
}

@media(min-width:900px) and (max-width:1180px) {
  .navlinks,.navlinks.open {
    font-size:18px;
    gap:8px
  }
  .navlinks>.header-follow {
    font-size:11px;
    padding:12px 13px;
    gap:8px
  }
  .milestones-menu .mega-intro h2 {
    font-size:40px
  }
  .footer-columns {
    gap:25px
  }
  .footer-brand .wordmark {
    font-size:56px
  }
  
}

@media(max-width:899px) {
  .navlinks,.navlinks.open {
    font-size:27px;
    gap:0
  }
  .navlinks>.header-follow {
    font-size:14px;
    padding:15px 23px;
    margin-top:22px
  }
  .milestones-menu .mega-intro h2 {
    font-size:40px
  }
  .sports-grid {
    grid-template-columns:1fr 1fr
  }
  .sport-card {
    min-height:380px;
    padding:30px 20px!important
  }
  .sport-card:nth-child(3n) {
    border-right:1px solid var(--line)
  }
  .sport-card:nth-child(2n) {
    border-right:0
  }
  .sport-card svg {
    position:static;
    display:block;
    width:135px;
    height:110px;
    margin:20px auto 30px
  }
  .sport-card h3 {
    font-size:32px;
    margin-top:0
  }
  .sport-card p {
    max-width:100%
  }
  .footer-columns {
    grid-template-columns:1fr 1fr;
    gap:40px
  }
  .footer-brand .wordmark {
    font-size:68px
  }
  .footer-brand p:not([data-small-print]) {
    font-size:16px
  }
  .footer-column h3 {
    margin-top:0
  }
  .privacy-page {
    padding-top:125px
  }
  .privacy-page h2 {
    font-size:29px
  }
  
}

@media(max-width:500px) {
  .sports-grid {
    grid-template-columns:1fr
  }
  .sport-card,.sport-card:nth-child(3n) {
    border-right:0;
    min-height:360px
  }
  .sport-card svg {
    width:145px;
    height:105px;
    position:absolute;
    right:20px;
    top:40px;
    margin:0
  }
  .sport-card h3 {
    font-size:36px;
    margin-top:45px
  }
  .sport-card p {
    max-width:90%
  }
  .footer-columns {
    grid-template-columns:1fr;
    gap:35px
  }
  .footer-brand .wordmark {
    font-size:80px
  }
  .footer-social>a {
    max-width:100%
  }
  .footer-column>a {
    font-size:14px
  }
  .footer-column h3 {
    margin-bottom:18px
  }
  .professional-footer .footer-bottom {
    display:flex;
    flex-direction:column;
    gap:20px
  }
  .privacy-page h1 {
    font-size:49px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .heading-ink {
    --heading-reveal:100%!important
  }
  .sport-card:before,.sport-card:after {
    transition:none;
    transform:none
  }
  
}

.topic-button:hover .heading-ink {
  --heading-ink:var(--gold)!important;
  --heading-muted:#bead7470!important
}


/* V14 — scroll-condensed navigation, always available through a slim top rail. */
:root {
  --header-clearance:var(--nav-height)
}
html {
  scroll-padding-top:calc(var(--header-clearance) + 20px)
}
.nav {
  height:var(--nav-height);
  transition:height .3s ease,background .3s ease;
  overflow:visible
}
.nav .nav-inner {
  transition:transform .35s cubic-bezier(.2,.7,.25,1),opacity .25s,visibility .25s;
  transform:translateY(0);
  opacity:1;
  visibility:visible
}
.nav-peek {
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:2;
  height:28px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 max(25px,calc((100vw - 1320px)/2));
  background:var(--green);
  color:var(--paper);
  border:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .25s,visibility .25s
}
.peek-brand {
  font-family:var(--serif);
  font-size:15px;
  line-height:1;
  letter-spacing:-.05em
}
.peek-label {
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  font-size:9px;
  letter-spacing:.15em;
  text-transform:uppercase;
  display:flex;
  align-items:center;
  gap:8px
}
.peek-label i {
  font-style:normal;
  font-size:13px;
  transition:transform .25s
}
.peek-line {
  width:35px;
  height:1px;
  background:var(--gold)
}
.nav.is-condensed {
  height:28px
}
.nav.is-condensed .nav-peek {
  opacity:1;
  visibility:visible;
  pointer-events:auto
}
.nav.is-condensed .nav-inner {
  transform:translateY(calc(-1 * var(--nav-height)));
  opacity:0;
  visibility:hidden;
  pointer-events:none
}
.nav.is-condensed.is-peeking {
  height:calc(var(--nav-height) + 28px);
  background:var(--paper);
  box-shadow:0 15px 40px #183e3520
}
.nav.is-condensed.is-peeking .nav-inner {
  transform:translateY(28px);
  opacity:1;
  visibility:visible;
  pointer-events:auto
}
.nav-peek[aria-expanded=true] .peek-label i {
  transform:rotate(180deg)
}
.navlinks>.header-follow {
  font-size:18px;
  padding:12px 23px;
  gap:15px;
  line-height:1.3
}
.navlinks>.header-follow span {
  font-size:21px
}
.threshold-stage {
  top:var(--header-clearance);
  height:calc(100svh - var(--header-clearance))
}
.professional-footer .footer-bottom>a {
  white-space:nowrap
}

@media(min-width:900px) {
  .responsibility-graphic {
    top:calc(var(--header-clearance) + 18px);
    max-height:calc(100svh - var(--header-clearance) - 36px)
  }
  .responsibility-pyramid {
    max-height:calc(100svh - var(--header-clearance) - 36px)
  }
  
}

@media(min-width:900px) and (max-width:1180px) {
  .navlinks,.navlinks.open {
    gap:7px;
    font-size:17px
  }
  .navlinks>.header-follow {
    font-size:17px;
    padding:11px 17px;
    gap:10px
  }
  
}

@media(max-width:899px) {
  .navlinks>.header-follow {
    font-size:19px;
    padding:14px 24px;
    gap:25px
  }
  .nav-peek {
    padding:0 20px
  }
  .nav.is-condensed.is-peeking .navlinks {
    max-height:calc(100svh - var(--nav-height) - 28px)
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .nav,.nav .nav-inner,.nav-peek,.peek-label i {
    transition:none
  }
  .threshold-stage {
    position:relative;
    top:0;
    height:650px
  }
  
}


/* V15 — original centered logo, contact email and circle social icons in both header states. */
:root {
  --nav-height:140px
}
.nav-inner {
  height:var(--nav-height)
}
.brand-row {
  height:74px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  padding:0;
  border-bottom:1px solid var(--line)
}
.header-email {
  font-family:var(--sans);
  font-size:14px;
  line-height:1.6;
  justify-self:start;
  color:var(--green);
  transition:color .2s
}
.header-email:hover {
  color:var(--plum)
}
.header-logo {
  display:flex;
  justify-self:center;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px
}
.header-logo img {
  width:58px;
  height:58px;
  object-fit:contain;
  mix-blend-mode:multiply;
  transition:transform .3s
}
.header-logo:hover img {
  transform:rotate(-5deg)
}
.header-social {
  display:flex;
  align-items:center;
  gap:9px
}
.brand-social {
  justify-self:end
}
.social-circle {
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:var(--green);
  color:var(--paper);
  border:1px solid var(--green);
  transition:background .2s,border-color .2s,transform .2s;
  flex-shrink:0
}
.social-circle:hover {
  background:var(--plum);
  border-color:var(--plum);
  transform:translateY(-2px)
}
.social-circle svg {
  width:18px;
  height:18px;
  fill:currentColor
}
.social-circle .youtube-play {
  fill:var(--green)
}
.social-circle:hover .youtube-play {
  fill:var(--plum)
}
.nav-rail {
  position:absolute;
  inset:0 0 auto;
  height:48px;
  z-index:2;
  background:var(--green);
  color:var(--paper);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .25s,visibility .25s
}
.nav.is-condensed {
  height:48px
}
.nav.is-condensed .nav-rail {
  opacity:1;
  visibility:visible;
  pointer-events:auto
}
.nav-peek {
  position:absolute;
  top:0;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  height:48px;
  width:auto;
  padding:0 18px;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:center
}
.peek-label {
  position:static;
  left:auto;
  transform:none;
  font-family:var(--serif);
  font-size:clamp(18px,1.7vw,25px);
  line-height:1.2;
  letter-spacing:-.025em;
  text-transform:none;
  gap:12px
}
.peek-label i {
  font-family:var(--sans);
  font-size:24px
}
.rail-social {
  position:absolute;
  right:max(25px,calc((100vw - 1320px)/2));
  top:50%;
  transform:translateY(-50%);
  gap:8px
}
.rail-social .social-circle {
  width:33px;
  height:33px;
  border-color:#bead7470;
  background:#f4f0e60c;
  color:var(--paper)
}
.rail-social .social-circle:hover {
  background:var(--gold);
  border-color:var(--gold);
  color:var(--green)
}
.rail-social .youtube-play {
  fill:var(--green)
}
.rail-social .social-circle:hover .youtube-play {
  fill:var(--gold)
}
.nav.is-condensed.is-peeking {
  height:calc(var(--nav-height) + 48px)
}
.nav.is-condensed.is-peeking .nav-inner {
  transform:translateY(48px)
}
.hero {
  margin-top:var(--nav-height);
  height:calc(100svh - var(--nav-height))
}

@media(max-width:899px) {
  :root {
    --nav-height:112px
  }
  .nav-inner {
    height:112px
  }
  .brand-row {
    height:112px;
    grid-template-columns:1fr 1fr;
    grid-template-rows:62px 40px;
    gap:0 10px;
    padding:0
  }
  .header-logo {
    grid-column:1/-1;
    grid-row:1;
    width:55px;
    height:55px
  }
  .header-logo img {
    width:50px;
    height:50px
  }
  .header-email {
    grid-column:1;
    grid-row:2;
    font-size:11px;
    white-space:nowrap
  }
  .brand-social {
    grid-column:2;
    grid-row:2;
    gap:7px
  }
  .brand-social .social-circle {
    width:29px;
    height:29px
  }
  .brand-social .social-circle svg {
    width:16px;
    height:16px
  }
  .menu {
    top:17px
  }
  .desktop-nav-row {
    height:0
  }
  .navlinks,.navlinks.open {
    top:112px;
    max-height:calc(100svh - 112px)
  }
  .nav.is-condensed.is-peeking .navlinks {
    max-height:calc(100svh - 112px - 48px)
  }
  .rail-social {
    right:18px;
    gap:6px
  }
  .rail-social .social-circle {
    width:29px;
    height:29px
  }
  .rail-social .social-circle svg {
    width:16px;
    height:16px
  }
  .peek-label {
    font-size:22px;
    gap:9px
  }
  .peek-label i {
    font-size:21px
  }
  .hero {
    margin-top:112px;
    height:calc(100svh - 112px)
  }
  
}

@media(max-width:380px) {
  .header-email {
    font-size:10px
  }
  .rail-social {
    right:12px;
    gap:5px
  }
  .rail-social .social-circle {
    width:27px;
    height:27px
  }
  .nav-peek {
    left:43%
  }
  .peek-label {
    font-size:21px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .header-logo img,.social-circle,.nav-rail {
    transition:none
  }
  .header-logo:hover img,.social-circle:hover {
    transform:none
  }
  
}


/* V16 — expressive readable CTAs, dual editorial entry points and walking-coaching artwork. */
:root {
  --menu-font-size:clamp(18px,1.7vw,25px)
}
.navlinks,.navlinks.open {
  font-size:var(--menu-font-size)
}
.pill,.textlink,.article-link,.mega-all,.value-offline-link,.footer-contact {
  font-family:var(--serif);
  font-size:21px;
  line-height:1.3;
  letter-spacing:-.02em;
  font-weight:400
}
.pill {
  padding:18px 27px;
  gap:35px
}
.pill .arrow {
  font-size:27px
}
.textlink {
  padding-bottom:7px
}
.article-link {
  font-size:20px;
  gap:23px
}
.filter {
  font-size:17px;
  padding:12px 20px
}
.topic-detail .textlink,.milestone .textlink {
  font-size:20px;
  line-height:1.5
}
.work .textlink,.sport-card .textlink {
  font-family:var(--serif);
  font-size:21px;
  line-height:1.4;
  padding-bottom:7px
}
.chapter-preview a {
  font-family:var(--serif);
  font-size:19px;
  line-height:1.3
}
.mega-all {
  font-size:20px
}
.mega-topic strong {
  font-size:29px
}
.mega-topic>span:last-of-type {
  font-size:15px
}
.header-email {
  font-size:16px
}
.navlinks>.header-follow {
  font-size:20px;
  padding:12px 22px
}
.value-project strong {
  font-size:34px
}
.value-offline-link {
  font-size:21px
}
.responsibility-sources a {
  font-size:18px
}
.footer-column h3 {
  font-family:var(--serif);
  font-size:var(--menu-font-size);
  font-weight:400;
  line-height:1.3;
  letter-spacing:-.025em;
  text-transform:none;
  margin:4px 0 24px;
  color:var(--gold)
}
.footer-column>a {
  font-size:18px;
  line-height:1.7;
  margin:13px 0
}
.footer-credit>span {
  font-size:14px;
  margin-bottom:7px
}
.footer-credit>a {
  font-size:26px
}
.footer-contact {
  font-size:20px
}
.footer-columns {
  grid-template-columns:1.25fr .95fr 1fr 1.15fr;
  gap:35px
}
.footer-logo {
  display:inline-flex;
  width:105px;
  height:105px;
  align-items:center;
  justify-content:center
}
.footer-logo-mark {
  display:block;
  width:100%;
  height:100%;
  background:var(--paper);
  -webkit-mask:url('zsombito-logowhite.png') center / contain no-repeat;
  mask:url('zsombito-logowhite.png') center / contain no-repeat
}
.professional-footer .footer-bottom {
  font-size:14px
}
.professional-footer .footer-bottom>a {
  font-size:18px
}
.footer-brand p:not([data-small-print]) {
  font-size:18px;
  line-height:1.8;
  max-width:310px
}
.writing-paths {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
  margin:0 0 48px
}
.writing-path {
  padding:33px 35px 30px;
  border:1px solid var(--line);
  position:relative;
  overflow:hidden;
  transition:background .3s,transform .3s,border-color .3s;
  background:#e8e2d566
}
.writing-path:after {
  content:'';
  position:absolute;
  right:-55px;
  bottom:-70px;
  width:230px;
  height:230px;
  border:1px solid var(--line);
  border-radius:50%;
  pointer-events:none;
  opacity:.5
}
.writing-interviews {
  background:#5846660c;
  border-color:#58466635
}
.writing-path:hover {
  transform:translateY(-4px);
  border-color:var(--plum)
}
.writing-path>.eyebrow {
  font-size:9px;
  color:var(--plum)
}
.writing-path-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:26px 0 18px
}
.writing-path-title h3 {
  font-size:44px;
  margin:0
}
.writing-path-title>span {
  font-size:33px;
  color:var(--plum)
}
.writing-path p:not([data-small-print]) {
  font-size:18px;
  line-height:1.8;
  max-width:450px;
  margin-bottom:24px
}
.writing-path-action {
  font-family:var(--serif);
  font-size:22px;
  letter-spacing:-.02em;
  border-bottom:1px solid var(--line);
  padding-bottom:6px;
  display:inline-block;
  position:relative;
  z-index:1
}
.coaching-inner {
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding-top:52px;
  padding-bottom:52px;
  grid-template-columns:1fr 1fr;
  gap:75px;
  align-items:start
}
.walk-introduction h2 {
  font-size:clamp(46px,5.3vw,75px)
}
.walk-landscape {
  display:block;
  width:100%;
  max-width:580px;
  height:auto;
  margin:25px 0 10px;
  overflow:visible
}
.walk-sun {
  fill:#bead7420;
  stroke:var(--gold);
  stroke-width:1
}
.walk-horizon {
  fill:none;
  stroke:var(--green);
  stroke-width:1;
  opacity:.35
}
.walk-trees {
  fill:none;
  stroke:var(--green);
  stroke-width:1.2;
  opacity:.65;
  stroke-linejoin:round
}
.walk-trail {
  fill:none;
  stroke:var(--plum);
  stroke-width:1.5;
  stroke-linecap:round
}
.walk-steps {
  fill:var(--gold);
  opacity:.8
}
.walk-moments {
  display:flex;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
  font-size:12px;
  color:var(--plum);
  line-height:1.8
}
.walk-moments i {
  font-style:normal;
  color:var(--gold)
}
.walk-copy {
  align-self:center
}
.walk-copy p:not([data-small-print]) {
  font-size:18px;
  line-height:1.85;
  max-width:none
}
.walk-copy strong {
  font-weight:600
}
.walk-feedback {
  border-left:2px solid var(--gold);
  padding-left:20px;
  margin:25px 0 30px
}
.walk-feedback .eyebrow {
  font-size:9px;
  color:var(--plum)
}
.walk-feedback p:not([data-small-print]) {
  font-family:var(--serif);
  font-size:24px;
  line-height:1.45;
  letter-spacing:-.02em;
  margin:12px 0 0
}
.walk-feedback strong {
  font-weight:400;
  color:var(--plum)
}
.walk-copy .pill {
  font-size:21px
}

@media(min-width:900px) and (max-width:1180px) {
  :root {
    --menu-font-size:17px
  }
  .navlinks>.header-follow {
    font-size:19px;
    padding:11px 16px;
    gap:8px
  }
  .footer-columns {
    gap:25px
  }
  .footer-column h3 {
    font-size:var(--menu-font-size)
  }
  .footer-contact {
    font-size:18px
  }
  .footer-column>a {
    font-size:17px
  }
  .coaching-inner {
    gap:45px
  }
  .writing-path-title h3 {
    font-size:37px
  }
  .mega-topic strong {
    font-size:25px
  }
  .mega-topic>span:last-of-type {
    font-size:14px
  }
  
}

@media(max-width:899px) {
  :root {
    --menu-font-size:27px
  }
  .header-email {
    font-size:12px
  }
  .navlinks>.header-follow {
    font-size:21px
  }
  .pill,.textlink,.article-link {
    font-size:20px
  }
  .pill {
    padding:17px 24px;
    gap:28px
  }
  .hero-actions .textlink {
    font-size:18px
  }
  .hero-actions {
    gap:19px;
    align-items:flex-start;
    flex-wrap:wrap
  }
  .hero-copy {
    max-width:375px
  }
  .footer-column h3 {
    font-size:var(--menu-font-size)
  }
  .footer-column>a {
    font-size:19px
  }
  .footer-contact {
    font-size:21px
  }
  .footer-columns {
    grid-template-columns:1fr 1fr;
    gap:40px
  }
  .footer-logo {
    width:100px;
    height:100px
  }
  .writing-paths {
    gap:20px
  }
  .writing-path {
    padding:28px 24px
  }
  .writing-path-title h3 {
    font-size:35px
  }
  .writing-path p:not([data-small-print]) {
    font-size:17px
  }
  .writing-path-action {
    font-size:20px
  }
  .coaching-inner {
    grid-template-columns:1fr;
    gap:35px;
    padding:40px 0
  }
  .walk-landscape {
    max-width:540px;
    margin:15px auto
  }
  .walk-copy p:not([data-small-print]) {
    font-size:18px
  }
  .walk-feedback p:not([data-small-print]) {
    font-size:24px
  }
  .mega-topic>span:last-of-type {
    font-size:13px
  }
  
}

@media(max-width:500px) {
  .writing-paths {
    grid-template-columns:1fr;
    gap:20px
  }
  .writing-path-title h3 {
    font-size:38px
  }
  .footer-columns {
    grid-template-columns:1fr;
    gap:38px
  }
  .footer-logo {
    width:112px;
    height:112px
  }
  .footer-contact {
    font-size:21px
  }
  .footer-credit>span {
    font-size:15px
  }
  .footer-credit>a {
    font-size:28px
  }
  .filter {
    font-size:16px;
    padding:11px 16px
  }
  .walk-introduction h2 {
    font-size:48px
  }
  .walk-moments {
    font-size:11px;
    gap:9px
  }
  .walk-copy .pill {
    font-size:20px
  }
  .hero-actions .textlink {
    font-size:18px
  }
  .hero-actions .pill {
    font-size:20px
  }
  .value-offline-link {
    font-size:20px
  }
  .writing-path-action {
    font-size:22px
  }
  
}

.topic-other a {
  font-size:18px;
  line-height:1.5;
  padding:12px 20px
}
.scroll-link>.eyebrow {
  font-family:var(--serif);
  font-size:18px;
  line-height:1.4;
  letter-spacing:-.02em;
  text-transform:none
}
.value-project div>span {
  font-size:16px;
  line-height:1.75
}
.privacy-page a:not(.header-logo):not(.social-circle):not(.footer-logo) {
  font-size:18px
}
.professional-footer .footer-social>a {
  max-width:none
}

@media(max-width:899px) {
  .scroll-link {
    gap:10px
  }
  .scroll-link>.eyebrow {
    font-size:15px
  }
  .hero-bottom p {
    max-width:140px
  }
  .hero-bottom {
    gap:12px
  }
  .topic-other a {
    font-size:17px;
    padding:11px 18px
  }
  
}


/* V17 — country-route story, separate ventures and concise subscription. */
.nav-peek {
  left:50%!important
}
.timeline-lead>p {
  max-width:480px
}
.timeline-lead .timeline-quote {
  max-width:450px
}
.route-country-index {
  font-family:var(--serif);
  font-style:italic;
  font-size:23px;
  color:var(--gold);
  padding-top:12px;
  border-top:1px solid #bead7430;
  max-width:300px;
  opacity:.7
}
.enterprise-grid {
  align-items:start
}
.enterprise h2 {
  font-size:clamp(47px,5.8vw,82px)
}
.business-ventures {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:25px;
  margin-top:20px
}
.business-venture {
  padding:30px 33px;
  border:1px solid #bead7455;
  background:#f4f0e606;
  transition:background .3s,transform .3s
}
.business-venture:hover {
  background:#f4f0e60f;
  transform:translateY(-4px)
}
.business-venture>.eyebrow {
  font-size:9px;
  color:var(--gold)
}
.business-venture>div {
  display:flex;
  justify-content:space-between;
  gap:25px;
  align-items:center;
  margin:23px 0 17px
}
.business-venture h3 {
  font-size:48px;
  margin:0
}
.business-venture>div>span {
  font-size:30px;
  color:var(--gold)
}
.business-venture p:not([data-small-print]) {
  font-size:18px;
  line-height:1.8;
  max-width:430px
}
.business-venture-link {
  font-family:var(--serif);
  font-size:22px;
  letter-spacing:-.02em;
  border-bottom:1px solid #f4f0e655;
  padding-bottom:6px;
  display:inline-block
}
.value-online-mark {
  width:150px;
  height:150px;
  align-self:center;
  background:var(--gold);
  -webkit-mask:url('zsombito-logowhite.png') center / contain no-repeat;
  mask:url('zsombito-logowhite.png') center / contain no-repeat;
  margin:5px auto 38px;
  opacity:.75
}
.value-online .value-projects {
  margin-top:auto
}
.value-online .value-world-bottom {
  margin-top:25px
}
.subscription-field {
  border-bottom:1px solid var(--green);
  padding-bottom:13px;
  margin:0 0 30px
}
.subscription-field .form-label {
  font-size:12px;
  margin-bottom:12px
}
.subscription-field input {
  background:transparent;
  border:0;
  border-radius:0;
  width:100%;
  font-size:20px;
  color:var(--green);
  padding:10px 0;
  line-height:1.5
}
.subscription-field input::placeholder {
  color:#183e3580
}
.privacy-consent {
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:10px 0 28px;
  font-size:15px;
  line-height:1.7;
  cursor:pointer
}
.privacy-consent input {
  width:18px;
  height:18px;
  accent-color:var(--plum);
  margin:4px 0 0;
  flex-shrink:0
}
.privacy-consent a {
  font-size:15px;
  color:var(--plum);
  text-decoration:underline;
  text-underline-offset:3px
}
.subscription-submit {
  min-width:220px;
  justify-content:space-between
}
.newsletter-grid>div p:not([data-small-print]) {
  max-width:490px
}
.newsletter .form-note {
  margin-top:22px
}
.professional-footer .footer-bottom {
  justify-content:center;
  text-align:center;
  display:block;
  padding-top:27px
}
.professional-footer .footer-bottom>span {
  display:inline-block
}
.partners-section {
  border-bottom:1px solid var(--line)
}

@media(max-width:899px) {
  .business-ventures {
    grid-template-columns:1fr;
    gap:20px;
    margin-top:0
  }
  .business-venture {
    padding:28px
  }
  .business-venture h3 {
    font-size:43px
  }
  .business-venture-link {
    font-size:21px
  }
  .value-online-mark {
    width:145px;
    height:145px;
    margin-top:10px
  }
  .privacy-consent,.privacy-consent a {
    font-size:15px
  }
  .subscription-field input {
    font-size:19px
  }
  .professional-footer .footer-bottom {
    display:block
  }
  .enterprise h2 {
    font-size:clamp(48px,8vw,65px)
  }
  
}


/* V20 — an unfolding mountain-to-plain route and drifting weeping-willow leaves. */
.timeline {
  position:relative
}
.timeline:before,.timeline-fill,.milestone:before {
  display:none!important
}
.milestone {
  position:relative;
  padding-top:290px;
  z-index:2
}
.route-landscape {
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:260px;
  overflow:visible;
  pointer-events:none;
  z-index:1
}
.route-terrain-ghost {
  fill:none;
  stroke:#bead741c;
  stroke-width:1.4
}
.route-terrain-fill {
  fill:url(#route-terrain-gradient)
}
.route-terrain-outline {
  fill:none;
  stroke:#bead7480;
  stroke-width:1.6;
  stroke-linejoin:round
}
.route-terrain-details {
  fill:none;
  stroke:#bead7440;
  stroke-width:1.2;
  stroke-linecap:round
}
.route-map-label {
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:.16em;
  fill:var(--gold);
  opacity:.75
}
.route-wave-base {
  fill:none;
  stroke:#bead743d;
  stroke-width:1.6
}
.route-wave-active {
  fill:none;
  stroke:var(--gold);
  stroke-width:2.4;
  stroke-linecap:round;
  stroke-dasharray:1000;
  stroke-dashoffset:1000
}
.route-moving-marker {
  fill:var(--gold)
}
#route-marker-halo {
  fill:#bead741a;
  stroke:#bead7455;
  stroke-width:1
}
#route-marker-dot {
  stroke:var(--green);
  stroke-width:1.5
}
.milestone.current .chapter-trigger {
  color:var(--gold)
}
.route-slider-controls {
  display:flex;
  align-items:center;
  gap:22px;
  margin:0 0 24px
}
.route-slider-controls>.eyebrow {
  color:var(--gold);
  font-size:8px;
  white-space:nowrap
}
.route-slider {
  appearance:none;
  -webkit-appearance:none;
  flex:1;
  height:22px;
  background:transparent;
  cursor:pointer;
  --route-progress:0%;
  margin:0;
  padding:0
}
.route-slider::-webkit-slider-runnable-track {
  height:2px;
  background:linear-gradient(90deg,var(--gold) var(--route-progress),#bead7438 var(--route-progress));
  border-radius:2px
}
.route-slider::-moz-range-track {
  height:2px;
  background:#bead7438
}
.route-slider::-moz-range-progress {
  height:2px;
  background:var(--gold)
}
.route-slider::-webkit-slider-thumb {
  appearance:none;
  -webkit-appearance:none;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--gold);
  border:4px solid var(--green);
  box-shadow:0 0 0 1px var(--gold);
  margin-top:-8px;
  transition:box-shadow .2s
}
.route-slider::-moz-range-thumb {
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--gold);
  border:3px solid var(--green);
  box-shadow:0 0 0 1px var(--gold)
}
.route-slider:hover::-webkit-slider-thumb {
  box-shadow:0 0 0 5px #bead7420
}

@media(max-width:899px) {
  .milestone {
    padding-top:255px
  }
  .route-landscape {
    height:225px
  }
  .route-slider-controls {
    gap:13px;
    margin-bottom:18px
  }
  .route-slider-controls>.eyebrow {
    font-size:7px
  }
  .route-map-label {
    font-size:11px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .route-wave-active {
    stroke-dashoffset:0!important
  }
  .route-slider::-webkit-slider-thumb {
    transition:none
  }
  
}


/* V21 — a quiet, illustrated willow; named places along the unfolding route. */
.willow-story {
  background:#e9e8dc;
  overflow:hidden;
  border-block:1px solid #183e3512
}

.willow-story-grid {
  display:grid;
  grid-template-columns:1.08fr 1fr;
  gap:clamp(35px,6vw,100px);
  align-items:center
}

.willow-drawing {
  position:relative;
  text-align:center
}
.willow-drawing svg {
  width:100%;
  height:auto;
  display:block;
  overflow:visible
}

.willow-moon {
  fill:#bead7438
}
.willow-trunk {
  fill:none;
  stroke:var(--green);
  stroke-width:3;
  stroke-linecap:round;
  opacity:.85
}

.willow-shoot {
  fill:none;
  stroke:#183e3566;
  stroke-width:1.2;
  transform-origin:300px 164px;
  animation:willowBreath 9s ease-in-out var(--sway-delay) infinite alternate
}

.willow-shoot use {
  fill:#4e3e5c35;
  stroke:#183e3555;
  stroke-width:.55
}

.willow-water {
  fill:none;
  stroke:var(--green);
  stroke-width:1;
  opacity:.3
}
.willow-art-caption {
  display:block;
  margin-top:16px;
  color:var(--green);
  opacity:.65
}

.willow-story-copy .section-head {
  display:block;
  margin-bottom:30px
}
.willow-story-copy h2 {
  font-size:clamp(48px,5.3vw,82px);
  line-height:1.07
}

.willow-story-copy p {
  font-size:clamp(20px,1.55vw,24px);
  line-height:1.8;
  margin-bottom:24px;
  max-width:620px
}
.willow-source {
  margin-top:12px
}

.route-sandstone {
  fill:#bead7410;
  stroke:#bead7490;
  stroke-width:1.7;
  stroke-linejoin:round
}
.route-sandstone path+path {
  fill:none;
  stroke-width:1;
  opacity:.65
}

.route-map-place {
  font-size:15px;
  letter-spacing:.1em;
  font-weight:600;
  opacity:1
}
.route-endpoint {
  fill:var(--green);
  stroke:var(--gold);
  stroke-width:2
}

@keyframes willowBreath {
  from {
    transform:rotate(-.6deg)
  }
  to {
    transform:rotate(.6deg)
  }
  
}

@media(max-width:899px) {
  .willow-story-grid {
    grid-template-columns:1fr;
    gap:36px
  }
  .willow-drawing {
    max-width:560px;
    width:100%;
    margin:auto
  }
  .willow-story-copy h2 {
    font-size:clamp(46px,9vw,70px)
  }
  .willow-art-caption {
    font-size:10px
  }
  .route-map-place {
    font-size:16px
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .willow-shoot {
    animation:none
  }
  
}


/* V22 — scroll reverses the falling leaves; a compact multilingual header. */
.willow-scroll-leaf {
  transform-box:view-box;
  transform-origin:0 0;
  will-change:transform,opacity
}

.header-tools {
  display:flex;
  align-items:center;
  justify-self:end;
  gap:20px;
  min-width:0
}

.language-picker {
  position:relative;
  color:var(--green)
}
.language-picker summary {
  list-style:none;
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 13px;
  border:1px solid #183e352b;
  border-radius:30px;
  font-size:18px;
  font-weight:500;
  cursor:pointer;
  transition:background .2s,border-color .2s;
  white-space:nowrap
}
.language-picker summary::-webkit-details-marker {
  display:none
}
.language-picker summary svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.3
}
.language-chevron {
  transition:transform .2s
}
.language-picker[open] .language-chevron {
  transform:rotate(180deg)
}
.language-picker summary:hover,.language-picker[open] summary {
  background:#bead742b;
  border-color:var(--gold)
}

.language-panel {
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  width:265px;
  max-width:calc(100vw - 32px);
  background:var(--paper);
  border:1px solid #bead7480;
  padding:23px;
  box-shadow:0 18px 50px #183e3520;
  border-radius:3px;
  z-index:55
}
.language-panel:before {
  content:"";
  position:absolute;
  inset:-15px 0 auto;
  height:15px
}
.language-panel>.eyebrow {
  display:block;
  margin-bottom:15px;
  color:var(--plum)
}
.language-panel ul {
  list-style:none;
  padding:0;
  margin:0
}
.language-option {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  padding:13px 0;
  border:0;
  border-bottom:1px solid var(--line);
  background:none;
  color:var(--green);
  font-family:var(--serif);
  font-size:24px;
  text-align:left
}
.language-panel li:last-child .language-option {
  border-bottom:0
}
.language-option small {
  font-family:var(--sans);
  font-size:10px;
  white-space:nowrap;
  font-weight:400;
  letter-spacing:.03em
}
.language-option:disabled {
  opacity:.5;
  cursor:default
}
.language-option.is-current {
  color:var(--plum)
}

@media(max-width:899px) {
  .header-tools {
    grid-column:2;
    grid-row:2;
    gap:10px
  }
  .header-tools .brand-social {
    gap:6px
  }
  .header-tools .social-circle {
    width:28px;
    height:28px
  }
  .header-tools .social-circle svg {
    width:16px;
    height:16px
  }
  .language-picker summary {
    font-size:16px;
    padding:6px 9px;
    gap:5px
  }
  .language-picker summary svg {
    width:16px;
    height:16px
  }
  .header-email {
    font-size:12px;
    overflow-wrap:anywhere;
    min-width:0
  }
  .language-panel {
    top:calc(100% + 9px)
  }
  
}

@media(prefers-reduced-motion:reduce) {
  .willow-scroll-leaf {
    will-change:auto;
    transform:none!important;
    opacity:1!important
  }
  
}


/* V24 — every language has the same visual weight and a soft hover treatment. */
.language-option {
  position:relative;
  padding:13px 10px;
  border-radius:3px;
  transition:background .25s,color .25s,padding .25s;
  opacity:1
}

.language-option:hover,.language-option:focus-visible {
  background:#bead7436;
  color:var(--plum);
  padding-left:16px;
  outline:0
}

.language-option:focus-visible {
  box-shadow:inset 0 0 0 1px var(--gold)
}

.language-option.is-current {
  background:#183e3508
}
.language-option.is-current:hover {
  background:#bead7436
}

.language-option[aria-disabled="true"] {
  cursor:default
}


/* V25 — one archive CTA follows the selected editorial tab. */
.writing-more {
  display:flex;
  justify-content:center;
  margin-top:50px;
  padding-top:32px;
  border-top:1px solid var(--line)
}

.writing-more-button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  background:var(--gold);
  color:var(--green);
  padding:20px 30px;
  border-radius:40px;
  font-family:var(--serif);
  font-size:clamp(24px,2.1vw,32px);
  line-height:1.25;
  transition:background .25s,color .25s,transform .25s
}

.writing-more-button:hover {
  background:var(--green);
  color:var(--paper);
  transform:translateY(-3px)
}
.writing-more-button:focus-visible {
  outline:2px solid var(--plum);
  outline-offset:5px
}

@media(max-width:600px) {
  .writing-more {
    margin-top:32px
  }
  .writing-more-button {
    width:100%;
    padding:18px 22px;
    gap:18px
  }
  
}


/* V27 — country-aligned drawing captions and an expansive human/cosmos artwork. */
.timeline-viewport {
  scroll-snap-type:none
}

.route-station-labels .route-map-label {
  opacity:.4;
  transition:fill .35s,opacity .35s;
  paint-order:stroke;
  stroke:var(--green);
  stroke-width:4px;
  stroke-linejoin:round
}

.route-station-labels .route-map-label.is-current {
  opacity:1;
  fill:var(--paper);
  filter:drop-shadow(0 0 5px #bead7444)
}

.threshold-stage>img {
  object-position:50% 50%
}
.threshold-shade {
  background:linear-gradient(0deg,#10291f85,#183e3522 60%,#183e3510)
}


/* V28 — text on the left, willow drawing on the right. */
.willow-story-grid {
  grid-template-columns:1fr 1.08fr
}

@media(max-width:899px) {
  .willow-story-grid {
    grid-template-columns:1fr
  }
  
}


/* V29 — end scrolling at the actual route content, without a blank trailing viewport. */
.timeline {
  padding-right:0
}


/* V30 — mobile-native SVG icons and reliable viewport-driven scroll visuals. */
.icon-star {
  width:1em;
  height:1em;
  display:inline-block;
  vertical-align:middle;
  flex-shrink:0;
  color:inherit
}
.icon-menu {
  width:24px;
  height:24px;
  display:block
}

.tiny-star,.marquee i,.value-symbol {
  font-variant-emoji:text;
  background:none
}
.tiny-star .icon-star {
  width:28px;
  height:28px
}
.marquee .icon-star {
  width:24px;
  height:24px
}

html {
  overflow-x:hidden
}
body {
  overflow-x:visible
}

@media(max-width:899px) and (prefers-reduced-motion:no-preference) {
  
 .threshold {
    height:190vh;
    height:190svh;
    overflow:visible
  }
  
 .threshold-stage {
    position:-webkit-sticky;
    position:sticky;
    top:var(--header-clearance);
    height:calc(100vh - var(--header-clearance));
    height:calc(100svh - var(--header-clearance));
    isolation:isolate
  }
  
 .threshold-stage>img {
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden
  }
  
 .threshold-line {
    font-size:clamp(44px,10vw,72px)
  }
  

}

.willow-scroll-leaf {
  will-change:auto
}


/* Editorial components moved from the HTML. */

      .writing-tabs  {
  
        display: flex;
  
        flex-wrap: wrap;
  
        gap: 12px;
  
        margin: 0 0 38px;
  
        padding-bottom: 16px;
  
        border-bottom: 1px solid var(--line);
  
      
}


      .writing-tab  {
  
        padding: 14px 25px;
  
        border: 1px solid var(--line);
  
        border-radius: 32px;
  
        background: transparent;
  
        color: var(--green);
  
        font-family: var(--serif);
  
        font-size: clamp(21px, 2.2vw, 28px);
  
        letter-spacing: -0.03em;
  
        transition: background 0.2s, color 0.2s, border-color 0.2s;
  
      
}


      .writing-tab:hover,
      .writing-tab.is-active  {
  
        background: var(--green);
  
        border-color: var(--green);
  
        color: var(--paper);
  
      
}


      .writing-tab:focus-visible  {
  
        outline: 3px solid var(--gold);
  
        outline-offset: 4px;
  
      
}


      .writing-tab-panel[hidden]  {
  
        display: none !important;
  
      
}


      .writing-tab-panel > .article  {
  
        opacity: 1;
  
        transform: none;
  
      
}


      .interview-highlight .article-cover  {
  
        display: block;
  
      
}


      .interview-highlight .article-cover img  {
  
        object-position: center 30%;
  
      
}


      .interview-highlight .article-link  {
  
        display: inline-flex;
  
      
}


      @media (max-width: 500px)  {
  
        .writing-tabs  {
    
          gap: 10px;
    
        
  }
  

        .writing-tab  {
    
          font-size: 20px;
    
          padding: 13px 20px;
    
        
  }
  
      
}


      @media (prefers-reduced-motion: reduce)  {
  
        .writing-tab  {
    
          transition: none;
    
        
  }
  
      
}



/* Remaining editorial overrides moved from HTML. */

      .writing-tabs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px;
        padding: 0;
        margin-bottom: 44px;
        border: 0;
      }

      .writing-tab {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        padding: 32px 34px;
        border: 1px solid var(--line);
        border-radius: 3px;
        background: #e8e2d566;
      }

      .writing-tab:not(.is-active):hover {
        background: #58466612;
        border-color: var(--plum);
        color: var(--green);
      }

      .writing-tab.is-active {
        background: var(--green);
        color: var(--paper);
        border-color: var(--green);
      }

      .writing-tab-kicker {
        display: block;
        font-family: var(--sans);
        font-size: 9px;
        line-height: 1.6;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--plum);
      }

      .writing-tab-title {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        align-items: center;
        width: 100%;
        font-family: var(--serif);
        font-size: clamp(31px, 3.2vw, 44px);
        line-height: 1.12;
        letter-spacing: -0.04em;
        margin: 24px 0 18px;
      }

      .writing-tab-title > span:last-child {
        font-size: 30px;
      }

      .writing-tab-description {
        display: block;
        font-family: var(--sans);
        font-size: 17px;
        line-height: 1.8;
        letter-spacing: 0;
        opacity: 0.8;
        margin-bottom: 23px;
      }

      .writing-tab-action {
        font-family: var(--serif);
        font-size: 22px;
        line-height: 1.4;
        letter-spacing: -0.02em;
        border-bottom: 1px solid currentColor;
        padding-bottom: 5px;
        margin-top: auto;
      }

      .writing-tab.is-active .writing-tab-kicker,
      .writing-tab.is-active .writing-tab-title > span:last-child {
        color: var(--gold);
      }

      .value-world-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .value-world {
        display: grid;
        grid-template-rows: auto auto auto 1fr auto;
        align-content: start;
        min-height: 900px;
      }

      .value-world-top,
      .value-world-intro {
        margin-bottom: 32px;
      }

      .value-world-intro p {
        min-height: 62px;
      }

      .value-identity {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        padding: 3px 0 32px;
        border-bottom: 1px solid #f4f0e63b;
        margin-bottom: 28px;
      }

      .value-brand-icon {
        display: grid;
        place-items: center;
        width: 112px;
        height: 112px;
        flex-shrink: 0;
      }

      .value-brand-icon .value-online-mark {
        display: block;
        width: 112px;
        height: 112px;
        margin: 0;
        align-self: auto;
        opacity: 1;
      }

      .value-brand-icon .value-tisza-icon {
        display: block;
        width: 112px;
        height: 112px;
        object-fit: contain;
        filter: brightness(0) saturate(100%) invert(72%) sepia(23%) saturate(638%) hue-rotate(8deg) brightness(95%) contrast(86%);
      }

      .value-domain {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 18px;
        min-height: 44px;
        font-family: var(--serif);
        font-size: clamp(30px, 2.8vw, 39px);
        line-height: 1.2;
        letter-spacing: -0.035em;
        color: var(--paper);
      }

      .value-domain > span {
        color: var(--gold);
        font-size: 27px;
      }

      .value-domain:hover {
        color: var(--gold);
      }

      .value-description {
        position: relative;
        z-index: 2;
        display: flex;
        flex-direction: column;
      }

      .value-description > p {
        margin-bottom: 18px;
      }

      .value-description .value-experiences {
        margin: 4px 0 28px;
      }

      .value-description .value-offline-link {
        margin-top: auto;
      }

      @media (max-width: 899px) {
        .value-world-grid {
          grid-template-columns: 1fr;
        }

        .value-world {
          min-height: 870px;
        }

        .writing-tab {
          padding: 27px 24px;
        }

        .writing-tab-title {
          font-size: 34px;
        }

        .writing-tab-description {
          font-size: 16px;
        }
      }

      @media (max-width: 600px) {
        .writing-tabs {
          grid-template-columns: 1fr;
          gap: 18px;
        }

        .writing-tab-title {
          font-size: 37px;
        }

        .writing-tab-description {
          font-size: 17px;
        }

        .value-domain {
          font-size: 35px;
        }
      }
    
/* ========================================================================
   V33 — SHARED DESIGN SYSTEM
   Edit these tokens to change the visual scale throughout the site.
   ======================================================================== */
:root  {
  
  --font-body:20px;
   --font-small:14px;
   --font-label:12px;
  
  --font-section:clamp(52px,5.5vw,80px);
   --font-card:clamp(28px,2.5vw,36px);
  
  --font-action:23px;
   --font-navigation:clamp(22px,2vw,28px);
  
  --space-section:clamp(80px,8vw,120px);
   --space-grid:28px;
  
  --radius-button:999px;
  

}

body  {
  font-size:var(--font-body)
}

.section  {
  padding-block:var(--space-section)
}

body .section :is(p:not([data-small-print]),.intro-text),
body .newsletter p:not([data-small-print]),body .interlude p:not([data-small-print]),
body .value-world p:not([data-small-print]),body .walk-copy p:not([data-small-print])  {
  
  font-size:var(--font-body);
  line-height:1.75;
  

}

body .section-head h2,body .intro-body h2,body .willow-story-copy h2,
body .timeline-lead h2,body .enterprise-grid h2,body .coaching-inner h2,
body .newsletter-grid h2,body .partners-heading h2  {
  font-size:var(--font-section);
  line-height:1.08
}

body .section-head  {
  margin-bottom:48px
}

body .eyebrow,body .section-index.eyebrow,.nav .mega-topic .eyebrow,
.contact-direction>.eyebrow  {
  font-size:var(--font-label);
  line-height:1.65;
  letter-spacing:.16em
}

body .article-meta,body .sport-number,body .walk-moments,
body .responsibility-scope,body .writing-tab-kicker  {
  font-size:var(--font-small);
  line-height:1.65
}

body .form-note,body .form-status,body .footer-credit>span,
body .professional-footer .footer-bottom,body .dialog-footer  {
  font-size:var(--font-small)!important;
  line-height:1.7;
  opacity:1
}

body .privacy-consent,body .privacy-consent a,body .form-label  {
  font-size:var(--font-small)
}

body .header-follow,body .navlinks,body .professional-footer .footer-column h3  {
  font-size:var(--font-navigation)
}

body .header-follow  {
  padding:13px 23px;
  gap:15px
}

body .professional-footer .footer-column h3  {
  line-height:1.3;
  margin-bottom:24px
}

body .professional-footer .footer-column>a,body .footer-brand p:not([data-small-print])  {
  font-size:18px;
  line-height:1.7
}

body .footer-credit>a,body .footer-contact  {
  font-size:var(--font-action)
}

body .navlinks  {
  gap:18px
}

body .pill,body .writing-more-button  {
  font-size:var(--font-action);
  line-height:1.3;
  padding:17px 26px;
  min-height:56px;
  border-radius:var(--radius-button);
  gap:25px
}

body .pill.plum  {
  background:var(--plum);
  color:var(--paper)
}

body .pill:not(.plum),body .writing-more-button,body .newsletter .subscription-submit  {
  background:var(--gold);
  color:var(--green)
}

body .pill:hover,body .writing-more-button:hover  {
  background:var(--green);
  color:var(--paper);
  transform:translateY(-2px)
}

body .textlink,body .article-link,body .value-offline-link,body .business-venture-link  {
  font-size:var(--font-action);
  line-height:1.4;
  display:inline-flex;
  align-items:center;
  gap:14px;
  min-height:44px
}

body .textlink  {
  padding-bottom:5px;
  text-underline-offset:6px
}

body .article h3,body .sport-card h3  {
  font-size:var(--font-card);
  line-height:1.2
}

body .heading-ink  {
  --heading-muted:rgba(24,62,53,.72)
}

.timeline-section .heading-ink,.topics .heading-ink,.enterprise .heading-ink  {
  --heading-muted:#f4f0e6b8
}

body .footer-column .heading-ink  {
  --heading-muted:#bead74c0!important
}


/* Scroll scene: a window into the artwork opens while orbital layers turn. */
.cosmic-journey  {
  height:185vh;
  height:185svh;
  background:var(--green);
  position:relative;
  overflow:visible
}

.cosmic-stage  {
  --journey:0;
  --orbit-turn:-18deg;
  position:sticky;
  top:var(--header-clearance);
  height:calc(100vh - var(--header-clearance));
  height:calc(100svh - var(--header-clearance));
  min-height:560px;
  background:var(--green);
  isolation:isolate;
  overflow:hidden
}

.cosmic-stage>img  {
  filter:brightness(.72);
  z-index:0;
  object-position:50% 50%;
  will-change:transform,clip-path
}

.cosmic-stage .threshold-shade  {
  z-index:1;
  background:linear-gradient(0deg,#071f18c9,#0c211652 55%,#10241f40)
}

.cosmic-aura  {
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:radial-gradient(ellipse at 50% 45%,transparent 22%,#0b261b22 55%,#0b261b85 100%)
}

.cosmic-orbits  {
  position:absolute;
  left:50%;
  top:50%;
  width:115%;
  height:115%;
  transform:translate(-50%,-50%) rotate(var(--orbit-turn));
  z-index:2;
  pointer-events:none;
  opacity:.65
}

.orbit-rings  {
  fill:none;
  stroke:var(--gold);
  stroke-width:.6;
  stroke-dasharray:2 7
}
.orbit-stars  {
  fill:var(--gold)
}

.cosmic-stage .threshold-copy  {
  z-index:3;
  padding:40px 24px;
  pointer-events:none
}

.cosmic-stage .threshold-copy>.eyebrow  {
  color:var(--gold)
}

.cosmic-stage .threshold-line  {
  font-size:clamp(58px,7.5vw,112px);
  line-height:1.02;
  text-shadow:0 2px 30px #091e1980;
  color:var(--paper)
}

.cosmic-stage .threshold-line em  {
  color:var(--gold)
}

.cosmic-stage .threshold-copy>p  {
  font-size:var(--font-body);
  line-height:1.65;
  max-width:440px;
  color:var(--paper)
}

.cosmic-stage .threshold-lines  {
  height:250px;
  width:100%;
  margin-block:26px
}

.cosmic-stage .threshold-scroll,.cosmic-stage .threshold-track  {
  z-index:4;
  color:var(--gold)
}

.cosmic-corners  {
  position:absolute;
  inset:30px;
  z-index:3;
  pointer-events:none;
  opacity:.6
}

.cosmic-corners i  {
  position:absolute;
  width:24px;
  height:24px;
  border-color:var(--gold);
  border-style:solid;
  border-width:0
}

.cosmic-corners i:nth-child(1) {
  top:0;
  left:0;
  border-top-width:1px;
  border-left-width:1px
}

.cosmic-corners i:nth-child(2) {
  top:0;
  right:0;
  border-top-width:1px;
  border-right-width:1px
}

.cosmic-corners i:nth-child(3) {
  bottom:0;
  left:0;
  border-bottom-width:1px;
  border-left-width:1px
}

.cosmic-corners i:nth-child(4) {
  bottom:0;
  right:0;
  border-bottom-width:1px;
  border-right-width:1px
}


/* Editorial navigation and independent article switcher. */
.writing-destinations  {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-grid);
  margin-bottom:64px
}

.writing-destination  {
  display:flex;
  flex-direction:column;
  gap:22px;
  padding:38px;
  background:var(--green);
  color:var(--paper);
  border:1px solid var(--green);
  position:relative;
  overflow:hidden;
  transition:transform .3s,background .3s
}

.writing-destination:after  {
  content:'';
  width:210px;
  height:210px;
  border:1px solid #bead7445;
  border-radius:50%;
  position:absolute;
  right:-95px;
  bottom:-90px;
  pointer-events:none
}

.writing-destination-interviews  {
  background:#5846660d;
  color:var(--plum);
  border-color:#58466650
}

.writing-destination:hover  {
  transform:translateY(-4px)
}

.writing-destination .writing-tab-title  {
  font-size:clamp(34px,3.5vw,48px);
  line-height:1.1;
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin:0
}

.writing-destination .writing-tab-description  {
  font-size:var(--font-body);
  line-height:1.7;
  display:block;
  max-width:48ch;
  opacity:1
}

.writing-destination .writing-tab-action  {
  font-size:var(--font-action);
  line-height:1.4;
  display:block;
  margin-top:auto;
  padding-top:6px;
  text-decoration:underline;
  text-underline-offset:7px
}

.latest-articles-head  {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:32px
}

.latest-articles-head h3  {
  font-size:var(--font-card);
  margin:0
}

.latest-tabs  {
  display:flex;
  gap:6px;
  align-items:center;
  padding:6px;
  border:1px solid var(--line);
  border-radius:999px
}

.latest-tabs .writing-tab  {
  all:unset;
  box-sizing:border-box;
  cursor:pointer;
  font-family:var(--sans);
  font-size:16px;
  padding:12px 19px;
  min-height:44px;
  border-radius:999px;
  color:var(--green);
  transition:background .2s,color .2s;
  white-space:nowrap
}

.latest-tabs .writing-tab:after  {
  display:none
}
.latest-tabs .writing-tab.is-active  {
  background:var(--green);
  color:var(--paper)
}

.latest-tabs .writing-tab:hover:not(.is-active)  {
  background:#bead7436
}
.latest-tabs .writing-tab:focus-visible  {
  outline:2px solid var(--plum);
  outline-offset:4px
}

.article-grid  {
  gap:var(--space-grid)
}
.article  {
  display:flex;
  flex-direction:column
}

body .article-cover  {
  height:clamp(280px,27vw,380px);
  aspect-ratio:1.1;
  overflow:hidden;
  display:block;
  position:relative
}

.article-cover img  {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .65s cubic-bezier(.2,.7,.2,1)
}

.article:hover .article-cover img,.article-cover:focus-visible img  {
  transform:scale(1.065)
}

.article-cover .cover-word  {
  transition:transform .65s;
  display:inline-block
}
.article:hover .cover-word  {
  transform:scale(1.06)
}

.article>.article-link  {
  margin-top:auto;
  align-self:flex-start
}
.article p  {
  max-width:55ch
}


/* Project links preserve the existing responsibility explanations. */
.responsibility-projects  {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px
}

.responsibility-projects a  {
  font-size:15px;
  line-height:1.4;
  min-height:44px;
  border:1px solid var(--line);
  border-radius:999px;
  padding:11px 15px;
  transition:background .2s
}

.responsibility-projects a:hover  {
  background:#bead7436
}

body .sport-card  {
  display:flex;
  flex-direction:column;
  border:1px solid var(--line);
  padding:30px;
  min-height:420px;
  background:#ffffff16
}

.sport-card>svg  {
  width:180px;
  max-width:100%;
  height:130px;
  opacity:.85;
  margin:16px 0 28px
}

body .sport-card p  {
  max-width:100%;
  font-size:var(--font-body)
}

.sport-card>.textlink  {
  margin-top:auto;
  align-self:flex-start;
  position:relative;
  z-index:2
}

.sport-card .sport-number  {
  color:var(--plum)
}

.walk-next-step  {
  margin-top:24px
}
.walk-next-step a  {
  text-decoration:underline;
  text-underline-offset:4px;
  overflow-wrap:anywhere
}


/* One contact hub, three directions, plus an integrated subscription panel. */
.contact-hub  {
  padding-block:var(--space-section);
  background:#e9e5d9
}

.contact-hub .section-head h2  {
  font-size:var(--font-section)
}

.contact-directions  {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--space-grid)
}

.contact-direction  {
  display:flex;
  flex-direction:column;
  padding:32px;
  border:1px solid #183e3529;
  background:var(--paper);
  min-height:390px
}

.contact-direction:first-child  {
  background:var(--plum);
  color:var(--paper);
  border-color:var(--plum)
}

.contact-direction:first-child>.eyebrow  {
  color:var(--gold)
}

.contact-direction h3  {
  font-size:var(--font-card);
  line-height:1.15;
  margin:26px 0
}

.contact-project-links  {
  display:flex;
  flex-direction:column;
  gap:13px;
  margin-bottom:32px
}

.contact-project-links a  {
  font-size:18px;
  line-height:1.6;
  text-decoration:underline;
  text-underline-offset:5px
}

.contact-direction>.textlink  {
  font-size:21px;
  margin-top:auto;
  align-self:flex-start
}

.contact-direction:first-child>.textlink  {
  color:var(--gold);
  border-color:#bead7480
}

.contact-direct  {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:30px 0;
  border-bottom:1px solid var(--line);
  margin-top:26px;
  font-size:var(--font-body)
}

.contact-direct a  {
  font-family:var(--serif);
  font-size:clamp(23px,2.5vw,34px);
  overflow-wrap:anywhere
}

.contact-hub .subscription-panel  {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(40px,7vw,100px);
  padding-top:70px;
  margin-top:0
}

.subscription-panel h2  {
  font-size:var(--font-section)
}

.subscription-panel p  {
  max-width:55ch
}
.subscription-panel .newsletter-form  {
  padding-top:0
}

.subscription-field input  {
  font-size:var(--font-body);
  padding:12px 0
}
.subscription-panel .form-note  {
  opacity:.8
}

body .partner-logo img  {
  max-width:155px;
  max-height:90px;
  width:auto;
  height:auto;
  object-fit:contain
}

body .partner-logo  {
  min-height:130px;
  padding:22px
}

body .professional-footer  {
  padding-top:75px
}


@media(max-width:1100px) and (min-width:900px) {
  
 body .navlinks  {
    font-size:21px;
    gap:13px
  }
  body .header-follow  {
    font-size:21px;
    padding:12px 18px
  }
  
 .contact-direction  {
    padding:26px
  }
  .contact-direction>.textlink  {
    font-size:20px
  }
  

}

@media(max-width:899px) {
  
 :root {
    --font-body:18px;
    --font-small:14px;
    --font-label:11px;
    --font-section:clamp(38px,7vw,58px);
    --font-card:28px;
    --font-action:21px;
    --font-navigation:25px;
    --space-section:72px;
    --space-grid:20px
  }
  
 body .section-head  {
    margin-bottom:34px
  }
  body .navlinks  {
    gap:0;
    font-size:var(--font-navigation)
  }
  
 body .hero h1  {
    font-size:clamp(48px,10vw,72px)
  }
  
 .cosmic-journey  {
    height:170vh;
    height:170svh
  }
  .cosmic-stage  {
    min-height:520px
  }
  
 .cosmic-stage .threshold-line  {
    font-size:clamp(48px,10vw,78px)
  }
  .cosmic-stage .threshold-lines  {
    height:210px
  }
  
 .cosmic-orbits  {
    width:165%;
    height:100%
  }
  .cosmic-corners  {
    inset:18px
  }
  
 .writing-destinations  {
    gap:20px;
    margin-bottom:44px
  }
  .writing-destination  {
    padding:28px
  }
  
 .writing-destination .writing-tab-title  {
    font-size:34px
  }
  .latest-articles-head  {
    align-items:flex-start;
    flex-direction:column
  }
  
 .contact-directions  {
    grid-template-columns:1fr
  }
  .contact-direction  {
    min-height:0;
    padding:28px
  }
  
 .contact-project-links  {
    margin-bottom:24px
  }
  .contact-direction h3  {
    margin-block:20px
  }
  
 .contact-direct  {
    align-items:flex-start;
    flex-direction:column;
    gap:12px
  }
  
 .contact-hub .subscription-panel  {
    grid-template-columns:1fr;
    gap:40px;
    padding-top:52px
  }
  
 body .professional-footer .footer-column h3  {
    font-size:var(--font-navigation)
  }
  
 body .article-cover  {
    height:auto;
    min-height:260px;
    aspect-ratio:1.15
  }
  
 body .sport-card  {
    min-height:400px;
    padding:26px
  }
  .responsibility-projects a {
    font-size:14px
  }
  

}

@media(max-width:600px) {
  
 .writing-destinations  {
    grid-template-columns:1fr
  }
  .writing-destination  {
    padding:27px
  }
  
 .latest-tabs  {
    width:100%;
    border-radius:10px
  }
  .latest-tabs .writing-tab  {
    flex:1;
    text-align:center;
    font-size:14px;
    padding:13px 8px;
    border-radius:7px;
    white-space:normal
  }
  
 .cosmic-stage .threshold-scroll  {
    font-size:10px
  }
  .cosmic-stage .threshold-copy>p  {
    max-width:30ch
  }
  
 body .sport-card  {
    min-height:380px
  }
  .contact-direction>.textlink  {
    font-size:20px
  }
  
 body .partner-logo img  {
    max-width:130px;
    max-height:75px
  }
  .contact-direct a  {
    font-size:23px
  }
  

}

@media(prefers-reduced-motion:reduce) {
  
 .cosmic-journey  {
    height:auto
  }
  .cosmic-stage  {
    position:relative;
    top:0;
    height:650px;
    --one:0;
    --two:0;
    --three:1
  }
  
 .cosmic-stage>img,.cosmic-stage .threshold-shade  {
    clip-path:none!important;
    transform:none!important
  }
  
 .cosmic-orbits  {
    transform:translate(-50%,-50%)
  }
  .cosmic-stage .threshold-scroll,.cosmic-stage .threshold-track {
    display:none
  }
  
 .article:hover .article-cover img,.article:hover .cover-word  {
    transform:none
  }
  .writing-destination:hover  {
    transform:none
  }
  

}


/* Standalone editorial archive shares the main site's design tokens. */
.archive-page {
  padding-top:calc(var(--nav-height) + 70px);
  padding-bottom:var(--space-section)
}
.archive-page h1 {
  font-size:var(--font-section);
  line-height:1.08;
  margin-top:40px
}
.archive-page .article-grid {
  margin-top:40px
}
.archive-page .article p {
  font-size:var(--font-body);
  line-height:1.75
}

body .hero-copy,body .hero-invitation,body .hero-bottom p:not([data-small-print]) {
  font-size:var(--font-body);
  line-height:1.65
}


/* V35 — article tabs sit directly beside the title. */
.latest-articles-head {justify-content:flex-start;flex-direction:row;align-items:center;gap:24px;flex-wrap:wrap}
.latest-articles-head .latest-tabs {width:auto;flex:0 0 auto}
@media(max-width:600px){.latest-articles-head{gap:16px}.latest-articles-head .latest-tabs{max-width:100%}}

/* V36 — explicitly enabled manual scroll effects, including reduced-motion devices.
   Automatic animation remains governed by prefers-reduced-motion. */
html.scroll-effects-enabled .heading-ink{--heading-reveal:var(--heading-progress,0%)!important}
html.scroll-effects-enabled .cosmic-journey{height:185vh;height:185svh}
html.scroll-effects-enabled .cosmic-stage{position:-webkit-sticky;position:sticky;top:var(--header-clearance);height:calc(100vh - var(--header-clearance));height:calc(100svh - var(--header-clearance));min-height:560px}
html.scroll-effects-enabled .cosmic-orbits{transform:translate(-50%,-50%) rotate(var(--orbit-turn))}
html.scroll-effects-enabled .threshold-line{transform:translateY(0)}
html.scroll-effects-enabled .cosmic-stage .threshold-scroll,html.scroll-effects-enabled .cosmic-stage .threshold-track{display:block}
html.scroll-effects-enabled .willow-scroll-leaf{transform-box:view-box;transform-origin:0 0}
.icon-arrow{display:inline-block;width:1em;height:1em;min-width:1em;flex-shrink:0;vertical-align:-.12em;color:inherit;background:none}
body .arrow .icon-arrow,body .textlink .icon-arrow,body .pill .icon-arrow{width:24px;height:24px;min-width:24px}
body .arrow{display:inline-flex;align-items:center;justify-content:center}
@supports(overflow-x:clip){html{overflow-x:clip}}
@media(max-width:899px){html.scroll-effects-enabled .cosmic-journey{height:170vh;height:170svh}html.scroll-effects-enabled .cosmic-stage{min-height:520px}}
