:root{
  --mae-midnight:#101A23;
  --mae-header:#0F1820;
  --mae-ivory:#F5F1E8;
  --mae-parchment:#EBE4D7;
  --mae-review:#E5DCCD;
  --mae-brass:#C19A5B;
  --mae-bronze:#7A5520;
  --mae-blue:#315F7A;
  --mae-charcoal:#242424;
  --mae-muted:#57544F;
  --mae-line:rgba(16,26,35,.14);
  --mae-max:1180px;
  --mae-reading:760px;
}

body{
  background:var(--mae-ivory);
  color:var(--mae-charcoal);
  font-family:"Trebuchet MS",Arial,sans-serif;
  font-size:18px;
  line-height:1.62;
}

h1,h2,h3,h4,h5,h6,
.entry-content h1,.entry-content h2,.entry-content h3{
  font-family:Baskerville,Georgia,serif;
  letter-spacing:-.02em;
  color:var(--mae-charcoal);
}

h1,.entry-content h1{font-size:52px;line-height:1.05}
h2,.entry-content h2{font-size:40px;line-height:1.12}
h3,.entry-content h3{font-size:27px;line-height:1.18}

.page .entry-header{display:none}
.home .entry-header{display:none}
.page .ast-single-post-featured-section,
.page .post-thumb,
.single-post .ast-single-post-featured-section,
.single-post .post-thumb{display:none}

