<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Ouane Holdings — Patient capital. Disciplined stewardship.</title>
<meta name="description" content="Ouane Holdings is a private holding company investing across U.S. public and private markets. Patient capital, disciplined stewardship, durable value creation." />
<link rel="icon" href="/favicon.png" type="image/png" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,300;0,6..72,400;0,6..72,500;1,6..72,300;1,6..72,400&family=Inter:wght@400;450;500;600&display=swap" rel="stylesheet" />
<style>
  :root{
    --paper:#FBFAF7;
    --paper-2:#F4F1E9;
    --ink:#16191A;
    --ink-soft:#383E3B;
    --muted:#6B716C;
    --line:#E5E1D7;
    --line-soft:#EEEBE3;
    --evergreen:#1E392C;
    --evergreen-soft:#3C5A49;
    --on-dark:#EDEFEA;
    --on-dark-muted:#9CA89E;

    --serif:'Newsreader', Georgia, 'Times New Roman', serif;
    --sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    --max:1180px;
    --gutter:clamp(22px,5vw,64px);
    --section-y:clamp(80px,11vw,150px);

    --ease:cubic-bezier(.22,.61,.36,1);
  }

  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px;}
  body{
    font-family:var(--sans);
    background:var(--paper);
    color:var(--ink);
    line-height:1.55;
    font-size:17px;
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none;}
  ::selection{background:var(--evergreen);color:var(--on-dark);}

  .wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter);}

  /* labels / eyebrows ----------------------------------------------- */
  .eyebrow{
    font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
    color:var(--muted);display:inline-flex;align-items:center;gap:.6em;
  }
  .eyebrow::before{content:"";width:18px;height:1px;background:var(--evergreen-soft);display:inline-block;}

  /* ---------------- NAV ---------------- */
  header.nav{
    position:fixed;top:0;left:0;right:0;z-index:50;
    transition:background .4s var(--ease),border-color .4s var(--ease),backdrop-filter .4s var(--ease);
    border-bottom:1px solid transparent;
  }
  header.nav.solid{
    background:rgba(251,250,247,.82);
    backdrop-filter:saturate(140%) blur(14px);
    border-bottom-color:var(--line);
  }
  .nav-inner{display:flex;align-items:center;justify-content:space-between;height:74px;}
  .brand{display:inline-flex;align-items:center;font-family:var(--serif);font-size:21px;letter-spacing:-.01em;}
  .nav-links{display:flex;align-items:center;gap:38px;}
  .nav-links a.link{
    font-size:12.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);
    transition:color .25s var(--ease);position:relative;
  }
  .nav-links a.link::after{
    content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:var(--evergreen);
    transition:width .3s var(--ease);
  }
  .nav-links a.link:hover{color:var(--ink);}
  .nav-links a.link:hover::after{width:100%;}
  .nav-cta{
    font-size:13px;font-weight:500;letter-spacing:.01em;
    padding:9px 18px;border:1px solid var(--ink);border-radius:100px;color:var(--ink);
    transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease);
  }
  .nav-cta:hover{background:var(--ink);color:var(--paper);}
  .menu-btn{display:none;background:none;border:0;color:var(--ink);font-size:13px;letter-spacing:.1em;
    text-transform:uppercase;cursor:pointer;padding:8px;}

  /* ---------------- HERO ---------------- */
  .hero{position:relative;padding-top:170px;padding-bottom:0;overflow:hidden;}
  .hero-atmos{
    position:absolute;inset:-10% -10% auto -10%;height:760px;z-index:0;pointer-events:none;
    background:
      radial-gradient(46% 60% at 18% 22%, rgba(150,178,158,.40) 0%, transparent 62%),
      radial-gradient(50% 58% at 82% 12%, rgba(206,196,170,.45) 0%, transparent 60%),
      radial-gradient(60% 70% at 60% 78%, rgba(178,196,200,.30) 0%, transparent 64%);
    filter:saturate(108%);
    animation:drift 24s var(--ease) infinite alternate;
  }
  @keyframes drift{
    from{transform:translate3d(0,0,0) scale(1);}
    to{transform:translate3d(-2.5%,1.5%,0) scale(1.06);}
  }
  .hero-inner{position:relative;z-index:1;}
  h1.hero-title{
    font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:1.02;
    font-size:clamp(44px,8.2vw,98px);max-width:13ch;
  }
  h1.hero-title .em{font-style:italic;color:var(--evergreen);}
  .hero-sub{
    margin-top:30px;max-width:46ch;font-size:clamp(17px,1.9vw,21px);color:var(--ink-soft);
    line-height:1.55;font-weight:400;
  }
  .hero-actions{margin-top:42px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;}
  .btn-primary{
    display:inline-flex;align-items:center;gap:10px;background:var(--evergreen);color:var(--on-dark);
    font-size:15px;font-weight:500;padding:14px 26px;border-radius:100px;
    transition:transform .3s var(--ease),box-shadow .3s var(--ease),background .3s var(--ease);
    box-shadow:0 1px 2px rgba(30,57,44,.18);
  }
  .btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 28px -10px rgba(30,57,44,.5);background:#234334;}
  .btn-primary svg{transition:transform .3s var(--ease);}
  .btn-primary:hover svg{transform:translateX(4px);}
  .btn-ghost{font-size:15px;font-weight:500;color:var(--ink);display:inline-flex;align-items:center;gap:8px;
    border-bottom:1px solid var(--line);padding-bottom:3px;transition:border-color .3s var(--ease);}
  .btn-ghost:hover{border-color:var(--ink);}

  /* mandate fact strip */
  .factstrip{
    margin-top:clamp(56px,8vw,96px);
    border-top:1px solid var(--line);
    display:grid;grid-template-columns:repeat(3,1fr);
  }
  .fact{
    padding:26px 30px 30px;border-right:1px solid var(--line);position:relative;
  }
  .fact:last-child{border-right:0;}
  .fact .k{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;}
  .fact .v{font-family:var(--serif);font-size:clamp(22px,2.6vw,30px);margin-top:12px;letter-spacing:-.01em;}

  /* ---------------- INTRO STATEMENT ---------------- */
  .statement{padding-block:var(--section-y);}
  .statement p{
    font-family:var(--serif);font-weight:300;letter-spacing:-.015em;line-height:1.22;
    font-size:clamp(28px,4.6vw,52px);max-width:18ch;
  }
  .statement p .soft{color:var(--muted);}

  /* ---------------- APPROACH ---------------- */
  .approach{padding-bottom:var(--section-y);}
  .grid-2{display:grid;grid-template-columns:0.85fr 1fr;gap:clamp(40px,7vw,96px);align-items:start;}
  .sec-head h2{
    font-family:var(--serif);font-weight:400;letter-spacing:-.015em;line-height:1.08;
    font-size:clamp(30px,4vw,46px);margin-top:18px;
  }
  .lead{color:var(--ink-soft);font-size:18px;margin-top:22px;max-width:40ch;}
  .principles{list-style:none;border-top:1px solid var(--line);}
  .principles li{
    display:flex;gap:22px;align-items:baseline;
    padding:22px 0;border-bottom:1px solid var(--line);
  }
  .principles li .idx{font-family:var(--serif);font-style:italic;color:var(--evergreen-soft);font-size:18px;width:1.4em;flex:none;}
  .principles li .txt{font-size:19px;letter-spacing:-.005em;color:var(--ink);}
  .principles li .txt span{display:block;color:var(--muted);font-size:14.5px;margin-top:4px;letter-spacing:0;}

  /* ---------------- PERMANENCE (dark interlude) ---------------- */
  .permanence{
    background:var(--evergreen);color:var(--on-dark);position:relative;overflow:hidden;
    padding-block:clamp(96px,14vw,180px);
  }
  .permanence::before{
    content:"";position:absolute;inset:0;
    background:radial-gradient(60% 80% at 80% 0%, rgba(122,150,130,.30) 0%, transparent 60%);
    pointer-events:none;
  }
  .permanence .wrap{position:relative;}
  .permanence .eyebrow{color:var(--on-dark-muted);}
  .permanence .eyebrow::before{background:var(--on-dark-muted);}
  .permanence h2{
    font-family:var(--serif);font-weight:300;letter-spacing:-.02em;line-height:1.02;
    font-size:clamp(46px,9vw,120px);margin-top:24px;
  }
  .permanence h2 .it{font-style:italic;}
  .permanence p{margin-top:30px;max-width:40ch;color:var(--on-dark-muted);font-size:18px;}

  /* ---------------- FOCUS ---------------- */
  .focus{padding-block:var(--section-y);}
  .focus-head{max-width:60ch;}
  .focus-head h2{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;font-size:clamp(30px,4.4vw,52px);
    line-height:1.05;margin-top:18px;}
  .focus-head .lead{margin-top:20px;max-width:48ch;}
  .cards{margin-top:clamp(44px,6vw,72px);display:grid;grid-template-columns:1fr 1fr;gap:1px;
    background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;}
  .card{
    background:var(--paper);padding:clamp(30px,3.4vw,46px);position:relative;
    transition:background .4s var(--ease);min-height:300px;display:flex;flex-direction:column;
  }
  .card:hover{background:var(--paper-2);}
  .card .c-label{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--evergreen-soft);font-weight:500;}
  .card h3{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.8vw,32px);letter-spacing:-.01em;margin-top:16px;}
  .card p{color:var(--ink-soft);font-size:16px;margin-top:16px;line-height:1.6;}
  .card .corner{position:absolute;top:clamp(30px,3.4vw,46px);right:clamp(30px,3.4vw,46px);
    color:var(--line);font-family:var(--serif);font-size:20px;transition:color .4s var(--ease);}
  .card:hover .corner{color:var(--evergreen-soft);}

  /* ---------------- INQUIRY ---------------- */
  .inquiry{background:var(--paper-2);padding-block:var(--section-y);border-top:1px solid var(--line);}
  .inq-grid{display:grid;grid-template-columns:0.92fr 1fr;gap:clamp(40px,6vw,84px);align-items:start;}
  .inq-left h2{font-family:var(--serif);font-weight:400;letter-spacing:-.015em;font-size:clamp(30px,4vw,46px);
    line-height:1.06;margin-top:18px;}
  .inq-left .lead{margin-top:20px;max-width:42ch;}
  .review{margin-top:34px;list-style:none;}
  .review li{display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--line);font-size:15.5px;color:var(--ink-soft);}
  .review li svg{flex:none;margin-top:3px;color:var(--evergreen-soft);}
  .note{margin-top:26px;font-size:14px;color:var(--muted);max-width:46ch;line-height:1.6;}

  /* form */
  .form-card{background:var(--paper);border:1px solid var(--line);border-radius:10px;
    padding:clamp(26px,3vw,38px);box-shadow:0 30px 60px -40px rgba(30,57,44,.25);}
  .field{margin-bottom:18px;}
  .field label{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
    font-weight:500;margin-bottom:8px;}
  .field input,.field select,.field textarea{
    width:100%;font-family:var(--sans);font-size:15.5px;color:var(--ink);background:var(--paper);
    border:1px solid var(--line);border-radius:7px;padding:12px 14px;transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
  }
  .field input::placeholder,.field textarea::placeholder{color:#A8ADA6;}
  .field input:focus,.field select:focus,.field textarea:focus{
    outline:none;border-color:var(--evergreen-soft);box-shadow:0 0 0 3px rgba(60,90,73,.12);
  }
  .field textarea{resize:vertical;min-height:108px;}
  .field.two{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path d='M2 4l4 4 4-4' stroke='%236B716C' stroke-width='1.4' fill='none' stroke-linecap='round'/></svg>");
    background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer;}
  .form-submit{width:100%;background:var(--evergreen);color:var(--on-dark);border:0;border-radius:100px;
    padding:14px;font-family:var(--sans);font-size:15px;font-weight:500;cursor:pointer;margin-top:6px;
    transition:background .3s var(--ease),transform .25s var(--ease);}
  .form-submit:hover{background:#234334;transform:translateY(-1px);}
  .form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;}
  .form-error{margin-top:14px;font-size:13.5px;color:#9b3a3a;text-align:center;min-height:1em;}
  .form-ok{display:none;text-align:center;padding:40px 10px;}
  .form-ok.show{display:block;}
  .form-ok .check{width:46px;height:46px;border-radius:50%;background:rgba(60,90,73,.12);color:var(--evergreen);
    display:flex;align-items:center;justify-content:center;margin:0 auto 18px;}
  .form-ok h4{font-family:var(--serif);font-size:24px;font-weight:400;}
  .form-ok p{color:var(--muted);font-size:15px;margin-top:10px;max-width:30ch;margin-inline:auto;}
  .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}

  /* ---------------- FOOTER ---------------- */
  footer.foot{background:var(--paper);padding-top:clamp(56px,7vw,88px);padding-bottom:48px;}
  .foot-top{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap;
    padding-bottom:36px;border-bottom:1px solid var(--line);}
  .foot-nav{display:flex;gap:30px;flex-wrap:wrap;}
  .foot-nav a{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);transition:color .25s var(--ease);}
  .foot-nav a:hover{color:var(--ink);}
  .foot-contact{margin-top:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;
    padding-bottom:24px;border-bottom:1px solid var(--line);}
  .foot-contact .col .k{font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);}
  .foot-contact .col .v{margin-top:8px;font-family:var(--serif);font-size:18px;letter-spacing:-.005em;color:var(--ink);line-height:1.45;}
  .foot-contact .col .v a{border-bottom:1px solid transparent;transition:border-color .25s var(--ease);}
  .foot-contact .col .v a:hover{border-bottom-color:var(--ink);}
  .disclaimer{margin-top:24px;font-size:12.5px;color:var(--muted);line-height:1.7;max-width:80ch;}
  .foot-bottom{margin-top:28px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
    font-size:12.5px;color:var(--muted);letter-spacing:.02em;}

  /* ---------------- reveal anim ---------------- */
  .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease);}
  .reveal.in{opacity:1;transform:none;}
  .reveal.d1{transition-delay:.08s;} .reveal.d2{transition-delay:.16s;}
  .reveal.d3{transition-delay:.24s;} .reveal.d4{transition-delay:.32s;}

  /* ---------------- responsive ---------------- */
  @media (max-width:860px){
    .nav-links{display:none;}
    .menu-btn{display:block;}
    .nav-links.open{display:flex;position:absolute;top:74px;left:0;right:0;flex-direction:column;
      align-items:flex-start;gap:0;background:var(--paper);border-bottom:1px solid var(--line);padding:8px var(--gutter) 20px;}
    .nav-links.open a.link{padding:14px 0;width:100%;border-bottom:1px solid var(--line-soft);}
    .nav-links.open .nav-cta{margin-top:14px;}
    .grid-2,.inq-grid{grid-template-columns:1fr;}
    .cards{grid-template-columns:1fr;}
    .factstrip{grid-template-columns:1fr;}
    .fact{border-right:0;border-bottom:1px solid var(--line);}
    .fact:last-child{border-bottom:0;}
    .field.two{grid-template-columns:1fr;}
    .foot-contact{grid-template-columns:1fr;gap:20px;}
  }
  @media (max-width:480px){
    body{font-size:16px;}
    .hero{padding-top:140px;}
  }

  @media (prefers-reduced-motion:reduce){
    *{animation:none!important;scroll-behavior:auto!important;}
    .reveal{opacity:1!important;transform:none!important;}
  }
