/* =========================================================
   MORVA RESOURCES
   Extends the existing Morva design without changing shared
   Home / Tuition / App / About / Contact / Booking styles.
   ========================================================= */

.resources-page{
  --rs-navy:#0f294d;
  --rs-blue:#123b74;
  --rs-teal:#0a8d8f;
  --rs-teal-soft:#dff3ef;
  --rs-cream:#fffaf2;
  --rs-paper:#fffdf9;
  --rs-orange:#ff6b36;
  --rs-stone:#5b6d79;
  --rs-line:rgba(15,41,77,.12);
  --rs-shadow:0 14px 34px rgba(15,41,77,.08);
}

.resources-page .resources-shell{
  overflow:hidden;
  border-radius:34px;
  background:
    radial-gradient(circle at 88% 8%,rgba(255,107,54,.07),transparent 22%),
    radial-gradient(circle at 12% 14%,rgba(77,194,190,.14),transparent 27%),
    linear-gradient(135deg,#fffaf2 0%,#fbf7ef 65%,#f2f8f6 100%);
  box-shadow:0 3px 18px rgba(15,34,68,.11);
}

.resources-page .home-nav{margin:0;}
.resources-page main{padding:24px 54px 64px;}

.resource-kicker{
  display:block;
  margin-bottom:15px;
  font-family:'Nunito',sans-serif;
  font-size:13px;
  line-height:1;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--rs-teal);
}

.resource-hero{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);
  gap:64px;
  align-items:center;
  min-height:520px;
  padding:36px 24px 70px;
}

.resource-hero-copy{max-width:820px;padding-left:18px;}

.resource-hero h1,
.resource-section-heading h2,
.resource-feature h2,
.resource-course-map h2,
.resource-free h2,
.resource-product-panel h2,
.resource-subject-hero h1,
.resource-bundle-note h2{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--rs-navy);
  font-weight:500;
  letter-spacing:-.035em;
}

.resource-hero h1,
.resource-subject-hero h1{
  font-size:clamp(50px,4.5vw,76px);
  line-height:.99;
}

.resource-hero h1 span,
.resource-subject-hero h1 span{display:block;color:var(--rs-teal);}

.resource-lead{
  max-width:730px;
  margin:25px 0 0;
  color:#40566b;
  font-size:19px;
  line-height:1.65;
}

.resource-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:13px;
  margin-top:29px;
}

.resource-button,
.resource-button-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:52px;
  padding:0 24px;
  border-radius:10px;
  font-family:'Nunito',sans-serif;
  font-size:16px;
  font-weight:700;
  text-decoration:none;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}

.resource-button{
  color:#fff;
  background:var(--rs-teal);
  box-shadow:0 8px 18px rgba(10,141,143,.16);
}

.resource-button:hover{background:#08777a;color:#fff;transform:translateY(-1px);}

.resource-button-secondary{
  color:var(--rs-navy);
  background:rgba(255,255,255,.7);
  border:1px solid rgba(15,41,77,.16);
}

.resource-button-secondary:hover{color:var(--rs-teal);border-color:rgba(10,141,143,.4);}

.resource-button-disabled{
  opacity:.58;
  cursor:not-allowed;
  box-shadow:none;
}

.resource-price{
  color:var(--rs-stone);
  font-size:14px;
  font-weight:600;
}

.resource-product-panel{
  padding:32px;
  border:1px solid rgba(15,41,77,.12);
  border-radius:25px;
  background:rgba(255,255,255,.72);
  box-shadow:var(--rs-shadow);
}

.resource-product-panel .resource-kicker{margin-bottom:10px;}

.resource-product-panel h2{
  font-size:34px;
  line-height:1.06;
}

.resource-product-panel p{
  color:var(--rs-stone);
  font-size:15px;
  line-height:1.58;
}

.resource-product-facts{
  display:grid;
  gap:0;
  margin:24px 0 0;
  border-top:1px solid var(--rs-line);
}

.resource-product-facts div{
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:14px 0;
  border-bottom:1px solid var(--rs-line);
  color:var(--rs-stone);
  font-size:14px;
}

.resource-product-facts strong{color:var(--rs-navy);font-weight:700;text-align:right;}

.resource-section{
  margin:0 24px;
  padding:76px 0;
  border-top:1px solid var(--rs-line);
}

.resource-section-heading{
  max-width:790px;
  margin-bottom:36px;
}

.resource-section-heading h2,
.resource-feature h2,
.resource-course-map h2,
.resource-free h2,
.resource-bundle-note h2{
  font-size:clamp(36px,3vw,54px);
  line-height:1.04;
}

.resource-section-heading p,
.resource-feature p,
.resource-course-map p,
.resource-free p,
.resource-bundle-note p{
  margin:16px 0 0;
  color:#536779;
  font-size:17px;
  line-height:1.65;
}

.resource-featured-course{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:34px;
  align-items:stretch;
}

.resource-featured-copy,
.resource-featured-summary{
  padding:38px;
  border:1px solid rgba(15,41,77,.11);
  border-radius:26px;
  background:rgba(255,255,255,.7);
  box-shadow:0 10px 26px rgba(15,41,77,.05);
}

.resource-featured-copy{
  background:
    radial-gradient(circle at 96% 8%,rgba(255,107,54,.06),transparent 28%),
    rgba(255,255,255,.72);
}

.resource-featured-copy h3{
  max-width:790px;
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(34px,3vw,50px);
  line-height:1.04;
  font-weight:500;
  color:var(--rs-navy);
}

.resource-featured-copy p{
  max-width:780px;
  color:#536779;
  font-size:16px;
  line-height:1.65;
}

.resource-featured-summary{
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(135deg,rgba(223,244,240,.86),rgba(255,250,244,.72));
}

.resource-total{
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:50px;
  line-height:1;
}

.resource-total span{
  display:block;
  margin-top:8px;
  color:var(--rs-stone);
  font-family:'Nunito',sans-serif;
  font-size:15px;
  line-height:1.45;
}

.resource-subject-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}

