/* ============================================================
   ABOUT US PAGE
   Depends on wpfactory-globals.css for tokens, reset, typography,
   buttons, container, .grad-text, .eyebrow, .kicker.
   ============================================================ */

/* ============================================================
   PAGE UTILITIES
   ============================================================ */
.hand-underline{position:relative;display:inline-block}
.hand-underline svg{position:absolute;left:-4%;right:-4%;bottom:-6px;width:108%;height:14px;pointer-events:none}

/* ============================================================
   SECTION RHYTHM
   Scoped via the body class WordPress adds for this page
   (.page-about-us). Higher specificity than bare `section`
   so Storefront/optimizer output can't squash the padding.
   ============================================================ */
main#main section{padding:64px 0;position:relative}
@media(max-width:980px){main#main section{padding:56px 0}}
@media(max-width:560px){main#main section{padding:44px 0}}

/* ============================================================
   REVEALS
   ============================================================ */
.r{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.3,1)}
.r.in{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
  .r{opacity:1;transform:none}
}

/* Animated blobs in hero bg */
.blob{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:-1}
.blob-1{width:520px;height:520px;background:#8A63CD;top:-180px;right:-120px;opacity:.18;animation:blob-drift-1 22s cubic-bezier(.45,.05,.55,.95) infinite alternate}
.blob-2{width:380px;height:380px;background:#3847D3;bottom:-160px;left:-100px;opacity:.12;animation:blob-drift-2 26s cubic-bezier(.45,.05,.55,.95) infinite alternate}
[data-theme="dark"] .blob-1{opacity:.30}
[data-theme="dark"] .blob-2{opacity:.20}
@keyframes blob-drift-1{from{transform:translate(0,0)}to{transform:translate(-60px,40px)}}
@keyframes blob-drift-2{from{transform:translate(0,0)}to{transform:translate(50px,-30px)}}
@media(max-width:760px){.blob{display:none}}

/* ============================================================
   HERO, centered editorial statement with EST. 2013 seal
   ============================================================ */
main#main .au-hero{padding-top:120px;padding-bottom:56px;overflow:hidden;text-align:center}
.au-hero .wrap{max-width:920px;position:relative}

.au-hero-eyebrow{margin-bottom:18px}
.au-hero h1{margin-bottom:28px;font-size:clamp(36px,5vw,68px);line-height:1.04}

.au-hero-lede{font-size:clamp(17px,1.4vw,21px);line-height:1.6;color:var(--text-2);max-width:58ch;margin:0 auto 36px}
.au-hero-lede strong{color:var(--text);font-weight:700}

.au-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:32px}

.au-hero-trust{display:inline-flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center;font-size:13px;color:var(--text-3);font-weight:500;font-family:var(--font-mono);letter-spacing:.02em}
.au-hero-trust .item{display:inline-flex;align-items:center;gap:6px}
.au-hero-trust svg{width:14px;height:14px;color:var(--purple);flex-shrink:0}
[data-theme="dark"] .au-hero-trust svg{color:var(--purple-light)}

/* EST. 2013 stamp, decorative seal top-right */
.au-seal{position:absolute;top:20px;right:20px;width:130px;height:130px;border-radius:50%;border:2px dashed var(--line-2);display:grid;place-items:center;font-family:var(--font-mono);font-weight:800;color:var(--text-3);text-align:center;letter-spacing:.1em;text-transform:uppercase;transform:rotate(-8deg);opacity:.95;transition:transform .8s cubic-bezier(.3,.1,.3,1)}
.au-seal::before{content:"";position:absolute;inset:8px;border-radius:50%;border:1px solid var(--line)}
.au-seal-content{display:flex;flex-direction:column;align-items:center;gap:3px;position:relative;z-index:1}
.au-seal .top{font-size:9px;line-height:1;color:var(--text-3)}
.au-seal .yr{font-size:30px;line-height:1;color:var(--purple);letter-spacing:0;font-weight:900;font-family:var(--font-mono);margin:2px 0}
[data-theme="dark"] .au-seal .yr{color:var(--purple-light)}
.au-seal .bot{font-size:8.5px;line-height:1;color:var(--text-3)}
.au-seal:hover{transform:rotate(352deg)}
@media(max-width:980px){.au-seal{top:14px;right:14px;width:100px;height:100px}.au-seal .yr{font-size:24px}}
@media(max-width:560px){.au-seal{position:relative;top:auto;right:auto;margin:0 auto 28px;transform:rotate(-6deg)}}

/* ============================================================
   STORY, editorial chapters with year markers
   ============================================================ */
.au-story{background:var(--bg-2);border-block:1px solid var(--line)}
.au-story .wrap{max-width:980px}

.au-story-head{max-width:680px;margin:0 auto 48px;text-align:center}
.au-story-head h2{margin-top:10px}
.au-story-head .lede{margin:16px auto 0}

.au-chapters{display:flex;flex-direction:column;gap:0}

.au-chap{display:grid;grid-template-columns:200px 1fr;gap:48px;align-items:start;padding:48px 0;border-bottom:1px dashed var(--line-2)}
.au-chap:first-child{padding-top:0}
.au-chap:last-child{border-bottom:0;padding-bottom:0}
@media(max-width:760px){.au-chap{grid-template-columns:1fr;gap:18px;padding:36px 0}}

.au-chap-mark{display:flex;flex-direction:column;gap:10px}
.au-chap-yr{font-family:var(--font-mono);font-size:64px;font-weight:800;color:var(--purple);letter-spacing:-0.05em;line-height:1;font-feature-settings:"tnum"}
[data-theme="dark"] .au-chap-yr{color:var(--purple-light)}
@media(max-width:760px){.au-chap-yr{font-size:42px}}
.au-chap-loc{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.1em;text-transform:uppercase}
.au-chap-loc svg{width:11px;height:11px;color:var(--purple)}
[data-theme="dark"] .au-chap-loc svg{color:var(--purple-light)}

.au-chap-body h3{font-size:clamp(22px,2.2vw,30px);margin-bottom:14px;letter-spacing:-0.02em}
.au-chap-body p{font-size:16px;color:var(--text-2);line-height:1.7;margin:0}
.au-chap-body p + p{margin-top:14px}
.au-chap-body strong{color:var(--text);font-weight:700}
.au-chap-body a{color:var(--purple);font-weight:700;border-bottom:1px dashed var(--purple)}
[data-theme="dark"] .au-chap-body a{color:var(--purple-light);border-bottom-color:var(--purple-light)}

/* ============================================================
   BANNER NUMBERS, typographic strip
   ============================================================ */
main#main .au-banner{padding:64px 0}
.au-banner .wrap{max-width:1100px}
.au-banner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
@media(max-width:760px){.au-banner-grid{grid-template-columns:repeat(2,1fr);gap:32px 0}}

.au-bn{padding:8px 24px;border-right:1px solid var(--line);text-align:center}
.au-bn:last-child{border-right:0}
@media(max-width:760px){.au-bn:nth-child(2n){border-right:0}}
.au-bn .v{font-family:var(--font-mono);font-size:clamp(34px,4vw,48px);font-weight:800;color:var(--text);letter-spacing:-0.04em;line-height:1;font-feature-settings:"tnum";display:block}
.au-bn .v sup{font-size:.5em;color:var(--purple);font-weight:700;letter-spacing:0}
[data-theme="dark"] .au-bn .v sup{color:var(--purple-light)}
.au-bn .l{font-size:11px;color:var(--text-3);font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-top:10px;display:block}

/* ============================================================
   PRINCIPLES, four numbered editorial items
   ============================================================ */
.au-principles .wrap{max-width:1180px}
.au-principles-head{max-width:680px;margin:0 auto 48px;text-align:center}
.au-principles-head h2{margin-top:10px}
.au-principles-head .lede{margin:16px auto 0}

.au-prin{display:grid;grid-template-columns:100px 1fr 1fr;gap:48px;align-items:start;padding:36px 0;border-top:1px solid var(--line)}
.au-prin:last-child{border-bottom:1px solid var(--line)}
@media(max-width:980px){.au-prin{grid-template-columns:60px 1fr;gap:20px}.au-prin-body{grid-column:2}}
@media(max-width:560px){.au-prin{grid-template-columns:1fr;gap:12px;padding:28px 0}.au-prin-body{grid-column:1}}

.au-prin-n{font-family:var(--font-mono);font-size:14px;font-weight:800;color:var(--purple);letter-spacing:.18em;text-transform:uppercase;line-height:1;padding-top:8px}
[data-theme="dark"] .au-prin-n{color:var(--purple-light)}

.au-prin-title h3{font-size:clamp(22px,2.4vw,30px);letter-spacing:-0.02em;line-height:1.1}
.au-prin-title .sub{display:block;font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin-top:8px;line-height:1.5}

.au-prin-body p{font-size:15.5px;color:var(--text-2);line-height:1.65;margin:0}
.au-prin-body p strong{color:var(--text);font-weight:700}
.au-prin-body .link{display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--purple);letter-spacing:.08em;text-transform:uppercase;transition:gap .2s}
[data-theme="dark"] .au-prin-body .link{color:var(--purple-light)}
.au-prin-body .link:hover{gap:9px}

/* ============================================================
   SISTER BRANDS, magazine-spread blocks
   ============================================================ */
.au-family{background:var(--bg-2);border-block:1px solid var(--line)}
.au-family .wrap{max-width:1080px}

.au-family-head{max-width:680px;margin:0 auto 48px;text-align:center}
.au-family-head h2{margin-top:10px}
.au-family-head .lede{margin:16px auto 0}

.au-family-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
@media(max-width:760px){.au-family-grid{grid-template-columns:1fr;gap:24px}}

.au-brand{display:flex;flex-direction:column;gap:20px;padding:36px;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius-xl);transition:transform .25s,box-shadow .25s,border-color .2s;text-decoration:none;color:inherit}
.au-brand:hover{transform:translateY(-4px);border-color:var(--purple);box-shadow:var(--shadow-md)}