</style>
</head>
<body>

<!-- ============ NAV ============ -->
<header class="nav" id="nav">
  <div class="wrap nav-inner">
    <a href="#top" class="brand">Ouane Holdings</a>
    <nav class="nav-links" id="navlinks">
      <a class="link" href="#approach">Approach</a>
      <a class="link" href="#focus">Focus</a>
      <a class="nav-cta" href="#contact">Partner inquiry</a>
    </nav>
    <button class="menu-btn" id="menuBtn" aria-label="Toggle menu">Menu</button>
  </div>
</header>

<!-- ============ HERO ============ -->
<section class="hero" id="top">
  <div class="hero-atmos" aria-hidden="true"></div>
  <div class="wrap hero-inner">
    <span class="eyebrow reveal">Private holding company</span>
    <h1 class="hero-title reveal d1" style="margin-top:24px;">Patient capital.<br><span class="em">Disciplined</span> stewardship.</h1>
    <p class="hero-sub reveal d2">Ouane Holdings invests across public and private markets. We partner for the long term, focused on durable value creation and principled risk management.</p>
    <div class="hero-actions reveal d3">
      <a class="btn-primary" href="#contact">Partner inquiry
        <svg width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M3 8h9M9 4l4 4-4 4" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>
      </a>
      <a class="btn-ghost" href="#approach">Our approach</a>
    </div>

    <div class="factstrip reveal d4">
      <div class="fact"><div class="k">Mandate</div><div class="v">Public &amp; private</div></div>
      <div class="fact"><div class="k">Geography</div><div class="v">United States</div></div>
      <div class="fact"><div class="k">Orientation</div><div class="v">Long-term</div></div>
    </div>
  </div>