.resource-subject-card{
  display:flex;
  flex-direction:column;
  min-height:310px;
  padding:30px;
  border:1px solid rgba(15,41,77,.11);
  border-radius:23px;
  background:rgba(255,255,255,.66);
  box-shadow:0 10px 24px rgba(15,41,77,.05);
}

.resource-subject-card:nth-child(2){background:linear-gradient(135deg,rgba(240,250,247,.86),rgba(255,253,249,.75));}
.resource-subject-card:nth-child(3){background:linear-gradient(135deg,rgba(255,249,241,.88),rgba(247,251,250,.76));}

.resource-subject-icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin-bottom:28px;
  border-radius:14px;
  background:var(--rs-teal-soft);
  color:var(--rs-teal);
  font-size:25px;
}

.resource-subject-card h3{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  color:var(--rs-navy);
  font-size:30px;
  font-weight:500;
}

.resource-subject-card .resource-lesson-count{
  margin-top:6px;
  color:var(--rs-teal);
  font-weight:700;
}

.resource-subject-card p{
  color:#5b6d79;
  font-size:14px;
  line-height:1.55;
}

.resource-subject-card a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:auto;
  color:var(--rs-teal);
  font-weight:700;
  text-decoration:none;
}


/* =========================================================
   RESOURCES SHOP LANDING
   Keeps all paid options visible without forcing visitors
   through the Complete Course page first.
   ========================================================= */

.resource-products-section{
  padding-top:62px;
}

.resource-products-heading{
  margin-bottom:28px;
}

.resource-shop-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}

.resource-shop-card{
  display:flex;
  flex-direction:column;
  min-height:360px;
  padding:27px;
  border:1px solid rgba(15,41,77,.11);
  border-radius:23px;
  background:rgba(255,255,255,.70);
  box-shadow:0 10px 24px rgba(15,41,77,.05);
}

.resource-shop-card-featured{
  background:
    radial-gradient(circle at 92% 8%,rgba(255,107,54,.08),transparent 27%),
    linear-gradient(135deg,rgba(223,244,240,.88),rgba(255,253,249,.82));
  border-color:rgba(10,141,143,.22);
}

.resource-shop-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:22px;
}

.resource-shop-label{
  color:var(--rs-teal);
  font-family:'Nunito',sans-serif;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
}

.resource-shop-price{
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  line-height:1;
}

.resource-shop-card .resource-subject-icon{
  margin-bottom:20px;
}

.resource-shop-card h3{
  margin:0;
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:29px;
  line-height:1.08;
  font-weight:500;
}

.resource-shop-card .resource-lesson-count{
  margin-top:8px;
  color:var(--rs-teal);
  font-size:14px;
  font-weight:700;
}

.resource-shop-card p{
  margin:15px 0 24px;
  color:#5b6d79;
  font-size:14px;
  line-height:1.55;
}

.resource-card-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:auto;
}