.au-brand-wmark{display:inline-flex;align-items:baseline;gap:0;font-family:var(--font-mono);font-weight:900;font-size:32px;letter-spacing:-0.04em;color:var(--text);line-height:1}
.au-brand-wmark .accent{color:var(--purple)}
[data-theme="dark"] .au-brand-wmark .accent{color:var(--purple-light)}
.au-brand-wmark .dot{width:8px;height:8px;border-radius:50%;background:var(--purple);display:inline-block;margin-left:4px;align-self:baseline}
[data-theme="dark"] .au-brand-wmark .dot{background:var(--purple-light)}

.au-brand-tag{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.12em;text-transform:uppercase;margin-top:-8px}
.au-brand p{font-size:15px;color:var(--text-2);line-height:1.65;margin:0;flex:1}
.au-brand-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:18px;border-top:1px dashed var(--line-2);font-family:var(--font-mono);font-size:12px;color:var(--text-3);letter-spacing:.02em}
.au-brand-foot .go{color:var(--purple);font-weight:700;display:inline-flex;align-items:center;gap:5px;transition:gap .2s}
[data-theme="dark"] .au-brand-foot .go{color:var(--purple-light)}
.au-brand:hover .au-brand-foot .go{gap:9px}

/* ============================================================
   TEAM, founders as 2x2 wide bio cards, crew as horizontal rows
   ============================================================ */