</section>

<!-- ============ STATEMENT ============ -->
<section class="statement">
  <div class="wrap">
    <p class="reveal">A private holding company investing across U.S. public and private markets — <span class="soft">built to compound value over decades, not quarters.</span></p>
  </div>
</section>

<!-- ============ APPROACH ============ -->
<section class="approach" id="approach">
  <div class="wrap grid-2">
    <div class="sec-head reveal">
      <span class="eyebrow">Approach</span>
      <h2>Few decisions, high conviction.</h2>
      <p class="lead">Grounded in fundamentals and downside awareness. We act selectively, and only when the case is clear.</p>
    </div>
    <div class="reveal d1">
      <ul class="principles">
        <li><span class="idx">i.</span><span class="txt">Fundamentals-first underwriting<span>Value derived from the business, not the cycle.</span></span></li>
        <li><span class="idx">ii.</span><span class="txt">Downside awareness and selectivity<span>Protecting capital comes before pursuing return.</span></span></li>
        <li><span class="idx">iii.</span><span class="txt">Governance and alignment<span>Incentives that point in the same direction.</span></span></li>
        <li><span class="idx">iv.</span><span class="txt">Efficient, low-friction partnership<span>Clear process, considered terms, fewer intermediaries.</span></span></li>
      </ul>
    </div>
  </div>