.resource-card-actions .resource-button,
.resource-card-actions .resource-button-secondary{
  min-height:46px;
  padding:0 14px;
  font-size:14px;
}

.resource-panel-actions{
  margin-top:22px;
}

.resource-panel-actions .resource-button,
.resource-panel-actions .resource-button-secondary{
  min-height:46px;
  padding:0 18px;
  font-size:14px;
}

.resource-free{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:36px;
  align-items:center;
  padding:44px 48px;
  border-radius:27px;
  border:1px solid rgba(15,41,77,.10);
  background:linear-gradient(135deg,rgba(223,244,240,.82),rgba(255,249,241,.78));
}

.resource-future-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}

.resource-future-grid div{
  min-height:115px;
  padding:22px;
  border:1px solid rgba(15,41,77,.09);
  border-radius:18px;
  background:rgba(255,255,255,.54);
  color:#5a6c79;
  font-size:14px;
}

.resource-future-grid strong{
  display:block;
  margin-bottom:6px;
  color:var(--rs-navy);
  font-size:15px;
}

.resource-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:20px 24px 0;
  color:#72818d;
  font-size:13px;
}

.resource-breadcrumbs a{color:var(--rs-teal);text-decoration:none;}
.resource-breadcrumbs span[aria-current="page"]{color:#657683;}

.resource-course-hero{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.65fr);
  gap:58px;
  align-items:center;
  padding:44px 24px 72px;
}

.resource-course-hero .resource-hero-copy{padding-left:18px;}

.resource-metric-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin:0 24px 74px;
}

.resource-metric{
  padding:24px;
  border:1px solid rgba(15,41,77,.09);
  border-radius:18px;
  background:rgba(255,255,255,.6);
}

.resource-metric strong{
  display:block;
  margin-bottom:5px;
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:28px;
  font-weight:500;
}

.resource-metric span{color:#61727f;font-size:13px;line-height:1.45;}

.resource-feature{
  display:grid;
  grid-template-columns:minmax(320px,.7fr) minmax(0,1.3fr);
  gap:58px;
  align-items:start;
}

.resource-feature-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}

.resource-feature-list div{
  display:flex;
  gap:12px;
  align-items:flex-start;
  min-height:72px;
  padding:16px;
  border:1px solid rgba(15,41,77,.09);
  border-radius:15px;
  background:rgba(255,255,255,.56);
  color:#536779;
  font-size:14px;
  line-height:1.45;
}

.resource-feature-list i{
  flex:0 0 auto;
  color:var(--rs-teal);
  font-size:20px;
}

.resource-subject-breakdown{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.resource-subject-breakdown article{
  padding:30px;
  border-radius:22px;
  border:1px solid rgba(15,41,77,.10);
  background:rgba(255,255,255,.66);
}

.resource-subject-breakdown h3{
  margin:0;
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:30px;
  font-weight:500;
}

.resource-subject-breakdown strong{
  display:block;
  margin-top:9px;
  color:var(--rs-teal);
  font-size:19px;
}

.resource-subject-breakdown p{
  color:#5b6d79;
  font-size:14px;
  line-height:1.55;
}

.resource-course-map{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:48px;
  align-items:center;
  padding:46px;
  border:1px solid rgba(15,41,77,.10);
  border-radius:27px;
  background:linear-gradient(135deg,rgba(223,244,240,.78),rgba(255,249,241,.74));
}

.resource-roadmap-card{
  padding:26px;
  border-radius:20px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(15,41,77,.09);
}

.resource-roadmap-card strong{
  display:block;
  color:var(--rs-navy);
  font-size:18px;
}

.resource-roadmap-card span{
  display:block;
  margin-top:7px;
  color:#60717f;
  font-size:14px;
  line-height:1.5;
}

.resource-sample-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
}

.resource-sample-slot{
  aspect-ratio:4/5;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:18px;
  border:1px solid rgba(15,41,77,.12);
  border-radius:18px;
  background:
    linear-gradient(rgba(255,255,255,.48),rgba(255,255,255,.78)),
    repeating-linear-gradient(0deg,rgba(15,41,77,.035) 0 1px,transparent 1px 26px);
  color:#647582;
}

.resource-sample-slot strong{
  color:var(--rs-navy);
  font-size:14px;
}

.resource-sample-slot span{
  margin-top:4px;
  font-size:12px;
  line-height:1.4;
}

.resource-audience{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}

.resource-audience div{
  padding:25px;
  border:1px solid rgba(15,41,77,.09);
  border-radius:18px;
  background:rgba(255,255,255,.56);
}

