:root{
    --navy:#0c2340;
    --navy-deep:#071628;
    --blue:#1e4a8a;
    --gold:#d8a534;
    --gold-light:#e9c15a;
    --copper:#d9772e;
    --white:#ffffff;
    --mist:#eef3f8;
    --ink:#1c2b3d;
    --serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;
    --sans:"Source Sans 3", "Segoe UI", Helvetica, Arial, sans-serif;
    --max:1400px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  body{font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.5;-webkit-font-smoothing:antialiased}
  a{color:inherit;text-decoration:none}
  a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(24px,5vw,96px)}

  /* ---------- Header ---------- */
  .site-header{position:absolute;top:0;left:0;right:0;z-index:10;color:var(--white)}
  .site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:18px;padding-bottom:18px}
  .wordmark{font-family:var(--serif);font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.15;font-size:clamp(15px,1.4vw,21px);text-align:center;padding-bottom:10px;border-bottom:2px solid var(--gold)}
  .nav{display:flex;align-items:center;gap:clamp(18px,2.4vw,34px);font-size:17px}
  .nav a{padding:6px 0;border-bottom:2px solid transparent}
  .nav a[aria-current]{border-bottom-color:var(--gold)}
  .lang{display:flex;align-items:center;gap:10px;font-size:16px;letter-spacing:.04em}
  .lang a[aria-current]{color:var(--gold-light)}
  .lang span{opacity:.6}
  .btn{display:inline-block;font-family:var(--sans);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:2px solid var(--gold);padding:13px 30px;background:transparent;cursor:pointer;transition:background .2s,color .2s}
  .btn:hover{background:var(--gold);color:var(--navy)}
  .btn-cta{font-size:15px;letter-spacing:.08em;padding:7px 18px;border-width:1.5px}
  .menu-toggle{display:none;background:none;border:0;color:var(--white);font-size:28px;line-height:1;cursor:pointer}

  /* ---------- Hero ---------- */
  .hero{position:relative;min-height:min(92vh,760px);display:flex;align-items:center;color:var(--white);overflow:hidden;
    background-image:url("img/hero-alcazar.jpg");background-size:cover;background-position:center 45%;background-color:#0d2444}
  .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,40,.62) 0%,rgba(7,22,40,.28) 45%,rgba(7,22,40,.05) 75%);pointer-events:none}
  .hero .wrap{position:relative;z-index:2;width:100%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:end;padding-top:110px}
  .hero-copy{padding-bottom:64px}
  .hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(52px,7.2vw,104px);line-height:.98;letter-spacing:-.01em}
  .hero h1 .accent{color:var(--gold)}
  .hero .rule{width:48px;height:3px;background:var(--gold);margin:22px 0 20px}
  .hero p{font-size:clamp(18px,1.5vw,22px);max-width:26em;line-height:1.35;margin-bottom:30px}
  .portrait{position:absolute;bottom:0;right:4%;height:78%;z-index:1;line-height:0;pointer-events:none}
  .portrait img{height:100%;width:auto;display:block}

  /* ---------- Roles ---------- */
  .roles{padding:60px 0 56px;background:var(--white)}
  .roles .grid{display:grid;grid-template-columns:repeat(4,1fr)}
  .role{text-align:center;padding:0 28px;border-left:1px solid #e3e8ee}
  .role:first-child{border-left:0}
  .icon{width:44px;height:44px;margin:0 auto 14px;color:var(--copper)}
  .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .role h2,.focus-item h3{font-family:var(--serif);font-weight:600;color:var(--navy);font-size:30px;line-height:1.1;margin-bottom:10px}
  .role p,.focus-item p{color:var(--blue);font-size:18px;line-height:1.3}

  /* ---------- Expertise ---------- */
  .focus{position:relative;padding:44px 0 46px;color:var(--navy);
    background-image:linear-gradient(180deg,rgba(244,248,252,.9) 0%,rgba(223,233,243,.86) 100%),
      url("https://commons.wikimedia.org/wiki/Special:FilePath/Santo_Domingo_-_Alcazar_de_Colon_01.JPG?width=2000");
    background-size:cover;background-position:center 60%;background-color:#e6eef6}
  .focus .wrap{display:grid;grid-template-columns:1.25fr repeat(4,1fr);align-items:center}
  .focus-intro{padding-right:34px;border-right:1px solid rgba(12,35,64,.18)}
  .focus-intro .kicker{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--copper);margin-bottom:6px}
  .focus-intro .kicker::before{content:"";width:34px;height:2px;background:var(--copper)}
  .focus-intro h2{font-family:var(--serif);font-weight:600;font-size:clamp(46px,4.6vw,66px);line-height:1;color:var(--navy);margin-bottom:12px}
  .focus-intro p{font-size:18px;line-height:1.3;max-width:24em;margin-bottom:16px}
  .focus-intro a{font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:10px}
  .focus-intro a svg{width:22px;height:12px;stroke:var(--gold);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .focus-item{text-align:center;padding:8px 20px;border-right:1px solid rgba(12,35,64,.18)}
  .focus-item:last-child{border-right:0}
  .focus-item .icon{width:40px;height:40px;margin-bottom:8px}
  .focus-item h3{font-size:26px}
  .focus-item p{font-size:17px}

  /* ---------- Section scaffolding ---------- */
  .band{padding:64px 0}
  .band .wrap{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,2.1fr);gap:clamp(28px,4vw,64px);align-items:start}
  .kicker{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--copper);margin-bottom:10px}
  .kicker::before{content:"";width:34px;height:2px;background:var(--copper)}
  .lead h2{font-family:var(--serif);font-weight:600;font-size:clamp(36px,3.4vw,50px);line-height:1.02;color:var(--navy);margin-bottom:14px}
  .lead p{font-size:17px;line-height:1.4;color:var(--blue);max-width:26em;margin-bottom:18px}
  .more{font-size:13px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:10px}
  .more svg{width:22px;height:12px;stroke:var(--gold);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .band-alt{background:linear-gradient(180deg,#f6f9fc 0%,#e9f0f7 100%)}

  /* ---------- About ---------- */
  .about .wrap{grid-template-columns:minmax(240px,.9fr) minmax(0,1.5fr) minmax(200px,.6fr)}
  .about .lead .sub{font-size:13px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--navy);margin-top:4px}
  .about-copy p{font-size:16px;line-height:1.55;color:var(--ink);margin-bottom:16px}
  .stats{border-left:1px solid rgba(12,35,64,.18);padding-left:32px}
  .stat{display:flex;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px solid rgba(12,35,64,.14)}
  .stat:last-child{border-bottom:0}
  .stat b{font-family:var(--serif);font-weight:600;font-size:34px;color:var(--gold);line-height:1}
  .stat span{font-size:14px;color:var(--blue);line-height:1.25}
  .stat.wide{display:block}
  .stat.wide b{font-size:28px;display:block;margin-bottom:2px}

  /* ---------- Cards ---------- */
  .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .card{background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);display:flex;gap:16px;padding:18px;align-items:center}
  .card .logo{flex:0 0 96px;width:96px;height:80px;display:flex;align-items:center;justify-content:center}
  .card .logo img{max-width:100%;max-height:100%;object-fit:contain}
  .card h3{font-family:var(--serif);font-weight:700;font-size:19px;color:var(--navy);line-height:1.1;margin-bottom:4px}
  .card p{font-size:14px;color:var(--blue);line-height:1.3;margin-bottom:8px}
  .card .more{font-size:12px;letter-spacing:.06em;text-transform:none;font-weight:700;color:var(--navy)}
  .card.tall{flex-direction:column;align-items:stretch;padding:0;overflow:hidden}
  .card.tall .photo{width:100%;aspect-ratio:16/8;object-fit:cover;object-position:center 22%;display:block}
  .card.tall .body{padding:18px}
  .card .eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:6px}
  .card.media{align-items:stretch}
  .card.media .cover{flex:0 0 96px;width:96px;object-fit:cover;display:block}

  /* ---------- CTA band ---------- */
  .cta{position:relative;color:var(--white);padding:56px 0 40px;
    background-image:linear-gradient(90deg,rgba(7,22,40,.92) 0%,rgba(12,35,64,.85) 55%,rgba(12,35,64,.55) 100%),url("img/footer-bg.jpg");
    background-size:cover;background-position:center;background-color:var(--navy)}
  .cta .wrap{display:grid;grid-template-columns:minmax(200px,.9fr) minmax(0,1.3fr) auto auto;gap:clamp(24px,4vw,56px);align-items:center}
  .cta h2{font-family:var(--serif);font-weight:600;font-size:clamp(32px,3vw,44px);line-height:1.05}
  .cta .sig{font-family:var(--serif);font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-top:12px;opacity:.9}
  .cta p{font-size:15px;line-height:1.45;max-width:30em}
  .cta .btn{background:var(--gold);color:var(--navy);border-color:var(--gold)}
  .cta .btn:hover{background:var(--gold-light)}
  .cta .lock{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.3}
  .cta .lock svg{width:22px;height:22px;fill:none;stroke:var(--white);stroke-width:1.6}

  @media (max-width:1100px){
    .band .wrap,.about .wrap{grid-template-columns:1fr}
    .stats{border-left:0;padding-left:0;border-top:1px solid rgba(12,35,64,.18);padding-top:16px}
    .cards{grid-template-columns:repeat(2,1fr)}
    .cta .wrap{grid-template-columns:1fr 1fr}
  }
  @media (max-width:700px){
    .cards{grid-template-columns:1fr}
    .cta .wrap{grid-template-columns:1fr}
  }


  /* ---------- Footer ---------- */
  .site-footer{background:var(--navy-deep);color:var(--white);padding:34px 0 26px;font-size:14px}
  .site-footer .top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;align-items:start;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.14)}
  .site-footer .wordmark{font-family:var(--serif);font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:15px;display:block;margin-bottom:12px;border:0;padding:0;text-align:left}
  .site-footer .tag{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.35;color:rgba(255,255,255,.85);max-width:24em}
  .site-footer h4{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
  .site-footer ul{list-style:none}
  .site-footer li{margin-bottom:8px}
  .site-footer li a:hover{color:var(--gold-light)}
  .site-footer .bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:18px;color:rgba(255,255,255,.7);font-size:13px}
  .social{display:flex;align-items:center;gap:16px}
  .social a{display:block;width:18px;height:18px;color:var(--white)}
  .social svg{width:100%;height:100%;fill:currentColor}
  .locale{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:12px;letter-spacing:.12em;text-transform:uppercase;line-height:1.3;color:var(--white)}
  .flag{width:30px;height:20px;display:grid;grid-template-columns:1fr 6px 1fr;grid-template-rows:1fr 6px 1fr;flex:none}
  .flag i{display:block}
  .flag .b{background:#002d62}.flag .r{background:#ce1126}.flag .w{background:#fff}
  @media (max-width:860px){.site-footer .top{grid-template-columns:1fr}}

  /* ---------- Subpages ---------- */
  .page-hero{position:relative;color:var(--white);padding:120px 0 44px;background:linear-gradient(135deg,#071628 0%,#0c2340 60%,#143a6b 100%)}
  .page-hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr);gap:40px;align-items:center}
  .page-hero .hero-art img{width:100%;max-height:230px;object-fit:contain;display:block;filter:drop-shadow(0 12px 28px rgba(0,0,0,.45))}
  .page-hero.contact-hero{background-size:cover;background-position:center 40%}
  .page-hero.contact-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,40,.85) 0%,rgba(7,22,40,.5) 60%,rgba(7,22,40,.3) 100%)}
  .page-hero.contact-hero .wrap{grid-template-columns:1fr}
  .page-hero .kicker{color:var(--gold)}
  .page-hero .kicker::before{background:var(--gold)}
  .page-hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(40px,5vw,66px);line-height:1;margin-bottom:16px}
  .page-hero p{font-size:19px;line-height:1.4;max-width:34em}
  .prose{max-width:46em;font-size:17px;line-height:1.6;color:var(--ink)}
  .prose p{margin-bottom:18px}
  .prose h2{font-family:var(--serif);font-weight:600;font-size:34px;color:var(--navy);line-height:1.1;margin:8px 0 14px}
  .quote{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2.2vw,30px);line-height:1.3;color:var(--navy);border-left:3px solid var(--gold);padding-left:24px;margin:10px 0 18px}
  .quote cite{display:block;font-style:normal;font-family:var(--sans);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);margin-top:12px}
  .partners{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
  .partners h3{font-family:var(--serif);font-weight:600;font-size:24px;color:var(--navy);margin-bottom:10px;padding-bottom:8px;border-bottom:2px solid var(--gold)}
  .partners ul{list-style:none;font-size:15px;line-height:1.5;color:var(--blue)}
  .partners li{padding:3px 0;border-bottom:1px solid #e6ecf3}
  .focus-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
  .focus-card{background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);padding:26px}
  .focus-card .num{font-size:12px;font-weight:600;letter-spacing:.24em;color:var(--copper);margin-bottom:8px}
  .focus-card h3{font-family:var(--serif);font-weight:600;font-size:26px;color:var(--navy);line-height:1.1;margin-bottom:10px}
  .focus-card p{font-size:15px;line-height:1.5;color:var(--ink);margin-bottom:12px}
  .stat-row{display:flex;gap:40px;flex-wrap:wrap;margin:22px 0 6px}
  .stat-row b{display:block;font-family:var(--serif);font-weight:600;font-size:40px;color:var(--gold);line-height:1}
  .stat-row span{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--white);opacity:.85}
  .subnav{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
  .subnav a{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border:1px solid rgba(255,255,255,.5);padding:8px 14px;color:var(--white)}
  .subnav a:hover,.subnav a[aria-current]{background:var(--gold);border-color:var(--gold);color:var(--navy)}
  @media (max-width:900px){.partners,.focus-cards{grid-template-columns:1fr}.page-hero{padding-top:120px}}

  /* ---------- Insights cards ---------- */
  .card.insight .photobox{width:100%;aspect-ratio:16/9;overflow:hidden}
  .card.insight .photobox img{width:100%;height:100%;object-fit:cover;display:block}
  .card.insight .bookbox{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,#0c2340,#1e4a8a);display:flex;align-items:center;justify-content:center;padding:14px}
  .card.insight .bookbox img{height:100%;width:auto;box-shadow:0 10px 24px rgba(0,0,0,.45)}
  .card.insight .body{padding:18px 18px 20px}
  .card.insight h3{font-size:21px}
  .card.insight p{font-size:15px;line-height:1.4}

  /* ---------- Contact ---------- */
  .offices{font-style:normal;display:grid;gap:18px;margin-top:6px}
  .offices div{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #e3e8ee}
  .offices b{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--navy)}
  .offices span{font-size:15px;line-height:1.5;color:var(--blue)}
  .contact-form{background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);padding:30px}
  .contact-form label{display:block;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy);margin-bottom:16px}
  .contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:6px;font:16px var(--sans);color:var(--ink);padding:11px 12px;border:1px solid #c9d4e0;background:#fbfcfe;border-radius:2px}
  .contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
  .contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .contact-form .row.end{align-items:center;justify-content:space-between;margin-top:6px}
  .contact-form .btn{justify-self:end;color:var(--navy);border-color:var(--navy)}
  .contact-form .btn:hover{background:var(--navy);color:var(--white)}
  .contact-form .lock{display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.3;color:var(--blue)}
  .contact-form .lock svg{width:22px;height:22px;fill:none;stroke:var(--navy);stroke-width:1.6}
  @media (max-width:700px){.contact-form .row{grid-template-columns:1fr}}

  /* ---------- Insights (v3) ---------- */
  .insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .featured-book{grid-column:1/-1;display:grid;grid-template-columns:200px 1fr;gap:26px;align-items:center;background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);padding:24px}
  .featured-book .cover{background:linear-gradient(135deg,#0c2340,#1e4a8a);padding:16px;display:flex;justify-content:center}
  .featured-book .cover img{width:100%;max-width:150px;display:block;box-shadow:0 10px 24px rgba(0,0,0,.45)}
  .featured-book h3,.insight-item h3{font-family:var(--serif);font-weight:700;color:var(--navy);line-height:1.1;margin-bottom:8px}
  .featured-book h3{font-size:28px}
  .featured-book p,.insight-item p{font-size:15px;line-height:1.5;color:var(--ink);margin-bottom:10px}
  .insight-item{background:var(--white);border:1px solid #e1e8f0;border-top:3px solid var(--gold);box-shadow:0 6px 22px rgba(12,35,64,.06);padding:22px}
  .insight-item h3{font-size:22px}
  .insight-grid .eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper);margin-bottom:6px}
  .insight-grid .more{font-size:12px;letter-spacing:.06em;text-transform:none;font-weight:700;color:var(--navy)}
  @media (max-width:800px){.insight-grid{grid-template-columns:1fr}.featured-book{grid-template-columns:1fr}.page-hero .wrap{grid-template-columns:1fr}.page-hero .hero-art{display:none}}

  /* ---------- Freemasonry ---------- */
  .tenets{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px}
  .tenets div{border-top:2px solid var(--gold);padding-top:10px}
  .tenets b{display:block;font-family:var(--serif);font-weight:600;font-size:22px;color:var(--navy);margin-bottom:4px}
  .tenets span{font-size:14px;line-height:1.45;color:var(--blue)}
  .offices a{color:var(--navy);font-weight:600}
  @media (max-width:700px){.tenets{grid-template-columns:1fr}}

  /* ---------- News ---------- */
  .news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .news-card{display:flex;flex-direction:column;background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);overflow:hidden}
  .news-card .photo{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 22%;display:block}
  .news-card .plate{background:linear-gradient(135deg,#0c2340,#1e4a8a);display:flex;align-items:center;justify-content:center;color:var(--gold);font-family:var(--serif);font-size:20px;text-align:center;letter-spacing:.06em}
  .news-card .body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
  .news-card .eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--copper)}
  .news-card h3{font-family:var(--serif);font-weight:700;font-size:21px;line-height:1.15;color:var(--navy)}
  .news-card p{font-size:14.5px;line-height:1.5;color:var(--ink)}
  .news-card blockquote{font-family:var(--serif);font-style:italic;font-size:16px;line-height:1.35;color:var(--navy);border-left:2px solid var(--gold);padding-left:12px;margin:2px 0}
  .news-card .more{margin-top:auto;font-size:12px;letter-spacing:.06em;text-transform:none;font-weight:700;color:var(--navy)}
  .band .news-wrap{grid-template-columns:1fr}
  .band .news-wrap .lead{max-width:60em;margin-bottom:8px}
  @media (max-width:1000px){.news-grid{grid-template-columns:1fr 1fr}}
  @media (max-width:640px){.news-grid{grid-template-columns:1fr}}

  /* ---------- Press ---------- */
  .press-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .press-feature{display:flex;flex-direction:column;background:var(--white);border:1px solid #e1e8f0;box-shadow:0 6px 22px rgba(12,35,64,.06);overflow:hidden}
  .press-feature .photo{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:center 18%;display:block}
  .press-feature .body{display:flex;flex-direction:column;gap:10px;padding:20px 20px 22px;flex:1;border-top:3px solid var(--gold)}
  .press-feature .eyebrow{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--copper)}
  .press-feature h3{font-family:var(--serif);font-weight:700;font-size:22px;line-height:1.15;color:var(--navy)}
  .press-feature .more{margin-top:auto;font-size:12px;letter-spacing:.06em;text-transform:none;font-weight:700;color:var(--navy)}
  .press-list{list-style:none;border-top:1px solid #dfe6ee}
  .press-list li{border-bottom:1px solid #dfe6ee}
  .press-list a{display:grid;grid-template-columns:72px 150px 1fr;gap:20px;align-items:center;padding:12px 4px}
  .press-list .thumb{width:72px;height:54px;object-fit:cover;background:var(--white);border:1px solid #e1e8f0}
  .press-list .thumb[src$=".png"],.press-list .thumb[src*="logo-"]{object-fit:contain;padding:4px}
  .press-list a:hover .title{color:var(--copper)}
  .press-list .date{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
  .press-list .title{font-family:var(--serif);font-weight:600;font-size:19px;color:var(--navy);line-height:1.2}
  @media (max-width:900px){.press-grid{grid-template-columns:1fr}.press-list a{grid-template-columns:72px 1fr;gap:6px 16px}.press-list .thumb{grid-row:span 2}}
  .insight-item{padding:0;overflow:hidden;display:flex;flex-direction:column}
  .insight-item .photo{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:center 30%;display:block;margin-bottom:16px}
  .insight-item .eyebrow,.insight-item h3,.insight-item p,.insight-item .more{margin-left:20px;margin-right:20px}
  .insight-item .more{margin-bottom:20px;margin-top:auto}

  /* ---------- Masonic creed & emblems ---------- */
  .creed{font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.35;color:var(--navy);border-left:3px solid var(--gold);padding-left:18px;margin:18px 0 20px}
  .creed cite{display:block;font-style:normal;font-family:var(--serif);font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:var(--copper);margin-top:10px}
  .emblems{display:flex;gap:20px;align-items:center;max-width:320px}
  .emblems img{width:54px;height:54px;object-fit:contain;display:block}
  .emblems figcaption{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);line-height:1.2}
  .footer-emblems{display:flex;gap:16px;align-items:center;margin-top:16px;opacity:.85}
  .footer-emblems img{height:34px;width:auto;display:block}
  .skip{position:absolute;left:-9999px;top:8px;background:var(--gold);color:var(--navy);padding:8px 14px;z-index:100;font-weight:600}
  .skip:focus{left:8px}
