/*
Theme Name: HB & MJ Partners
Theme URI: https://hbmjpartners.com
Author: Hassan Lâasri
Description: Built to transfer. The HB & MJ Partners professional site: Home, Practice, Writing, About. Cormorant Garamond over Inter Tight; teal accent from the HB & MJ Partners mark.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
License: All rights reserved
Text Domain: hbmj-partners
*/

    :root{
      --night:#F7F3EC; --panel:#EFE8DA; --ink:#1A1A1A; --muted:#5B5144;
      --line:#D5C9B5; --gold:#158183; --green:#3F5B6E; --rust:#B85042;
    }
    *{box-sizing:border-box;}
    body{margin:0;background:#EDE8DE;color:var(--ink);
      font-family:"Inter Tight","Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6;}
    .serif{font-family:"Cormorant Garamond",Georgia,serif;}
    .hbmj-siteheader{max-width:1024px;margin:0 auto;padding:18px 20px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;}
    .hbmj-brand img{height:44px;width:auto;display:block;}
    .hbmj-nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center;}
    .hbmj-nav a{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:7px 14px;border-radius:8px;border:1px solid transparent;}
    .hbmj-nav a.current{background:var(--gold);color:#fff;}
    .hbmj-nav a:hover{color:var(--ink);}
    .hbmj-nav a.hbmj-cta-link{border-color:var(--line);border-radius:999px;}
    .page{max-width:1024px;margin:24px auto 64px;background:var(--night);
      border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.06);overflow:hidden;}
    .page.active{display:block;}
    .hbmj-page h1,.hbmj-page h2,.hbmj-page h3,.hbmj-page h4{
      font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;color:var(--ink);line-height:1.1;margin:0;}
    .hbmj-page p{margin:0;}
    .hbmj-page a{color:var(--ink);}
    .hbmj-page em{color:var(--gold);font-style:italic;}
    [id]{scroll-margin-top:96px;}
    .gslot{border:1.5px dashed var(--gold);background:rgba(122,106,82,.06);border-radius:8px;
      display:grid;place-items:center;text-align:center;color:var(--muted);
      font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:12px;line-height:1.7;}
    .gslot b{color:var(--gold);letter-spacing:.1em;}
    .hbmj-icon{width:56px;height:56px;display:block;}
    .hbmj-hero{text-align:center;padding:24px 32px 80px;border-bottom:1px solid var(--line);}
    .hbmj-hero .gslot{margin:0 auto 40px;max-width:760px;height:110px;}
    .hbmj-eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:18px;}
    .hbmj-display{font-size:clamp(52px,9vw,108px);letter-spacing:-.02em;margin-bottom:16px;}
    .hbmj-h1{font-size:clamp(38px,5.5vw,64px);margin-bottom:18px;}
    .hbmj-lede{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(21px,2.8vw,28px);max-width:680px;margin:0 auto;}
    .hbmj-status{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 40px;padding:14px 32px;
      border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
    .hbmj-status span{display:flex;align-items:center;gap:8px;}
    .dot{width:8px;height:8px;border-radius:50%;display:inline-block;}
    .dot-green{background:var(--green);} .dot-gold{background:var(--gold);}
    .hbmj-section{padding:64px 32px;border-bottom:1px solid var(--line);}
    .hbmj-label{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:10px;}
    .hbmj-h2{font-size:clamp(28px,4vw,44px);}
    .hbmj-h3{font-size:clamp(23px,3vw,30px);}
    .hbmj-intro{font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;color:var(--muted);}
    .hbmj-split{display:grid;grid-template-columns:7fr 5fr;gap:32px;margin-bottom:44px;}
    .hbmj-split>div:last-child, .hbmj-split>p{font-family:"Cormorant Garamond",Georgia,serif;font-size:18px;color:var(--muted);}
    .hbmj-mandate,.hbmj-narrative{display:grid;grid-template-columns:4fr 8fr;gap:32px;}
    .hbmj-diagram{margin-top:36px;}
    .hbmj-diagram .gslot{width:100%;height:230px;}
    .hbmj-rows{border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
    .hbmj-row{display:grid;grid-template-columns:36px 72px 1fr 32px;gap:14px;align-items:center;
      padding:22px 4px;border-top:1px solid var(--line);text-decoration:none;transition:padding .2s;}
    .hbmj-row:first-child{border-top:none;}
    .hbmj-row:hover{padding-left:12px;}
    .hbmj-num{font-size:12px;color:var(--gold);font-weight:600;}
    .hbmj-ic .gslot{width:56px;height:56px;padding:4px;}
    .hbmj-row-title{font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;color:var(--ink);display:block;}
    .hbmj-row-sub{display:block;font-size:13.5px;color:var(--muted);margin-top:4px;}
    .hbmj-arrow{font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;color:var(--gold);text-align:right;}
    .hbmj-cases{border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
    .hbmj-case{display:grid;grid-template-columns:1fr 90px;gap:16px;padding:15px 0;border-top:1px solid var(--line);}
    .hbmj-case:first-child{border-top:none;}
    .hbmj-case h4{font-size:19px;margin-bottom:4px;}
    .hbmj-case p{font-size:13.5px;color:var(--muted);}
    .hbmj-case strong{color:var(--ink);}
    .hbmj-year{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right;padding-top:6px;}
    .hbmj-phase,.hbmj-chapter{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:22px 0;border-top:1px solid var(--line);}
    .hbmj-phase:first-child,.hbmj-chapter:first-child{border-top:none;}
    .hbmj-phase p,.hbmj-chapter p{font-size:13.5px;color:var(--muted);max-width:720px;margin-top:6px;}
    .hbmj-phase h3,.hbmj-chapter h3{font-size:25px;}
    .hbmj-body{font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:1.7;}
    .hbmj-body p{margin-bottom:20px;}
    .hbmj-body a{color:var(--gold);}
    .hbmj-portrait{margin-top:28px;}
    .hbmj-portrait .gslot{width:100%;max-width:280px;height:340px;}
    .hbmj-essay{display:grid;grid-template-columns:36px 1fr 96px;gap:14px;padding:26px 0;border-top:1px solid var(--line);}
    .hbmj-essay:first-child{border-top:none;}
    .hbmj-essay h3{font-size:25px;}
    .hbmj-essay h3 a{text-decoration:none;}
    .hbmj-essay h3 a:hover{color:var(--gold);}
    .hbmj-essay p{font-family:"Cormorant Garamond",Georgia,serif;font-size:16px;color:var(--muted);margin-top:8px;}
    .hbmj-date{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right;padding-top:8px;}
    .hbmj-essaymarks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px;}
    .hbmj-essaymarks .gslot{height:150px;}
    .hbmj-links{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:center;margin-top:40px;
      font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;}
    .hbmj-links a{text-decoration:none;}
    .hbmj-links a:hover{color:var(--gold);}
    .hbmj-cta{text-align:center;padding:64px 32px;}
    .hbmj-btn{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:12px 28px;
      font-size:14px;font-weight:600;text-decoration:none;transition:.2s;margin-top:26px;}
    .hbmj-btn:hover{border-color:var(--gold);color:var(--gold);}
    .hbmj-note{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:22px;}
    .hbmj-geo{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:26px;}
    .hbmj-footer-line{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:22px 32px;
      font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
    @media(max-width:800px){
      .hbmj-split,.hbmj-mandate,.hbmj-narrative{grid-template-columns:1fr;gap:18px;}
      .hbmj-row{grid-template-columns:28px 52px 1fr;}
      .hbmj-arrow{display:none;}
      .hbmj-ic .gslot{width:44px;height:44px;}
      .hbmj-hero,.hbmj-section,.hbmj-cta{padding-left:20px;padding-right:20px;}
      .hbmj-essay{grid-template-columns:28px 1fr;}
      .hbmj-date{grid-column:2;text-align:left;padding-top:0;}
      .hbmj-essaymarks{grid-template-columns:1fr;}
    }
  
    .home .hbmj-hero{position:relative;isolation:isolate;}
    .home .hbmj-hero::before{content:"";position:absolute;inset:0;background:url("assets/hero-motif.svg") center/cover no-repeat;opacity:.12;z-index:-1;pointer-events:none;}
    .hbmj-page img{max-width:100%;}
    .hbmj-page img.hbmj-fig{display:block;margin:0 auto;max-width:100%;height:auto;}
    .hbmj-page img.hbmj-fig-standard{max-width:380px;}
    .hbmj-page img.hbmj-fig-phases{max-width:660px;margin-bottom:12px;}
    .hbmj-page img.hbmj-fig-arc{max-width:820px;margin-bottom:12px;}
    .hbmj-page img.hbmj-mark{display:block;margin:0 auto;width:100%;max-width:116px;height:auto;}
    .hbmj-page img.hbmj-portrait-img{display:block;width:100%;max-width:150px;height:auto;border-radius:4px;}
    .hbmj-phase{grid-template-columns:36px 72px 1fr;align-items:center;}
    .hbmj-essay{grid-template-columns:36px 72px 1fr 96px;}
    @media(max-width:800px){
      .hbmj-phase{grid-template-columns:28px 52px 1fr;}
      .hbmj-essay{grid-template-columns:28px 52px 1fr;}
      .hbmj-essay .hbmj-date{grid-column:3;text-align:left;padding-top:2px;}
      .hbmj-page img.hbmj-fig-standard{max-width:300px;}
      .hbmj-page img.hbmj-mark{max-width:104px;}
    }

    .hbmj-row-title,.hbmj-arrow,.hbmj-icon,.hbmj-btn{transition:color .2s ease, transform .2s ease, border-color .2s ease;}
    .hbmj-row:hover .hbmj-row-title{color:var(--gold);}
    @media (prefers-reduced-motion: no-preference){
      .hbmj-row:hover .hbmj-arrow{transform:translateX(5px);}
      .hbmj-row:hover .hbmj-icon{transform:scale(1.06);}
      .hbmj-btn:hover{transform:translateY(-1px);}
      .hbmj-page > *{animation:hbmjRise .55s ease-out both;}
      .hbmj-page > *:nth-child(2){animation-delay:.06s;}
      .hbmj-page > *:nth-child(3){animation-delay:.12s;}
      .hbmj-page > *:nth-child(4){animation-delay:.18s;}
      .hbmj-page > *:nth-child(n+5){animation-delay:.24s;}
    }
    @keyframes hbmjRise{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
