/**
Theme Name: Mackenzie
Author: Jeremiah Castillo
Author URI: https://www.kre8ivdesigns.com
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mackenzie
Template: astra
*/

:root{
  --cream:        #F6EFDD;   /* page base            */
  --cream-light:  #FCF8EE;   /* lighter section band */
  --sand:         #EDE3CC;   /* deeper section band  */
  --green:        #3A5747;   /* forest green         */
  --green-dark:   #2C4233;   /* button hover         */
  --green-ink:    #28342B;   /* headings             */
  --rose:         #7B4B5A;   /* mauve accent         */
  --rose-dark:    #693E4C;   /* rose button hover    */
  --rose-line:    #B98A97;   /* eyebrow rule         */
  --rose-soft:    #C9A9B2;   /* underlines           */
  --text:         #5E5648;   /* body copy            */
  --text-warm:    #544D40;   /* body on sand         */
  --rule:         #C7B996;   /* dividers             */
  --footer:       #28342B;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'Mulish', system-ui, sans-serif;
  --script:'Pinyon Script', cursive;
  --wrap: 1140px;
  --pad-y: 118px;
  --pad-x: 7vw;
}

/* ---------- base ---------- */
.mb-home{
  background-color:var(--cream);
  background-image:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.55) 0%, transparent 42%),
    radial-gradient(circle at 88% 85%, rgba(201,188,158,.20) 0%, transparent 52%);
  color:#2B2823;
  font-family:var(--sans);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.mb-home a{text-decoration:none;color:inherit;}
