.elementor-12739 .elementor-element.elementor-element-af91bf6{--display:flex;}body.elementor-page-12739:not(.elementor-motion-effects-element-type-background), body.elementor-page-12739 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://pdotuitionservices.com/wp-content/uploads/2025/08/ChatGPT-Image-Aug-14-2025-11_00_39-AM-1.png");}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-23f63f2 *//* ==========================================================================
   ONTARIO SCIENCE ONLINE TUITION — PREMIUM STYLESHEET
   Concept: "The Observation Log" — a graph-paper lab notebook rendered in
   deep indigo ink with a highlighter-amber accent. This is the umbrella
   Science page (Biology, Chemistry, Physics, Earth Science all live under
   it), so the identity is deliberately general-purpose and technical —
   atoms, orbits, graphs, constellations — rather than any one discipline's
   own visual language. Kept fully distinct from the Biology page (organic
   herbarium paper, green + rust) and the Chemistry page (teal lab bench,
   hex lattice): this one reads as graph paper, indigo ink and orbit rings.

   SCOPING NOTE
   Every rule is anchored to this page's own markup via
   [class*="ontario-science-"] (section wrappers) or the shared component
   suffixes already in the HTML — [class$="-grid"], [class$="-card"],
   .section-note, .eyebrow, .btn — plus the few one-off classes that don't
   follow the suffix pattern (.science-process, .science-process-step,
   .step-number, .faq-item). The native <details>/<summary> FAQ markup is
   scoped under .ontario-science-faq. Alternating section backgrounds are
   assigned by explicit class name, never by :nth-of-type. No HTML changes
   required.

   FAQ NOTE
   The FAQ on the sibling pages sat in a single narrow centered column,
   which read cramped on a wide screen. Here it's rebuilt as a two-column
   grid of bordered, generously padded cards that use the full container
   width, with more breathing room per question.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=IBM+Plex+Sans:wght@400;500;600&family=Space+Mono:wght@400;700&display=swap');

/* ---------- Tokens ---------- */
:root{
  --sci-bg:         #EEF2F5;
  --sci-bg-alt:     #E2E9EF;
  --sci-card:       #FFFFFF;
  --sci-ink:        #1C2733;
  --sci-ink-soft:   #4D5C6B;
  --sci-indigo:     #33518F;
  --sci-indigo-soft:#AFC0DE;
  --sci-amber:      #E0862E;
  --sci-amber-dark: #B4671A;
  --sci-line:       #D3DCE3;
  --sci-grid-line:  rgba(51,81,143,0.06);
  --sci-shadow:     0 12px 28px rgba(28,39,51,0.13);

  --sci-font-display: 'Space Grotesk', -apple-system, sans-serif;
  --sci-font-body:    'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --sci-font-mono:    'Space Mono', ui-monospace, monospace;

  --sci-measure: 66ch;
  --sci-radius: 6px;
}

/* ---------- Scoped reset & base ---------- */
[class*="ontario-science-"],
[class*="ontario-science-"] *{
  box-sizing: border-box;
}

[class*="ontario-science-"]{
  background-color: var(--sci-bg);
  color: var(--sci-ink);
  font-family: var(--sci-font-body);
  font-size: 17px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
}

/* graph-paper grid — the one texture applied to every section, standing
   in for "the science notebook" this whole page is written on */
section[class*="ontario-science-"]{
  background-image:
    linear-gradient(var(--sci-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--sci-grid-line) 1px, transparent 1px);
  background-size: 26px 26px;
}

[class*="ontario-science-"] h1,
[class*="ontario-science-"] h2,
[class*="ontario-science-"] h3{
  font-family: var(--sci-font-display);
  color: var(--sci-ink);
  font-weight: 600;
  line-height: 1.2;
  margin: 0 0 0.5em;
  letter-spacing: -0.01em;
}