.ast-primary-header-bar{
  background:var(--mae-header)!important;
  border-bottom-color:rgba(255,255,255,.12)!important;
}
.site-title a,
.ast-site-title-wrap .site-title,
.main-header-menu > .menu-item > .menu-link,
.ast-header-break-point .main-header-menu .menu-link{
  color:#F7F2E9!important;
}
.site-branding{
  min-width:390px;
  flex:0 0 390px;
}
.ast-site-title-wrap{max-width:390px}
.site-title{display:block;max-width:390px}
.site-title a{
  display:block;
  width:100%;
  max-width:390px;
  white-space:normal;
  text-wrap:balance;
  padding:14px 16px;
  border:2px solid rgba(193,154,91,.72);
  border-radius:4px;
  background:rgba(193,154,91,.08);
  font-family:Baskerville,Georgia,serif!important;
  font-size:0!important;
  line-height:1.04!important;
  letter-spacing:-.03em;
  color:#FFF9EF!important;
  text-decoration:none!important;
  box-shadow:0 6px 16px rgba(0,0,0,.14);
}
.site-title a::before{
  content:"Andrew and the Marvellous\A Analytical Engine";
  display:block;
  white-space:pre-line;
  font-family:Baskerville,Georgia,serif;
  font-size:32px;
  line-height:1.04;
  letter-spacing:-.03em;
  color:#FFF9EF;
}
.site-title a:hover,
.site-title a:focus{
  background:rgba(193,154,91,.10);
  border-color:rgba(193,154,91,.75);
  color:#FFFFFF!important;
}
.site-title a:hover::before,
.site-title a:focus::before{color:#FFFFFF}
.site-description{display:none!important}
.main-header-menu{gap:8px}
.main-header-menu > .menu-item > .menu-link{
  min-height:42px;
  height:auto!important;
  line-height:1.1!important;
  padding:12px 15px!important;
  border:1px solid rgba(248,244,234,.23);
  border-radius:3px;
  font-size:14px;
  font-weight:700;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.main-header-menu > .menu-item > .menu-link:hover,
.main-header-menu > .current-menu-item > .menu-link{
  color:#FFFFFF!important;
  background:rgba(255,255,255,.07);
  border-color:rgba(248,244,234,.45);
}

.mae-menu-buy > a{
  background:var(--mae-brass)!important;
  color:var(--mae-header)!important;
  border-color:var(--mae-brass)!important;
  border-radius:3px;
  padding:12px 19px!important;
  min-height:42px!important;
  height:auto!important;
  line-height:1.1!important;
  margin-top:0!important;
}

.site-footer,
.site-below-footer-wrap{
  background:var(--mae-header)!important;
  color:#D9D5CD!important;
}
.site-footer a,.site-below-footer-wrap a{color:#F3EEE5!important}
.site-below-footer-wrap{display:none!important}
.mae-custom-footer{background:var(--mae-header);color:#D9D5CD;padding:34px 24px}
.mae-custom-footer-inner{width:min(100%,var(--mae-max));margin:0 auto}
.mae-footer-menu{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:20px}
.mae-footer-menu a{color:#F3EEE5;text-decoration:none;font-size:14px}
.mae-footer-menu a:hover,.mae-footer-menu a:focus{text-decoration:underline}
.mae-footer-copy{margin:0;font-size:12px;color:#AAA69D}

.entry-content > .wp-block-group.mae-hero,
.entry-content > .wp-block-group.mae-page-hero,
.entry-content > .wp-block-group.mae-section,
.entry-content > .wp-block-group.mae-reviews,
.entry-content > .wp-block-group.mae-purchase,
.entry-content > .wp-block-group.mae-articles-list{
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  max-width:none!important;
  width:100vw!important;
}

.mae-hero,
.mae-page-hero{
  background:var(--mae-midnight);
  color:#F8F4EA;
  padding:64px max(24px,calc((100vw - var(--mae-max))/2));
}
.mae-hero h1,.mae-page-hero h1,
.mae-dark h2{color:#F8F4EA}
.mae-hero p,.mae-page-hero p,.mae-dark p{color:#E2DDD3}
.mae-hero .mae-subtitle,.mae-page-hero .mae-subtitle{
  font-family:Baskerville,Georgia,serif;
  font-size:27px;
  color:#D7D0C4;
}
.mae-kicker{
  color:var(--mae-bronze)!important;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:13px;
  font-weight:800;
  margin-bottom:14px;
}
.mae-hero .mae-kicker,
.mae-page-hero .mae-kicker,
.mae-dark .mae-kicker{color:var(--mae-brass)!important}
.mae-cover img,
figure.mae-cover img{
  box-shadow:0 18px 45px rgba(0,0,0,.24);
  width:100%;
  height:auto;
}
.mae-section,
.mae-reviews,
.mae-purchase,
.mae-articles-list{
  padding:72px max(24px,calc((100vw - var(--mae-max))/2));
}
.mae-alt{background:var(--mae-parchment)}
.mae-dark{background:var(--mae-midnight);color:#F8F4EA}
.mae-reviews{background:var(--mae-review)}
.mae-purchase{background:var(--mae-parchment);border-top:1px solid var(--mae-line)}
.mae-small{font-size:13px;color:var(--mae-muted)}
.mae-reading > .wp-block-group__inner-container,
.mae-reading{max-width:var(--mae-reading);margin-left:auto!important;margin-right:auto!important}
.mae-format{
  background:#FBF8F1;
  border:1px solid var(--mae-line);
  padding:25px;
}
.mae-format a,
.mae-article-book a,
.entry-content p a:not(.wp-block-button__link){
  color:var(--mae-blue)!important;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.wp-block-button.mae-primary .wp-block-button__link,
.mae-primary .wp-block-button__link{
  background:var(--mae-brass);
  color:var(--mae-header)!important;
  border-radius:2px;
  font-weight:800;
}
.wp-block-button.is-style-outline .wp-block-button__link{
  border-color:rgba(248,244,234,.55);
  color:#F8F4EA;
  background:transparent;
  border-radius:2px;
}
.mae-section .wp-block-image img,
.mae-article-image img{
  display:block;
  width:100%;
  height:auto;
}
.mae-section-image{
  max-width:520px;
  margin-top:24px!important;
  margin-bottom:24px!important;
}
.mae-float-art{
  float:right;
  width:min(38%,440px);
  margin:0 0 30px 46px!important;
}
.mae-section:after{
  content:"";
  display:block;
  clear:both;
}
.mae-portrait img{border-radius:2px}
.mae-articles-list{
  max-width:none;
}
.mae-articles-list h2{
  font-size:31px;
  margin-top:28px;
}
.mae-articles-list h2 a{
  color:var(--mae-charcoal);
  text-decoration:none;
}
.mae-articles-list h2 a:hover{text-decoration:underline}
.mae-articles-list .wp-block-separator{
  border:0;
  border-top:1px solid var(--mae-line);
  margin:30px 0;
}
.single-post .site-content{
  background:var(--mae-ivory);
}
.single-post .entry-content{
  max-width:var(--mae-reading);
  margin-left:auto;
  margin-right:auto;
  font-size:19px;
  line-height:1.68;
}
.single-post .entry-title{
  font-family:Baskerville,Georgia,serif;
  font-size:48px;
  line-height:1.08;
}
.mae-article-image{
  max-width:520px;
  margin:38px auto!important;
}
.mae-article-book{
  margin-top:48px;
  padding:30px;
  background:var(--mae-parchment);
  border-left:4px solid var(--mae-brass);
}
.mae-article-book h2{font-size:28px}

.wp-block-quote{
  border-left:0;
  margin:0;
  padding:0;
  font-family:Baskerville,Georgia,serif;
  font-size:22px;
  line-height:1.4;
}
.wp-block-quote cite{
  display:block;
  margin-top:12px;
  color:var(--mae-muted);
  font-family:"Trebuchet MS",Arial,sans-serif;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container textarea{
  border:1px solid rgba(16,26,35,.28)!important;
  border-radius:2px!important;
  background:#fff!important;
  color:var(--mae-charcoal)!important;
}
.wpforms-container .wpforms-submit{
  background:var(--mae-brass)!important;
  color:var(--mae-header)!important;
  border:0!important;
  border-radius:2px!important;
  font-weight:800!important;
  padding:12px 22px!important;
}
.wpforms-container .wpforms-submit:hover,
.wpforms-container .wpforms-submit:focus{background:#D0AA6A!important}

@media (max-width:921px){
  body{font-size:17px}
  h1,.entry-content h1,.single-post .entry-title{font-size:40px}
  h2,.entry-content h2{font-size:34px}
  .mae-hero,.mae-page-hero,.mae-section,.mae-reviews,.mae-purchase,.mae-articles-list{
    padding-left:20px;
    padding-right:20px;
  }
  .mae-hero,.mae-page-hero{padding-top:44px;padding-bottom:48px}
  .mae-section,.mae-reviews,.mae-purchase,.mae-articles-list{padding-top:54px;padding-bottom:58px}
  .mae-hero .mae-subtitle,.mae-page-hero .mae-subtitle{font-size:23px}
  .mae-menu-buy > a{margin:8px 16px!important;text-align:center}
  .site-branding{min-width:0}
  .ast-site-title-wrap,.site-title,.site-title a{max-width:255px}
  .site-title a{padding:8px 10px}
  .site-title a::before{font-size:22px}
  .mae-float-art{
    float:none;
    width:100%;
    max-width:430px;
    margin:26px auto 30px!important;
  }
  .mae-hero h1{font-size:42px}
}



/* October 2026 visual refinement: stronger publishing hierarchy and button treatment */
.ast-primary-header-bar{
  box-shadow:0 8px 24px rgba(6,12,18,.18);
}
.site-primary-header-wrap{
  min-height:88px!important;
}
.mae-hero{
  background:
    radial-gradient(circle at 20% 15%,rgba(49,95,122,.22),transparent 32%),
    linear-gradient(135deg,#0F1820 0%,#142431 55%,#101A23 100%);
  padding-top:82px;
  padding-bottom:82px;
  border-bottom:1px solid rgba(193,154,91,.32);
}
.mae-hero .wp-block-columns{
  gap:72px;
}
.mae-hero h1{
  font-size:60px;
  line-height:1.01;
  max-width:760px;
  text-wrap:balance;
}
.mae-hero p:not(.mae-kicker):not(.mae-subtitle){
  max-width:700px;
}
.mae-cover img,
figure.mae-cover img{
  border:1px solid rgba(255,255,255,.18);
  border-radius:2px;
}
.mae-reviews .wp-block-column{
  background:rgba(255,255,255,.46);
  border:1px solid rgba(16,26,35,.10);
  border-radius:4px;
  padding:28px 30px;
  box-shadow:0 10px 26px rgba(16,26,35,.06);
}
.mae-section{
  border-top:1px solid rgba(16,26,35,.05);
}
.mae-section h2{
  max-width:900px;
  text-wrap:balance;
}
.mae-section p{
  max-width:880px;
}
.mae-dark{
  background:linear-gradient(135deg,#101A23 0%,#172A37 100%);
  border-top:1px solid rgba(193,154,91,.28);
  border-bottom:1px solid rgba(193,154,91,.28);
}
.mae-format{
  border-radius:4px;
  box-shadow:0 9px 24px rgba(16,26,35,.06);
  transition:transform .16s ease,box-shadow .16s ease;
}
.mae-format:hover{
  transform:translateY(-2px);
  box-shadow:0 13px 30px rgba(16,26,35,.09);
}

/* All site links are presented as buttons, except the linked site title and linked images. */
.entry-content a:not(.wp-block-button__link),
.mae-custom-footer a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.3em;
  min-height:38px;
  padding:8px 13px;
  margin:3px 2px;
  border:1px solid var(--mae-blue);
  border-radius:3px;
  background:#FFFFFF;
  color:var(--mae-blue)!important;
  font-size:.92em;
  font-weight:700;
  line-height:1.15;
  text-decoration:none!important;
  box-shadow:0 3px 9px rgba(16,26,35,.05);
  transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.entry-content .wp-block-image a{
  display:block;
  padding:0;
  margin:0;
  border:0;
  min-height:0;
  background:transparent;
  box-shadow:none;
}
.entry-content a:not(.wp-block-button__link):not(.wp-block-image a):hover,
.entry-content a:not(.wp-block-button__link):not(.wp-block-image a):focus{
  background:var(--mae-blue);
  color:#FFFFFF!important;
  transform:translateY(-1px);
  box-shadow:0 6px 14px rgba(16,26,35,.10);
}
.mae-format a,
.mae-article-book a:not(.wp-block-button__link){
  background:var(--mae-header)!important;
  border-color:var(--mae-header)!important;
  color:#FFFFFF!important;
}
.mae-format a:hover,
.mae-article-book a:not(.wp-block-button__link):hover{
  background:var(--mae-blue)!important;
  border-color:var(--mae-blue)!important;
}
.mae-articles-list h2{
  margin-bottom:12px;
}
.mae-articles-list h2 a{
  display:inline-block!important;
  padding:12px 16px!important;
  margin:0!important;
  border:1px solid var(--mae-header)!important;
  border-radius:3px!important;
  background:var(--mae-header)!important;
  color:#FFFFFF!important;
  box-shadow:0 5px 14px rgba(16,26,35,.09);
  text-decoration:none!important;
}
.mae-articles-list h2 a:hover,
.mae-articles-list h2 a:focus{
  background:var(--mae-blue)!important;
  border-color:var(--mae-blue)!important;
  color:#FFFFFF!important;
  transform:translateY(-1px);
}
.mae-footer-menu{
  gap:10px;
}
.mae-footer-menu a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 12px;
  margin:0;
  border:1px solid rgba(243,238,229,.32);
  border-radius:3px;
  background:rgba(255,255,255,.04);
  color:#F3EEE5!important;
  text-decoration:none!important;
  box-shadow:none;
}
.mae-footer-menu a:hover,
.mae-footer-menu a:focus{
  background:rgba(255,255,255,.10);
  border-color:rgba(243,238,229,.55);
  color:#FFFFFF!important;
}
.wp-block-button__link{
  border-radius:3px!important;
  padding:12px 20px!important;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 5px 14px rgba(16,26,35,.08);
}
.wp-block-button__link:hover,
.wp-block-button__link:focus{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(16,26,35,.12);
}

@media (max-width:1180px) and (min-width:922px){
  .site-branding{
    min-width:330px;
    flex:0 0 330px;
  }
  .ast-site-title-wrap,.site-title,.site-title a{max-width:330px}
  .site-title a{
    padding:12px 14px;
  }
  .site-title a::before{font-size:27px}
  .main-header-menu > .menu-item > .menu-link{
    padding:10px 9px!important;
    font-size:12.5px;
  }
}