</section>

<!-- ============ PERMANENCE ============ -->
<section class="permanence">
  <div class="wrap">
    <span class="eyebrow reveal">The horizon</span>
    <h2 class="reveal d1">Built for<br><span class="it">permanence.</span></h2>
    <p class="reveal d2">We hold what we underwrite. Patience is not passivity — it is the discipline to wait for the right opportunity and the conviction to stay once we find it.</p>
  </div>
</section>

<!-- ============ FOCUS ============ -->
<section class="focus" id="focus">
  <div class="wrap">
    <div class="focus-head reveal">
      <span class="eyebrow">Investment focus</span>
      <h2>A flexible mandate, applied with consistent standards.</h2>
      <p class="lead">Across markets and structures, we underwrite the same way — for quality, alignment, and durable cash generation.</p>
    </div>
    <div class="cards">
      <div class="card reveal">
        <span class="corner">01</span>
        <span class="c-label">Public markets</span>
        <h3>Concentrated, long-horizon positions</h3>
        <p>Durable, cash-generative businesses where we can underwrite quality, governance, and capital allocation with conviction.</p>
      </div>
      <div class="card reveal d1">
        <span class="corner">02</span>
        <span class="c-label">Private investments</span>
        <h3>Flexible structures across the lifecycle</h3>
        <p>Growth, buyout, and bespoke opportunities — typically with clear unit economics, aligned incentives, and a path to self-funding or disciplined liquidity.</p>
      </div>
      <div class="card reveal">
        <span class="corner">03</span>
        <span class="c-label">Operating companies</span>
        <h3>Select acquisitions, long-term ownership</h3>
        <p>Partnering with management teams to compound value through steady execution rather than financial engineering.</p>
      </div>
      <div class="card reveal d1">
        <span class="corner">04</span>
        <span class="c-label">Special situations</span>
        <h3>Complexity, met with discipline</h3>
        <p>Transitions, capital structure, or governance where patience and thoughtful structuring can create durable value over time.</p>
      </div>
    </div>
  </div>