.au-team .wrap{max-width:1120px}

.au-team-head{max-width:680px;margin:0 auto 56px;text-align:center}
.au-team-head h2{margin-top:10px}
.au-team-head .lede{margin:16px auto 0}

.au-team-label{font-family:var(--font-mono);font-size:11px;font-weight:800;color:var(--text-3);letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:28px}
.au-team-label::before{content:"";flex-shrink:0;width:36px;height:2px;background:var(--purple);border-radius:99px}

/* Founders, wide horizontal cards 2x2 */
.au-founders{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:64px}
@media(max-width:760px){.au-founders{grid-template-columns:1fr}}

.au-founder{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center;padding:22px;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius-lg);transition:transform .25s,box-shadow .25s,border-color .2s;text-decoration:none;color:inherit}
.au-founder:hover{transform:translateY(-3px);border-color:var(--purple);box-shadow:var(--shadow-md)}
.au-founder .avatar{width:120px;height:120px;border-radius:var(--radius-lg);background:var(--grad-soft);overflow:hidden;border:1px solid var(--line);flex-shrink:0}
.au-founder .avatar img{width:100%;height:100%;object-fit:cover}
.au-founder .name{font-size:18px;font-weight:800;color:var(--text);letter-spacing:-0.015em;line-height:1.2;margin-bottom:4px}
.au-founder .role{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--purple);letter-spacing:.08em;text-transform:uppercase;line-height:1.3;margin-bottom:10px}
[data-theme="dark"] .au-founder .role{color:var(--purple-light)}
.au-founder .bio{font-size:13.5px;color:var(--text-3);line-height:1.55;margin:0 0 12px}
.au-founder .li{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;transition:color .2s}
.au-founder:hover .li{color:var(--purple)}
[data-theme="dark"] .au-founder:hover .li{color:var(--purple-light)}
.au-founder .li svg{width:11px;height:11px}