.mb-home *{box-sizing:border-box;}
.mb-section{padding:var(--pad-y) var(--pad-x);position:relative;overflow:hidden;}
.mb-inner{max-width:var(--wrap);margin:0 auto;position:relative;}
.mb-band-light{background:var(--cream-light);}
.mb-band-sand {background:var(--sand);}
.mb-band-green{background:var(--green);color:#F3EAD4;}

/* ---------- shared type ---------- */
.mb-eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.mb-eyebrow::before{content:"";width:34px;height:1px;background:var(--rose-line);}
.mb-eyebrow span{font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:var(--rose);}
.mb-eyebrow--center{justify-content:center;}
.mb-eyebrow--center::after{content:"";width:34px;height:1px;background:var(--rose-line);}

.mb-numeral{font-family:var(--serif);font-size:16px;letter-spacing:.28em;color:#C3A6AE;margin-bottom:12px;}
.mb-h1{font-family:var(--serif);font-weight:500;font-size:72px;line-height:1.03;letter-spacing:.005em;color:var(--green-ink);margin:0 0 24px;}
.mb-h1 em{font-style:italic;color:var(--green);}
.mb-h2{font-family:var(--serif);font-weight:500;font-size:50px;line-height:1.08;color:var(--green-ink);margin:0 0 24px;}
.mb-h2--italic{font-style:italic;}
.mb-lead{font-size:18px;line-height:1.7;color:var(--text);}
.mb-body{font-size:17px;line-height:1.8;color:var(--text);max-width:480px;}
.mb-script{font-family:var(--script);color:var(--green);line-height:1;}
.mb-signature{font-family:var(--script);font-size:38px;line-height:1;color:var(--green);margin:0 0 30px;}

/* decorative faint watermark behind a section */
.mb-watermark{
  position:absolute;line-height:.8;pointer-events:none;user-select:none;
  font-family:var(--serif);font-style:italic;color:rgba(58,87,71,.045);
}
.mb-watermark--script{font-family:var(--script);color:rgba(123,75,90,.045);}

/* diamond divider: <div class="mb-divider"></div> */
.mb-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 auto 24px;}
.mb-divider::before,.mb-divider::after{content:"";width:44px;height:1px;background:var(--rule);}
.mb-divider span{color:var(--rose-line);font-size:13px;}

/* ---------- buttons & links ---------- */
.mb-btn{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;padding:17px 40px;border-radius:2px;transition:background .2s;}
.mb-btn--rose {background:var(--rose);color:#FBF6EE;}
.mb-btn--rose:hover {background:var(--rose-dark);}
.mb-btn--green{background:var(--green);color:#FBF6EE;}
.mb-btn--green:hover{background:var(--green-dark);}
.mb-btn--outline{border:1.5px solid var(--green);color:var(--green);}
.mb-btn--outline:hover{background:var(--green);color:#FBF6EE;}
.mb-link{font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  color:var(--rose);padding-bottom:5px;border-bottom:1.5px solid var(--rose-soft);transition:border-color .2s;}
.mb-link:hover{border-bottom-color:var(--rose);}

/* ---------- header ---------- */
.mb-header{position:sticky;top:0;z-index:50;
  background:linear-gradient(180deg,rgba(255,255,255,.95) 0%,rgba(252,247,236,.85) 55%,rgba(246,239,221,.78) 100%);
  backdrop-filter:blur(8px);border-bottom:1px solid rgba(230,219,194,.7);
  box-shadow:0 1px 0 rgba(255,255,255,.6) inset,0 8px 20px -16px rgba(43,40,35,.3);}
.mb-header__bar{max-width:1240px;margin:0 auto;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.mb-nav{display:flex;align-items:center;gap:34px;}
.mb-nav a{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#5A5345;transition:color .2s;}
.mb-nav a:hover{color:var(--rose);}
.mb-nav a.is-active{color:var(--green);font-weight:700;padding-bottom:3px;border-bottom:1.5px solid var(--rose);}

/* announcement bar */
.mb-announce{background:var(--green);color:#F3EAD4;text-align:center;padding:11px 20px;
  font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;}
.mb-announce em{font-family:var(--serif);font-style:italic;text-transform:none;letter-spacing:.02em;font-size:15px;font-weight:500;}

/* ---------- hero ---------- */
.mb-hero{display:flex;flex-wrap:wrap;align-items:stretch;min-height:660px;}
.mb-hero__copy{flex:1 1 460px;display:flex;flex-direction:column;justify-content:center;padding:92px 6vw 92px 7vw;max-width:760px;}
.mb-hero__actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;}
.mb-hero__media{flex:1 1 440px;min-height:560px;position:relative;background-size:cover;background-position:20% 34%;}
.mb-hero__ghost{border-bottom:1.5px solid #C9BC9E;color:var(--green)!important;}
/* floating "new release" card */
.mb-badge{position:absolute;left:32px;bottom:36px;display:flex;align-items:center;gap:15px;
  background:rgba(252,248,238,.96);backdrop-filter:blur(3px);padding:15px 20px 15px 15px;
  border-radius:3px;box-shadow:0 18px 40px -20px rgba(43,40,35,.55);max-width:290px;}
.mb-badge img{width:52px;height:auto;border-radius:2px;box-shadow:0 6px 16px -8px rgba(43,40,35,.6);}
.mb-badge__kicker{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--rose);margin-bottom:3px;}
.mb-badge__title{font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.15;color:var(--green-ink);}

/* ---------- two-column feature (book / meet) ---------- */
.mb-split{display:flex;flex-wrap:wrap;gap:56px;align-items:center;}
.mb-split__media{flex:1 1 340px;position:relative;}
.mb-split__media img{position:relative;width:100%;display:block;border-radius:3px;box-shadow:0 24px 60px -28px rgba(43,40,35,.45);}
.mb-split__media--sm{flex:0 1 280px;min-width:240px;}
.mb-split__copy{flex:1 1 400px;}
/* offset frame behind an image: place as first child of .mb-split__media */
.mb-frame{position:absolute;inset:18px -18px -18px 18px;border:1px solid #D9CDAF;border-radius:3px;}
.mb-frame--tl{inset:-16px -16px 16px 16px;border-color:var(--rule);}
.mb-actions{display:flex;flex-wrap:wrap;gap:26px;align-items:center;}

/* ---------- centered text block (blog) ---------- */
.mb-center{text-align:center;}
.mb-center .mb-inner{max-width:680px;}
.mb-kicker{font-size:12px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;color:var(--rose);margin-bottom:14px;}

/* ---------- pull quote ---------- */
.mb-quote{text-align:center;padding:100px var(--pad-x);}
.mb-quote .mb-inner{max-width:860px;}
.mb-quote__mark{font-family:var(--serif);font-size:120px;line-height:.5;color:#D8AEB8;height:60px;}
.mb-quote__text{font-family:var(--serif);font-style:italic;font-weight:500;
  font-size:clamp(30px,4vw,46px);line-height:1.28;color:var(--green-ink);margin:0 0 26px;text-wrap:pretty;}
.mb-quote__by{display:flex;align-items:center;justify-content:center;gap:12px;
  font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--rose);}
.mb-quote__by::before,.mb-quote__by::after{content:"";width:34px;height:1px;background:var(--rose-line);}

/* ---------- explore cards ---------- */
.mb-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.mb-card{position:relative;display:block;height:400px;border-radius:4px;overflow:hidden;
  box-shadow:0 22px 50px -30px rgba(43,40,35,.5);transition:box-shadow .3s;background-size:cover;}
.mb-card:hover{box-shadow:0 30px 60px -28px rgba(43,40,35,.6);}
.mb-card::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(40,52,43,.05) 30%,rgba(28,36,30,.86) 100%);}
.mb-card__keyline{position:absolute;inset:18px;border:1px solid rgba(246,239,221,.35);border-radius:2px;pointer-events:none;}
.mb-card__body{position:absolute;left:36px;bottom:34px;right:36px;color:var(--cream);}
.mb-card__kicker{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#E7C6CF;margin-bottom:10px;}
.mb-card__title{font-family:var(--serif);font-weight:500;font-size:36px;margin:0 0 8px;}
.mb-card__meta{font-size:13px;letter-spacing:.04em;opacity:.92;margin:0;}

/* ---------- newsletter ---------- */
.mb-news{text-align:center;}
.mb-news .mb-inner{max-width:560px;}
.mb-news__title{font-family:var(--script);font-size:58px;line-height:1;margin:0 0 16px;color:#F3EAD4;}
.mb-news p{font-size:17px;line-height:1.7;color:#D5CFBE;margin:0 0 36px;}
.mb-form{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:480px;margin:0 auto;}
.mb-form input{flex:1 1 240px;background:var(--cream);border:none;border-radius:2px;padding:16px 18px;font-family:var(--sans);font-size:15px;color:#2B2823;}
.mb-form button{background:var(--rose);color:#FBF6EE;border:none;font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:16px 34px;border-radius:2px;cursor:pointer;transition:background .2s;}
.mb-form button:hover{background:var(--rose-dark);}
.mb-fineprint{font-size:12px;letter-spacing:.04em;color:#A9B3A0;margin:18px 0 0;}

/* ---------- follow along ---------- */
.mb-follow{text-align:center;padding:90px var(--pad-x) 70px;}
.mb-follow__title{font-family:var(--script);font-size:46px;line-height:1;margin:0 0 12px;color:var(--green);}
.mb-follow__handle{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--green-ink);}
.mb-follow__handle:hover{color:var(--rose);}

/* ---------- footer ---------- */
.mb-footer{background:var(--footer);color:#C9C3B3;padding:46px var(--pad-x);}
.mb-footer__bar{max-width:var(--wrap);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;}
.mb-footer__brand{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--sand);}
.mb-footer__nav{display:flex;flex-wrap:wrap;gap:26px;}
.mb-footer__nav a{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#AFB6A6;transition:color .2s;}
.mb-footer__nav a:hover{color:var(--cream);}
.mb-credit{max-width:var(--wrap);margin:28px auto 0;padding-top:22px;border-top:1px solid #3C4A3F;
  text-align:center;font-size:11.5px;letter-spacing:.08em;color:#7E8678;}

/* ---------- responsive ---------- */
@media (max-width:900px){
  :root{--pad-y:80px;}
  .mb-h1{font-size:54px;}
  .mb-h2{font-size:40px;}
  .mb-header__bar{padding:16px 24px;}
  .mb-nav{display:none;} /* swap in your mobile menu */
  .mb-cards{grid-template-columns:1fr;}
}