</section>

<!-- ============ INQUIRY ============ -->
<section class="inquiry" id="contact">
  <div class="wrap inq-grid">
    <div class="inq-left reveal">
      <span class="eyebrow">Partner inquiry</span>
      <h2>If you have an opportunity aligned with our mandate, send a brief note.</h2>
      <p class="lead">We review thoughtfully and respond when there is a strong fit.</p>
      <ul class="review">
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Operating company acquisitions</li>
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Private investment opportunities</li>
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Public market ideas</li>
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Co-investment partnerships</li>
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Structured solutions — minority, preferred, or bespoke</li>
        <li><svg width="14" height="14" viewBox="0 0 14 14" fill="none"><path d="M2 7.5l3 3 7-8" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>Special situations — transitions, carve-outs, complexity</li>
      </ul>
      <p class="note">Helpful context: a company or asset summary, geography, size, timing, and any supporting materials. Where applicable, include an anonymized overview and your preferred process. Please avoid sharing confidential information in an initial outreach.</p>
    </div>

    <div class="reveal d1">
      <div class="form-card">
        <form id="inqForm" novalidate>
          <div class="field">
            <label for="name">Full name</label>
            <input id="name" name="name" type="text" placeholder="First and last name" autocomplete="name" required />
          </div>
          <div class="field">
            <label for="email">Email</label>
            <input id="email" name="email" type="email" placeholder="you@firm.com" autocomplete="email" required />
          </div>
          <div class="field two">
            <div>
              <label for="org">Organization</label>
              <input id="org" name="organization" type="text" placeholder="Firm or company" autocomplete="organization" required />
            </div>
            <div>
              <label for="role">Role / Title</label>
              <input id="role" name="role" type="text" placeholder="Title" autocomplete="organization-title" required />
            </div>
          </div>
          <div class="field">
            <label for="site">Website</label>
            <input id="site" name="website" type="text" placeholder="https://" inputmode="url" required />
          </div>
          <div class="field">
            <label for="type">Inquiry type</label>
            <select id="type" name="inquiryType" required>
              <option value="" disabled selected>Select one</option>
              <option value="investment-opportunity">Investment opportunity</option>
              <option value="acquisition">Acquisition</option>
              <option value="co-investment">Co-investment</option>
              <option value="other">Other</option>
            </select>
          </div>
          <div class="field">
            <label for="msg">Message</label>
            <textarea id="msg" name="message" placeholder="A brief note on the opportunity, size, geography, and timing." required></textarea>
          </div>
          <input type="text" name="company" class="hp" tabindex="-1" autocomplete="off" aria-hidden="true" />
          <button class="form-submit" type="submit" id="submitBtn">Send inquiry</button>
          <div class="form-error" id="formError" role="alert" aria-live="polite"></div>
        </form>
        <div class="form-ok" id="formOk">
          <div class="check"><svg width="22" height="22" viewBox="0 0 22 22" fill="none"><path d="M5 11.5l4 4 8-9" stroke="currentColor" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/></svg></div>
          <h4>Note received</h4>
          <p>Thank you. We review every inquiry and respond when there is a strong fit.</p>
        </div>
      </div>
    </div>
  </div>
