@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{--paper:#e9e7df;--ink:#11120f;--acid:#d8ff38;--line:rgba(17,18,15,.22);--pad:clamp(20px,4vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;overflow-x:hidden}.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:20;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='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
a{color:inherit;text-decoration:none}.topbar{height:88px;padding:18px var(--pad);display:grid;grid-template-columns:1fr 1fr auto;align-items:start;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{font-weight:700;font-size:18px}.strap{font-size:12px;margin:0;line-height:1.2}.menu-toggle{background:none;border:0;font:inherit;cursor:pointer}.menu{position:absolute;right:var(--pad);top:60px;background:var(--ink);color:var(--paper);padding:18px;min-width:260px;display:flex;flex-direction:column;gap:14px;transform-origin:top right;transform:scale(.96);opacity:0;pointer-events:none;transition:.2s}.menu.open{transform:none;opacity:1;pointer-events:auto}.pill{border:1px solid currentColor;border-radius:999px;padding:12px 18px;display:inline-block;width:max-content}.pill.dark{background:var(--ink);color:var(--paper)}
.section{padding:clamp(72px,10vw,150px) var(--pad);position:relative;border-bottom:1px solid var(--line)}.hero{min-height:calc(100vh - 88px);padding-top:35px}.eyebrow,.kicker{display:flex;gap:30px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:clamp(50px,8vw,100px)}.eyebrow{justify-content:space-between}.hero h1,h2{font-size:clamp(46px,7.6vw,132px);font-weight:500;letter-spacing:-.065em;line-height:.88;margin:0}.hero h1 em{font-weight:400}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:55px}.lead,.intro{font-size:clamp(17px,1.55vw,25px);line-height:1.4;max-width:720px}.actions{display:flex;gap:25px;align-items:center;justify-content:flex-end;font-size:13px}.portrait-card{position:absolute;right:var(--pad);bottom:28px;display:flex;align-items:end;gap:12px;font-size:12px}.portrait{width:115px;height:145px}.placeholder{background:linear-gradient(135deg,#b8b8b1,#77786f);display:grid;place-items:center;color:#eee;text-align:center;font-size:10px;letter-spacing:.15em}.section-code{position:absolute;bottom:30px;left:var(--pad);font-size:11px}
.dark-section{background:var(--ink);color:var(--paper);--line:rgba(233,231,223,.22)}h2{font-size:clamp(42px,6vw,94px)}.dark-section h2{color:var(--paper)}.intro{margin:45px 0 75px}.grid3,.grid4{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.grid3 article,.grid4 article{padding:28px 25px 60px 0;border-right:1px solid var(--line)}article b,article>span{font-size:11px;font-weight:500}h3{font-size:clamp(23px,2vw,34px);line-height:1.05;font-weight:500;letter-spacing:-.04em}article p{font-size:14px;line-height:1.55;max-width:390px}.statement{font-size:clamp(30px,4vw,70px);line-height:1;margin:80px 0 0}.connection{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;margin:80px 0}.node{font-size:clamp(28px,3vw,50px);border:1px solid var(--line);padding:30px}.node small{display:block;font-size:11px;margin-top:30px}.node.accent{background:var(--acid)}.line{height:1px;background:var(--ink);position:relative}.line span{position:absolute;right:0;top:-22px;font-size:30px}.grid4{grid-template-columns:repeat(4,1fr)}.compact article{min-height:260px}.services h2{margin-bottom:30px}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:70px 1fr 2fr 1fr;gap:25px;align-items:start;padding:28px 0;border-bottom:1px solid var(--line)}.service-list h3{margin:0}.service-list small{font-size:11px}.service-list ul{list-style:none;padding:0;margin:0;font-size:13px;line-height:1.7}.ticker{overflow:hidden;background:var(--acid);padding:20px 0;white-space:nowrap}.ticker-track{font-size:18px;animation:ticker 30s linear infinite}@keyframes ticker{to{transform:translateX(-50%)}}.white-label-demo{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:90px}.segmented{display:flex;margin-top:35px}.segmented button{padding:12px 18px;border:1px solid #777;background:transparent;color:inherit;cursor:pointer}.segmented .active{background:var(--paper);color:var(--ink)}.demo-card{border:1px solid #555;padding:35px;min-height:330px;display:flex;flex-direction:column}.demo-card strong{font-size:clamp(35px,4vw,70px);margin:10px 0}.demo-card small{opacity:.6}.demo-card hr{width:100%;border:0;border-top:1px solid #555;margin:30px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:80px}.portrait.large{width:100%;height:min(70vw,700px)}.about-copy h3{font-size:clamp(45px,6vw,90px);margin:0}.meta{font-size:13px}.big-number{font-size:clamp(90px,12vw,180px);letter-spacing:-.08em;margin:60px 0}.big-number small{font-size:13px;letter-spacing:0;display:block}.about-copy>p:last-of-type{font-size:18px;line-height:1.6;max-width:600px}.about-copy blockquote{font-size:clamp(28px,4vw,55px);line-height:1;margin:80px 0 0}.process ol{list-style:none;padding:0;margin:80px 0 0;border-top:1px solid var(--line)}.process li{display:grid;grid-template-columns:80px 1fr 1fr;align-items:center;border-bottom:1px solid var(--line);padding:25px 0}.process li h3,.process li p{margin:0}.accordion{margin-top:70px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:28px 0;font-size:clamp(22px,2.5vw,40px);display:flex;gap:30px}summary::-webkit-details-marker{display:none}details p{max-width:700px;margin:0 0 35px 60px;line-height:1.6}.contact{text-align:left}.contact h2{margin-bottom:70px}.mail{font-size:clamp(25px,4vw,65px);border-bottom:1px solid;display:inline-block}.contact p{max-width:620px;margin-top:45px;line-height:1.6}footer{padding:24px var(--pad);display:flex;justify-content:space-between;gap:20px;font-size:11px}footer button{border:0;background:none;font:inherit;cursor:pointer}.reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.reduce-motion *{animation:none!important;transition:none!important}
@media(max-width:800px){.topbar{grid-template-columns:1fr auto}.strap{display:none}.hero{min-height:900px}.hero-bottom,.white-label-demo,.about-grid{grid-template-columns:1fr}.actions{justify-content:flex-start;flex-wrap:wrap}.portrait-card{left:var(--pad);right:auto}.grid3,.grid4{grid-template-columns:1fr}.grid3 article,.grid4 article{border-right:0;border-bottom:1px solid var(--line)}.connection{grid-template-columns:1fr}.line{height:80px;width:1px;margin-left:40px}.service-list article{grid-template-columns:45px 1fr}.service-list h3,.service-list ul{grid-column:2}.process li{grid-template-columns:50px 1fr}.process li p{grid-column:2}.eyebrow{gap:10px}.hero h1{font-size:clamp(45px,14vw,85px)}footer{flex-wrap:wrap}}
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:850px;margin-top:40px}.contact-details p{margin:0;line-height:1.65}.contact-details a{border-bottom:1px solid currentColor}@media(max-width:800px){.contact-details{grid-template-columns:1fr}}

.conversion-bar{position:sticky;top:0;z-index:19;background:var(--acid);padding:9px var(--pad);display:flex;justify-content:space-between;align-items:center;font-size:11px;border-bottom:1px solid var(--ink)}
.conversion-bar div{display:flex;align-items:center;gap:18px}.mini-cta{background:var(--ink);color:var(--paper);padding:8px 13px;border-radius:999px}.trust-strip{display:flex;flex-wrap:wrap;gap:14px 32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;margin-top:60px;font-size:13px}.light-cta{background:var(--acid);color:var(--ink);border-color:var(--acid)}
.form-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.lead-form form{display:grid;gap:18px}.lead-form label{display:grid;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.lead-form input,.lead-form select,.lead-form textarea{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:14px 4px;font:inherit;border-radius:0;outline:none}.lead-form textarea{border:1px solid var(--ink);padding:14px;resize:vertical}.submit-btn{border:0;background:var(--ink);color:var(--paper);font:inherit;padding:17px 22px;cursor:pointer;text-align:left}.lead-form form small{font-size:10px;line-height:1.5;opacity:.65}.contact-mini{display:flex;flex-direction:column;gap:12px;font-size:14px}.contact-mini a{text-decoration:underline}.phone-big{font-size:clamp(20px,3vw,45px);display:inline-block;margin-top:18px;border-bottom:1px solid}
@media(max-width:800px){.conversion-bar>span{display:none}.conversion-bar{justify-content:flex-end}.conversion-bar div{width:100%;justify-content:space-between}.form-layout{grid-template-columns:1fr}}
\n/* eFactory visual refinements v2 */
:root{--acid:#d8ff38}
.hero h1,h2{line-height:1.02}
h3{line-height:1.14}
.statement{line-height:1.08}
.about-copy blockquote{line-height:1.08}
.grid3 article,.grid4 article{padding:32px clamp(24px,2.2vw,42px) 64px}
.grid3 article:first-child,.grid4 article:first-child{padding-left:clamp(24px,2.2vw,42px)}
.service-list article{padding:32px clamp(18px,1.6vw,30px)}
.process li{padding:30px clamp(18px,1.6vw,30px)}
.node{padding:clamp(28px,2.5vw,46px)}
.portrait-img{display:block;object-fit:cover;object-position:center 28%;filter:grayscale(1);background:#252723}
.portrait-card .portrait-img{border-radius:2px}
.portrait.large.portrait-img{height:min(70vw,700px);width:100%;object-position:center 30%}
.ticker{background:var(--acid);color:#fff}
.node.accent{background:var(--acid);color:#fff}
.conversion-bar{background:var(--acid);color:#fff}
.conversion-bar .mini-cta{background:var(--paper);color:var(--ink)}
.light-cta{background:var(--acid);border-color:var(--acid);color:#fff}
@media(max-width:800px){.hero h1,h2{line-height:1.04}.grid3 article,.grid4 article{padding:28px 22px 44px}.portrait.large.portrait-img{height:115vw;max-height:680px}}


/* v3 refinements */
.portrait-card .portrait,
.about-grid .portrait {
  background-position: center 42% !important;
}

.portrait-card .portrait img,
.about-grid .portrait img,
.portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42% !important;
  display: block;
}

/* Original eFactory yellow stays; typography inside it is refined. */
.node.accent,
.ticker,
.conversion-bar {
  background: var(--acid) !important;
  color: #11120f !important;
}

.node.accent {
  font-weight: 500;
  letter-spacing: -0.035em;
}

.node.accent small {
  color: rgba(17,18,15,.72) !important;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.45;
}

.ticker-track {
  color: #11120f !important;
  font-weight: 600;
  letter-spacing: .015em;
}

.conversion-bar {
  font-weight: 600;
}

.conversion-bar .mini-cta {
  background: #11120f !important;
  color: #f2f0e8 !important;
  font-weight: 600;
}


/* v4: Portrait focal point + newsletter */
.about-grid .portrait-img,
.portrait.large.portrait-img {
  object-fit: cover;
  object-position: 50% 43% !important;
}

.newsletter-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8vw;
  align-items:end;
}
.newsletter-grid h2{margin:0}
.newsletter-form{padding-bottom:12px}
.newsletter-form>label{
  display:block;
  margin-bottom:12px;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.newsletter-row{
  display:grid;
  grid-template-columns:1fr auto;
  border-bottom:1px solid var(--ink);
}
.newsletter-row input{
  min-width:0;
  border:0;
  background:transparent;
  padding:18px 0;
  font:inherit;
  font-size:18px;
  outline:none;
}
.newsletter-row button{
  border:0;
  background:var(--acid);
  color:var(--ink);
  padding:0 22px;
  font:inherit;
  font-weight:600;
  cursor:pointer;
}
.newsletter-form small{
  display:block;
  margin-top:14px;
  max-width:600px;
  opacity:.6;
  line-height:1.5;
}
@media(max-width:800px){
  .about-grid .portrait-img,
  .portrait.large.portrait-img{object-position:50% 41% !important}
  .newsletter-grid{grid-template-columns:1fr}
  .newsletter-row{grid-template-columns:1fr}
  .newsletter-row button{padding:16px 18px;text-align:left}
}


/* v5: eFactory logo / wordmark in header */
.topbar .brand{
  font-size: clamp(26px, 2.25vw, 38px) !important;
  line-height: .9;
  letter-spacing: -0.055em;
  font-weight: 700;
}
@media(max-width:800px){
  .topbar .brand{font-size:30px !important}
}


/* v6: menu always visible in one horizontal line */
.topbar{
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:clamp(24px,4vw,70px);
  min-height:88px;
  height:auto;
}

.topbar .strap{display:none !important}

.menu-toggle{display:none !important}

.topbar .menu{
  position:static !important;
  inset:auto !important;
  min-width:0 !important;
  padding:0 !important;
  background:transparent !important;
  color:var(--ink) !important;
  display:flex !important;
  flex-direction:row !important;
  justify-content:flex-end;
  align-items:center;
  gap:clamp(18px,2.1vw,38px);
  transform:none !important;
  opacity:1 !important;
  pointer-events:auto !important;
  white-space:nowrap;
}

.topbar .menu > a:not(.pill){
  font-size:12px;
  line-height:1;
  padding:12px 0;
}

.topbar .menu .pill{
  margin-left:clamp(4px,1vw,18px);
  font-size:12px;
  padding:11px 16px;
}

@media(max-width:800px){
  .topbar{
    display:flex !important;
    align-items:center !important;
    gap:22px;
    overflow:hidden;
    padding-top:16px;
    padding-bottom:16px;
  }
  .topbar .brand{
    flex:0 0 auto;
  }
  .topbar .menu{
    flex:1 1 auto;
    justify-content:flex-start;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    gap:20px;
  }
  .topbar .menu::-webkit-scrollbar{display:none}
  .topbar .menu > a:not(.pill),
  .topbar .menu .pill{
    flex:0 0 auto;
  }
}


/* v7: remove obsolete hero portrait/author card */
.hero .portrait-card{display:none !important}

/* Keep hero actions cleanly aligned after removing the card */
.hero .hero-bottom .actions{
  align-self:end;
}
