@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&family=Space+Mono:wght@400;700&display=swap');
:root{--paper:#f3efe7;--paper-deep:#e8e0d4;--ink:#0b1c2d;--ink-soft:#183348;--coral:#f26450;--sky:#62c4e3;--line:rgba(11,28,45,.17);--muted:#60717b;--display:'Instrument Serif',Georgia,serif;--body:'DM Sans',sans-serif;--mono:'Space Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.f3rd-page{overflow:hidden}.noise{pointer-events:none;position:fixed;z-index:30;inset:0;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}.container{width:min(1160px,calc(100% - 64px));margin:0 auto}.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.11em;font-size:.68rem}.section-pad{padding:132px 0}.eyebrow{display:flex;align-items:center;gap:12px;color:var(--coral)}.eyebrow:before{content:'';width:28px;height:1px;background:currentColor}.eyebrow.sky{color:var(--sky)}.eyebrow.white{color:#FFFFFF;}.eyebrow.white:before{background:#FFFFFF;}.section-title{font:400 clamp(3.1rem,7vw,6.8rem)/.9 var(--display);letter-spacing:-.065em;margin:26px 0 0}.section-title em{color:var(--coral)}.topbar{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:26px 40px;color:var(--paper)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:31px;height:31px;display:grid;place-items:center;border:1px solid currentColor;font-family:var(--mono);font-size:11px;letter-spacing:-.12em}.brand-word{font-weight:700;letter-spacing:.19em;font-size:14px}.topnav{display:flex;align-items:center;gap:33px;font-size:12px}.topnav a{opacity:.72;transition:opacity .25s,color .25s}.topnav a:hover{opacity:1;color:var(--sky)}.nav-contact{border-bottom:1px solid var(--sky);padding-bottom:5px;opacity:1!important}.menu-toggle{display:none;border:0;background:transparent;color:inherit;cursor:pointer}.menu-toggle span{display:block;width:22px;height:1px;background:currentColor;margin:6px 0}.hero{min-height:795px;position:relative;display:flex;align-items:flex-end;color:var(--paper);background:var(--ink)}.hero-image{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(11,28,45,.96) 0%,rgba(11,28,45,.67) 41%,rgba(11,28,45,.2) 100%),linear-gradient(0deg,rgba(11,28,45,.85) 0%,transparent 55%),url('assets/f3rd-cover.svg');background-position:center;background-size:cover;filter:saturate(.8)}.hero-grid{position:absolute;inset:0;opacity:.13;background-size:100px 100px;background-image:linear-gradient(to right,rgba(243,239,231,.35) 1px,transparent 1px),linear-gradient(to bottom,rgba(243,239,231,.35) 1px,transparent 1px);mask-image:linear-gradient(90deg,black,transparent 75%)}.hero-content{position:relative;width:100%;padding:0 0 78px}.hero-kicker{color:var(--sky);margin-bottom:28px;display:block}.hero h1{font:400 clamp(4rem,8.8vw,8.8rem)/.79 var(--display);letter-spacing:-.085em;max-width:1000px;margin:0}.hero h1 em{color:var(--coral)}.hero-subline{display:inline-block;margin-top:.13em}.hero-subline em{color:var(--sky)}.hero-deck{display:grid;grid-template-columns:minmax(240px,390px) 1fr;gap:46px;margin-top:43px;align-items:end}.hero-deck p{max-width:370px;font-size:17px;line-height:1.45;color:rgba(243,239,231,.84);margin:0}.hero-marker{justify-self:end;width:215px;color:rgba(243,239,231,.65);font-size:11px;line-height:1.5}.marker-line{display:block;width:100%;height:1px;background:rgba(243,239,231,.5);margin-bottom:10px}.scroll-cue{position:absolute;bottom:36px;left:40px;display:flex;align-items:center;gap:12px;color:rgba(243,239,231,.6)}.scroll-cue i{display:block;width:31px;height:1px;background:currentColor}.marquee{overflow:hidden;background:var(--coral);color:var(--ink);padding:14px 0 12px;white-space:nowrap}.marquee-track{display:inline-flex;animation:ticker 28s linear infinite}.marquee span{font:italic 23px var(--display);margin:0 36px}.marquee b{font:400 10px var(--mono);vertical-align:middle}@keyframes ticker{to{transform:translateX(-50%)}}.pressure{background:var(--paper)}.pressure-intro{display:grid;grid-template-columns:1.05fr .95fr;gap:120px;align-items:end}.pressure-copy{max-width:470px;font-size:20px;line-height:1.42;color:var(--ink-soft)}.pressure-copy strong{color:var(--coral);font-weight:500}.pressure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:106px;border-top:1px solid var(--line)}.pressure-card{min-height:300px;padding:25px 30px 28px 0;border-right:1px solid var(--line);margin-right:30px;display:flex;flex-direction:column;justify-content:space-between}.pressure-card:last-child{border:0;margin:0}.pressure-index{color:var(--coral)}.pressure-card h3{font-size:25px;line-height:1.05;font-weight:500;letter-spacing:-.04em;margin:26px 0 0;max-width:190px}.pressure-card p{color:var(--muted);font-size:14px;line-height:1.5;max-width:220px;margin:0}.pressure-foot{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-top:100px;align-items:start}.quote{font:italic 32px/1.05 var(--display);max-width:330px}.small-copy{color:var(--muted);font-size:14px;line-height:1.6;max-width:390px}.answer{background:var(--ink);color:var(--paper);position:relative}.answer:before{content:'F3RD';position:absolute;right:-15px;top:65px;font:700 20vw/.8 'Century Gothic','Avenir Next',Arial,sans-serif;color:rgba(98,196,227,.07);letter-spacing:-.08em}.answer-layout{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}.answer-statement{font:400 clamp(3.8rem,7.2vw,7.3rem)/.83 var(--display);letter-spacing:-.07em;margin:0}.answer-statement em{color:var(--sky)}.answer-body{max-width:500px;padding-top:25px}.answer-body p{color:rgba(243,239,231,.72);line-height:1.55;font-size:16px;margin:22px 0 0}.answer-body p:first-of-type{color:var(--paper);font-size:22px;line-height:1.3}.answer-note{margin-top:70px;border-left:2px solid var(--coral);padding-left:18px;color:rgba(243,239,231,.52);font-size:12px;line-height:1.5;max-width:370px}.framework{background:var(--paper-deep)}.framework-heading{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.framework-heading>p{color:var(--muted);max-width:390px;line-height:1.5;font-size:15px;margin:0 0 8px}.dimension-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:73px}.dimension{padding:22px 18px 22px 0;border-top:1px solid var(--line);margin-right:22px}.dimension:last-child{margin-right:0}.dimension .num{color:var(--coral)}.dimension h4{font-size:16px;font-weight:600;margin:18px 0 8px}.dimension p{color:var(--muted);font-size:12px;line-height:1.45;margin:0}.method{background:var(--sky);color:var(--ink)}.method-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:110px}.method .section-title em{color:var(--paper)}.method-intro{font-size:20px;line-height:1.35;max-width:270px;margin-top:14px}.steps{border-top:1px solid rgba(11,28,45,.35)}.step{display:grid;grid-template-columns:74px 1fr 46px;gap:24px;padding:27px 0;border-bottom:1px solid rgba(11,28,45,.35);align-items:start}.step-no{font:14px var(--mono)}.step h3{margin:0;font-size:21px;font-weight:600;letter-spacing:-.03em}.step p{margin:7px 0 0;max-width:470px;font-size:14px;line-height:1.45;color:rgba(11,28,45,.68)}.step-arrow{font-size:22px;transition:transform .25s ease}.step:hover .step-arrow{transform:translateX(6px)}.audience{background:var(--paper)}.audience-top{display:flex;align-items:end;justify-content:space-between;gap:50px}.audience-top p{max-width:335px;font-size:15px;line-height:1.5;color:var(--muted);margin:0 0 8px}.audience-tabs{display:flex;gap:8px;margin:65px 0 34px;flex-wrap:wrap}.audience-tab{border:1px solid var(--line);color:var(--muted);background:transparent;padding:12px 17px;cursor:pointer;font-size:12px;transition:color .25s,background .25s,border-color .25s}.audience-tab:hover,.audience-tab.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.audience-panel{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:280px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.audience-panel-copy{padding:34px 60px 35px 0;border-right:1px solid var(--line)}.audience-panel-copy h3{font:46px/.93 var(--display);letter-spacing:-.045em;margin:0 0 20px}.audience-panel-copy p{max-width:400px;color:var(--muted);line-height:1.55;font-size:15px;margin:0}.audience-list{padding:34px 0 25px 60px}.audience-list p{font-size:12px;color:var(--muted);margin:0 0 17px}.audience-list ul{list-style:none;margin:0;padding:0}.audience-list li{padding:11px 0;border-top:1px solid var(--line);font-size:14px;display:flex;gap:12px}.audience-list li:before{content:'↳';color:var(--coral)}.contact{background:var(--ink);color:var(--paper);padding:126px 0 35px;position:relative}.contact-layout{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:end}.contact h2{font:400 clamp(4.2rem,10vw,10rem)/.77 var(--display);letter-spacing:-.09em;margin:20px 0 0;max-width:800px}.contact h2 em{color:var(--coral)}.contact-copy{color:rgba(243,239,231,.67);font-size:15px;line-height:1.5;max-width:280px;margin:0 0 11px}.contact-link{display:inline-flex;align-items:center;gap:14px;color:var(--sky);font:20px var(--display);border-bottom:1px solid var(--sky);padding-bottom:8px;transition:gap .25s}.contact-link:hover{gap:22px}.contact-rule{height:1px;background:rgba(243,239,231,.22);margin-top:105px}.footer{display:flex;justify-content:space-between;align-items:center;padding-top:23px;color:rgba(243,239,231,.45);font-size:11px}.footer .brand{color:var(--paper)}.footer .brand-mark{width:24px;height:24px;font-size:9px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.23s}.delay-3{transition-delay:.34s}@media(max-width:800px){.container{width:min(100% - 40px,600px)}.section-pad{padding:88px 0}.topbar{padding:20px}.topnav{display:none;position:absolute;top:70px;left:20px;right:20px;flex-direction:column;align-items:flex-start;gap:19px;padding:22px;background:var(--ink);border:1px solid rgba(243,239,231,.2)}.topnav.open{display:flex}.menu-toggle{display:block;padding:4px}.hero{min-height:790px}.hero-image{background-position:63% center}.hero-content{padding-bottom:79px}.hero h1{font-size:clamp(3.7rem,16vw,7.2rem)}.hero-deck{display:block;margin-top:30px}.hero-deck p{font-size:15px}.hero-marker{display:none}.scroll-cue{left:20px}.pressure-intro,.answer-layout,.framework-heading,.method-layout,.contact-layout{grid-template-columns:1fr;gap:40px}.section-title{font-size:clamp(3.8rem,17vw,6rem)}.pressure-copy{font-size:18px}.pressure-grid{grid-template-columns:1fr;margin-top:65px}.pressure-card{min-height:205px;border-right:0;border-bottom:1px solid var(--line);margin:0;padding:21px 0}.pressure-card h3{margin-top:12px}.pressure-foot{grid-template-columns:1fr;gap:26px;margin-top:65px}.answer:before{top:25px;font-size:37vw}.answer-statement{font-size:clamp(4.2rem,18vw,7rem)}.answer-body p:first-child{font-size:19px}.answer-note{margin-top:42px}.dimension-grid{grid-template-columns:1fr 1fr;margin-top:48px}.dimension{margin:0 15px 0 0;min-height:150px}.dimension:nth-child(2){margin-right:0}.method-layout{gap:55px}.method-intro{max-width:330px}.step{grid-template-columns:42px 1fr 20px;gap:12px}.step h3{font-size:18px}.audience-top{display:block}.audience-top p{margin-top:25px}.audience-tabs{margin:42px 0 25px}.audience-panel{grid-template-columns:1fr}.audience-panel-copy{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.audience-panel-copy h3{font-size:39px}.audience-list{padding:28px 0}.contact{padding-top:90px}.contact h2{font-size:clamp(5.2rem,21vw,9rem)}.contact-link{font-size:18px}.contact-rule{margin-top:75px}.footer{align-items:flex-start;gap:25px;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* =========================================================
   F3A LOGIN PAGE
   ========================================================= */

.login-page {
  min-height: 100vh;
  background: var(--ink);
  color: var(--paper);
}

.login-topbar {
  position: absolute;
  color: var(--paper);
  border-bottom: 1px solid rgba(243,239,231,.12);
}

.login-nav a {
  color: var(--paper);
}

.login-hero {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  display: flex;
  align-items: center;
  padding: 140px 0 80px;
  background:
    radial-gradient(circle at 15% 20%, rgba(98,196,227,.13), transparent 28%),
    radial-gradient(circle at 85% 80%, rgba(242,100,80,.12), transparent 30%),
    linear-gradient(135deg, #071727 0%, #0b1c2d 48%, #102b40 100%);
}

.login-grid {
  position: absolute;
  inset: 0;
  opacity: .12;
  background-size: 96px 96px;
  background-image:
    linear-gradient(to right, rgba(243,239,231,.34) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(243,239,231,.34) 1px, transparent 1px);
  mask-image: linear-gradient(90deg, black, transparent 82%);
}

.login-background-word {
  position: absolute;
  right: -4vw;
  bottom: -4vw;
  font: 700 24vw/.75 'Century Gothic','Avenir Next',Arial,sans-serif;
  letter-spacing: -.1em;
  color: rgba(98,196,227,.055);
  pointer-events: none;
  user-select: none;
}

.login-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.04fr .72fr;
  gap: 90px;
  align-items: center;
}

.login-copy {
  max-width: 720px;
}

.login-copy h1 {
  font: 400 clamp(4.2rem, 8vw, 8.6rem)/.79 var(--display);
  letter-spacing: -.085em;
  margin: 30px 0 0;
}

.login-copy h1 em {
  color: var(--coral);
}

.login-intro {
  max-width: 560px;
  margin: 36px 0 0;
  color: rgba(243,239,231,.74);
  font-size: 18px;
  line-height: 1.55;
}

.login-proof {
  margin-top: 72px;
  max-width: 470px;
  border-left: 2px solid var(--sky);
  padding-left: 22px;
}

.login-proof span {
  color: var(--sky);
  display: block;
  margin-bottom: 13px;
  font-size: 11px;
}

.login-proof p {
  margin: 0;
  color: rgba(243,239,231,.56);
  font-size: 14px;
  line-height: 1.55;
}

.login-card {
  background: rgba(243,239,231,.965);
  color: var(--ink);
  padding: 42px;
  border: 1px solid rgba(243,239,231,.28);
  box-shadow: 0 30px 90px rgba(0,0,0,.28);
  backdrop-filter: blur(18px);
}

.login-card-header span {
  color: var(--coral);
  display: block;
  margin-bottom: 20px;
  font-size: 11px;
}

.login-card-header h2 {
  font: 400 58px/.88 var(--display);
  letter-spacing: -.055em;
  margin: 0;
}

.login-card-header p {
  margin: 18px 0 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
  max-width: 330px;
}

.login-form {
  margin-top: 38px;
}

.login-form label {
  display: block;
  margin: 22px 0 9px;
  color: var(--ink-soft);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.login-form input[type="email"],
.login-form input[type="password"] {
  width: 100%;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.45);
  color: var(--ink);
  padding: 17px 16px;
  outline: none;
  font-family: var(--body);
  font-size: 15px;
  transition: border-color .25s ease, background .25s ease, box-shadow .25s ease;
}

.login-form input[type="email"]::placeholder,
.login-form input[type="password"]::placeholder {
  color: rgba(96,113,123,.7);
}

.login-form input[type="email"]:focus,
.login-form input[type="password"]:focus {
  background: #fff;
  border-color: var(--sky);
  box-shadow: 0 0 0 3px rgba(98,196,227,.18);
}

.login-options {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin: 20px 0 26px;
  font-size: 12px;
  color: var(--muted);
}

.remember-me {
  display: flex !important;
  align-items: center;
  gap: 9px;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  color: var(--muted) !important;
  cursor: pointer;
}

.remember-me input {
  accent-color: var(--coral);
}

.login-options a {
  color: var(--ink);
  border-bottom: 1px solid rgba(11,28,45,.35);
  padding-bottom: 3px;
  transition: color .25s ease, border-color .25s ease;
}

.login-options a:hover {
  color: var(--coral);
  border-color: var(--coral);
}

.login-submit {
  width: 100%;
  border: 0;
  background: var(--ink);
  color: var(--paper);
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  transition: background .25s ease, transform .25s ease;
}

.login-submit:hover {
  background: var(--coral);
  transform: translateY(-2px);
}

.login-submit span {
  font-size: 18px;
  transition: transform .25s ease;
}

.login-submit:hover span {
  transform: translate(4px, -4px);
}

.login-divider {
  height: 1px;
  background: var(--line);
  margin: 34px 0 22px;
}

.login-note {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  margin: 0;
}

.login-request {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 24px;
  color: var(--coral);
  font: 20px var(--display);
  border-bottom: 1px solid var(--coral);
  padding-bottom: 7px;
  transition: gap .25s ease;
}

.login-request:hover {
  gap: 20px;
}

@media(max-width: 900px) {
  .login-hero {
    align-items: flex-start;
    padding: 120px 0 60px;
  }

  .login-layout {
    grid-template-columns: 1fr;
    gap: 54px;
  }

  .login-copy h1 {
    font-size: clamp(4rem, 16vw, 7rem);
  }

  .login-intro {
    font-size: 16px;
  }

  .login-proof {
    margin-top: 44px;
  }

  .login-card {
    padding: 30px;
  }

  .login-card-header h2 {
    font-size: 48px;
  }

  .login-options {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }

  .login-background-word {
    font-size: 48vw;
    right: -16vw;
    bottom: -5vw;
  }
}

@media(max-width: 520px) {
  .login-card {
    padding: 24px;
  }

  .login-submit {
    padding: 16px;
  }

  .login-form input[type="email"],
  .login-form input[type="password"] {
    padding: 15px;
  }
}