</section>

<!-- ============ FOOTER ============ -->
<footer class="foot">
  <div class="wrap">
    <div class="foot-top">
      <a href="#top" class="brand">Ouane Holdings</a>
      <nav class="foot-nav">
        <a href="#approach">Approach</a>
        <a href="#focus">Focus</a>
        <a href="#contact">Partner inquiry</a>
      </nav>
    </div>
    <div class="foot-contact">
      <div class="col">
        <div class="k">Office</div>
        <address class="v" style="font-style:normal;">
          <a href="https://www.google.com/maps/search/?api=1&amp;query=9901+Fairway+Vista+Dr+Rowlett+TX+75089" target="_blank" rel="noopener">
            9901 Fairway Vista Dr<br>Rowlett, Texas 75089
          </a>
        </address>
      </div>
      <div class="col">
        <div class="k">Telephone</div>
        <div class="v"><a href="tel:+19728771430">+1 (972) 877-1430</a></div>
      </div>
    </div>
    <p class="disclaimer">For informational purposes only. Nothing herein constitutes an offer to sell or a solicitation of an offer to buy securities. Ouane Holdings does not provide investment advice.</p>
    <div class="foot-bottom">
      <span>Rowlett, Texas · United States</span>
      <span>© <span id="year"></span> Ouane Holdings. All rights reserved.</span>
    </div>
  </div>
