/*
Theme Name: Remember Your Awakened Code V7
Theme URI: https://rememberyourawakenedcode.com
Author: Kirsten
Description: A custom cinematic WordPress theme for Remember Your Awakened Code.
Version: 7.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: remember-your-awakened-code
*/

:root{
  --midnight:#06131f;
  --deep:#0b2132;
  --deep-2:#102b40;
  --ivory:#f4eee3;
  --gold:#c89a4b;
  --soft-gold:#dfbd7a;
  --ink:#15212b;
  --paper:#f6f0e6;
  --muted:#b9c0c6;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--midnight);
  color:var(--ivory);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.6;
}
img{max-width:100%;height:auto}
a{color:inherit}
.screen-reader-text{
  position:absolute!important;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.site-shell{overflow:hidden}
.site-header{
  position:absolute;
  inset:0 0 auto;
  z-index:30;
  border-bottom:1px solid rgba(223,189,122,.22);
}
.header-inner{
  width:min(var(--max),calc(100% - 40px));
  margin:auto;
  min-height:88px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
  text-decoration:none;
}
.brand-mark{width:52px;height:52px;flex:0 0 auto}
.brand-copy strong{
  display:block;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:18px;
  letter-spacing:.08em;
  line-height:1;
  text-transform:uppercase;
}
.brand-copy span{
  display:block;
  margin-top:5px;
  color:var(--soft-gold);
  font-size:9px;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.primary-nav ul{
  display:flex;
  align-items:center;
  gap:24px;
  list-style:none;
  margin:0;
  padding:0;
}
.primary-nav a{
  text-decoration:none;
  font-size:11px;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.primary-nav a:hover{color:var(--soft-gold)}
.menu-toggle{
  display:none;
  border:1px solid rgba(223,189,122,.5);
  background:transparent;
  color:var(--ivory);
  width:42px;height:42px;
  border-radius:50%;
  font-size:20px;
}
.hero{
  position:relative;
  min-height:100vh;
  display:grid;
  align-items:center;
  background:
    radial-gradient(circle at 74% 68%,rgba(210,153,58,.32),transparent 18%),
    radial-gradient(circle at 70% 25%,rgba(58,111,157,.32),transparent 36%),
    linear-gradient(180deg,rgba(3,12,21,.1),rgba(3,12,21,.82)),
    linear-gradient(135deg,#0b2336 0%,#06131f 54%,#102a3f 100%);
}
.hero::before{
  content:"";
  position:absolute;inset:0;
  opacity:.48;
  background-image:
    radial-gradient(circle,rgba(255,255,255,.9) 1px,transparent 1.4px),
    radial-gradient(circle,rgba(255,255,255,.45) 1px,transparent 1.4px);
  background-size:96px 96px,151px 151px;
  background-position:14px 21px,57px 74px;
}
.hero::after{
  content:"";
  position:absolute;right:-8vw;bottom:-5vh;
  width:74vw;height:31vh;
  background:linear-gradient(145deg,#07131e,#0a1b29);
  clip-path:polygon(0 74%,12% 48%,24% 65%,38% 33%,51% 62%,65% 29%,78% 58%,89% 39%,100% 62%,100% 100%,0 100%);
  opacity:.9;
}
.hero-inner{
  position:relative;
  z-index:5;
  width:min(var(--max),calc(100% - 40px));
  margin:auto;
  padding:150px 0 90px;
  display:grid;
  grid-template-columns:minmax(0,620px) 1fr;
  gap:50px;
  align-items:center;
}
.eyebrow{
  margin-bottom:18px;
  color:var(--soft-gold);
  font-size:12px;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.hero h1,.section-title{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-weight:400;
}
.hero h1{
  max-width:700px;
  margin:0 0 22px;
  font-size:clamp(56px,7vw,104px);
  line-height:.92;
  letter-spacing:-.035em;
}
.hero-lede{
  max-width:560px;
  margin:0 0 26px;
  color:var(--soft-gold);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(22px,2vw,30px);
  line-height:1.25;
}
.hero-copy{
  max-width:570px;
  color:rgba(244,238,227,.9);
}
.hero-copy p{margin:0 0 12px}
.button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:18px;
  padding:14px 22px;
  border:1px solid var(--soft-gold);
  border-radius:3px;
  background:linear-gradient(135deg,#e2c384,#b78338);
  color:#071521;
  text-decoration:none;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 0 26px rgba(200,154,75,.18);
}
.button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.hero-art{
  position:relative;
  display:grid;
  place-items:center;
  min-height:560px;
}
.geometry{
  width:min(44vw,590px);
  opacity:.68;
  filter:drop-shadow(0 0 26px rgba(200,154,75,.2));
}
.glow{
  position:absolute;
  width:400px;height:400px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(225,189,122,.22),transparent 68%);
  filter:blur(6px);
}
.section{
  position:relative;
  padding:110px 0;
}
.section-inner{
  width:min(var(--max),calc(100% - 40px));
  margin:auto;
}
.section-light{
  background:var(--paper);
  color:var(--ink);
}
.section-dark{background:#071724}
.section-kicker{
  margin-bottom:14px;
  color:var(--gold);
  font-size:12px;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.section-title{
  max-width:760px;
  margin:0 0 24px;
  font-size:clamp(42px,5vw,72px);
  line-height:1;
  letter-spacing:-.02em;
}
.section-intro{
  max-width:720px;
  font-size:18px;
  color:inherit;
  opacity:.86;
}
.cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
  margin-top:55px;
}
.card{
  min-height:310px;
  padding:34px;
  border:1px solid rgba(200,154,75,.35);
  background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
}
.section-light .card{background:rgba(255,255,255,.52)}
.card-number{
  color:var(--gold);
  font-size:12px;
  letter-spacing:.18em;
}
.card h3{
  margin:54px 0 14px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:34px;
  font-weight:400;
}
.card p{margin:0;opacity:.78}
.practice-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
}
.practice-steps{
  display:grid;
  gap:14px;
}
.step{
  display:grid;
  grid-template-columns:52px 1fr;
  gap:18px;
  align-items:start;
  padding:22px 0;
  border-bottom:1px solid rgba(200,154,75,.25);
}
.step strong{
  color:var(--gold);
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:28px;
  font-weight:400;
}
.step h3{
  margin:0 0 5px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:28px;
  font-weight:400;
}
.step p{margin:0;opacity:.78}
.quote{
  padding:54px;
  border:1px solid rgba(200,154,75,.35);
  background:linear-gradient(145deg,rgba(255,255,255,.03),rgba(255,255,255,.01));
}
.quote p{
  margin:0;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(32px,4vw,54px);
  line-height:1.05;
}
.quote span{
  display:block;
  margin-top:26px;
  color:var(--soft-gold);
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.cta{
  text-align:center;
  background:
    radial-gradient(circle at 50% 10%,rgba(79,129,169,.24),transparent 35%),
    #081725;
}
.cta .section-title,.cta .section-intro{margin-left:auto;margin-right:auto}
.site-footer{
  padding:34px 0;
  border-top:1px solid rgba(223,189,122,.18);
  background:#04101a;
}
.footer-inner{
  width:min(var(--max),calc(100% - 40px));
  margin:auto;
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:center;
  font-size:13px;
  color:rgba(244,238,227,.62);
}
.footer-inner a{text-decoration:none}
.footer-inner a:hover{color:var(--soft-gold)}
.content-wrap{
  width:min(900px,calc(100% - 40px));
  margin:0 auto;
  padding:150px 0 90px;
}
.content-wrap h1{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(48px,7vw,84px);
  font-weight:400;
  line-height:1;
}

@media(max-width:960px){
  .primary-nav{
    position:absolute;
    top:88px;left:0;right:0;
    display:none;
    padding:24px;
    background:rgba(4,16,26,.98);
  }
  .primary-nav.is-open{display:block}
  .primary-nav ul{flex-direction:column;align-items:flex-start}
  .menu-toggle{display:block}
  .hero-inner{grid-template-columns:1fr}
  .hero-art{
    position:absolute;
    top:18%;
    right:-24%;
    min-height:0;
    opacity:.35;
  }
  .geometry{width:640px}
  .cards{grid-template-columns:1fr}
  .practice-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .header-inner,.hero-inner,.section-inner,.footer-inner,.content-wrap{
    width:min(100% - 28px,var(--max));
  }
  .brand-copy strong{font-size:14px}
  .brand-mark{width:46px;height:46px}
  .hero h1{font-size:56px}
  .hero-inner{padding-top:130px}
  .section{padding:80px 0}
  .card{min-height:auto}
  .quote{padding:34px}
  .footer-inner{flex-direction:column;align-items:flex-start}
}


/* V2 layout */
.hero-image{
  background-image:url('assets/images/hero-background.jpg');
  background-size:cover;
  background-position:center center;
}
.hero-image::before,
.hero-image::after{display:none}
.hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(3,12,21,.88) 0%,rgba(3,12,21,.72) 38%,rgba(3,12,21,.18) 70%,rgba(3,12,21,.1) 100%),
    linear-gradient(180deg,rgba(3,12,21,.16),rgba(3,12,21,.58));
}
.hero-copy-wrap{max-width:650px}
.hero-image .hero-inner{
  grid-template-columns:1fr;
  min-height:100vh;
  padding-top:145px;
}
.hero-image h1{
  font-size:clamp(58px,6vw,94px);
  max-width:650px;
}
.cards-dark{
  margin-top:0;
}
.cards-dark .card{
  text-align:center;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012));
  border-color:rgba(223,189,122,.28);
  border-radius:12px;
}
.icon-card{
  padding-top:30px;
}
.icon-card h3{margin-top:18px}
.line-icon{
  width:82px;
  height:82px;
  margin:0 auto 18px;
  border:1px solid var(--gold);
  border-radius:50%;
  position:relative;
}
.line-icon::before,
.line-icon::after{
  content:"";
  position:absolute;
  inset:18px;
  border:1px solid var(--gold);
  border-radius:50%;
}
.line-icon::after{
  inset:31px;
  background:var(--gold);
}
.mirror{border-radius:50% 50% 45% 45%}
.choice::before{
  border-radius:0;
  transform:rotate(45deg);
}
.practice-section{
  border-top:1px solid rgba(223,189,122,.14);
}
.practice-heading{
  max-width:450px;
}
.practice-row{
  margin-top:42px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:0;
  border-top:1px solid rgba(223,189,122,.16);
  border-bottom:1px solid rgba(223,189,122,.16);
}
.practice-item{
  padding:34px 28px;
  text-align:center;
  border-right:1px solid rgba(223,189,122,.16);
}
.practice-item:last-child{border-right:none}
.practice-icon{
  width:54px;
  height:54px;
  margin:0 auto 12px;
  border:1px solid var(--gold);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--soft-gold);
  font-size:26px;
}
.practice-item span{color:var(--gold);font-size:12px;letter-spacing:.15em}
.practice-item h3{
  margin:7px 0 10px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:29px;
  font-weight:400;
}
.practice-item p{margin:0;color:rgba(244,238,227,.74)}
.twin-panels{padding-top:30px}
.panel-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.image-panel{
  position:relative;
  min-height:500px;
  border:1px solid rgba(223,189,122,.28);
  border-radius:10px;
  overflow:hidden;
  background-size:cover;
  background-position:center;
}
.work-panel{
  background-image:url('assets/images/hero-background.jpg');
  background-position:70% center;
}
.about-panel{
  background:
    linear-gradient(rgba(3,12,21,.4),rgba(3,12,21,.55)),
    url('assets/images/hero-background.jpg');
  background-size:cover;
  background-position:95% center;
}
.panel-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(3,12,21,.92),rgba(3,12,21,.35));
}
.panel-content{
  position:relative;
  z-index:2;
  max-width:520px;
  padding:52px;
}
.panel-content h2{
  margin:0 0 22px;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(38px,4vw,58px);
  line-height:1.03;
  font-weight:400;
}
.panel-content p{color:rgba(244,238,227,.84)}
@media(max-width:960px){
  .practice-row{grid-template-columns:1fr 1fr}
  .practice-item:nth-child(2){border-right:none}
  .panel-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .hero-image{background-position:62% center}
  .hero-overlay{
    background:linear-gradient(180deg,rgba(3,12,21,.45),rgba(3,12,21,.9));
  }
  .practice-row{grid-template-columns:1fr}
  .practice-item{border-right:none;border-bottom:1px solid rgba(223,189,122,.16)}
  .practice-item:last-child{border-bottom:none}
  .panel-content{padding:34px 26px}
}

.custom-section-icon{
  width:82px;
  height:82px;
  object-fit:contain;
  margin:0 auto 18px;
  display:block;
}
.custom-step-icon{
  width:54px;
  height:54px;
  object-fit:contain;
  margin:0 auto 12px;
  display:block;
}

.card-number,
.practice-item > span {
  display: none !important;
}
