/* JEE99plus — style.css
   Design system, typography, layout and responsive rules
*/
:root{
  --navy:#0B1F3A;
  --white:#FFFFFF;
  --gold:#C8A96B;
  --light-bg:#F7F8FA;
  --dark-text:#1A1A1A;
  --muted:#6B7280;
}
/* Fonts loaded in HTML */
*{box-sizing:border-box}
html,body{height:100%}
body{
  font-family:'Inter',system-ui,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--dark-text);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.65;
  padding-top:6.25rem;
}

/* Global vertical rhythm */
h1,h2,h3,h4{font-family:'Playfair Display',serif;color:var(--navy);margin-top:0;margin-bottom:1.25rem}
p{margin-top:0;margin-bottom:1.15rem;color:var(--muted)}

/* Section rhythm: provides consistent spacing between page blocks */
.section{padding-top:4.5rem;padding-bottom:4.5rem}
.section + .section{padding-top:3.5rem}
.container-large{max-width:1200px;margin:0 auto}
/* Navbar */
.navbar{
  transition:all .35s ease;
  margin:1rem auto 0;
  width:min(1200px, calc(100% - 2rem));
  border-radius:18px;
  padding:.9rem 1.15rem;
  backdrop-filter:saturate(180%) blur(12px);
}
.navbar.transparent{background:rgba(255,255,255,0.82);border:1px solid rgba(11,31,58,0.06)}
.navbar.solid{background:rgba(255,255,255,0.96);box-shadow:0 10px 30px rgba(11,31,58,0.08);border:1px solid rgba(11,31,58,0.05)}
.navbar .container{padding-left:.25rem;padding-right:.25rem}
.navbar .nav-link{color:var(--navy);margin-right:.5rem;padding:.4rem .65rem;border-radius:999px}
.navbar .nav-link:hover,.navbar .nav-link:focus{background:rgba(11,31,58,0.05)}
.navbar .btn-primary{
  background:var(--navy);border: none;padding:.55rem 1rem;border-radius:8px;color:var(--white);
}
.navbar .btn-cta{background:transparent;border:1px solid var(--gold);color:var(--navy);padding:.55rem 1rem;border-radius:999px}
/* Hero */
.hero{padding:5rem 1.25rem;background:linear-gradient(180deg,var(--white) 0%,#FBFBFD 100%)}
.hero-section{padding-top:6rem;padding-bottom:5rem}
.hero-content{max-width:700px;padding-top:.5rem;padding-right:1rem}
.hero-eyebrow{margin-bottom:1.1rem;letter-spacing:.02em;color:var(--muted)}
.hero-heading{line-height:1.08;margin-bottom:1.35rem}
.hero-sub{color:var(--muted);font-size:1.06rem;margin-bottom:1.6rem;max-width:64ch}
.hero .hero-illustration{background:linear-gradient(180deg, rgba(11,31,58,0.05), rgba(11,31,58,0.02));border-radius:12px;min-height:320px;display:flex;align-items:center;justify-content:center}
.hero-cta-group{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.15rem}
.btn-gold,.btn-outline-hero,.btn-primary-nav{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  min-height:48px;
  padding:.72rem 1.15rem;
  border-radius:999px;
  font-weight:600;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease;
}
.btn-gold{
  background:var(--gold);
  color:var(--navy);
  border:1px solid var(--gold);
  box-shadow:0 8px 20px rgba(200,169,107,0.18);
}
.btn-gold:hover,.btn-gold:focus{
  background:#b89250;
  border-color:#b89250;
  color:var(--navy);
  transform:translateY(-1px);
}
.btn-outline-hero{
  background:transparent;
  color:var(--navy);
  border:1px solid rgba(11,31,58,0.18);
  box-shadow:0 6px 16px rgba(11,31,58,0.04);
}
.btn-outline-hero:hover,.btn-outline-hero:focus{
  background:rgba(11,31,58,0.04);
  border-color:rgba(11,31,58,0.28);
  color:var(--navy);
  transform:translateY(-1px);
}
.btn-primary-nav{
  background:var(--navy);
  color:var(--white);
  border:1px solid var(--navy);
  box-shadow:0 8px 20px rgba(11,31,58,0.12);
}
.btn-primary-nav:hover,.btn-primary-nav:focus{
  background:#091a31;
  border-color:#091a31;
  color:var(--white);
  transform:translateY(-1px);
}
/* Trust badges */
.badges{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}
/* Sections */
.section{padding:3.5rem 1.25rem}
/* Test series */
.package-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}

/* Package card layout: make cards equal-height and align CTAs */
.package-card{background:var(--white);border:1px solid #ECEFF3;padding:1.35rem;border-radius:12px;display:flex;flex-direction:column;gap:1rem;height:100%}
.package-card .package-header{margin-bottom:.5rem}
.package-card .package-title{margin:0;font-size:1.15rem}
.package-card .package-desc{color:var(--muted);margin-bottom:.75rem}
.package-card .package-table-wrap{margin-top:0}
.package-card .total-row td{padding-top:.65rem;padding-bottom:.65rem}
.btn-package,.btn-package-featured{margin-top:auto;display:block;padding:.75rem 1rem;border-radius:12px;text-decoration:none;font-weight:700;text-align:center}
.btn-package{background:transparent;border:1px solid var(--navy);color:var(--navy);width:100% !important}
.btn-package-featured{background:var(--gold);border:1px solid var(--gold);color:var(--navy);box-shadow:0 8px 20px rgba(200,169,107,0.12);width:100% !important}
.btn-package:hover,.btn-package-featured:hover{transform:translateY(-2px)}

/* Ensures icons and list items in includes section are left-aligned when container is centered */
.includes-heading{font-family:'Playfair Display',serif;color:var(--navy);font-size:2rem;text-align:left;margin-top:0;margin-bottom:1.25rem}
.includes-item{color:var(--dark-text);text-align:left;margin-bottom:.9rem}
.package-note{color:var(--muted);text-align:left}

/* Founder page redesign: forced left anchoring + doc-inspired blue/gold tone */
#founder.founder-layout{padding-top:2.25rem;padding-bottom:3.75rem}
#founder.founder-layout .container{max-width:1200px;padding-left:1.5rem;padding-right:1.5rem}
#founder.founder-layout .section-header{max-width:980px;text-align:left;margin-bottom:2rem}
#founder.founder-layout .content-stack{max-width:980px;margin-left:0}
#founder.founder-layout .section-eyebrow{
  display:inline-block;
  color:#C98300;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  border-top:2px solid #1D4E89;
  padding-top:.55rem;
  margin-bottom:1rem;
}
#founder.founder-layout .section-heading{margin-bottom:.75rem}
#founder.founder-layout .section-sub{font-size:2rem;line-height:1.12;color:var(--navy);margin-bottom:1.2rem}

.featured-quote{
  background:linear-gradient(90deg, #f5efe4 0%, #f9f6ef 100%);
  border-left:6px solid #c79a43;
  padding:1.2rem 1.4rem;
  border-radius:10px;
  margin:0 0 1.35rem;
}
.featured-quote p{margin:0;color:#1f2837;font-size:1.05rem;line-height:1.7}

.principle-card{
  display:flex;
  gap:.9rem;
  align-items:flex-start;
  background:#edf3fb;
  border:1px solid #cad9ed;
  border-left:5px solid #1d4e89;
  padding:1rem;
  border-radius:10px;
}
.principle-card .principle-star{
  background:#102f59;
  color:#fff;
  width:52px;
  height:52px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.05rem;
  flex:0 0 52px;
}
.principle-card .principle-quote{margin:0;color:#15324f}
.principle-card .principle-quote p{margin:0;font-style:italic;line-height:1.55}

@media(max-width:576px){
  #founder.founder-layout .container{padding-left:1rem;padding-right:1rem}
  #founder.founder-layout .section-sub{font-size:1.75rem}
  .principle-card{flex-direction:column}
}

/* Force alignment overrides in case layout utilities center the columns */
.row.mt-5 .col-lg-9, .row.mt-4 .col-lg-9{margin-left:0 !important}
.package-card, .package-card *{box-sizing:border-box}
.compare-table{width:100%;border-collapse:collapse}
.compare-table th, .compare-table td{padding:.75rem;border:1px solid #EEF2F6;text-align:left}
.compare-mobile{display:none}
/* Why page: force left alignment and balanced spacing */
#why-jee99plus .why-container{max-width:1200px;padding-left:3rem;padding-right:1.5rem}
#why-jee99plus .section-header{text-align:left;max-width:980px;margin-bottom:2rem}
#why-jee99plus .section-eyebrow{text-align:left}
#why-jee99plus .section-heading{text-align:left}
#why-jee99plus .editorial-col{padding-left:0;padding-right:0}
#why-jee99plus .editorial-block{margin-bottom:2.35rem}
#why-jee99plus .editorial-subheading{font-family:'Playfair Display',serif;font-size:2rem;line-height:1.15;color:var(--navy);margin-bottom:1.1rem;text-align:left}
#why-jee99plus .editorial-body{color:var(--dark-text);font-size:1.03rem;line-height:1.85;margin-bottom:1.15rem;max-width:940px}
#why-jee99plus .principle-quote{background:linear-gradient(90deg, rgba(200,169,107,0.12), rgba(200,169,107,0.06));border-left:6px solid var(--gold);padding:1.15rem 1.35rem;border-radius:10px;max-width:940px}
#why-jee99plus .principle-quote p{margin:0;color:var(--dark-text);line-height:1.75;font-size:1.03rem}
#why-jee99plus .why-works-list{display:flex;flex-direction:column;gap:1rem;max-width:980px}
#why-jee99plus .why-works-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.05rem;border:1px solid rgba(11,31,58,0.08);border-radius:10px;background:rgba(255,255,255,0.7);text-align:left}
#why-jee99plus .why-works-icon{flex:0 0 44px;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(11,31,58,0.08);color:var(--navy);font-size:1rem}
#why-jee99plus .why-works-item strong{color:var(--navy)}
#why-jee99plus .section-divider{height:1px;background:linear-gradient(90deg, transparent, rgba(11,31,58,0.18), transparent);margin:2.25rem 0}
#why-jee99plus .test-type-card{height:100%;padding:1.15rem 1.2rem;border:1px solid rgba(11,31,58,0.08);border-radius:12px;background:var(--white);text-align:left;box-shadow:0 8px 20px rgba(11,31,58,0.04)}
#why-jee99plus .test-type-card--alt{background:#f8faff}
#why-jee99plus .test-type-tag{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#c98300;margin-bottom:.65rem}
#why-jee99plus .test-type-desc{margin:0;color:var(--dark-text);line-height:1.75}

@media(max-width:576px){
  #why-jee99plus .why-container{padding-left:1rem;padding-right:1rem}
  #why-jee99plus .editorial-subheading{font-size:1.55rem}
  #why-jee99plus .why-works-item{padding:.9rem}
}
/* Videos */
.video-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem}
.video-card{background:var(--white);border-radius:10px;padding:.9rem;border:1px solid #F0F2F5}
.thumb{background:#0B1F3A;border-radius:8px;height:140px;display:flex;align-items:center;justify-content:center;color:var(--white);margin-bottom:.65rem}
/* White papers */
.paper-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.paper-card{background:var(--white);border-radius:10px;border:1px solid #EEF2F6;padding:1.15rem}
/* Footer */
.site-footer{
  background:linear-gradient(180deg,#08192f 0%, #0B1F3A 100%);
  color:var(--white);
  padding:3.5rem 1.25rem 1.75rem;
  margin-top:3.5rem;
}
.site-footer .container{max-width:1200px}
.site-footer .row{row-gap:1.75rem;align-items:flex-start}
.site-footer h5,.site-footer h6{color:var(--white);margin-bottom:1rem}
.site-footer p,.site-footer li,.site-footer a{font-size:.95rem;line-height:1.7}
.site-footer a{color:var(--white);opacity:.9;text-decoration:none}
.site-footer a:hover,.site-footer a:focus{opacity:1;text-decoration:underline}
.footer-brand-name{font-family:'Playfair Display',serif;font-size:1.95rem;letter-spacing:.02em}
.footer-about{max-width:36rem;color:rgba(255,255,255,.8)}
.footer-links,.footer-contact{padding-left:0;margin-bottom:0;list-style:none}
.footer-links li,.footer-contact li{margin-bottom:.55rem;color:rgba(255,255,255,.82)}
.footer-contact i{color:var(--gold);margin-right:.4rem}
.footer-quote{font-family:'Playfair Display',serif;color:#F2EDE2;margin:0;padding:.25rem 0 0;border-left:3px solid rgba(200,169,107,.35);padding-left:1rem}
.footer-star{color:var(--gold);margin-right:.35rem}
.footer-bottom{margin-top:2.25rem;padding-top:1.15rem;border-top:1px solid rgba(255,255,255,.14);text-align:center}
.footer-copy{margin:0;color:rgba(255,255,255,.72);font-size:.95rem}
/* Accessibility focus */
a:focus,button:focus{outline:3px solid rgba(200,169,107,0.25);outline-offset:2px}
/* Responsive */
@media(max-width:992px){
  .package-cards{grid-template-columns:repeat(1,1fr)}
  .video-grid{grid-template-columns:repeat(2,1fr)}
  .video-card .thumb{height:100px}
  .paper-grid{grid-template-columns:repeat(1,1fr)}
}
@media(max-width:576px){
  body{padding-top:5.25rem}
  .navbar{width:calc(100% - 1rem);margin-top:.5rem;border-radius:14px;padding:.75rem .85rem}
  .hero{padding:3.25rem 1rem}
  .hero-section{padding-top:5.25rem;padding-bottom:3.75rem}
  .hero h1{font-size:1.6rem}
  .hero-heading{line-height:1.12;margin-bottom:1rem}
  .hero-sub{margin-bottom:1.35rem}
  .hero-cta-group{gap:.75rem}
  .hero-cta-group .btn-gold,.hero-cta-group .btn-outline-hero{width:100%}
  .video-grid{grid-template-columns:repeat(1,1fr)}
  .badges{gap:.5rem}
  .compare-table{display:none}
  .compare-mobile{display:block;background:var(--white);border-radius:8px;padding:1rem;border:1px solid #EEF2F6}
  .site-footer{padding:2.5rem 1rem 1.5rem}
}
/* Subtle fade-in */
.fade-in{opacity:0;transform:translateY(10px);transition:opacity .6s ease, transform .6s ease}
.fade-in.visible{opacity:1;transform:none}