</footer>

<script>
  // nav solidify on scroll
  const nav = document.getElementById('nav');
  const onScroll = () => nav.classList.toggle('solid', window.scrollY > 24);
  onScroll();
  window.addEventListener('scroll', onScroll, {passive:true});

  // mobile menu
  const menuBtn = document.getElementById('menuBtn');
  const navlinks = document.getElementById('navlinks');
  menuBtn.addEventListener('click', () => navlinks.classList.toggle('open'));
  navlinks.querySelectorAll('a').forEach(a => a.addEventListener('click', () => navlinks.classList.remove('open')));

  // year
  const y = document.getElementById('year');
  if (y) y.textContent = String(new Date().getFullYear());

  // reveal on scroll
  const io = new IntersectionObserver((entries) => {
    entries.forEach(e => { if (e.isIntersecting){ e.target.classList.add('in'); io.unobserve(e.target);} });
  }, {threshold:.12, rootMargin:'0px 0px -8% 0px'});
  document.querySelectorAll('.reveal').forEach(el => io.observe(el));

  // form -> GHL inbound webhook (direct from browser; GHL returns CORS headers)
  const GHL_WEBHOOK_URL = 'https://services.leadconnectorhq.com/hooks/hDxKzar4MPBeNkG0vsy1/webhook-trigger/1d5c53e7-2c8a-4bab-bdc3-5de94e513070';

  const form = document.getElementById('inqForm');
  const ok = document.getElementById('formOk');
  const submitBtn = document.getElementById('submitBtn');
  const errEl = document.getElementById('formError');

  function normalizeUrl(v){
    const t = String(v||'').trim();
    if (!t) return '';
    if (/^https?:\/\//i.test(t)) return t;
    return 'https://' + t;
  }
  function splitName(full){
    const parts = String(full||'').trim().split(/\s+/).filter(Boolean);
    if (parts.length === 0) return {first:'', last:''};
    if (parts.length === 1) return {first:parts[0], last:''};
    return {first:parts[0], last:parts.slice(1).join(' ')};
  }
  function prettyInquiryType(v){
    switch(v){
      case 'investment-opportunity': return 'Investment opportunity';
      case 'acquisition': return 'Acquisition';
      case 'co-investment': return 'Co-investment';
      case 'other': return 'Other';
      default: return v;
    }
  }

  form.addEventListener('submit', async (e) => {
    e.preventDefault();
    errEl.textContent = '';

    const fd = new FormData(form);
    const honeypot = String(fd.get('company') || '').trim();
    if (honeypot) {
      form.style.display = 'none';
      ok.classList.add('show');
      return;
    }

    const name = String(fd.get('name') || '').trim();
    const email = String(fd.get('email') || '').trim().toLowerCase();
    const organization = String(fd.get('organization') || '').trim();
    const role = String(fd.get('role') || '').trim();
    const website = normalizeUrl(fd.get('website'));
    const inquiryType = String(fd.get('inquiryType') || '').trim();
    const message = String(fd.get('message') || '').trim();

    const emailRe = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
    if (!name || !/\s/.test(name)) { errEl.textContent = 'Please enter your full name (first and last).'; return; }
    if (!email || !emailRe.test(email)) { errEl.textContent = 'Please enter a valid email.'; return; }
    if (!organization) { errEl.textContent = 'Please enter your organization.'; return; }
    if (!role) { errEl.textContent = 'Please enter your role or title.'; return; }
    if (!website) { errEl.textContent = 'Please enter your website.'; return; }
    if (!inquiryType) { errEl.textContent = 'Please select an inquiry type.'; return; }
    if (!message || message.length < 20) { errEl.textContent = 'Please include a brief message (20+ characters).'; return; }

    const {first, last} = splitName(name);
    const inquiryLabel = prettyInquiryType(inquiryType);
    const submissionId = (crypto && crypto.randomUUID) ? crypto.randomUUID() : String(Date.now());
    const receivedAt = new Date().toISOString();

    const ghlPayload = {
      first_name: first,
      last_name: last,
      full_name: name,
      name: name,
      email: email,
      company_name: organization,
      companyName: organization,
      website: website,
      source: 'ouaneholdings.com — Partner inquiry',
      tags: ['website-inquiry', 'partner-inquiry', 'inquiry-type:' + inquiryType],
      inquiry_type: inquiryType,
      inquiry_type_label: inquiryLabel,
      role: role,
      message: message,
      customField: {
        inquiry_type: inquiryType,
        inquiry_type_label: inquiryLabel,
        role: role,
        organization: organization,
        website: website,
        message: message,
        submission_id: submissionId,
        received_at: receivedAt,
      },
      submission_id: submissionId,
      received_at: receivedAt,
      page: window.location.origin,
      referer: document.referrer || undefined,
      user_agent: navigator.userAgent,
    };

    submitBtn.disabled = true;
    const prevLabel = submitBtn.textContent;
    submitBtn.textContent = 'Sending…';

    try {
      const res = await fetch(GHL_WEBHOOK_URL, {
        method: 'POST',
        headers: {'content-type': 'application/json', 'accept': 'application/json'},
        body: JSON.stringify(ghlPayload),
      });
      if (!res.ok) {
        let detail = '';
        try { const b = await res.json(); detail = (b && (b.message || b.status)) || ''; } catch {}
        throw new Error(detail || ('Unable to send (HTTP ' + res.status + '). Please try again.'));
      }
      form.style.display = 'none';
      ok.classList.add('show');
    } catch (err) {
      errEl.textContent = (err && err.message) ? err.message : 'Unable to send. Please try again.';
      submitBtn.disabled = false;
      submitBtn.textContent = prevLabel;
    }
  });
</script>

<!-- GHL chat widget -->
<script src="https://widgets.leadconnectorhq.com/loader.js" data-resources-url="https://widgets.leadconnectorhq.com/chat-widget/loader.js" data-widget-id="6a2e259d07e0e2e0e1b4b4f6" data-source="WEB_USER"></script>
</body>
</html>
