/* ==========================================================================
   ABOUT / OUR TEAM — ported from design/about-mockup.html.
   Rendered by the "AAA — About Page" Elementor widget (one drag = full page).
   Loads only where the widget is present (get_style_depends). Prefix: aaa-ab-
   Reuses design-system tokens + .aaa-section / .aaa-container / .aaa-reveal.
   ========================================================================== */

.aaa-ab em{font-style:italic;color:var(--aaa-blue)}
.aaa-ab-sechead{margin-bottom:48px}
.aaa-ab-sechead.center{text-align:center;max-width:700px;margin-left:auto;margin-right:auto}
.aaa-ab-sechead h2{font-size:clamp(2.2rem,4vw,3.2rem);margin-top:12px}
.aaa-ab-sechead p{margin-top:14px;color:var(--aaa-ink-soft)}

/* ── HERO (sits below the solid sticky header) ── */
.aaa-ab-hero{position:relative;min-height:60vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.aaa-ab-hero__bg{position:absolute;inset:0}
.aaa-ab-hero__bg img{width:100%;height:100%;object-fit:cover}
.aaa-ab-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,18,38,.92),rgba(7,18,38,.3) 60%,rgba(7,18,38,.5))}
.aaa-ab-hero .aaa-container{position:relative;z-index:2;width:100%;padding-top:70px;padding-bottom:58px}
.aaa-ab-hero__crumb{font-size:.92rem;margin-bottom:16px;opacity:.9;display:flex;gap:8px;font-weight:500}
.aaa-ab-hero__crumb a:hover{color:var(--aaa-gold)}.aaa-ab-hero__crumb .sep{opacity:.5}
.aaa-ab-hero .aaa-eyebrow{color:var(--aaa-gold)}
.aaa-ab-hero h1{font-size:clamp(2.6rem,6vw,5rem);margin:14px 0 12px;max-width:18ch;color:#fff}
.aaa-ab-hero p{font-size:1.3rem;max-width:50ch;color:#eaf2ff}

/* ── STORY ── */
.aaa-ab-story{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.aaa-ab-story__imgs{position:relative}
.aaa-ab-story__main{border-radius:var(--aaa-radius);overflow:hidden;box-shadow:var(--aaa-shadow);aspect-ratio:4/5}
.aaa-ab-story__main img{width:100%;height:100%;object-fit:cover}
.aaa-ab-story__badge{position:absolute;left:-24px;bottom:36px;background:var(--aaa-blue);color:#fff;border-radius:16px;padding:22px 26px;box-shadow:var(--aaa-shadow);max-width:230px}
.aaa-ab-story__badge b{font-family:var(--aaa-serif);font-size:2.6rem;display:block;line-height:1}
.aaa-ab-story__badge span{font-size:.9rem;opacity:.92}
.aaa-ab-story h2{font-size:clamp(2.1rem,3.7vw,3.1rem);margin:14px 0 18px}
.aaa-ab-story__body p{color:var(--aaa-ink-soft);margin-bottom:16px}
.aaa-ab-story__body strong{color:var(--aaa-ink)}
.aaa-ab-story__sign{font-family:var(--aaa-serif);font-style:italic;font-size:1.5rem;color:var(--aaa-blue);margin-top:14px}

/* ── STATS (navy band) ── */
.aaa-ab-stats{background:var(--aaa-navy);color:#fff}
.aaa-ab-stats__row{display:flex;justify-content:space-around;gap:24px;flex-wrap:wrap;text-align:center}
.aaa-ab-stats .s b{font-family:var(--aaa-serif);font-size:3rem;color:var(--aaa-gold);display:block;line-height:1}
.aaa-ab-stats .s span{opacity:.82;font-size:.95rem}

/* ── VALUES ── */
.aaa-ab-vals{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.aaa-ab-val{border:1px solid var(--aaa-line);border-radius:var(--aaa-radius);padding:30px 26px;transition:.3s}
.aaa-ab-val:hover{transform:translateY(-5px);box-shadow:var(--aaa-shadow);border-color:transparent}
.aaa-ab-val .ic{width:58px;height:58px;border-radius:15px;background:linear-gradient(135deg,var(--aaa-sky),#d4e7fe);display:grid;place-items:center;font-size:1.7rem;margin-bottom:16px}
.aaa-ab-val h3{font-size:1.25rem;margin-bottom:8px;font-weight:600}
.aaa-ab-val p{font-size:.96rem;color:var(--aaa-ink-soft)}

/* ── TEAM ── */
.aaa-ab-team{background:var(--aaa-mist)}
.aaa-ab-team__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.aaa-ab-member{background:#fff;border:1px solid var(--aaa-line);border-radius:var(--aaa-radius);overflow:hidden;transition:.3s;text-align:center;padding-bottom:24px}
.aaa-ab-member:hover{transform:translateY(-6px);box-shadow:var(--aaa-shadow)}
.aaa-ab-member .ph{aspect-ratio:1;background:linear-gradient(135deg,var(--aaa-sky),#cfe0f5);display:grid;place-items:center;position:relative;overflow:hidden}
.aaa-ab-member .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.aaa-ab-member .ava{font-family:var(--aaa-serif);font-size:3.2rem;font-weight:700;color:var(--aaa-blue)}
.aaa-ab-member .ph-note{position:absolute;bottom:10px;font-size:.68rem;color:var(--aaa-ink-soft);background:rgba(255,255,255,.85);padding:3px 10px;border-radius:50px}
.aaa-ab-member h3{font-size:1.3rem;margin:18px 0 2px;font-weight:600}
.aaa-ab-member .role{color:var(--aaa-blue);font-weight:700;font-size:.9rem}
.aaa-ab-member .spec{display:inline-block;margin:10px 0;font-size:.78rem;font-weight:700;background:var(--aaa-sky);color:var(--aaa-blue-ink);padding:5px 13px;border-radius:50px}
.aaa-ab-member p{font-size:.9rem;color:var(--aaa-ink-soft);padding:0 22px;font-style:italic;font-family:var(--aaa-serif)}
.aaa-ab-member .socials{display:flex;gap:8px;justify-content:center;margin-top:14px}
.aaa-ab-member .socials a{width:34px;height:34px;border-radius:50%;border:1px solid var(--aaa-line);display:grid;place-items:center;font-size:.8rem;font-weight:700;color:var(--aaa-ink-soft)}
.aaa-ab-member .socials a:hover{background:var(--aaa-blue);color:#fff;border-color:var(--aaa-blue)}

/* ── FOUNDER SPOTLIGHT ── */
.aaa-ab-founder{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:center}
.aaa-ab-founder__ph{border-radius:var(--aaa-radius);overflow:hidden;box-shadow:var(--aaa-shadow);aspect-ratio:1;background:linear-gradient(135deg,var(--aaa-navy),var(--aaa-blue-deep));display:grid;place-items:center;color:#fff;position:relative}
.aaa-ab-founder__ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.aaa-ab-founder__ph .ava{font-family:var(--aaa-serif);font-size:5rem;font-weight:700}
.aaa-ab-founder__ph .ph-note{position:absolute;bottom:16px;font-size:.74rem;background:rgba(255,255,255,.15);padding:5px 14px;border-radius:50px}
.aaa-ab-founder__q{font-family:var(--aaa-serif);font-size:1.8rem;font-style:italic;line-height:1.45;margin-bottom:20px}
.aaa-ab-founder__q em{color:var(--aaa-blue);font-style:italic}
.aaa-ab-founder p{color:var(--aaa-ink-soft);margin-bottom:14px}
.aaa-ab-founder__who b{font-family:var(--aaa-serif);font-size:1.25rem;display:block}
.aaa-ab-founder__who small{color:var(--aaa-ink-soft)}

/* ── CONSERVATION (image band) ── */
.aaa-ab-cons{position:relative;color:#fff;overflow:hidden}
.aaa-ab-cons__bg{position:absolute;inset:0}
.aaa-ab-cons__bg img{width:100%;height:100%;object-fit:cover}
.aaa-ab-cons__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(7,32,63,.94),rgba(20,60,40,.82))}
.aaa-ab-cons .aaa-container{position:relative;z-index:2}
.aaa-ab-cons__grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.aaa-ab-cons h2{color:#fff;font-size:clamp(2.1rem,3.7vw,3rem)}
.aaa-ab-cons h2 em{color:var(--aaa-gold)}
.aaa-ab-cons p{opacity:.9;margin-top:16px}
.aaa-ab-cons ul{list-style:none;display:grid;gap:14px;margin:22px 0 0;padding:0}
.aaa-ab-cons li{display:flex;gap:13px;align-items:flex-start;font-weight:500}
.aaa-ab-cons li::before{content:"🌿";flex-shrink:0}

/* ── AWARDS ── */
.aaa-ab-awards{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.aaa-ab-award{border:1px solid var(--aaa-line);border-radius:14px;padding:24px 16px;text-align:center}
.aaa-ab-award .ic{font-size:1.9rem}
.aaa-ab-award b{font-family:var(--aaa-serif);display:block;margin-top:8px;font-size:1.05rem}
.aaa-ab-award small{color:var(--aaa-ink-soft);font-size:.82rem}

/* ── TESTIMONIAL ── */
.aaa-ab-quote{background:var(--aaa-mist);border-radius:24px;padding:60px;text-align:center}
.aaa-ab-quote .star{color:var(--aaa-gold);font-size:1.3rem;letter-spacing:2px}
.aaa-ab-quote blockquote{font-family:var(--aaa-serif);font-style:italic;font-size:1.7rem;line-height:1.5;max-width:48ch;margin:18px auto 22px;color:var(--aaa-ink)}
.aaa-ab-quote .who{font-weight:700}
.aaa-ab-quote .who small{display:block;color:var(--aaa-ink-soft);font-weight:400;font-size:.9rem}

/* ── CTA ── */
.aaa-ab-cta{position:relative;color:#fff;overflow:hidden}
.aaa-ab-cta__bg{position:absolute;inset:0}
.aaa-ab-cta__bg img{width:100%;height:100%;object-fit:cover}
.aaa-ab-cta__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(7,18,38,.94),rgba(11,91,211,.8))}
.aaa-ab-cta .aaa-container{position:relative;z-index:2;text-align:center;padding-top:92px;padding-bottom:92px}
.aaa-ab-cta h2{color:#fff;font-size:clamp(2.1rem,4vw,3.1rem)}
.aaa-ab-cta h2 em{color:var(--aaa-gold)}
.aaa-ab-cta p{opacity:.92;font-size:1.16rem;max-width:50ch;margin:16px auto 28px}
.aaa-ab-cta__row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── VIDEO ── */
.aaa-about-video .aaa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aaa-vid__frame{position:relative;aspect-ratio:16/9;width:100%;border-radius:var(--aaa-radius);overflow:hidden;box-shadow:var(--aaa-shadow);background:var(--aaa-navy);cursor:pointer}
.aaa-vid__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.aaa-vid__frame::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,18,38,.45),rgba(7,18,38,.05) 55%);transition:.3s}
.aaa-vid__frame:hover::after{background:linear-gradient(to top,rgba(7,18,38,.3),rgba(7,18,38,0) 55%)}
.aaa-vid__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:84px;height:84px;border:none;border-radius:50%;background:var(--aaa-gold);cursor:pointer;box-shadow:0 12px 34px rgba(0,0,0,.35);transition:.3s}
.aaa-vid__play::before{content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-style:solid;border-width:14px 0 14px 24px;border-color:transparent transparent transparent #fff}
.aaa-vid__play:hover{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 16px 40px rgba(0,0,0,.42)}
.aaa-vid__wm{position:absolute;right:20px;bottom:18px;z-index:4;max-width:140px;height:auto;pointer-events:none}
.aaa-vid__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ── REVIEWS ── */
.aaa-about-reviews .aaa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aaa-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.aaa-rev-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--aaa-line);border-radius:var(--aaa-radius);padding:30px 28px;transition:.3s}
.aaa-rev-card:hover{transform:translateY(-5px);box-shadow:var(--aaa-shadow)}
.aaa-rev-card__stars{color:var(--aaa-gold);font-size:1.15rem;letter-spacing:2px;line-height:1}
.aaa-rev-card__quote{font-family:var(--aaa-serif);font-style:italic;font-size:1.08rem;line-height:1.55;color:var(--aaa-ink);margin:16px 0 22px}
.aaa-rev-card__foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:18px;border-top:1px solid var(--aaa-line)}
.aaa-rev-card__who b{display:block;font-weight:700;font-size:.98rem}
.aaa-rev-card__who small{color:var(--aaa-ink-soft);font-size:.84rem}
.aaa-rev-card__src{flex-shrink:0;display:inline-grid;place-items:center;color:var(--aaa-ink-soft);text-decoration:none;transition:.25s}
.aaa-rev-card__src i{font-size:1.6rem}
.aaa-rev-card__src--tripadvisor:hover i{color:#34e0a1}
.aaa-rev-card__src--google:hover i{color:#4285f4}
.aaa-rev-card__pill{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--aaa-blue-ink);background:var(--aaa-sky);border:1px solid var(--aaa-line);padding:5px 12px;border-radius:50px}
a.aaa-rev-card__src:hover .aaa-rev-card__pill{background:var(--aaa-blue);color:#fff;border-color:var(--aaa-blue)}

/* ── PARTNERS ── */
.aaa-partner-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 40px}
.aaa-partner{display:inline-grid;place-items:center;min-height:64px;text-decoration:none}
.aaa-partner__logo{max-height:56px;max-width:160px;width:auto;height:auto;filter:grayscale(1);opacity:.7;transition:.3s}
.aaa-partner:hover .aaa-partner__logo{filter:grayscale(0);opacity:1}
.aaa-partner__name{font-family:var(--aaa-serif);font-weight:700;letter-spacing:.06em;color:var(--aaa-ink-soft);border:1px solid var(--aaa-line);border-radius:50px;padding:12px 26px;transition:.3s}
.aaa-partner:hover .aaa-partner__name{color:var(--aaa-blue);border-color:var(--aaa-blue)}

/* ── Responsive ── */
@media(max-width:1024px){
  .aaa-ab-story,.aaa-ab-founder,.aaa-ab-cons__grid{grid-template-columns:1fr;gap:40px}
  .aaa-ab-vals,.aaa-ab-team__grid{grid-template-columns:1fr 1fr}
  .aaa-ab-awards{grid-template-columns:1fr 1fr 1fr}
  .aaa-rev-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .aaa-ab-vals,.aaa-ab-team__grid,.aaa-ab-awards{grid-template-columns:1fr}
  .aaa-rev-grid{grid-template-columns:1fr}
  .aaa-ab-story__badge{left:14px}
  .aaa-ab-hero{min-height:auto}
  .aaa-ab-quote{padding:40px 26px}
  .aaa-vid__play{width:64px;height:64px}
  .aaa-partner-row{gap:16px 28px}
}
