.brand-mark{display:block;max-width:240px;max-height:96px;object-fit:contain;object-position:left center;margin:18px 0 10px}
.hero-lockup{display:flex;align-items:flex-end;justify-content:space-between;gap:48px}
.hero-lockup>div:first-child{max-width:760px}
.hero-lockup .brand-mark{max-width:360px;max-height:150px;margin:0}
.premium-card{position:relative;overflow:hidden;transition:transform .24s ease,border-color .24s ease,background .24s ease}
.premium-card:before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.05),transparent 38%);pointer-events:none}
.premium-card:hover{transform:translateY(-4px);border-color:#4a4a4a}
.property-card{min-height:300px;justify-content:space-between!important}
.property-card .brand-mark{margin:0 0 24px}
.page-proof{padding:24px 0 0;border-top:1px solid #242424;margin-top:36px;color:#8f8c86;font-size:.8rem;letter-spacing:.11em;text-transform:uppercase}
.closing-band{padding:72px 0;background:linear-gradient(135deg,#050505,#0d0d0d);border-top:1px solid #202020}
.closing-band .shell{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.closing-band h2{max-width:760px;margin:8px 0 0;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.96;letter-spacing:-.055em}
.partner-grid article{transition:transform .24s ease,border-color .24s ease}.partner-grid article:hover{transform:translateY(-4px);border-color:#494949}
.partner-grid article a{display:inline-flex;margin-top:22px;font-weight:800;color:#e7e4dc}
.metric-note{display:block;margin-top:14px;color:#827f79;font-size:.78rem;line-height:1.6}
@media(max-width:1000px){.hero-lockup{align-items:flex-start;flex-direction:column}.hero-lockup .brand-mark{max-width:280px}.closing-band .shell{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.hero-lockup{gap:24px}.hero-lockup .brand-mark{max-width:220px}.property-card{min-height:230px}.closing-band{padding:56px 0}.closing-band h2{font-size:2.65rem}}.skip-link{position:fixed;left:14px;top:12px;z-index:999;background:#fff;color:#000;padding:10px 14px;border-radius:999px;font-size:.78rem;font-weight:900;transform:translateY(-160%);transition:transform .18s ease}.skip-link:focus{transform:translateY(0)}

/* Logo legibility system --------------------------------------------------- */
:root{
  --logo-paper:#f3f0e8;
  --logo-paper-2:#ebe6da;
  --logo-ink:#111612;
  --logo-line:rgba(17,22,18,.14);
}

/* Give dark-on-transparent marks a neutral field instead of making the
   surrounding brand color do the readability work. */
.hero-identity{
  background:linear-gradient(145deg,var(--logo-paper),var(--logo-paper-2))!important;
  border-color:var(--logo-line)!important;
  box-shadow:0 26px 70px rgba(0,0,0,.28);
}
.hero-identity .identity-caption{
  color:rgba(17,22,18,.58)!important;
}
.hero-group-logo{
  filter:none!important;
}

/* Product marks should read as marks first, decorations second. */
.hero-lockup>div:last-child{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:min(360px,100%);
}
.hero-lockup .brand-mark{
  box-sizing:border-box;
  width:min(360px,100%);
  max-width:none;
  max-height:170px;
  padding:26px 30px;
  margin:0;
  background:linear-gradient(145deg,var(--logo-paper),#fbf8f0);
  border:1px solid var(--logo-line);
  border-radius:22px;
  object-position:center center;
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}

/* Home operating-engine cards: keep personality in the card edge, not behind
   the wordmark. */
.system-card .system-brand-logo{
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  height:112px!important;
  max-height:112px!important;
  padding:18px 20px;
  margin:20px 0 18px!important;
  border-radius:16px;
  background:linear-gradient(145deg,var(--logo-paper),#fbf8f0);
  border:1px solid var(--logo-line);
  object-fit:contain!important;
  object-position:center center!important;
}
.system-card.tank .system-brand-logo{
  padding:14px 18px;
}

/* Show and community marks get the same neutral 'gallery wall' treatment so
   every original logo keeps its own colors. */
.media-card .brand-mark,
.media-card .program-logo,
.community-card .brand-mark,
.property-card .brand-mark{
  box-sizing:border-box;
  width:100%!important;
  max-width:none!important;
  height:116px!important;
  max-height:116px!important;
  padding:18px 22px!important;
  margin:18px 0 20px!important;
  border-radius:16px;
  background:linear-gradient(145deg,var(--logo-paper),#fbf8f0);
  border:1px solid var(--logo-line);
  object-fit:contain!important;
  object-position:center center!important;
  filter:none!important;
}

/* The home community stack uses logo artwork inside dark cards. Neutralize
   those fields too so Sunday Pours / Barrel Run are not fighting the page. */
.community-brand-stack>a{
  background:linear-gradient(145deg,var(--logo-paper),#fbf8f0)!important;
  border-color:var(--logo-line)!important;
  min-height:110px!important;
  padding:20px 24px!important;
}
.community-brand-stack>a img{
  max-width:280px!important;
  max-height:74px!important;
  margin:auto;
  filter:none!important;
}

/* Keep color as a navigational accent only. */
.system-card.tank{box-shadow:inset 0 4px 0 var(--orange)}
.system-card.wave{box-shadow:inset 0 4px 0 var(--wave)}
.system-card.bench{box-shadow:inset 0 4px 0 var(--bench)}
.system-card.measure{box-shadow:inset 0 4px 0 var(--measure)}

@media(max-width:650px){
  .hero-lockup .brand-mark{width:100%;max-width:300px;padding:20px 22px}
  .system-card .system-brand-logo{height:96px!important;max-height:96px!important}
  .media-card .brand-mark,
  .media-card .program-logo,
  .community-card .brand-mark,
  .property-card .brand-mark{height:100px!important;max-height:100px!important}
}


/* Calm light corporate system --------------------------------------------- */
:root{
  --bg:#f7f4ee;
  --ink:#181a17;
  --muted:#62665f;
  --line:#ded9cf;
  --paper:#fffdf8;
  --soft:#efeae1;
  --soft-2:#f2eee7;
}
html{background:var(--bg)}
body{background:var(--bg);color:var(--ink)}
p{color:#5c6059}
.shell{max-width:1220px}
.site-header{
  background:rgba(247,244,238,.94);
  border-bottom:1px solid rgba(24,26,23,.10);
  backdrop-filter:blur(18px);
}
.header-inner{height:72px}
.header-logo{display:block;width:66px;height:48px;object-fit:contain}
.nav{gap:25px}
.nav-link{color:#62665f;padding:25px 0 22px;font-weight:700}
.nav-link:hover,.nav-link.active{color:#181a17}
.menu-button{color:#181a17;border-color:#cbc5ba;background:#fffdf8}

.hero-home{
  min-height:640px;
  padding:92px 0 78px;
  background:
    radial-gradient(circle at 82% 24%,rgba(122,168,255,.10),transparent 27%),
    radial-gradient(circle at 68% 82%,rgba(241,153,32,.07),transparent 28%),
    var(--bg);
}
.hero-grid{grid-template-columns:1.08fr .92fr;gap:76px}
.eyebrow,.kicker{color:#777a73}
.hero h1,.page-hero h1{color:#171915}
.hero h1 em,.page-hero h1 em{color:#3c6251}
.hero-copy,.page-hero p{color:#555951;line-height:1.58}
.btn{border-color:#cec8bd;background:#fffdf8;color:#181a17}
.btn.primary{background:#181a17;color:#fffdf8;border-color:#181a17}
.btn.ghost:hover{border-color:#908a80;background:#fffdf8}
.text-link{color:#315b49}

.hero-identity{
  background:linear-gradient(145deg,#fffdf8,#efe9df)!important;
  border-color:#ded8cd!important;
  box-shadow:0 18px 50px rgba(44,39,32,.08)!important;
}
.hero-identity .identity-caption{color:#676a64!important}

.principles{
  background:#fffdf8;
  border-color:#ded9cf;
  padding:16px 0;
}
.principle-row{color:#5e625b}
.principle-row i{color:#aaa49a}

.section{padding:88px 0}
.section-head{gap:80px;margin-bottom:38px}
.section h2{color:#191b18}
.section-head p{color:#666961}

.system-grid{gap:16px}
.system-card{
  min-height:300px;
  background:#fffdf8;
  border-color:#e1dcd2;
  box-shadow:0 10px 30px rgba(42,37,30,.035);
}
.system-card:hover{
  border-color:#bdb7ac;
  box-shadow:0 14px 34px rgba(42,37,30,.07);
}
.system-card>span{color:#777a73}
.system-card h3{color:#191b18}
.system-card p{color:#62665f}
.system-card .system-brand-logo{
  background:#f6f1e7!important;
  border-color:#e4ded3!important;
}

.dark-band{
  background:#efeae1;
  border-color:#ded7cc;
}
.media-card,.community-card{
  background:#fffdf8!important;
  border-color:#e0dbd1!important;
  color:#191b18;
  min-height:300px;
  box-shadow:0 9px 28px rgba(42,37,30,.035);
}
.media-card p,.community-card p{color:#61655d}
.card-tag{color:#777a73}
.media-card .brand-mark,
.media-card .program-logo,
.community-card .brand-mark,
.property-card .brand-mark{
  background:#f6f1e7!important;
  border-color:#e2dcd1!important;
}

.sway-band{
  background:linear-gradient(135deg,#eee9f6,#f5f1e9);
  border-top:1px solid #ded7e8;
  border-bottom:1px solid #ded7e8;
}
.sway-callout p{color:#5e625b}

.mini-grid>div,.feature-grid article,.measure-grid>div,.partner-grid article{
  background:#fffdf8;
  border-color:#dfd9cf;
  box-shadow:0 8px 24px rgba(42,37,30,.03);
}
.mini-grid span,.measure-grid span,.feature-grid p,.partner-grid p{color:#62665f}

.page-hero{
  background:
    radial-gradient(circle at 82% 28%,rgba(122,168,255,.08),transparent 30%),
    var(--bg)!important;
  border-color:#ded9cf;
  padding:110px 0 76px;
}
.page-proof{border-color:#dcd6cb;color:#777a73}

.flow span{border-color:#d7d1c6;background:#fffdf8;color:#363a34}
.flow i{color:#aaa49a}
.quote-block span{border-color:#d9d3c8;color:#1f211e}
.stack-labels span{border-color:#d9d3c8;color:#20221f}
.stack-labels span:last-child{border-bottom-color:#d9d3c8}
.feature-list>div{border-color:#d9d3c8}
.feature-list span{color:#666a62}
.big-claim span{color:#686c64}
.industry-cloud span{background:#fffdf8;border-color:#ddd7cc;color:#30332e}
.tier-grid article{background:#fffdf8;border-color:#ddd7cc}
.tier-grid .featured{background:#f1edf7;border-color:#cfc3df}
.partner-grid .num{color:#7b7e76}

.premium-card:before{
  background:linear-gradient(140deg,rgba(25,27,24,.025),transparent 38%);
}
.premium-card:hover{border-color:#bdb7ac!important}

.closing-band{
  background:#eae4d9;
  border-color:#d8d1c5;
}
.closing-band h2{color:#181a17}

.site-footer{
  background:#eee9e0;
  border-color:#d9d3c8;
  color:#5f635c;
}
.footer-grid a:not(.brand){color:#5f635c}
.footer-grid a:hover{color:#181a17}
.legal{border-color:#d6d0c5;color:#777a73}
.muted{color:#6a6e66!important}

.home-sway-strip{
  margin-top:18px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:32px;
  align-items:center;
  padding:26px 28px;
  border:1px solid #d9d1e5;
  border-radius:22px;
  background:linear-gradient(135deg,#f0ebf7,#fffdf8);
}
.home-sway-strip strong{display:block;font-size:1.4rem;letter-spacing:-.035em;margin-bottom:6px}
.home-sway-strip p{margin:0;font-size:.95rem;max-width:720px}
.home-show-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.home-show-grid .media-card{min-height:280px}
.home-show-grid .program-logo,.home-show-grid .brand-mark{height:110px!important;max-height:110px!important}
.home-partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.home-partner-grid>div{
  padding:26px;
  border-top:2px solid #cfc8bc;
  background:#fffdf8;
  min-height:145px;
}
.home-partner-grid b{display:block;font-size:.74rem;letter-spacing:.13em;margin-bottom:10px}
.home-partner-grid span{display:block;color:#666961;line-height:1.45}
.home-closing{
  padding:80px 0;
  background:#eae4d9;
  border-top:1px solid #d7d0c4;
}
.home-closing .shell{display:flex;align-items:end;justify-content:space-between;gap:36px}
.home-closing h2{font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96;letter-spacing:-.055em;margin:12px 0 0;max-width:760px}

@media(max-width:1000px){
  .nav{background:#f7f4ee;border-bottom-color:#d8d2c7}
  .hero-grid{gap:44px}
  .home-show-grid{grid-template-columns:1fr 1fr}
  .home-show-grid>*:last-child{grid-column:1/-1}
  .home-partner-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .hero-home{padding:68px 0 58px}
  .hero-grid{gap:28px}
  .hero-identity{min-height:340px!important;border-radius:26px!important}
  .section{padding:64px 0}
  .home-sway-strip{grid-template-columns:1fr;padding:22px}
  .home-show-grid,.home-partner-grid{grid-template-columns:1fr}
  .home-show-grid>*:last-child{grid-column:auto}
  .home-closing{padding:62px 0}
  .home-closing .shell{align-items:flex-start;flex-direction:column}
}


/* Editorial culture pass --------------------------------------------------- */
::selection{background:#c7eff7;color:#111}
body{overflow-x:hidden}
.site-header{top:0;background:transparent;border:0;backdrop-filter:none;padding:10px 0 0}
.header-inner{
  min-height:64px;height:64px;
  padding:0 16px 0 12px;
  border:1px solid rgba(91,82,68,.14);
  border-radius:999px;
  background:rgba(255,253,248,.88);
  backdrop-filter:blur(18px);
  box-shadow:0 14px 38px rgba(49,42,32,.07);
}
.header-logo{width:62px;height:44px}
.nav-link{
  position:relative;
  padding:22px 0 19px;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.nav-link:after{
  content:"";
  position:absolute;
  left:0;right:100%;bottom:14px;
  height:2px;border-radius:999px;
  background:#57d8ff;
  transition:right .22s ease;
}
.nav-link:hover:after,.nav-link.active:after{right:0}

.hero-home{position:relative;isolation:isolate;padding-top:118px}
.hero-home:after{
  content:"";
  position:absolute;
  width:540px;height:540px;
  right:-170px;top:80px;
  border:1px solid rgba(87,216,255,.22);
  border-radius:50%;
  box-shadow:0 0 0 44px rgba(87,216,255,.025),0 0 0 88px rgba(255,120,73,.018);
  z-index:-1;
}
.hero-home .eyebrow{color:#496659}
.hero h1{
  font-size:clamp(4.8rem,8.5vw,8.2rem);
  line-height:.84;
  letter-spacing:-.088em;
  max-width:880px;
  text-wrap:balance;
}
.hero h1 em{color:#2f5d4a}
.hero-copy{max-width:650px;font-size:1.18rem}
.hero-stamp{
  justify-self:start;
  margin:22px 0 0;
  padding:8px 11px;
  border:1px solid #cfc8bd;
  border-radius:999px;
  background:rgba(255,253,248,.72);
  font-size:.66rem;font-weight:900;letter-spacing:.14em;
}
.hero-identity{
  position:relative;
  transform:rotate(1.2deg);
  transition:transform .35s ease,box-shadow .35s ease;
}
.hero-identity:hover{transform:rotate(0deg) translateY(-4px);box-shadow:0 24px 70px rgba(44,39,32,.12)!important}
.hero-identity:before{
  content:"";
  position:absolute;inset:20px;
  border:1px dashed rgba(24,26,23,.12);
  border-radius:26px;
  pointer-events:none;
}
.hero-group-logo{transition:transform .4s ease}
.hero-identity:hover .hero-group-logo{transform:scale(1.025)}

.principles{position:relative;overflow:hidden}
.principle-row{font-size:.71rem;letter-spacing:.16em}
.principle-row span:nth-child(1){color:#d96f32}
.principle-row span:nth-child(3){color:#408abf}
.principle-row span:nth-child(5){color:#3f7b68}
.principle-row span:nth-child(7){color:#8064a7}
.principle-row span:nth-child(9){color:#3a3d38}

.section-head h2{max-width:780px;text-wrap:balance}
.system-card{position:relative;overflow:hidden;padding:26px}
.system-card:after{
  position:absolute;
  top:14px;right:18px;
  font-size:3.8rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.09em;
  color:rgba(24,26,23,.045);
  pointer-events:none;
}
.system-card:nth-child(1):after{content:"01"}
.system-card:nth-child(2):after{content:"02"}
.system-card:nth-child(3):after{content:"03"}
.system-card:nth-child(4):after{content:"04"}
.system-card:hover{transform:translateY(-7px) rotate(-.2deg)}
.system-card:nth-child(even):hover{transform:translateY(-7px) rotate(.2deg)}
.system-card h3{font-size:2.15rem;line-height:.95}
.system-card .system-brand-logo{transition:transform .3s ease}
.system-card:hover .system-brand-logo{transform:scale(1.025)}

.home-sway-strip{
  position:relative;
  overflow:hidden;
  border-color:#d1c6df;
  padding:32px;
}
.home-sway-strip:after{
  content:"SWAY";
  position:absolute;
  right:80px;bottom:-30px;
  font-size:7rem;font-weight:950;letter-spacing:-.1em;
  color:rgba(91,65,126,.055);
  pointer-events:none;
}
.home-sway-strip strong{font-size:1.7rem;line-height:1}
.home-sway-strip:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(63,48,82,.08)}
.home-sway-strip{transition:transform .25s ease,box-shadow .25s ease}

.home-show-grid{
  grid-template-columns:1.15fr .85fr .85fr;
  align-items:stretch;
}
.home-show-grid .media-card:first-child{min-height:340px}
.media-card,.community-card{position:relative}
.media-card:hover,.community-card:hover{transform:translateY(-6px)}
.media-card .program-logo,.media-card .brand-mark{transition:transform .3s ease}
.media-card:hover .program-logo,.media-card:hover .brand-mark{transform:scale(1.025)}
.card-tag{
  display:inline-flex;
  align-self:flex-start;
  padding:6px 8px;
  border:1px solid #ddd6ca;
  border-radius:999px;
  background:#faf7f0;
  font-size:.59rem;
}
.home-thesis{
  padding:84px 0;
  background:#dff4f6;
  border-top:1px solid #cbe7e9;
  border-bottom:1px solid #cbe7e9;
}
.home-thesis .shell{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(240px,.55fr);
  gap:72px;
  align-items:end;
}
.home-thesis strong{
  display:block;
  font-size:clamp(3.3rem,7vw,7.2rem);
  line-height:.83;
  letter-spacing:-.085em;
  text-transform:uppercase;
  max-width:900px;
}
.home-thesis p{margin:0;font-size:1.05rem;line-height:1.65;color:#40504b}

.home-partner-grid{gap:0;border-top:1px solid #d8d1c6;border-bottom:1px solid #d8d1c6}
.home-partner-grid>div{
  border:0;
  border-right:1px solid #d8d1c6;
  min-height:170px;
  background:transparent;
  transition:background .2s ease;
}
.home-partner-grid>div:last-child{border-right:0}
.home-partner-grid>div:hover{background:#fffdf8}
.home-partner-grid b{font-size:.68rem}
.home-partner-grid span{font-size:.96rem}

.home-closing{
  position:relative;
  overflow:hidden;
  background:#f0e4d5;
}
.home-closing:after{
  content:"→";
  position:absolute;
  right:4%;top:50%;
  transform:translateY(-55%);
  font-size:13rem;line-height:1;
  font-weight:200;
  color:rgba(24,26,23,.055);
  pointer-events:none;
}

.page-hero{position:relative;isolation:isolate}
.page-hero:after{
  content:"";
  position:absolute;
  right:5%;top:32%;
  width:170px;height:170px;border-radius:50%;
  border:1px solid rgba(87,216,255,.28);
  box-shadow:0 0 0 32px rgba(87,216,255,.035);
  z-index:-1;
}
.page-hero h1{line-height:.86;letter-spacing:-.085em}
.partner-grid article{position:relative;overflow:hidden;min-height:290px}
.partner-grid article:after{
  content:"↗";
  position:absolute;right:20px;bottom:14px;
  font-size:3rem;color:rgba(24,26,23,.06)
}
.partner-grid article:hover{transform:translateY(-7px)}

.sway-primitives{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  border-top:1px solid #d9d3c8;
  border-bottom:1px solid #d9d3c8;
}
.sway-primitive{padding:28px 20px;border-right:1px solid #d9d3c8;min-height:180px}
.sway-primitive:last-child{border-right:0}
.sway-primitive span{display:block;font-size:.64rem;letter-spacing:.14em;color:#7c7f78;margin-bottom:45px}
.sway-primitive strong{display:block;font-size:1.45rem;letter-spacing:-.04em;margin-bottom:8px}
.sway-primitive p{font-size:.9rem;margin:0}
.sway-sync{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:72px;
  align-items:start;
}
.sway-sync h2{margin-top:0}
.sway-sync-list{display:flex;flex-direction:column}
.sway-sync-list>div{padding:22px 0;border-top:1px solid #d9d3c8}
.sway-sync-list>div:last-child{border-bottom:1px solid #d9d3c8}
.sway-sync-list b{display:block;font-size:.76rem;letter-spacing:.12em;margin-bottom:6px}
.sway-sync-list span{color:#62665f}

@media(max-width:1000px){
  .site-header{padding-top:6px}
  .header-inner{border-radius:18px}
  .nav{top:70px;border:1px solid #d8d2c7;border-radius:18px;box-shadow:0 18px 44px rgba(49,42,32,.10)}
  .home-show-grid{grid-template-columns:1fr 1fr}
  .home-show-grid .media-card:first-child{grid-column:1/-1}
  .home-thesis .shell,.sway-sync{grid-template-columns:1fr;gap:32px}
  .sway-primitives{grid-template-columns:1fr 1fr}
  .sway-primitive{border-bottom:1px solid #d9d3c8}
}
@media(max-width:650px){
  .site-header{padding:5px 0 0}
  .header-inner{height:60px;min-height:60px;border-radius:16px}
  .header-logo{width:54px;height:40px}
  .hero-home{padding-top:92px}
  .hero h1{font-size:clamp(4rem,18vw,6rem)}
  .hero-home:after{width:330px;height:330px;right:-180px}
  .hero-identity{transform:none}
  .home-show-grid{grid-template-columns:1fr}
  .home-show-grid .media-card:first-child{grid-column:auto}
  .home-thesis{padding:62px 0}
  .home-thesis strong{font-size:3.65rem}
  .home-partner-grid{border-bottom:0}
  .home-partner-grid>div{border-right:0;border-bottom:1px solid #d8d1c6}
  .sway-primitives{grid-template-columns:1fr}
  .sway-primitive{border-right:0}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