.resource-audience i{
  display:block;
  margin-bottom:14px;
  color:var(--rs-teal);
  font-size:24px;
}

.resource-audience strong{display:block;color:var(--rs-navy);font-size:15px;}
.resource-audience span{display:block;margin-top:5px;color:#61727f;font-size:13px;line-height:1.45;}

.resource-disclaimer{
  padding:24px 28px;
  border-left:4px solid var(--rs-teal);
  background:rgba(255,255,255,.6);
  color:#566a79;
  font-size:14px;
  line-height:1.6;
}

.resource-subject-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.62fr);
  gap:54px;
  align-items:center;
  padding:40px 24px 68px;
}

.resource-subject-summary{
  padding:30px;
  border-radius:23px;
  border:1px solid rgba(15,41,77,.11);
  background:rgba(255,255,255,.7);
  box-shadow:var(--rs-shadow);
}

.resource-subject-summary strong{
  display:block;
  color:var(--rs-navy);
  font-family:Georgia,"Times New Roman",serif;
  font-size:44px;
  font-weight:500;
}

.resource-subject-summary span{display:block;margin-top:7px;color:#5d6f7c;font-size:14px;}

.resource-bundle-note{
  display:grid;
  grid-template-columns:1fr auto;
  gap:32px;
  align-items:center;
  padding:40px 44px;
  border-radius:25px;
  border:1px solid rgba(15,41,77,.10);
  background:linear-gradient(135deg,rgba(223,244,240,.82),rgba(255,249,241,.76));
}

.resource-modal[hidden]{display:none;}
.resource-modal{
  position:fixed;
  z-index:9999;
  inset:0;
  display:grid;
  place-items:center;
  padding:30px;
  background:rgba(9,28,52,.78);
}
.resource-modal-inner{
  position:relative;
  max-width:min(1100px,92vw);
  max-height:90vh;
}
.resource-modal img{
  display:block;
  max-width:100%;
  max-height:86vh;
  border-radius:14px;
  background:#fff;
}
.resource-modal-close{
  position:absolute;
  right:-12px;
  top:-12px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:var(--rs-navy);
  font-size:22px;
  cursor:pointer;
}
.resource-modal-open{overflow:hidden;}

.resources-page .home-footer{margin-top:18px;}

@media(max-width:1100px){
  .resources-page main{padding-left:34px;padding-right:34px;}
  .resource-hero,
  .resource-course-hero,
  .resource-subject-hero{grid-template-columns:1fr;gap:34px;min-height:0;}
  .resource-featured-course,
  .resource-feature,
  .resource-course-map{grid-template-columns:1fr;}
  .resource-metric-strip{grid-template-columns:repeat(2,1fr);}
  .resource-subject-grid{grid-template-columns:1fr;}
  .resource-subject-card{min-height:0;}
  .resource-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .resource-sample-grid{grid-template-columns:repeat(3,1fr);}
  .resource-audience{grid-template-columns:repeat(2,1fr);}
  .resource-future-grid{grid-template-columns:repeat(2,1fr);}
}

@media(max-width:760px){
  .resources-page .resources-shell{border-radius:24px;}
  .resources-page main{padding:12px 20px 42px;}
  .resource-hero,
  .resource-course-hero,
  .resource-subject-hero{padding:28px 8px 48px;}
  .resource-hero-copy,
  .resource-course-hero .resource-hero-copy{padding-left:0;}
  .resource-hero h1,
  .resource-subject-hero h1{font-size:44px;}
  .resource-lead{font-size:17px;}
  .resource-section,
  .resource-metric-strip{margin-left:8px;margin-right:8px;}
  .resource-section{padding:54px 0;}
  .resource-metric-strip{grid-template-columns:1fr 1fr;margin-bottom:52px;}
  .resource-feature-list{grid-template-columns:1fr;}
  .resource-subject-breakdown{grid-template-columns:1fr;}
  .resource-free,
  .resource-bundle-note{grid-template-columns:1fr;padding:34px 28px;}
  .resource-shop-grid{grid-template-columns:1fr;}
  .resource-shop-card{min-height:0;}
  .resource-future-grid,
  .resource-audience{grid-template-columns:1fr;}
  .resource-sample-grid{grid-template-columns:1fr 1fr;}
  .resource-course-map{padding:32px 26px;}
}

@media(max-width:480px){
  .resource-metric-strip{grid-template-columns:1fr;}
  .resource-sample-grid{grid-template-columns:1fr;}
}