[class*="ontario-science-"] h1{ font-size: clamp(2.3rem, 4.1vw, 3.3rem); font-weight: 700; }
[class*="ontario-science-"] h2{ font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
[class*="ontario-science-"] h3{ font-size: 1.14rem; font-weight: 600; }

[class*="ontario-science-"] p{ margin: 0 0 1em; max-width: var(--sci-measure); color: var(--sci-ink-soft); }

[class*="ontario-science-"] p a,
[class*="ontario-science-"] li a{
  color: var(--sci-indigo);
  text-decoration-color: var(--sci-indigo-soft);
  text-underline-offset: 3px;
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}
[class*="ontario-science-"] p a:hover,
[class*="ontario-science-"] li a:hover{
  color: var(--sci-amber-dark);
  text-decoration-color: var(--sci-amber);
}

section[class*="ontario-science-"] > .container{
  position: relative;
  z-index: 1;
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 32px;
}

section[class*="ontario-science-"]{
  padding: 92px 0;
  border-bottom: 1px solid var(--sci-line);
  position: relative;
}

/* explicit alternating stock — assigned by section name */
.ontario-science-learning-areas,
.ontario-science-inquiry,
.ontario-science-assessment,
.ontario-science-why-pdo,
.ontario-science-skills,
.ontario-science-faq{
  background-color: var(--sci-bg-alt);
}

/* ==========================================================================
   EYEBROW — a logbook entry tag
   ========================================================================== */
.eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-family: var(--sci-font-mono);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: var(--sci-indigo);
  margin: 0 0 1rem;
}
.eyebrow::before{
  content: "§";
  color: var(--sci-amber);
  font-weight: 700;
}

.section-heading{ max-width: 640px; margin: 0 0 3.2rem; }
.section-heading p:last-child{ margin-bottom: 0; }

/* ==========================================================================
   NOTE CALLOUTS — a margin annotation clipped to the page
   ========================================================================== */