/* Crew, horizontal rows, 3 columns */
.au-crew{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:760px){.au-crew{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.au-crew{grid-template-columns:1fr}}

.au-crew-row{display:flex;align-items:center;gap:14px;padding:16px;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius-lg);transition:transform .2s,border-color .2s,box-shadow .2s;text-decoration:none;color:inherit}
.au-crew-row:hover{transform:translateY(-2px);border-color:var(--purple);box-shadow:var(--shadow-sm)}
.au-crew-row.no-link{cursor:default}
.au-crew-row.no-link:hover{transform:none;border-color:var(--line);box-shadow:none}
.au-crew-row .avatar{width:54px;height:54px;border-radius:50%;overflow:hidden;background:var(--grad-soft);flex-shrink:0;border:2px solid var(--bg)}
.au-crew-row .avatar img{width:100%;height:100%;object-fit:cover}
.au-crew-row .text{flex:1;min-width:0}
.au-crew-row .name{font-size:14px;font-weight:800;color:var(--text);letter-spacing:-0.01em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-crew-row .role{font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--text-3);letter-spacing:.04em;line-height:1.4;margin-top:2px}
.au-crew-row .li-mini{width:26px;height:26px;border-radius:6px;background:var(--bg-2);display:grid;place-items:center;color:var(--text-3);flex-shrink:0;transition:background .2s,color .2s}
.au-crew-row:hover .li-mini{background:var(--purple);color:#FFF}
.au-crew-row .li-mini svg{width:13px;height:13px}

/* ============================================================
   REACH, contact band
   ============================================================ */
.au-reach{background:var(--bg-2);border-block:1px solid var(--line)}
.au-reach .wrap{max-width:880px;text-align:center}
.au-reach h2{margin-top:10px}
.au-reach .lede{max-width:54ch;margin:16px auto 32px}
.au-reach-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:8px}
@media(max-width:560px){.au-reach-row{grid-template-columns:1fr}}

.au-reach-card{display:flex;align-items:center;gap:14px;padding:20px 22px;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:left;transition:transform .2s,border-color .2s,box-shadow .2s;text-decoration:none;color:inherit}
.au-reach-card:hover{transform:translateY(-2px);border-color:var(--purple);box-shadow:var(--shadow-sm)}
.au-reach-card .ic{width:40px;height:40px;border-radius:10px;background:var(--grad-soft);color:var(--purple);display:grid;place-items:center;flex-shrink:0}
[data-theme="dark"] .au-reach-card .ic{color:var(--purple-light)}
.au-reach-card .label{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--text-3);letter-spacing:.12em;text-transform:uppercase}
.au-reach-card .v{font-size:14px;font-weight:700;color:var(--text);letter-spacing:-0.01em;margin-top:2px}
.au-reach-card .v.mono{font-family:var(--font-mono);font-weight:600}
.au-reach-note{font-family:var(--font-hand);font-size:18px;color:var(--purple);margin-top:28px;transform:rotate(-1deg);display:inline-block}
[data-theme="dark"] .au-reach-note{color:var(--purple-light)}

/* ============================================================
   FINAL CTA
   ============================================================ */
.au-final{text-align:center;overflow:hidden}
.au-final::before{content:"";position:absolute;top:50%;left:50%;width:80vw;height:80vw;max-width:900px;max-height:900px;background:radial-gradient(circle,rgba(138,99,205,.10) 0%,rgba(56,71,211,.05) 40%,transparent 70%);border-radius:50%;filter:blur(60px);pointer-events:none;transform:translate(-50%,-50%);z-index:-1}
.au-final .wrap{max-width:720px}
.au-final h2{margin:10px 0 18px}
.au-final p{font-size:17px;color:var(--text-2);line-height:1.6;max-width:54ch;margin:0 auto 28px}
.au-final-ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.au-final-trust{font-family:var(--font-mono);font-size:12px;color:var(--text-3);margin-top:28px;letter-spacing:.02em}