.section-note{
  margin-top: 2.8rem;
  padding: 20px 24px;
  border: 1px solid var(--sci-line);
  border-left: 3px solid var(--sci-indigo);
  background: var(--sci-card);
  border-radius: 0 var(--sci-radius) var(--sci-radius) 0;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.section-note:hover{
  border-left-color: var(--sci-amber);
  box-shadow: var(--sci-shadow);
}
.section-note p{ margin: 0; font-size: 0.97rem; }

/* ==========================================================================
   BUTTONS
   ========================================================================== */
[class*="ontario-science-"] .btn{
  display: inline-flex;
  align-items: center;
  gap: 0.55em;
  font-family: var(--sci-font-body);
  font-weight: 600;
  font-size: 0.97rem;
  padding: 0.85em 1.7em;
  border-radius: var(--sci-radius);
  text-decoration: none;
  border: 1.5px solid transparent;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease,
              color 0.15s ease, border-color 0.15s ease;
}

[class*="ontario-science-"] .btn-primary{
  background: var(--sci-indigo);
  color: #F4F7FB;
  box-shadow: var(--sci-shadow);
}
[class*="ontario-science-"] .btn-primary:hover{
  background: #26406F;
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(28,39,51,0.22);
}
[class*="ontario-science-"] .btn-primary:active{ transform: translateY(0); }

[class*="ontario-science-"] .btn-secondary{
  background: transparent;
  color: var(--sci-ink);
  border-color: var(--sci-indigo-soft);
}
[class*="ontario-science-"] .btn-secondary:hover{
  background: var(--sci-indigo);
  border-color: var(--sci-indigo);
  color: #F4F7FB;
}

[class*="ontario-science-"] .btn:focus-visible{
  outline: 2px solid var(--sci-amber);
  outline-offset: 3px;
}

.hero-actions, .final-cta-actions{
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 2.1rem;
}

/* ==========================================================================
   HERO — a logbook cover, with an orbit/atom diagram bleeding off the edge
   ========================================================================== */
.ontario-science-hero{
  padding: 112px 0 100px;
  overflow: hidden;
}

.ontario-science-hero > .container{ position: relative; }

.hero-content{
  position: relative;
  max-width: 680px;
}

/* a punch-card style notch top-left of the heading, like a logbook page */
.ontario-science-hero h1{
  position: relative;
  padding-left: 22px;
}
.ontario-science-hero h1::before{
  content: "";
  position: absolute;
  left: 0; top: 0.18em; bottom: 0.18em;
  width: 3px;
  background: var(--sci-amber);
}

.hero-intro{ font-size: 1.08rem; color: var(--sci-ink); }

/* atom / orbit diagram anchoring the right side of the hero — brought
   further into view and nudged up slightly so more of it is visible
   above the fold rather than mostly cropped off the edge */
.ontario-science-hero::after{
  content: "";
  position: absolute;
  top: 40%;
  right: -20px;
  width: 440px;
  height: 440px;
  transform: translateY(-50%);
  animation: sci-orbit-spin 46s linear infinite;
  opacity: 0.9;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 300'%3E%3Ccircle cx='150' cy='150' r='9' fill='%2333518F'/%3E%3Cellipse cx='150' cy='150' rx='120' ry='46' fill='none' stroke='%2333518F' stroke-width='1.6' transform='rotate(0 150 150)'/%3E%3Cellipse cx='150' cy='150' rx='120' ry='46' fill='none' stroke='%2333518F' stroke-width='1.6' transform='rotate(60 150 150)'/%3E%3Cellipse cx='150' cy='150' rx='120' ry='46' fill='none' stroke='%2333518F' stroke-width='1.6' transform='rotate(120 150 150)'/%3E%3Ccircle cx='266' cy='150' r='5' fill='%23E0862E'/%3E%3Ccircle cx='92' cy='68' r='5' fill='%23E0862E'/%3E%3Ccircle cx='92' cy='232' r='5' fill='%23E0862E'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-mask-image: radial-gradient(circle, #000 55%, transparent 78%);
          mask-image: radial-gradient(circle, #000 55%, transparent 78%);
  pointer-events: none;
}

/* slow, continuous spin — the orbit rings turn steadily around the
   fixed nucleus and electrons, since they're all part of the same shape */
@keyframes sci-orbit-spin{
  from{ transform: translateY(-50%) rotate(0deg); }
  to{ transform: translateY(-50%) rotate(360deg); }
}

/* ==========================================================================
   SHARED CARD-GRID SYSTEM
   ========================================================================== */
[class$="-grid"]{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 22px;
  margin-top: 2rem;
}

.science-course-grid,
.science-subject-grid{ grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }

article[class$="-card"]{
  position: relative;
  background: var(--sci-card);
  border: 1px solid var(--sci-line);
  border-radius: var(--sci-radius);
  padding: 30px 26px 26px;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

article[class$="-card"]:hover{
  border-color: var(--sci-indigo-soft);
  transform: translateY(-4px);
  box-shadow: var(--sci-shadow);
}

/* signature micro-interaction: a highlighter stroke sweeps under the
   heading, like marking a line in a notebook */
article[class$="-card"] h3{
  position: relative;
  display: inline;
  font-size: 1.1rem;
  background-image: linear-gradient(var(--sci-amber), var(--sci-amber));
  background-repeat: no-repeat;
  background-size: 0% 38%;
  background-position: 0 88%;
  transition: background-size 0.3s ease;
}
article[class$="-card"]:hover h3{ background-size: 100% 38%; }

article[class$="-card"] p{ font-size: 0.96rem; margin-bottom: 0.5em; }
article[class$="-card"] p:last-child{ margin-bottom: 0; }

/* ==========================================================================
   COURSE CARDS — logbook entries, numbered like log lines
   ========================================================================== */
.science-course-grid{ counter-reset: logline; }

.science-course-card{
  counter-increment: logline;
  padding-top: 44px;
  border-top: 3px solid var(--sci-indigo);
}

.science-course-card::before{
  content: "LOG " counter(logline, decimal-leading-zero);
  position: absolute;
  top: 16px; left: 22px;
  font-family: var(--sci-font-mono);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: var(--sci-indigo-soft);
  transition: color 0.2s ease;
}
.science-course-card:hover::before{ color: var(--sci-amber); }

/* ==========================================================================
   SUBJECT-SPECIFIC SUPPORT — each card tinted to echo that subject's own
   PDO page (Biology green, Chemistry teal, Physics indigo), a small
   continuity detail across the site's subject pages
   ========================================================================== */
.science-subject-card{ --subj-accent: var(--sci-indigo); border-top: 3px solid var(--subj-accent); }
.science-subject-card:nth-child(1){ --subj-accent: #3F6B2E; }
.science-subject-card:nth-child(2){ --subj-accent: #1E7F6B; }
.science-subject-card:nth-child(3){ --subj-accent: #33518F; }

.science-subject-card h3{
  background-image: linear-gradient(var(--subj-accent), var(--subj-accent));
}
.science-subject-card:hover{ border-color: var(--subj-accent); }
.science-subject-card::after{
  content: "";
  position: absolute;
  top: 18px; right: 20px;
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--subj-accent);
  opacity: 0.6;
}

/* ==========================================================================
   LITERAL SCIENCE-WORLD WATERMARKS
   Each of these sections gets one faint illustration tied to what it's
   about, rather than the graph-paper grid alone.
   ========================================================================== */
.ontario-science-learning-areas::before,
.ontario-science-inquiry::before,
.ontario-science-concept-application::before,
.ontario-science-skills::before,
.ontario-science-foundations::before{
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Explore the Major Areas — a molecule / constellation network, since
   this section surveys every scientific discipline on the page */
.ontario-science-learning-areas::before{
  top: 8%; right: 4%;
  width: 240px; height: 210px;
  opacity: 0.16;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 220'%3E%3Cline x1='40' y1='170' x2='110' y2='110' stroke='%2333518F' stroke-width='1.5'/%3E%3Cline x1='110' y1='110' x2='190' y2='140' stroke='%2333518F' stroke-width='1.5'/%3E%3Cline x1='110' y1='110' x2='150' y2='40' stroke='%2333518F' stroke-width='1.5'/%3E%3Cline x1='150' y1='40' x2='220' y2='60' stroke='%2333518F' stroke-width='1.5'/%3E%3Cline x1='190' y1='140' x2='230' y2='190' stroke='%2333518F' stroke-width='1.5'/%3E%3Ccircle cx='40' cy='170' r='6' fill='%2333518F'/%3E%3Ccircle cx='110' cy='110' r='7' fill='%2333518F'/%3E%3Ccircle cx='190' cy='140' r='6' fill='%2333518F'/%3E%3Ccircle cx='150' cy='40' r='6' fill='%2333518F'/%3E%3Ccircle cx='220' cy='60' r='5' fill='%2333518F'/%3E%3Ccircle cx='230' cy='190' r='5' fill='%2333518F'/%3E%3C/svg%3E");
}

/* Scientific Inquiry — a lightbulb, for asking questions and forming ideas */
.ontario-science-inquiry::before{
  bottom: 6%; right: 5%;
  width: 150px; height: 200px;
  opacity: 0.16;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 220'%3E%3Ccircle cx='80' cy='80' r='55' fill='none' stroke='%23E0862E' stroke-width='2'/%3E%3Cline x1='60' y1='60' x2='100' y2='100' stroke='%23E0862E' stroke-width='1.5'/%3E%3Cline x1='100' y1='60' x2='60' y2='100' stroke='%23E0862E' stroke-width='1.5'/%3E%3Cline x1='65' y1='130' x2='95' y2='130' stroke='%23E0862E' stroke-width='2'/%3E%3Cline x1='68' y1='145' x2='92' y2='145' stroke='%23E0862E' stroke-width='2'/%3E%3Cline x1='72' y1='160' x2='88' y2='160' stroke='%23E0862E' stroke-width='2'/%3E%3C/svg%3E");
}

/* Concept Application — a bar chart with a trend line over it */
.ontario-science-concept-application::before{
  top: 10%; right: 5%;
  width: 230px; height: 170px;
  opacity: 0.15;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 160'%3E%3Cline x1='10' y1='150' x2='210' y2='150' stroke='%2333518F' stroke-width='1.5'/%3E%3Cline x1='10' y1='150' x2='10' y2='10' stroke='%2333518F' stroke-width='1.5'/%3E%3Crect x='30' y='100' width='18' height='50' fill='%2333518F' fill-opacity='0.55'/%3E%3Crect x='70' y='70' width='18' height='80' fill='%2333518F' fill-opacity='0.55'/%3E%3Crect x='110' y='90' width='18' height='60' fill='%2333518F' fill-opacity='0.55'/%3E%3Crect x='150' y='50' width='18' height='100' fill='%2333518F' fill-opacity='0.55'/%3E%3Cpolyline points='39,95 79,55 119,85 159,35' fill='none' stroke='%23E0862E' stroke-width='2'/%3E%3Ccircle cx='39' cy='95' r='3' fill='%23E0862E'/%3E%3Ccircle cx='79' cy='55' r='3' fill='%23E0862E'/%3E%3Ccircle cx='119' cy='85' r='3' fill='%23E0862E'/%3E%3Ccircle cx='159' cy='35' r='3' fill='%23E0862E'/%3E%3C/svg%3E");
}

/* Skills — a gear, for structured problem solving */
.ontario-science-skills::before{
  bottom: 6%; left: 4%;
  width: 170px; height: 170px;
  opacity: 0.14;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='55' fill='none' stroke='%2333518F' stroke-width='2'/%3E%3Ccircle cx='100' cy='100' r='20' fill='none' stroke='%2333518F' stroke-width='2'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(0 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(45 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(90 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(135 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(180 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(225 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(270 100 100)'/%3E%3Crect x='94' y='30' width='12' height='24' fill='%2333518F' transform='rotate(315 100 100)'/%3E%3C/svg%3E");
}

/* Foundations — stacked building blocks */
.ontario-science-foundations::before{
  top: 8%; right: 6%;
  width: 200px; height: 180px;
  opacity: 0.15;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 180'%3E%3Crect x='40' y='120' width='120' height='30' fill='none' stroke='%2333518F' stroke-width='2'/%3E%3Crect x='55' y='80' width='90' height='30' fill='none' stroke='%2333518F' stroke-width='2'/%3E%3Crect x='70' y='40' width='60' height='30' fill='none' stroke='%2333518F' stroke-width='2'/%3E%3C/svg%3E");
}

@media (max-width: 860px){
  .ontario-science-learning-areas::before,
  .ontario-science-inquiry::before,
  .ontario-science-concept-application::before,
  .ontario-science-skills::before,
  .ontario-science-foundations::before{
    opacity: 0.09;
    width: 140px; height: 140px;
  }
}

/* ==========================================================================
   HOW IT WORKS — a horizontal stepper with atom-style badges
   A genuine sequence, so the four steps stay in a straight reading order,
   connected by a single line, with an orbit ring around each number
   instead of a plain circle.
   ========================================================================== */
.science-process{
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
  margin-top: 3.2rem;
  padding-top: 26px;
}

.science-process::before{
  content: "";
  position: absolute;
  top: 25px;
  left: 6%; right: 6%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--sci-indigo-soft) 0 6px, transparent 6px 11px);
}

.science-process-step{ position: relative; }

.step-number{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  margin-bottom: 16px;
  border-radius: 50%;
  background: var(--sci-card);
  border: 2px solid var(--sci-indigo);
  color: var(--sci-indigo);
  font-family: var(--sci-font-mono);
  font-weight: 700;
  font-size: 0.82rem;
  transition: border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
  z-index: 1;
}
/* orbit ring around the number, like the hero atom */
.step-number::after{
  content: "";
  position: absolute;
  inset: -8px;
  border: 1px solid var(--sci-indigo-soft);
  border-radius: 50%;
  transform: rotate(-20deg) scaleY(0.62);
  transition: border-color 0.2s ease, transform 0.3s ease;
}

.science-process-step:hover .step-number{
  border-color: var(--sci-amber);
  color: var(--sci-amber-dark);
  transform: scale(1.06);
}
.science-process-step:hover .step-number::after{
  border-color: var(--sci-amber);
  transform: rotate(20deg) scaleY(0.62);
}

.science-process-step h3{ font-size: 1.02rem; }
.science-process-step p{ font-size: 0.94rem; }

@media (max-width: 780px){
  .science-process{ grid-template-columns: 1fr; gap: 30px; }
  .science-process::before{ left: 19px; right: auto; top: 26px; bottom: 26px; width: 1px; height: auto;
    background-image: repeating-linear-gradient(to bottom, var(--sci-indigo-soft) 0 6px, transparent 6px 11px); }
  .science-process-step{ padding-left: 54px; }
  .step-number{ position: absolute; left: 0; top: 0; margin-bottom: 0; }
}

/* ==========================================================================
   FINAL CTA
   ========================================================================== */
.ontario-science-final-cta{
  background-color: var(--sci-ink);
  border-bottom: none;
  overflow: hidden;
}

.ontario-science-final-cta::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(244,247,251,0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(244,247,251,0.05) 1px, transparent 1px);
  background-size: 26px 26px;
  pointer-events: none;
}

.final-cta-content{ max-width: 660px; position: relative; z-index: 1; }

.ontario-science-final-cta h2{ color: #F4F7FB; }
.ontario-science-final-cta p{ color: rgba(244,247,251,0.78); }
.ontario-science-final-cta .eyebrow{ color: var(--sci-amber); }
.ontario-science-final-cta .eyebrow::before{ color: var(--sci-amber); }

.ontario-science-final-cta .btn-primary{
  background: var(--sci-amber);
  color: #241505;
}
.ontario-science-final-cta .btn-primary:hover{
  background: #EFA35A;
  box-shadow: 0 16px 32px rgba(224,134,46,0.3);
}

/* ==========================================================================
   FAQ — rebuilt as a spacious two-column grid of bordered cards, so it
   never reads as a narrow centered column the way it did on the earlier
   page. Uses the full container width.
   ========================================================================== */
.ontario-science-faq > .container{ max-width: 1160px; }

.faq-list{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px 24px;
  align-items: start;
}

.ontario-science-faq .faq-item{
  background: var(--sci-card);
  border: 1px solid var(--sci-line);
  border-radius: var(--sci-radius);
  padding: 4px 6px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.ontario-science-faq .faq-item:hover{
  border-color: var(--sci-indigo-soft);
  box-shadow: var(--sci-shadow);
  transform: translateY(-2px);
}
.ontario-science-faq .faq-item[open]{
  border-color: var(--sci-indigo);
  grid-row: span 1;
}

.ontario-science-faq summary{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  list-style: none;
  cursor: pointer;
  font-family: var(--sci-font-display);
  font-size: 1.04rem;
  font-weight: 600;
  color: var(--sci-ink);
  padding: 20px 18px;
  transition: color 0.18s ease;
}
.ontario-science-faq summary::-webkit-details-marker{ display: none; }
.ontario-science-faq summary::marker{ content: ""; }

.ontario-science-faq summary:hover{ color: var(--sci-indigo); }
.ontario-science-faq summary:focus-visible{
  outline: 2px solid var(--sci-amber);
  outline-offset: 4px;
}

/* toggle: a plus inside a square bracket, like a logbook checkbox */
.ontario-science-faq summary::after{
  content: "+";
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px; height: 26px;
  border: 1.5px solid var(--sci-indigo-soft);
  border-radius: 4px;
  font-family: var(--sci-font-mono);
  font-size: 1rem;
  color: var(--sci-indigo);
  transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease, color 0.25s ease;
}
.ontario-science-faq summary:hover::after{ border-color: var(--sci-amber); color: var(--sci-amber-dark); }

.ontario-science-faq .faq-item[open] summary::after{
  content: "–";
  background: var(--sci-indigo);
  border-color: var(--sci-indigo);
  color: #fff;
  transform: rotate(180deg);
}

.faq-answer{ padding: 0 18px 22px; }
.faq-answer p{ margin: 0; font-size: 0.98rem; max-width: 56ch; }

@media (max-width: 900px){
  .faq-list{ grid-template-columns: 1fr; }
}

/* ==========================================================================
   ACCESSIBILITY & MOTION
   ========================================================================== */
@media (prefers-reduced-motion: reduce){
  [class*="ontario-science-"],
  [class*="ontario-science-"] *{
    transition-duration: 0.001ms !important;
    animation-duration: 0.001ms !important;
  }
  .ontario-science-hero::after{
    animation: none;
    transform: translateY(-50%);
  }
}

[class*="ontario-science-"] a:focus-visible,
[class*="ontario-science-"] button:focus-visible{
  outline: 2px solid var(--sci-amber);
  outline-offset: 3px;
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width: 860px){
  section[class*="ontario-science-"]{ padding: 64px 0; }
  section[class*="ontario-science-"] > .container{ padding: 0 22px; }

  .ontario-science-hero{ padding: 76px 0 60px; }
  .ontario-science-hero::after{ right: -240px; opacity: 0.5; }

  [class$="-grid"]{ grid-template-columns: 1fr; }

  .hero-actions, .final-cta-actions{ flex-direction: column; align-items: stretch; }
  [class*="ontario-science-"] .btn{ justify-content: center; }
}

@media (max-width: 480px){
  [class*="ontario-science-"] h1{ font-size: 2rem; }
  [class*="ontario-science-"] h2{ font-size: 1.4rem; }
}/* End custom CSS */
/* Start custom CSS *//* ===========================
   SAFE FULL-WIDTH OVERRIDE
   (NO 100vw, NO OVERFLOW)
=========================== */

/* Allow theme to stretch */
.site,
.site-content,
.content-area,
.wrap,
.page-wrap {
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Elementor root */
.elementor {
  max-width: 100% !important;
}

/* Elementor sections full width */
.elementor-section {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ===========================
   HERO – FULL SCREEN, CENTERED
=========================== */

.hero {
  min-height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  box-sizing: border-box;
}

/* Keep hero content aligned */
.hero > * {
  max-width: 1200px;
  margin: auto;
}

/* ===========================
   MOBILE SAFETY
=========================== */

@media (max-width: 768px) {
  .hero {
    min-height: 90vh;
    padding: 50px 16px;
    text-align: center;
  }
}




/* ===========================
   MOBILE VISIBILITY FIX
=========================== */

@media (max-width: 768px) {

  /* Restore section spacing */
  section {
    padding: 40px 16px !important;
    margin: 0 !important;
  }

  /* Ensure all sections show fully */
  section,
  .elementor-section {
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
  }

  /* Fix grids stacking visibility */
  .stats,
  .features-grid,
  .subject-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Prevent text from shrinking */
  p, li {
    font-size: 16px;
    line-height: 1.6;
  }

  /* Ensure background sections are visible */
  .subjects,
  .trust,
  .national-cbse,
  .global-cbse,
  .national-icse,
  .global-icse,
  .national-igcse,
  .global-igcse {
    background-clip: padding-box;
    padding: 40px 16px !important;
  }
}/* End custom CSS */