{"id":4588,"date":"2026-05-30T06:12:51","date_gmt":"2026-05-30T05:12:51","guid":{"rendered":"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/"},"modified":"2026-06-01T09:25:21","modified_gmt":"2026-06-01T08:25:21","slug":"trigonal-pyramidal","status":"publish","type":"page","link":"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/","title":{"rendered":"Trigonal Pyramidal"},"content":{"rendered":"\n<section class=\"ols-revision-page ols-trigonal-pyramidal-molecular-shape-9ch0-page\">\n  <style>\n    .ols-revision-page {\n      --navy: #1C244B;\n      --blue: #2563eb;\n      --soft-blue: #eef4ff;\n      --soft-red: #fff7f7;\n      --soft-purple: #f7f0ff;\n      --soft-green: #f0f7f1;\n      --soft-orange: #fff7ed;\n      --gold: #c9973a;\n      --grey-text: #667085;\n      --body-text: #1f2937;\n      --border: rgba(28, 36, 75, 0.14);\n      --shadow: 0 18px 45px rgba(28, 36, 75, 0.10);\n      --inner-shadow: 0 10px 26px rgba(28, 36, 75, 0.08);\n      font-family: Poppins, Arial, sans-serif;\n      color: var(--navy);\n      background: #ffffff;\n    }\n\n    .ols-revision-page * { box-sizing: border-box; }\n    .ols-main { min-width: 0; max-width: 970px; }\n    .ols-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 22px; font-size: 15px; color: var(--grey-text); }\n    .ols-breadcrumbs a, .ols-breadcrumbs span { color: var(--grey-text); text-decoration: none; font-weight: 600; }\n    .ols-breadcrumbs a:hover { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }\n    .ols-title-card, .ols-note-card, .ols-h5p-card, .ols-related-card, .ols-faq-card { background: #ffffff; border: 1px solid var(--border); border-radius: 28px; box-shadow: var(--shadow); padding: 34px; margin-bottom: 24px; overflow: hidden; }\n    .ols-title-card { background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%); }\n    .ols-title-card h1 { margin: 0 0 18px; font-size: clamp(36px, 5vw, 58px); line-height: 1.08; font-weight: 800; letter-spacing: -0.04em; color: #111827; }\n    .ols-page-intro { font-size: 19px; line-height: 1.7; font-weight: 300; color: var(--body-text); margin: 0 0 22px; }\n    .ols-badges { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 22px; }\n    .ols-badge { display: inline-flex; align-items: center; padding: 9px 14px; border-radius: 999px; background: #ffffff; border: 1px solid var(--border); font-size: 15px; font-weight: 600; color: var(--navy); }\n    .ols-author { display: flex; align-items: center; gap: 20px; padding: 28px; border-radius: 28px; background: linear-gradient(135deg, #ffffff 0%, #f8fbff 100%); border: 1px solid rgba(28,36,75,0.12); box-shadow: 0 18px 45px rgba(28,36,75,0.10); margin-top: 22px; }\n    .ols-author-avatar-img { width: 92px; height: 92px; border-radius: 50%; object-fit: cover; object-position: center; flex-shrink: 0; border: 4px solid #ffffff; box-shadow: 0 14px 32px rgba(28,36,75,0.18), 0 0 0 1px rgba(28,36,75,0.10); transition: transform 0.25s ease, box-shadow 0.25s ease; }\n    .ols-author:hover .ols-author-avatar-img { transform: scale(1.04); box-shadow: 0 20px 42px rgba(28,36,75,0.22), 0 0 0 1px rgba(28,36,75,0.10); }\n    .ols-author-content { min-width: 0; }\n    .ols-author-title { margin: 0 0 4px; font-size: clamp(24px,3vw,34px); line-height: 1.15; font-weight: 700; color: var(--navy); letter-spacing: -0.03em; }\n    .ols-author-description { margin: 0; font-size: 17px; line-height: 1.7; font-weight: 300; color: var(--grey-text); }\n    .ols-linkedin-pill { display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-top: 16px; padding: 11px 18px; border-radius: 999px; background: linear-gradient(135deg,#0A66C2,#004182); color: #ffffff; text-decoration: none; font-size: 14px; line-height: 1; font-weight: 700; letter-spacing: 0.01em; box-shadow: 0 10px 22px rgba(10,102,194,0.24); position: relative; overflow: hidden; transition: transform 0.22s ease, box-shadow 0.22s ease; }\n    .ols-linkedin-pill::before { content: \"\"; position: absolute; top: 0; left: -120%; width: 100%; height: 100%; background: linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.28) 50%, rgba(255,255,255,0) 100%); transition: left 0.7s ease; }\n    .ols-linkedin-pill:hover { transform: translateY(-3px) scale(1.03); box-shadow: 0 16px 34px rgba(10,102,194,0.34), 0 0 0 6px rgba(10,102,194,0.10); color: #ffffff; }\n    .ols-linkedin-pill:hover::before { left: 120%; }\n    .ols-linkedin-icon { width: 18px; height: 18px; display: block; flex-shrink: 0; }\n    .ols-note-card.soft { background: linear-gradient(135deg, #ffffff 0%, var(--soft-red) 100%); }\n    .ols-note-card.purple { background: linear-gradient(135deg, #ffffff 0%, var(--soft-purple) 100%); }\n    .ols-note-card.orange { background: linear-gradient(135deg, #ffffff 0%, var(--soft-orange) 100%); }\n    .ols-note-title { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }\n    .ols-note-icon { width: 52px; height: 52px; border-radius: 16px; background: var(--navy); color: #ffffff; display: grid; place-items: center; font-size: 24px; font-weight: 800; flex-shrink: 0; }\n    .ols-note-title h2, .ols-h5p-card h2, .ols-related-card h2, .ols-faq-card h2 { margin: 0; font-size: clamp(28px, 3.5vw, 42px); line-height: 1.15; font-weight: 800; color: #111827; letter-spacing: -0.03em; }\n    .ols-h5p-card h2, .ols-related-card h2, .ols-faq-card h2 { margin-bottom: 14px; }\n    .ols-note-card p, .ols-note-card li { font-size: clamp(15px, 1.25vw, 17px); line-height: 1.65; font-weight: 300; color: var(--body-text); }\n    .ols-h5p-card p, .ols-related-card p, .ols-faq-card p { font-size: clamp(15px, 1.3vw, 18px); line-height: 1.65; font-weight: 300; color: var(--body-text); }\n    .ols-note-card strong, .ols-h5p-card strong, .ols-related-card strong, .ols-faq-card strong { font-weight: 700; color: var(--navy); }\n    .ols-note-card ul, .ols-note-card ol { margin: 0; padding-left: 22px; }\n    .ols-key-box { margin-top: 20px; background: var(--soft-green); border: 1px solid rgba(63, 143, 70, 0.25); border-radius: 20px; padding: 18px 20px; }\n    .ols-key-box p { margin: 0; font-weight: 400; color: var(--navy); }\n    .ols-definition-box { background: linear-gradient(135deg, #ffffff, var(--soft-purple)); border: 2px dashed rgba(122, 62, 157, 0.35); border-radius: 24px; padding: 22px 24px; margin-top: 22px; }\n    .ols-definition-box p { margin: 0; color: var(--navy); font-weight: 400; }\n    .ols-rule-list { display: grid; gap: 14px; margin-top: 18px; }\n    .ols-rule-item { background: #ffffff; border: 1px solid var(--border); border-left: 5px solid var(--blue); border-radius: 18px; padding: 18px; box-shadow: var(--inner-shadow); }\n    .ols-rule-item h3 { margin: 0 0 8px; font-size: 20px; line-height: 1.25; color: var(--navy); }\n    .ols-rule-item p { margin: 0; font-size: 15px; line-height: 1.6; }\n    .ols-zoom-card, .ols-zoom-card * { box-sizing: border-box; }\n    .ols-zoom-card { display: block !important; margin: 26px 0 34px !important; border: 1px solid rgba(28, 36, 75, 0.14) !important; border-radius: 26px !important; background: #ffffff !important; box-shadow: 0 18px 45px rgba(28, 36, 75, 0.10) !important; overflow: visible !important; position: relative !important; z-index: 1 !important; isolation: isolate !important; }\n    .ols-zoom-card.medium { max-width: 820px; margin-left: auto !important; margin-right: auto !important; }\n    .ols-zoom-card.compact { max-width: 700px; margin-left: auto !important; margin-right: auto !important; }\n    .ols-zoom-card:hover { z-index: 50 !important; }\n    .ols-zoom-card-image { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; min-height: 330px !important; padding: 20px !important; background: #ffffff !important; overflow: visible !important; border-top-left-radius: 26px !important; border-top-right-radius: 26px !important; position: relative !important; z-index: 2 !important; }\n    .ols-zoom-card img.ols-zoomable-img { display: block !important; width: 100% !important; max-width: 100% !important; height: auto !important; border-radius: 18px !important; cursor: default !important; pointer-events: auto !important; user-select: none !important; -webkit-user-drag: none !important; transform: translateZ(0) scale(1) !important; transform-origin: center center !important; transition: transform 0.32s ease, box-shadow 0.32s ease, filter 0.32s ease !important; position: relative !important; z-index: 2 !important; }\n    @media (hover: hover) and (pointer: fine) { .ols-zoom-card img.ols-zoomable-img:hover { transform: translateZ(0) scale(1.45) !important; box-shadow: 0 28px 70px rgba(28, 36, 75, 0.34) !important; filter: saturate(1.02) contrast(1.01) !important; z-index: 100 !important; } }\n    .ols-zoom-card-caption { padding: 18px 22px 20px !important; background: linear-gradient(135deg, #ffffff, #f8fbff) !important; border-bottom-left-radius: 26px !important; border-bottom-right-radius: 26px !important; position: relative !important; z-index: 1 !important; }\n    .ols-zoom-card-caption p { margin: 0 !important; color: #5f6b85 !important; font-size: 15px !important; line-height: 1.65 !important; font-weight: 300 !important; font-style: italic !important; font-family: Poppins, Arial, sans-serif !important; }\n    .ols-image-lightbox { position: fixed; inset: 0; z-index: 999999; display: none; align-items: center; justify-content: center; padding: 34px; background: rgba(10, 15, 35, 0.86); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }\n    .ols-image-lightbox.is-open { display: flex; }\n    .ols-image-lightbox-inner { position: relative; width: min(96vw, 1500px); max-height: 92vh; display: flex; align-items: center; justify-content: center; }\n    .ols-image-lightbox-img { display: block; max-width: 100%; max-height: 92vh; height: auto; width: auto; border-radius: 22px; background: #ffffff; box-shadow: 0 32px 90px rgba(0, 0, 0, 0.45); object-fit: contain; }\n    .ols-image-lightbox-close { position: absolute; top: -18px; right: -18px; width: 46px; height: 46px; border: 0; border-radius: 50%; background: #ffffff; color: var(--navy); font-family: Poppins, Arial, sans-serif; font-size: 28px; line-height: 1; font-weight: 700; cursor: pointer; box-shadow: 0 16px 34px rgba(0, 0, 0, 0.28); display: flex; align-items: center; justify-content: center; transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease; }\n    .ols-image-lightbox-close:hover { transform: scale(1.08); background: var(--blue); color: #ffffff; }\n    .ols-zoom-card img.ols-lightbox-target { cursor: zoom-in !important; }\n    @media (max-width: 760px) { .ols-zoom-card { border-radius: 22px !important; overflow: hidden !important; } .ols-zoom-card-image { min-height: auto !important; padding: 12px !important; overflow: hidden !important; border-top-left-radius: 22px !important; border-top-right-radius: 22px !important; } .ols-zoom-card img.ols-zoomable-img, .ols-zoom-card img.ols-zoomable-img:hover { transform: none !important; box-shadow: none !important; } .ols-zoom-card-caption { border-bottom-left-radius: 22px !important; border-bottom-right-radius: 22px !important; } .ols-image-lightbox { padding: 16px; } .ols-image-lightbox-inner { width: 100%; max-height: 88vh; } .ols-image-lightbox-img { max-height: 88vh; border-radius: 16px; } .ols-image-lightbox-close { top: 10px; right: 10px; width: 42px; height: 42px; font-size: 26px; } }\n    .ols-table-wrap { overflow: hidden; border-radius: 22px; border: 1px solid var(--border); background: #ffffff; margin-top: 18px; }\n    .ols-table { width: 100%; border-collapse: collapse; table-layout: fixed; }\n    .ols-table th { background: var(--navy); color: #ffffff; padding: 16px; text-align: left; font-size: clamp(14px, 1.2vw, 17px); font-weight: 600; overflow-wrap: anywhere; }\n    .ols-table td { padding: 16px; border-bottom: 1px solid var(--border); font-size: clamp(14px, 1.15vw, 16px); line-height: 1.45; color: var(--body-text); vertical-align: top; overflow-wrap: anywhere; }\n    .ols-table tr:last-child td { border-bottom: none; }\n    .ols-h5p-card { background: linear-gradient(135deg, #ffffff 0%, #f7f0ff 100%); }\n    .ols-h5p-frame { margin-top: 22px; padding: 18px; border-radius: 24px; background: #ffffff; border: 1px solid var(--border); box-shadow: inset 0 0 0 1px rgba(28, 36, 75, 0.03); }\n    .ols-faq-list { display: grid; gap: 14px; margin-top: 18px; }\n    .ols-faq-item { background: #ffffff; border: 1px solid var(--border); border-radius: 18px; padding: 18px 20px; box-shadow: var(--inner-shadow); }\n    .ols-faq-item h3 { margin: 0 0 8px; font-size: 20px; line-height: 1.3; color: var(--navy); }\n    .ols-faq-item p { margin: 0; font-size: 16px; line-height: 1.65; color: var(--body-text); }\n    .ols-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }\n    .ols-related-item { border: 1px solid var(--border); border-radius: 18px; padding: 18px; background: #ffffff; color: var(--navy); text-decoration: none; font-weight: 600; line-height: 1.5; transition: transform 0.2s ease, box-shadow 0.2s ease; }\n    .ols-related-item:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(28, 36, 75, 0.08); }\n    .ols-attribution-card { background: linear-gradient(135deg, #ffffff, #f8fbff); border: 1px solid rgba(28, 36, 75, 0.14); border-radius: 28px; box-shadow: 0 18px 45px rgba(28, 36, 75, 0.10); padding: 34px; margin-bottom: 24px; overflow: hidden; font-family: Poppins, Arial, sans-serif; box-sizing: border-box; }\n    .ols-attribution-card, .ols-attribution-card * { box-sizing: border-box; }\n    .ols-attribution-card p { margin: 0; font-size: 14px; line-height: 1.65; font-weight: 300; color: #667085; }\n    .ols-attribution-card strong { font-weight: 700; color: #1C244B; }\n\n    @media (max-width: 1050px) {\n      .ols-main { max-width: none; }\n      .ols-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }\n    }\n\n    @media (max-width: 760px) {\n      .ols-title-card, .ols-note-card, .ols-h5p-card, .ols-related-card, .ols-faq-card, .ols-attribution-card { padding: 24px 18px; border-radius: 22px; }\n      .ols-note-title { align-items: flex-start; }\n      .ols-zoom-card { border-radius: 22px; }\n      .ols-zoom-card-image { min-height: 210px; padding: 14px; }\n      .ols-zoom-card-caption { padding: 16px; }\n      .ols-table-wrap { border: none; background: transparent; }\n      .ols-table, .ols-table thead, .ols-table tbody, .ols-table th, .ols-table td, .ols-table tr { display: block; width: 100%; }\n      .ols-table { border-collapse: separate; border-spacing: 0; }\n      .ols-table thead { display: none; }\n      .ols-table tr { margin-bottom: 14px; border: 1px solid var(--border); border-radius: 18px; overflow: hidden; background: #ffffff; box-shadow: var(--inner-shadow); }\n      .ols-table td { border-bottom: 1px solid var(--border); padding: 14px 16px; overflow-wrap: anywhere; }\n      .ols-table td:last-child { border-bottom: none; }\n      .ols-table td::before { content: attr(data-label); display: block; margin-bottom: 6px; font-size: 13px; font-weight: 700; color: var(--blue); }\n      .ols-author { align-items: flex-start; padding: 22px 18px; border-radius: 22px; }\n      .ols-author-avatar-img { width: 72px; height: 72px; }\n      .ols-author-title { font-size: 24px; }\n      .ols-author-description { font-size: 15px; }\n    }\n  <\/style>\n\n  <aside class=\"ols-sidebar\">\r\n  <div class=\"ols-sidebar-header\">\r\n    <h3>Revision Notes<\/h3>\r\n    <p>A Level Chemistry<\/p>\r\n  <\/div>\r\n\r\n  <div class=\"ols-topic-group\">\r\n    <h4>Topic 2 Bonding and Structure<\/h4>\r\n\r\n    <ul class=\"ols-topic-list\">\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/ionic-bonding\/\">Ionic Bonding<\/a>\r\n\r\n        <ul class=\"ols-subtopic-list\">\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/ionic-bonding\/nature-of-ionic-bonding\/\">Nature of Ionic Bonding<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/ionic-bonding\/polarisation-of-ions\/\">Polarisation of Ions<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/ionic-bonding\/physical-properties-of-ionic-compounds\/\">Physical Properties of Ionic Compounds<\/a>\r\n          <\/li>\r\n        <\/ul>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/\">Covalent Bonding<\/a>\r\n\r\n        <ul class=\"ols-subtopic-list\">\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/nature-of-covalent-bonding\/\">Nature of Covalent Bonding<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/dative-covalent-bonding\/\">Dative Covalent Bonding<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/electronegativity\/\">Electronegativity<\/a>\r\n          <\/li>\r\n        <\/ul>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/\">Shapes of Molecules<\/a>\r\n\r\n        <ul class=\"ols-subtopic-list\">\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/linear\/\">Linear<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-planar\/\">Trigonal Planar<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/tetrahedral\/\">Tetrahedral<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/\">Trigonal Pyramidal<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/bent\/\">Bent<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-bipyramidal\/\">Trigonal Bipyramidal<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/octahedral\/\">Octahedral<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/square-planar\/\">Square Planar<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/square-pyramidal\/\">Square Pyramidal<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/distorted-t\/\">Distorted T<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/seesaw\/\">SeeSaw<\/a>\r\n          <\/li>\r\n        <\/ul>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/polar-molecules\/\">Polar Molecules<\/a>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/metallic-bonding\/\">Metallic Bonding<\/a>\r\n\r\n        <ul class=\"ols-subtopic-list\">\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/metallic-bonding\/metallic-bonding-and-structure\/\">Metallic Bonding and Structure<\/a>\r\n          <\/li>\r\n          <li>\r\n            <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/metallic-bonding\/physical-properties-of-metals\/\">Physical Properties of Metals<\/a>\r\n          <\/li>\r\n        <\/ul>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/intermolecular-forces\/\">Intermolecular Forces<\/a>\r\n      <\/li>\r\n\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/structure-types\/\">Structure Types<\/a>\r\n      <\/li>\r\n\r\n    <\/ul>\r\n  <\/div>\r\n\r\n  <div class=\"ols-topic-group\">\r\n    <h4>Next Topics<\/h4>\r\n\r\n    <ul class=\"ols-topic-list\">\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-3-redox-i\/\">Redox I<\/a>\r\n      <\/li>\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-4-inorganic-chemistry-and-the-periodic-table\/\">Inorganic Chemistry &amp; The Periodic Table<\/a>\r\n      <\/li>\r\n      <li>\r\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-5-formulae-equations-and-amounts-of-substance\/\">Formulae, Equations &amp; Amounts<\/a>\r\n      <\/li>\r\n    <\/ul>\r\n  <\/div>\r\n<\/aside>\r\n\r\n<script>\r\n(function() {\r\n  function normalisePath(path) {\r\n    return String(path || '')\r\n      .split('?')[0]\r\n      .split('#')[0]\r\n      .replace(\/\\\/+$\/, '')\r\n      .toLowerCase();\r\n  }\r\n\r\n  function highlightActive() {\r\n    var sidebar = document.querySelector('.ols-sidebar');\r\n    if (!sidebar) return false;\r\n\r\n    var currentPath = normalisePath(window.location.pathname);\r\n    var links = sidebar.querySelectorAll('a[href]');\r\n    var matched = null;\r\n    var matchedLength = 0;\r\n\r\n    sidebar.querySelectorAll('.active, .active-main, .parent-active').forEach(function(item) {\r\n      item.classList.remove('active', 'active-main', 'parent-active');\r\n    });\r\n\r\n    sidebar.querySelectorAll('a[data-ols-disabled-parent=\"1\"], a[aria-current]').forEach(function(a) {\r\n      a.removeAttribute('aria-current');\r\n      a.removeAttribute('tabindex');\r\n      a.removeAttribute('data-ols-disabled-parent');\r\n    });\r\n\r\n    links.forEach(function(a) {\r\n      try {\r\n        var href = a.getAttribute('href');\r\n        if (!href || href === '#' || href.charAt(0) === '#') return;\r\n        var linkPath = normalisePath(new URL(href, window.location.origin).pathname);\r\n        if (!linkPath) return;\r\n        if (currentPath === linkPath || currentPath.indexOf(linkPath + '\/') === 0) {\r\n          if (linkPath.length > matchedLength) {\r\n            matched = a;\r\n            matchedLength = linkPath.length;\r\n          }\r\n        }\r\n      } catch(e) {}\r\n    });\r\n\r\n    if (matched) {\r\n      var matchedLi = matched.closest('li');\r\n      var parentSub = matched.closest('.ols-subtopic-list');\r\n\r\n      if (parentSub) {\r\n        if (matchedLi) {\r\n          matchedLi.classList.add('active');\r\n          matched.setAttribute('aria-current', 'page');\r\n        }\r\n        var parentLi = parentSub.closest('li');\r\n        if (parentLi) {\r\n          parentLi.classList.add('parent-active', 'active-main');\r\n          var parentLink = parentLi.querySelector(':scope > a');\r\n          if (parentLink) {\r\n            parentLink.setAttribute('aria-current', 'true');\r\n            parentLink.setAttribute('tabindex', '-1');\r\n            parentLink.setAttribute('data-ols-disabled-parent', '1');\r\n          }\r\n        }\r\n      } else {\r\n        if (matchedLi) {\r\n          matchedLi.classList.add('parent-active', 'active-main');\r\n          matched.setAttribute('aria-current', 'page');\r\n          matched.setAttribute('tabindex', '-1');\r\n          matched.setAttribute('data-ols-disabled-parent', '1');\r\n        }\r\n      }\r\n    }\r\n\r\n    return true;\r\n  }\r\n\r\n  if (!highlightActive()) {\r\n    document.addEventListener('DOMContentLoaded', highlightActive);\r\n  }\r\n})();\r\n<\/script>\n\n  <main class=\"ols-main\">\n      <nav class=\"ols-breadcrumbs\" aria-label=\"Breadcrumb\">\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/\">Revision Notes<\/a> \/\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/\">A Level Chemistry<\/a> \/\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/\">Edexcel<\/a> \/\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/\">Topic 2 Bonding and Structure<\/a> \/\n        <a href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/\">Shapes of Molecules<\/a> \/\n        <span>Trigonal Pyramidal<\/span>\n      <\/nav>\n\n      <header class=\"ols-title-card\">\n        <h1>Trigonal Pyramidal Molecular Shape<\/h1>\n        <p class=\"ols-page-intro\">A focused revision guide to the trigonal pyramidal molecular shape, using NH<sub>3<\/sub> as the key example. This page explains why three bonding pairs and one lone pair around a central atom give a three-dimensional pyramidal arrangement with bond angles of about 107&deg;.<\/p>\n\n        <div class=\"ols-badges\">\n          <div class=\"ols-badge\">Unit: Paper 1<\/div>\n          <div class=\"ols-badge\">Topic 2: Bonding and Structure<\/div>\n          <div class=\"ols-badge\">9CH0\/01<\/div>\n        <\/div>\n\n        <div class=\"ols-author\">\n          <img decoding=\"async\" class=\"ols-author-avatar-img\" src=\"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/Author-Profile.jpeg\" alt=\"Dr. Mohammed Al-Fatah\">\n          <div class=\"ols-author-content\">\n            <h2 class=\"ols-author-title\">Written by:<br><span>Dr. Mohammed Al-Fatah<\/span><\/h2>\n            <p class=\"ols-author-description\">Chemistry specialist revision notes for A Level Chemistry.<\/p>\n            <a class=\"ols-linkedin-pill\" href=\"https:\/\/www.linkedin.com\/in\/doctormohammedfatah\/\" target=\"_blank\" rel=\"noopener noreferrer\">\n              <svg class=\"ols-linkedin-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\" aria-hidden=\"true\"><path d=\"M4.98 3.5C4.98 4.88 3.86 6 2.48 6S0 4.88 0 3.5 1.12 1 2.48 1s2.5 1.12 2.5 2.5zM.5 8h4V24h-4V8zm7 0h3.8v2.2h.1c.5-.9 1.8-2.2 3.9-2.2 4.2 0 5 2.8 5 6.4V24h-4v-7.6c0-1.8 0-4.2-2.6-4.2s-3 2-3 4v7.8h-4V8z\"><\/path><\/svg>\n              View LinkedIn Profile\n            <\/a>\n          <\/div>\n        <\/div>\n      <\/header>\n\n<style>\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-spec-grid {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: 14px;\n    margin-top: 18px;\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-spec-box {\n    background: #ffffff;\n    border: 1px solid var(--border);\n    border-radius: 18px;\n    padding: 18px;\n    box-shadow: var(--inner-shadow);\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-spec-box strong {\n    display: block;\n    font-size: 15px;\n    color: var(--blue);\n    margin-bottom: 6px;\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-spec-box span {\n    display: block;\n    font-size: 17px;\n    line-height: 1.55;\n    color: var(--body-text);\n    font-weight: 300;\n    overflow-wrap: anywhere;\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-h5p-grid {\n    display: grid;\n    gap: 18px;\n    margin-top: 22px;\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-h5p-frame {\n    margin-top: 0;\n  }\n  .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-formula {\n    white-space: nowrap;\n  }\n  @media (max-width: 760px) {\n    .ols-trigonal-pyramidal-molecular-shape-9ch0-page .ols-spec-grid {\n      grid-template-columns: 1fr;\n    }\n  }\n<\/style>\n\n\n\n\n      <article class=\"ols-note-card soft\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">1<\/div>\n          <h2>What Trigonal Pyramidal Means<\/h2>\n        <\/div>\n        <p>A <strong>trigonal pyramidal<\/strong> molecule has three atoms bonded to a central atom, with one lone pair also present on the central atom. The three bonded atoms form a triangular base, while the central atom sits above the base to give a pyramidal shape.<\/p>\n        <p>The key example for this page is <strong>NH<sub>3<\/sub><\/strong>. Nitrogen is the central atom, each hydrogen atom is bonded to nitrogen, and nitrogen also has one lone pair.<\/p>\n\n        <div class=\"ols-spec-grid\">\n          <div class=\"ols-spec-box\">\n            <strong>Bonding pairs<\/strong>\n            <span>3 bonding pairs around the central atom<\/span>\n          <\/div>\n          <div class=\"ols-spec-box\">\n            <strong>Lone pairs<\/strong>\n            <span>1 lone pair on the central atom<\/span>\n          <\/div>\n          <div class=\"ols-spec-box\">\n            <strong>Bond angle<\/strong>\n            <span>about 107&deg; between the bonds<\/span>\n          <\/div>\n        <\/div>\n\n        <div class=\"ols-key-box\"><p><strong>Key idea:<\/strong> three bonding pairs and one lone pair around a central atom give a trigonal pyramidal shape with bond angles of about 107&deg;.<\/p><\/div>\n      <\/article>\n\n      <article class=\"ols-note-card\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">2<\/div>\n          <h2>Why NH<sub>3<\/sub> Is Trigonal Pyramidal<\/h2>\n        <\/div>\n        <p>In NH<sub>3<\/sub>, the central nitrogen atom is surrounded by three N-H bonding pairs and one lone pair. These four regions of negative charge repel one another and are based on a tetrahedral electron-pair arrangement.<\/p>\n        <p>The <strong>molecular shape<\/strong> only considers the positions of the atoms, not the invisible lone pair. Therefore, NH<sub>3<\/sub> is described as <strong>trigonal pyramidal<\/strong>, not tetrahedral.<\/p>\n\n        <div class=\"ols-zoom-card compact\">\n          <div class=\"ols-zoom-card-image\">\n            <img decoding=\"async\" src=\"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/NH3.png\" alt=\"Trigonal pyramidal shape table entry showing three bonding pairs, one lone pair, a 107 degree bond angle and examples including NCl3, PF3, ClO3 minus and H3O plus\" class=\"ols-zoomable-img ols-lightbox-target\" draggable=\"false\">\n          <\/div>\n          <div class=\"ols-zoom-card-caption\">\n            <p>A trigonal pyramidal species has three bonding regions and one lone pair around the central atom, giving a bond angle of about 107&deg;.<\/p>\n          <\/div>\n        <\/div>\n      <\/article>\n\n<section id=\"ols-nh3-trigonal-pyramidal-card\" class=\"ols-nh3-trigonal-pyramidal-card\">\n  <style>\n    #ols-nh3-trigonal-pyramidal-card {\n      --ols-navy: #1C244B;\n      --ols-gold: #c9973a;\n      --ols-red: #c81e1e;\n      --ols-green: #31a36a;\n      --ols-blue: #1f7ae0;\n      --ols-soft-blue: #EEF4FF;\n      --ols-border: rgba(28, 36, 75, 0.14);\n      --ols-shadow: 0 14px 34px rgba(28, 36, 75, 0.12);\n      font-family: Poppins, Arial, sans-serif;\n      color: var(--ols-navy);\n      width: 100%;\n      margin: 28px auto;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card * {\n      box-sizing: border-box;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-model-card {\n      width: 100%;\n      background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);\n      border: 1px solid var(--ols-border);\n      border-radius: 28px;\n      box-shadow: var(--ols-shadow);\n      overflow: hidden;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-model-header {\n      padding: 24px 26px 16px;\n      border-bottom: 1px solid rgba(28, 36, 75, 0.08);\n      background:\n        radial-gradient(circle at top left, rgba(201, 151, 58, 0.16), transparent 34%),\n        radial-gradient(circle at top right, rgba(31, 122, 224, 0.12), transparent 32%),\n        #ffffff;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-pill {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      padding: 7px 12px;\n      border-radius: 999px;\n      background: rgba(31, 122, 224, 0.1);\n      color: var(--ols-blue);\n      border: 1px solid rgba(31, 122, 224, 0.18);\n      font-size: 13px;\n      font-weight: 600;\n      margin-bottom: 12px;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-model-title {\n      margin: 0;\n      font-size: clamp(26px, 3vw, 40px);\n      line-height: 1.12;\n      font-weight: 600;\n      color: var(--ols-navy);\n      letter-spacing: -0.03em;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-model-subtitle {\n      margin: 12px 0 0;\n      font-size: clamp(16px, 1.4vw, 22px);\n      line-height: 1.55;\n      font-weight: 300;\n      color: rgba(28, 36, 75, 0.82);\n      max-width: 980px;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-viewer-wrap {\n      position: relative;\n      width: 100%;\n      height: 590px;\n      background:\n        radial-gradient(circle at center, rgba(31, 122, 224, 0.06), transparent 38%),\n        linear-gradient(180deg, #ffffff 0%, #f7f9fc 100%);\n      overflow: hidden;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card #olsNH3Viewer {\n      width: 100%;\n      height: 100%;\n      display: block;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-viewer-badge {\n      position: absolute;\n      top: 16px;\n      right: 16px;\n      background: rgba(255, 255, 255, 0.92);\n      color: var(--ols-navy);\n      padding: 8px 12px;\n      border-radius: 12px;\n      font-size: 13px;\n      font-weight: 600;\n      box-shadow: 0 6px 18px rgba(28, 36, 75, 0.14);\n      border: 1px solid rgba(28, 36, 75, 0.08);\n      pointer-events: none;\n      z-index: 4;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-angle-badge {\n      position: absolute;\n      left: 16px;\n      bottom: 16px;\n      background: rgba(255, 255, 255, 0.94);\n      color: var(--ols-navy);\n      padding: 8px 12px;\n      border-radius: 999px;\n      font-size: 13px;\n      font-weight: 700;\n      box-shadow: 0 6px 18px rgba(28, 36, 75, 0.14);\n      border: 1px solid rgba(28, 36, 75, 0.08);\n      pointer-events: none;\n      z-index: 4;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-controls {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 10px;\n      padding: 16px 18px;\n      background: #ffffff;\n      border-top: 1px solid rgba(28, 36, 75, 0.08);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-btn {\n      appearance: none;\n      border: 1px solid rgba(28, 36, 75, 0.14);\n      background: #ffffff;\n      color: var(--ols-navy);\n      border-radius: 999px;\n      padding: 10px 15px;\n      font-family: Poppins, Arial, sans-serif;\n      font-size: 14px;\n      font-weight: 600;\n      cursor: pointer;\n      transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-btn:hover {\n      transform: translateY(-2px);\n      box-shadow: 0 8px 20px rgba(28, 36, 75, 0.12);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-btn.is-active {\n      background: var(--ols-navy);\n      color: #ffffff;\n      border-color: var(--ols-navy);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-btn.ols-red {\n      background: var(--ols-red);\n      color: #ffffff;\n      border-color: var(--ols-red);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-explanation {\n      padding: 22px 26px 26px;\n      background: #ffffff;\n      border-top: 1px solid rgba(28, 36, 75, 0.08);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-key-message {\n      margin: 0;\n      padding: 16px 18px;\n      border-radius: 18px;\n      background: var(--ols-soft-blue);\n      border: 1px solid rgba(31, 122, 224, 0.14);\n      font-size: 16px;\n      line-height: 1.65;\n      font-weight: 300;\n      color: rgba(28, 36, 75, 0.88);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-key-message strong {\n      font-weight: 700;\n      color: var(--ols-navy);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-explanation-grid {\n      display: grid;\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n      gap: 14px;\n      margin-top: 16px;\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-info-box {\n      border-radius: 18px;\n      padding: 16px;\n      background: #f8fbff;\n      border: 1px solid rgba(28, 36, 75, 0.1);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-info-box strong {\n      display: block;\n      font-size: 15px;\n      margin-bottom: 6px;\n      color: var(--ols-navy);\n    }\n\n    #ols-nh3-trigonal-pyramidal-card .ols-info-box span {\n      display: block;\n      font-size: 14px;\n      line-height: 1.55;\n      font-weight: 300;\n      color: rgba(28, 36, 75, 0.8);\n    }\n\n    @media (max-width: 820px) {\n      #ols-nh3-trigonal-pyramidal-card .ols-viewer-wrap {\n        height: 500px;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-explanation-grid {\n        grid-template-columns: 1fr;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-viewer-badge {\n        top: 12px;\n        right: 12px;\n        font-size: 12px;\n      }\n    }\n\n    @media (max-width: 520px) {\n      #ols-nh3-trigonal-pyramidal-card .ols-model-header,\n      #ols-nh3-trigonal-pyramidal-card .ols-explanation {\n        padding-left: 18px;\n        padding-right: 18px;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-viewer-wrap {\n        height: 430px;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-controls {\n        padding: 14px;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-btn {\n        width: 100%;\n      }\n\n      #ols-nh3-trigonal-pyramidal-card .ols-viewer-badge {\n        left: 12px;\n        right: 12px;\n        text-align: center;\n      }\n    }\n  <\/style>\n\n  <div class=\"ols-model-card\">\n    <div class=\"ols-model-header\">\n      <div class=\"ols-pill\">3D molecule shape model<\/div>\n      <h2 class=\"ols-model-title\">Trigonal Pyramidal Shape of NH<sub>3<\/sub><\/h2>\n      <p class=\"ols-model-subtitle\">\n        In ammonia, nitrogen has three N-H bonding pairs and one lone pair. The lone pair is shown as two red particles above nitrogen. Because a lone pair repels more strongly than a bonding pair, it compresses the H-N-H bond angles from the tetrahedral value of 109.5\u00b0 to about 107\u00b0.\n      <\/p>\n    <\/div>\n\n    <div class=\"ols-viewer-wrap\">\n      <div id=\"olsNH3Viewer\"><\/div>\n      <div class=\"ols-viewer-badge\">Drag to rotate \u2022 Scroll to zoom \u2022 Gold protractor arcs show the H-N-H bond angles<\/div>\n      <div class=\"ols-angle-badge\" id=\"olsNH3AngleBadge\">Bond angles: 107\u00b0<\/div>\n    <\/div>\n\n    <div class=\"ols-controls\">\n      <button type=\"button\" class=\"ols-btn is-active\" id=\"olsNH3RotateBtn\">Pause rotation<\/button>\n      <button type=\"button\" class=\"ols-btn ols-red\" id=\"olsNH3DemoBtn\">Show lone-pair compression<\/button>\n      <button type=\"button\" class=\"ols-btn\" id=\"olsNH3ResetBtn\">Reset view<\/button>\n    <\/div>\n\n    <div class=\"ols-explanation\">\n      <p class=\"ols-key-message\">\n        <strong>Key idea:<\/strong> NH<sub>3<\/sub> has <strong>three bonding pairs<\/strong> and <strong>one lone pair<\/strong> around nitrogen. The electron-pair arrangement is based on a tetrahedron, but the lone pair repels more strongly than the bonding pairs, compressing the H-N-H bond angle to about <strong>107\u00b0<\/strong>. A useful rule of thumb is that <strong>one lone pair reduces the bond angle by about 2.5\u00b0<\/strong>.\n      <\/p>\n\n      <div class=\"ols-explanation-grid\">\n        <div class=\"ols-info-box\">\n          <strong>Central atom<\/strong>\n          <span>Nitrogen is the central atom and sits at the centre of the model.<\/span>\n        <\/div>\n\n        <div class=\"ols-info-box\">\n          <strong>Lone pair<\/strong>\n          <span>The two red particles represent the lone pair on nitrogen, which repels bonding pairs more strongly.<\/span>\n        <\/div>\n\n        <div class=\"ols-info-box\">\n          <strong>Shape outcome<\/strong>\n          <span>Three bonded atoms and one lone pair produce a trigonal pyramidal shape with H-N-H angles of about 107\u00b0.<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function () {\n      const CARD_ID = \"ols-nh3-trigonal-pyramidal-card\";\n      const VIEWER_ID = \"olsNH3Viewer\";\n\n      function loadScript(src) {\n        return new Promise(function (resolve, reject) {\n          if (src.indexOf(\"three.min.js\") !== -1) {\n            if (window.THREE) {\n              resolve();\n              return;\n            }\n          }\n\n          if (src.indexOf(\"OrbitControls.js\") !== -1) {\n            if (window.THREE) {\n              if (THREE.OrbitControls) {\n                resolve();\n                return;\n              }\n            }\n          }\n\n          const existing = document.querySelector('script[src=\"' + src + '\"]');\n\n          if (existing) {\n            existing.addEventListener(\"load\", resolve);\n            existing.addEventListener(\"error\", reject);\n\n            if (existing.dataset.loaded === \"true\") {\n              resolve();\n            }\n            return;\n          }\n\n          const script = document.createElement(\"script\");\n          script.src = src;\n          script.async = true;\n          script.onload = function () {\n            script.dataset.loaded = \"true\";\n            resolve();\n          };\n          script.onerror = reject;\n          document.head.appendChild(script);\n        });\n      }\n\n      function initNH3Model() {\n        const card = document.getElementById(CARD_ID);\n        if (!card) {\n          return;\n        }\n\n        const container = document.getElementById(VIEWER_ID);\n        if (!container) {\n          return;\n        }\n\n        if (container.dataset.initialised === \"true\") {\n          return;\n        }\n\n        container.dataset.initialised = \"true\";\n\n        const rotateBtn = document.getElementById(\"olsNH3RotateBtn\");\n        const demoBtn = document.getElementById(\"olsNH3DemoBtn\");\n        const resetBtn = document.getElementById(\"olsNH3ResetBtn\");\n        const angleBadge = document.getElementById(\"olsNH3AngleBadge\");\n\n        let autoRotate = true;\n        let isVisible = true;\n        let animating = false;\n        let pulseValue = 0;\n\n        const scene = new THREE.Scene();\n        scene.background = null;\n\n        const camera = new THREE.PerspectiveCamera(\n          45,\n          container.clientWidth \/ container.clientHeight,\n          0.1,\n          1000\n        );\n        camera.position.set(0, 1.8, 7.8);\n\n        const renderer = new THREE.WebGLRenderer({\n          antialias: true,\n          alpha: true\n        });\n\n        const pixelRatio = window.devicePixelRatio ? Math.min(window.devicePixelRatio, 2) : 1;\n        renderer.setPixelRatio(pixelRatio);\n        renderer.setSize(container.clientWidth, container.clientHeight);\n        container.appendChild(renderer.domElement);\n\n        const controls = new THREE.OrbitControls(camera, renderer.domElement);\n        controls.enableDamping = true;\n        controls.dampingFactor = 0.08;\n        controls.enablePan = false;\n        controls.minDistance = 4.8;\n        controls.maxDistance = 10.5;\n        controls.target.set(0, 0, 0);\n\n        const root = new THREE.Group();\n        scene.add(root);\n\n        const modelRoot = new THREE.Group();\n        modelRoot.rotation.x = 0.48;\n        modelRoot.rotation.y = 0.38;\n        root.add(modelRoot);\n\n        const ambient = new THREE.AmbientLight(0xffffff, 0.82);\n        scene.add(ambient);\n\n        const keyLight = new THREE.DirectionalLight(0xffffff, 1.12);\n        keyLight.position.set(5, 7, 8);\n        scene.add(keyLight);\n\n        const fillLight = new THREE.DirectionalLight(0xe4f1ff, 0.58);\n        fillLight.position.set(-6, -3, 5);\n        scene.add(fillLight);\n\n        const backLight = new THREE.DirectionalLight(0xffffff, 0.34);\n        backLight.position.set(0, 3, -7);\n        scene.add(backLight);\n\n        const guideRadius = 2.65;\n        const bondLength = 2.08;\n        const arcRadii = [0.78, 0.98, 1.18];\n\n        const guideMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xEEF4FF,\n          transparent: true,\n          opacity: 0.12,\n          roughness: 0.35,\n          metalness: 0.02,\n          clearcoat: 0.35,\n          side: THREE.DoubleSide\n        });\n\n        const nitrogenMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0x2563eb,\n          metalness: 0.08,\n          roughness: 0.25,\n          clearcoat: 0.65,\n          clearcoatRoughness: 0.16\n        });\n\n        const hydrogenMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xffffff,\n          metalness: 0.02,\n          roughness: 0.18,\n          clearcoat: 0.48,\n          clearcoatRoughness: 0.16\n        });\n\n        const bondMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xcfd5df,\n          metalness: 0.14,\n          roughness: 0.32,\n          clearcoat: 0.42,\n          clearcoatRoughness: 0.2\n        });\n\n        const lonePairMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xc81e1e,\n          metalness: 0.03,\n          roughness: 0.22,\n          clearcoat: 0.72,\n          clearcoatRoughness: 0.16\n        });\n\n        const goldArcMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xc9973a,\n          emissive: 0x5a3d0d,\n          emissiveIntensity: 0.18,\n          metalness: 0.05,\n          roughness: 0.22,\n          clearcoat: 0.55,\n          clearcoatRoughness: 0.16\n        });\n\n        const arcEndMaterial = new THREE.MeshPhysicalMaterial({\n          color: 0xc9973a,\n          emissive: 0x5a3d0d,\n          emissiveIntensity: 0.12,\n          metalness: 0.05,\n          roughness: 0.2,\n          clearcoat: 0.45\n        });\n\n        const guideSphere = new THREE.Mesh(\n          new THREE.SphereGeometry(guideRadius, 96, 96),\n          guideMaterial\n        );\n        modelRoot.add(guideSphere);\n\n        addSphereGrid(modelRoot, guideRadius);\n\n        const nitrogen = new THREE.Mesh(\n          new THREE.SphereGeometry(0.34, 64, 64),\n          nitrogenMaterial\n        );\n        modelRoot.add(nitrogen);\n\n        addGlow(modelRoot, new THREE.Vector3(0, 0, 0), 0.72, 0xdfe6ee, 0.28);\n        addTextSprite(modelRoot, \"N\", new THREE.Vector3(0, 0.52, 0.14), 72, \"#1C244B\", 0.82);\n\n        const lonePairGroup = new THREE.Group();\n        modelRoot.add(lonePairGroup);\n\n        const lonePairDirection = new THREE.Vector3(0, 1, 0).normalize();\n\n        const loneElectron1 = new THREE.Mesh(\n          new THREE.SphereGeometry(0.14, 40, 40),\n          lonePairMaterial\n        );\n        const loneElectron2 = new THREE.Mesh(\n          new THREE.SphereGeometry(0.14, 40, 40),\n          lonePairMaterial\n        );\n\n        lonePairGroup.add(loneElectron1);\n        lonePairGroup.add(loneElectron2);\n\n        const lonePairLabel = addTextSprite(\n          modelRoot,\n          \"lone pair\",\n          new THREE.Vector3(0, 0, 0),\n          54,\n          \"#c81e1e\",\n          0.76\n        );\n\n        const pulseMaterial = new THREE.MeshBasicMaterial({\n          color: 0xc81e1e,\n          transparent: true,\n          opacity: 0,\n          wireframe: true\n        });\n\n        const pulseSphere = new THREE.Mesh(\n          new THREE.SphereGeometry(0.55, 48, 48),\n          pulseMaterial\n        );\n        modelRoot.add(pulseSphere);\n\n        const bondUnits = [\n          createBondUnit(),\n          createBondUnit(),\n          createBondUnit()\n        ];\n\n        bondUnits.forEach(function (unit) {\n          modelRoot.add(unit.group);\n        });\n\n        const angleArcs = [\n          createAngleArc(arcRadii[0]),\n          createAngleArc(arcRadii[1]),\n          createAngleArc(arcRadii[2])\n        ];\n\n        angleArcs.forEach(function (arc) {\n          modelRoot.add(arc.tube);\n          modelRoot.add(arc.startCap);\n          modelRoot.add(arc.endCap);\n          modelRoot.add(arc.label.sprite);\n        });\n\n        const targetBondVectors = createTrigonalPyramidalVectors(107);\n        const tetrahedralBondVectors = createTrigonalPyramidalVectors(109.5);\n\n        let bondVectors = targetBondVectors.map(function (v) {\n          return v.clone();\n        });\n\n        function createTrigonalPyramidalVectors(angleDeg) {\n          const targetDot = Math.cos(angleDeg * Math.PI \/ 180);\n          const cosThetaSquared = (targetDot + 0.5) \/ 1.5;\n          const cosTheta = -Math.sqrt(Math.max(0, cosThetaSquared));\n          const sinTheta = Math.sqrt(Math.max(0, 1 - cosTheta * cosTheta));\n\n          const result = [];\n\n          for (let i = 0; i < 3; i++) {\n            const phi = (i * Math.PI * 2) \/ 3 + Math.PI \/ 6;\n            result.push(\n              new THREE.Vector3(\n                sinTheta * Math.cos(phi),\n                cosTheta,\n                sinTheta * Math.sin(phi)\n              ).normalize()\n            );\n          }\n\n          return result;\n        }\n\n        function createBondUnit() {\n          const group = new THREE.Group();\n\n          const bond = new THREE.Mesh(\n            new THREE.CylinderGeometry(0.08, 0.08, 1, 32, 1),\n            bondMaterial\n          );\n          group.add(bond);\n\n          const hydrogen = new THREE.Mesh(\n            new THREE.SphereGeometry(0.30, 64, 64),\n            hydrogenMaterial\n          );\n          group.add(hydrogen);\n\n          const hLabel = addTextSprite(group, \"H\", new THREE.Vector3(0, 0, 0), 70, \"#1C244B\", 0.62);\n\n          return {\n            group: group,\n            bond: bond,\n            hydrogen: hydrogen,\n            hLabel: hLabel\n          };\n        }\n\n        function createAngleArc(radius) {\n          const starterCurve = new THREE.CatmullRomCurve3([\n            new THREE.Vector3(0, 0, 0),\n            new THREE.Vector3(0.1, 0, 0),\n            new THREE.Vector3(0.2, 0, 0)\n          ]);\n\n          const tube = new THREE.Mesh(\n            new THREE.TubeGeometry(starterCurve, 24, 0.026, 10, false),\n            goldArcMaterial\n          );\n\n          const startCap = new THREE.Mesh(\n            new THREE.SphereGeometry(0.052, 18, 18),\n            arcEndMaterial\n          );\n\n          const endCap = new THREE.Mesh(\n            new THREE.SphereGeometry(0.052, 18, 18),\n            arcEndMaterial\n          );\n\n          const label = createDynamicTextSprite(\"107\u00b0\", \"#c9973a\", 74, 0.80);\n\n          return {\n            tube: tube,\n            startCap: startCap,\n            endCap: endCap,\n            label: label,\n            radius: radius\n          };\n        }\n\n        function addSphereGrid(parent, radius) {\n          const gridMaterial = new THREE.LineBasicMaterial({\n            color: 0x1C244B,\n            transparent: true,\n            opacity: 0.10\n          });\n\n          const latitudes = [-60, -30, 0, 30, 60];\n\n          latitudes.forEach(function (deg) {\n            const y = radius * Math.sin(deg * Math.PI \/ 180);\n            const r = radius * Math.cos(deg * Math.PI \/ 180);\n            const curve = new THREE.EllipseCurve(0, 0, r, r, 0, Math.PI * 2, false, 0);\n            const points = curve.getPoints(160);\n            const geometry = new THREE.BufferGeometry().setFromPoints(\n              points.map(function (p) {\n                return new THREE.Vector3(p.x, y, p.y);\n              })\n            );\n\n            const line = new THREE.LineLoop(geometry, gridMaterial);\n            parent.add(line);\n          });\n\n          for (let i = 0; i < 6; i++) {\n            const group = new THREE.Group();\n            const curve = new THREE.EllipseCurve(0, 0, radius, radius, 0, Math.PI * 2, false, 0);\n            const points = curve.getPoints(160);\n            const geometry = new THREE.BufferGeometry().setFromPoints(\n              points.map(function (p) {\n                return new THREE.Vector3(p.x, p.y, 0);\n              })\n            );\n\n            const line = new THREE.LineLoop(geometry, gridMaterial);\n            group.add(line);\n            group.rotation.y = i * Math.PI \/ 6;\n            parent.add(group);\n          }\n        }\n\n        function addGlow(parent, position, scale, color, opacity) {\n          const canvas = document.createElement(\"canvas\");\n          canvas.width = 128;\n          canvas.height = 128;\n\n          const ctx = canvas.getContext(\"2d\");\n          const gradient = ctx.createRadialGradient(64, 64, 2, 64, 64, 62);\n          gradient.addColorStop(0, \"rgba(255,255,255,\" + opacity + \")\");\n          gradient.addColorStop(0.42, \"rgba(150,205,255,\" + String(opacity * 0.55) + \")\");\n          gradient.addColorStop(1, \"rgba(255,255,255,0)\");\n\n          ctx.fillStyle = gradient;\n          ctx.fillRect(0, 0, 128, 128);\n\n          const texture = new THREE.CanvasTexture(canvas);\n\n          const material = new THREE.SpriteMaterial({\n            map: texture,\n            color: color,\n            transparent: true,\n            depthWrite: false\n          });\n\n          const sprite = new THREE.Sprite(material);\n          sprite.position.copy(position);\n          sprite.scale.set(scale * 2.2, scale * 2.2, 1);\n          parent.add(sprite);\n          return sprite;\n        }\n\n        function addTextSprite(parent, text, position, fontSize, color, scale) {\n          const canvas = document.createElement(\"canvas\");\n          canvas.width = 512;\n          canvas.height = 256;\n\n          const ctx = canvas.getContext(\"2d\");\n          ctx.clearRect(0, 0, canvas.width, canvas.height);\n          ctx.font = \"700 \" + String(fontSize) + \"px Arial, sans-serif\";\n          ctx.textAlign = \"center\";\n          ctx.textBaseline = \"middle\";\n          ctx.lineWidth = 10;\n          ctx.strokeStyle = \"rgba(255,255,255,0.92)\";\n          ctx.strokeText(text, canvas.width \/ 2, canvas.height \/ 2);\n          ctx.fillStyle = color;\n          ctx.fillText(text, canvas.width \/ 2, canvas.height \/ 2);\n\n          const texture = new THREE.CanvasTexture(canvas);\n          const material = new THREE.SpriteMaterial({\n            map: texture,\n            transparent: true,\n            depthTest: false\n          });\n\n          const sprite = new THREE.Sprite(material);\n          sprite.position.copy(position);\n          sprite.scale.set(1.25 * scale, 0.62 * scale, 1);\n          parent.add(sprite);\n          return sprite;\n        }\n\n        function createDynamicTextSprite(text, color, fontSize, scale) {\n          const canvas = document.createElement(\"canvas\");\n          canvas.width = 512;\n          canvas.height = 256;\n          const ctx = canvas.getContext(\"2d\");\n\n          const texture = new THREE.CanvasTexture(canvas);\n          const material = new THREE.SpriteMaterial({\n            map: texture,\n            transparent: true,\n            depthTest: false\n          });\n\n          const sprite = new THREE.Sprite(material);\n          sprite.scale.set(1.38 * scale, 0.68 * scale, 1);\n\n          function setText(newText) {\n            ctx.clearRect(0, 0, canvas.width, canvas.height);\n            ctx.font = \"700 \" + String(fontSize) + \"px Arial, sans-serif\";\n            ctx.textAlign = \"center\";\n            ctx.textBaseline = \"middle\";\n            ctx.lineWidth = 10;\n            ctx.strokeStyle = \"rgba(255,255,255,0.95)\";\n            ctx.strokeText(newText, canvas.width \/ 2, canvas.height \/ 2);\n            ctx.fillStyle = color;\n            ctx.fillText(newText, canvas.width \/ 2, canvas.height \/ 2);\n            texture.needsUpdate = true;\n          }\n\n          setText(text);\n\n          return {\n            sprite: sprite,\n            setText: setText\n          };\n        }\n\n        function updateBondUnit(unit, vector) {\n          const direction = vector.clone().normalize();\n\n          const midpoint = direction.clone().multiplyScalar(bondLength \/ 2);\n          unit.bond.position.copy(midpoint);\n          unit.bond.quaternion.setFromUnitVectors(new THREE.Vector3(0, 1, 0), direction);\n          unit.bond.scale.set(1, bondLength, 1);\n\n          const hydrogenPosition = direction.clone().multiplyScalar(bondLength);\n          unit.hydrogen.position.copy(hydrogenPosition);\n          unit.hLabel.position.copy(direction.clone().multiplyScalar(bondLength + 0.46));\n        }\n\n        function updateAllBondUnits() {\n          for (let i = 0; i < 3; i++) {\n            updateBondUnit(bondUnits[i], bondVectors[i]);\n          }\n        }\n\n        function updateLonePair() {\n          const base = lonePairDirection.clone().multiplyScalar(1.04);\n          const sideOffset = new THREE.Vector3(0.18, 0, 0);\n\n          loneElectron1.position.copy(base.clone().add(sideOffset));\n          loneElectron2.position.copy(base.clone().sub(sideOffset));\n\n          lonePairLabel.position.copy(lonePairDirection.clone().multiplyScalar(1.54));\n        }\n\n        function buildArcPoints(v1, v2, radius, segments) {\n          let dot = v1.clone().normalize().dot(v2.clone().normalize());\n          dot = Math.max(-1, Math.min(1, dot));\n\n          const theta = Math.acos(dot);\n          const sinTheta = Math.sin(theta);\n          const points = [];\n\n          for (let i = 0; i <= segments; i++) {\n            const t = i \/ segments;\n            let p;\n\n            if (sinTheta < 0.0001) {\n              p = v1.clone().lerp(v2, t).normalize();\n            } else {\n              const a = Math.sin((1 - t) * theta) \/ sinTheta;\n              const b = Math.sin(t * theta) \/ sinTheta;\n              p = v1.clone().multiplyScalar(a).add(v2.clone().multiplyScalar(b)).normalize();\n            }\n\n            points.push(p.multiplyScalar(radius));\n          }\n\n          return points;\n        }\n\n        function updateAngleArcs() {\n          const arcPairs = [\n            [0, 1],\n            [1, 2],\n            [2, 0]\n          ];\n\n          const labelValues = [];\n\n          for (let i = 0; i < arcPairs.length; i++) {\n            const pair = arcPairs[i];\n            const v1 = bondVectors[pair[0]].clone().normalize();\n            const v2 = bondVectors[pair[1]].clone().normalize();\n            const arc = angleArcs[i];\n\n            const points = buildArcPoints(v1, v2, arc.radius, 56);\n\n            const curve = new THREE.CatmullRomCurve3(points);\n            const newGeometry = new THREE.TubeGeometry(curve, 72, 0.026, 10, false);\n\n            arc.tube.geometry.dispose();\n            arc.tube.geometry = newGeometry;\n\n            arc.startCap.position.copy(points[0]);\n            arc.endCap.position.copy(points[points.length - 1]);\n\n            const midPoint = points[Math.floor(points.length \/ 2)].clone().multiplyScalar(1.10);\n            arc.label.sprite.position.copy(midPoint);\n\n            let dot = v1.dot(v2);\n            dot = Math.max(-1, Math.min(1, dot));\n            const angle = (Math.acos(dot) * 180) \/ Math.PI;\n            arc.label.setText(angle.toFixed(0) + \"\u00b0\");\n            labelValues.push(angle.toFixed(0));\n          }\n\n          angleBadge.textContent = \"Bond angles: \" + labelValues.join(\"\u00b0, \") + \"\u00b0\";\n        }\n\n        function updateModel() {\n          updateAllBondUnits();\n          updateLonePair();\n          updateAngleArcs();\n        }\n\n        function animateVectors(startVectors, targetVectors, duration) {\n          if (animating) {\n            return;\n          }\n\n          animating = true;\n          pulseValue = 1;\n          let startTime = null;\n\n          function easeOutCubic(t) {\n            return 1 - Math.pow(1 - t, 3);\n          }\n\n          function step(timestamp) {\n            if (startTime === null) {\n              startTime = timestamp;\n            }\n\n            let progress = (timestamp - startTime) \/ duration;\n            if (progress > 1) {\n              progress = 1;\n            }\n\n            const eased = easeOutCubic(progress);\n\n            for (let i = 0; i < 3; i++) {\n              bondVectors[i] = startVectors[i].clone().lerp(targetVectors[i], eased).normalize();\n            }\n\n            updateModel();\n\n            if (progress < 1) {\n              requestAnimationFrame(step);\n            } else {\n              for (let i = 0; i < 3; i++) {\n                bondVectors[i] = targetVectors[i].clone();\n              }\n              updateModel();\n              animating = false;\n            }\n          }\n\n          requestAnimationFrame(step);\n        }\n\n        function resetModel() {\n          camera.position.set(0, 1.8, 7.8);\n          controls.target.set(0, 0, 0);\n          controls.update();\n\n          root.rotation.set(0, 0, 0);\n          modelRoot.rotation.x = 0.48;\n          modelRoot.rotation.y = 0.38;\n          modelRoot.rotation.z = 0.08;\n\n          bondVectors = targetBondVectors.map(function (v) {\n            return v.clone();\n          });\n\n          pulseValue = 1;\n          updateModel();\n        }\n\n        function showLonePairCompressionDemo() {\n          if (animating) {\n            return;\n          }\n\n          const startVectors = tetrahedralBondVectors.map(function (v) {\n            return v.clone();\n          });\n\n          const targets = targetBondVectors.map(function (v) {\n            return v.clone();\n          });\n\n          bondVectors = startVectors.map(function (v) {\n            return v.clone();\n          });\n\n          updateModel();\n\n          window.setTimeout(function () {\n            animateVectors(startVectors, targets, 950);\n          }, 240);\n        }\n\n        rotateBtn.addEventListener(\"click\", function () {\n          autoRotate = !autoRotate;\n          rotateBtn.classList.toggle(\"is-active\", autoRotate);\n\n          if (autoRotate) {\n            rotateBtn.textContent = \"Pause rotation\";\n          } else {\n            rotateBtn.textContent = \"Resume rotation\";\n          }\n        });\n\n        demoBtn.addEventListener(\"click\", showLonePairCompressionDemo);\n        resetBtn.addEventListener(\"click\", resetModel);\n\n        const observer = new IntersectionObserver(function (entries) {\n          entries.forEach(function (entry) {\n            isVisible = entry.isIntersecting;\n          });\n        }, { threshold: 0.18 });\n\n        observer.observe(card);\n\n        function onResize() {\n          const width = container.clientWidth;\n          const height = container.clientHeight;\n          camera.aspect = width \/ height;\n          camera.updateProjectionMatrix();\n          renderer.setSize(width, height);\n        }\n\n        window.addEventListener(\"resize\", onResize);\n\n        function updatePulse() {\n          if (pulseValue > 0) {\n            const scale = 0.7 + (1 - pulseValue) * 4.6;\n            pulseSphere.scale.set(scale, scale, scale);\n            pulseMaterial.opacity = pulseValue * 0.28;\n            pulseValue = pulseValue - 0.025;\n\n            if (pulseValue < 0) {\n              pulseValue = 0;\n            }\n          } else {\n            pulseMaterial.opacity = 0;\n          }\n        }\n\n        function animate() {\n          requestAnimationFrame(animate);\n\n          if (isVisible) {\n            if (autoRotate) {\n              root.rotation.y += 0.003;\n            }\n          }\n\n          updatePulse();\n          controls.update();\n          renderer.render(scene, camera);\n        }\n\n        resetModel();\n        animate();\n      }\n\n      document.addEventListener(\"DOMContentLoaded\", function () {\n        loadScript(\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/three.js\/r128\/three.min.js\")\n          .then(function () {\n            return loadScript(\"https:\/\/cdn.jsdelivr.net\/npm\/three@0.128.0\/examples\/js\/controls\/OrbitControls.js\");\n          })\n          .then(function () {\n            initNH3Model();\n          })\n          .catch(function (error) {\n            console.error(\"NH3 trigonal pyramidal model failed to load:\", error);\n          });\n      });\n    })();\n  <\/script>\n<\/section>\n\n      <article class=\"ols-note-card purple\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">3<\/div>\n          <h2>Bonding Pairs, Lone Pairs and Bond Angle<\/h2>\n        <\/div>\n        <p>The electron-pair arrangement around nitrogen in NH<sub>3<\/sub> is based on four electron domains: three bonding pairs and one lone pair. A lone pair occupies more space around the central atom than a bonding pair because it is attracted to only one nucleus.<\/p>\n        <p>This means the lone pair repels the N-H bonding pairs more strongly than the bonding pairs repel each other. The H-N-H bond angle is compressed from the tetrahedral value of 109.5&deg; to about <strong>107&deg;<\/strong>.<\/p>\n\n        <div class=\"ols-table-wrap\">\n          <table class=\"ols-table\">\n            <thead>\n              <tr>\n                <th>Feature<\/th>\n                <th>Trigonal pyramidal value<\/th>\n                <th>Meaning in NH<sub>3<\/sub><\/th>\n              <\/tr>\n            <\/thead>\n            <tbody>\n              <tr>\n                <td data-label=\"Feature\">Number of bonding pairs<\/td>\n                <td data-label=\"Trigonal pyramidal value\">3<\/td>\n                <td data-label=\"Meaning in NH3\">Three N-H bonding pairs form the visible triangular base of the pyramid.<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Feature\">Number of lone pairs<\/td>\n                <td data-label=\"Trigonal pyramidal value\">1<\/td>\n                <td data-label=\"Meaning in NH3\">The lone pair repels more strongly than bonding pairs and compresses the bond angle.<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Feature\">Bond angle<\/td>\n                <td data-label=\"Trigonal pyramidal value\">about 107&deg;<\/td>\n                <td data-label=\"Meaning in NH3\">The angle is smaller than 109.5&deg; because of lone-pair repulsion.<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Feature\">Molecular shape<\/td>\n                <td data-label=\"Trigonal pyramidal value\">Trigonal pyramidal<\/td>\n                <td data-label=\"Meaning in NH3\">Only the positions of the bonded atoms are used to name the molecular shape.<\/td>\n              <\/tr>\n            <\/tbody>\n          <\/table>\n        <\/div>\n      <\/article>\n\n      <article class=\"ols-note-card\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">4<\/div>\n          <h2>Examples of Trigonal Pyramidal Species<\/h2>\n        <\/div>\n        <p>Several molecules and ions use the same three-bonding-pair and one-lone-pair arrangement around the central atom. The examples from this shape table include <strong>NCl<sub>3<\/sub><\/strong>, <strong>PF<sub>3<\/sub><\/strong>, <strong>ClO<sub>3<\/sub><sup>-<\/sup><\/strong> and <strong>H<sub>3<\/sub>O<sup>+<\/sup><\/strong>.<\/p>\n        <p>For exam purposes, focus on the central atom, count the bonding pairs and lone pairs around it, then state the shape and approximate bond angle.<\/p>\n\n        <div class=\"ols-table-wrap\">\n          <table class=\"ols-table\">\n            <thead>\n              <tr>\n                <th>Species<\/th>\n                <th>Central atom<\/th>\n                <th>Electron regions around central atom<\/th>\n                <th>Shape<\/th>\n                <th>Bond angle<\/th>\n              <\/tr>\n            <\/thead>\n            <tbody>\n              <tr>\n                <td data-label=\"Species\">NH<sub>3<\/sub><\/td>\n                <td data-label=\"Central atom\">N<\/td>\n                <td data-label=\"Electron regions\">3 bonding regions, 1 lone pair<\/td>\n                <td data-label=\"Shape\">Trigonal pyramidal<\/td>\n                <td data-label=\"Bond angle\">about 107&deg;<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Species\">NCl<sub>3<\/sub><\/td>\n                <td data-label=\"Central atom\">N<\/td>\n                <td data-label=\"Electron regions\">3 bonding regions, 1 lone pair<\/td>\n                <td data-label=\"Shape\">Trigonal pyramidal<\/td>\n                <td data-label=\"Bond angle\">about 107&deg;<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Species\">PF<sub>3<\/sub><\/td>\n                <td data-label=\"Central atom\">P<\/td>\n                <td data-label=\"Electron regions\">3 bonding regions, 1 lone pair<\/td>\n                <td data-label=\"Shape\">Trigonal pyramidal<\/td>\n                <td data-label=\"Bond angle\">about 107&deg;<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Species\">ClO<sub>3<\/sub><sup>-<\/sup><\/td>\n                <td data-label=\"Central atom\">Cl<\/td>\n                <td data-label=\"Electron regions\">3 bonding regions, 1 lone pair<\/td>\n                <td data-label=\"Shape\">Trigonal pyramidal<\/td>\n                <td data-label=\"Bond angle\">about 107&deg;<\/td>\n              <\/tr>\n              <tr>\n                <td data-label=\"Species\">H<sub>3<\/sub>O<sup>+<\/sup><\/td>\n                <td data-label=\"Central atom\">O<\/td>\n                <td data-label=\"Electron regions\">3 bonding regions, 1 lone pair<\/td>\n                <td data-label=\"Shape\">Trigonal pyramidal<\/td>\n                <td data-label=\"Bond angle\">about 107&deg;<\/td>\n              <\/tr>\n            <\/tbody>\n          <\/table>\n        <\/div>\n      <\/article>\n\n      <article class=\"ols-note-card orange\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">5<\/div>\n          <h2>How to Explain Trigonal Pyramidal Shape in an Exam<\/h2>\n        <\/div>\n        <p>A full exam explanation should connect the number of electron pairs to electron-pair repulsion, then explain why the bond angle is slightly smaller than the tetrahedral angle.<\/p>\n\n        <div class=\"ols-rule-list\">\n          <div class=\"ols-rule-item\">\n            <h3>1. Identify the central atom<\/h3>\n            <p>For NH<sub>3<\/sub>, the central atom is nitrogen.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>2. Count bonding pairs and lone pairs<\/h3>\n            <p>Nitrogen has three bonding pairs and one lone pair around it.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>3. Apply electron-pair repulsion<\/h3>\n            <p>The electron pairs repel and arrange themselves as far apart as possible, but the lone pair repels more strongly than a bonding pair.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>4. State the shape and angle<\/h3>\n            <p>The molecule is trigonal pyramidal with bond angles of about 107&deg;.<\/p>\n          <\/div>\n        <\/div>\n\n        <div class=\"ols-definition-box\">\n          <p><strong>Exam answer model:<\/strong> NH<sub>3<\/sub> has three bonding pairs and one lone pair around the central nitrogen atom. The electron pairs repel and arrange themselves as far apart as possible. The lone pair repels the bonding pairs more strongly, compressing the H-N-H bond angle from 109.5&deg; to about 107&deg;. Therefore, NH<sub>3<\/sub> is trigonal pyramidal.<\/p>\n        <\/div>\n      <\/article>\n\n      <article class=\"ols-note-card soft\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">6<\/div>\n          <h2>Common Exam Points<\/h2>\n        <\/div>\n        <p>Trigonal pyramidal questions often test whether you can distinguish the electron-pair arrangement from the molecular shape.<\/p>\n        <div class=\"ols-rule-list\">\n          <div class=\"ols-rule-item\">\n            <h3>Do not call NH<sub>3<\/sub> tetrahedral<\/h3>\n            <p>The electron-pair arrangement is based on a tetrahedron, but the molecular shape is trigonal pyramidal because one region is a lone pair rather than a bonded atom.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>Do not write 109.5&deg;<\/h3>\n            <p>109.5&deg; is the ideal tetrahedral angle. In NH<sub>3<\/sub>, the lone pair compresses the H-N-H angle to about 107&deg;.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>Use lone-pair repulsion language<\/h3>\n            <p>Marks usually require the idea that a lone pair repels bonding pairs more strongly than bonding pairs repel each other.<\/p>\n          <\/div>\n          <div class=\"ols-rule-item\">\n            <h3>Count around the central atom only<\/h3>\n            <p>The shape is determined by the bonding pairs and lone pairs around the central atom, not by the total number of bonds or lone pairs in the whole species.<\/p>\n          <\/div>\n        <\/div>\n      <\/article>\n\n      <section class=\"ols-h5p-card\">\n        <h2>Check Your Understanding<\/h2>\n        <p>Use these short activities to check the trigonal pyramidal shape, NH<sub>3<\/sub>, three bonding pairs, one lone pair and the 107&deg; bond angle.<\/p>\n        <div class=\"ols-h5p-grid\">\n          <div class=\"ols-h5p-frame\"><div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-188\" class=\"h5p-iframe\" data-content-id=\"188\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"trigonalpyramidal.1 Drag: Trigonal Pyramidal Molecular Shape Key Concepts\"><\/iframe><\/div><\/div>\n          <div class=\"ols-h5p-frame\"><div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-189\" class=\"h5p-iframe\" data-content-id=\"189\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"trigonalpyramidal.2 MCQ: Electron Pairs in NH3\"><\/iframe><\/div><\/div>\n          <div class=\"ols-h5p-frame\"><div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-190\" class=\"h5p-iframe\" data-content-id=\"190\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"trigonalpyramidal.3 MCQ: Bond Angle in NH3\"><\/iframe><\/div><\/div>\n          <div class=\"ols-h5p-frame\"><div class=\"h5p-iframe-wrapper\"><iframe id=\"h5p-iframe-191\" class=\"h5p-iframe\" data-content-id=\"191\" style=\"height:1px\" src=\"about:blank\" frameBorder=\"0\" scrolling=\"no\" title=\"trigonalpyramidal.4 MCQ: Exam Explanation for NH3\"><\/iframe><\/div><\/div>\n        <\/div>\n      <\/section>\n\n      <article class=\"ols-note-card purple\">\n        <div class=\"ols-note-title\">\n          <div class=\"ols-note-icon\">\u2713<\/div>\n          <h2>QuickSnap<\/h2>\n        <\/div>\n        <p>The trigonal pyramidal shape is produced when a central atom has <strong>three bonding pairs<\/strong> and <strong>one lone pair<\/strong>. The lone pair repels bonding pairs more strongly and compresses the bond angle to about <strong>107&deg;<\/strong>.<\/p>\n        <div class=\"ols-key-box\"><p><strong>Memory line:<\/strong> 3 bonding pairs + 1 lone pair = trigonal pyramidal = about 107&deg;.<\/p><\/div>\n      <\/article>\n\n      <section class=\"ols-course-cta-covalent-shapes\" id=\"olsCourseCtaCovalentShapes001\">\r\n  <style>\r\n    .ols-course-cta-covalent-shapes,\r\n    .ols-course-cta-covalent-shapes * {\r\n      box-sizing: border-box;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes {\r\n      --navy: #1C244B;\r\n      --blue: #2563eb;\r\n      --body-text: #1f2937;\r\n      --grey-text: #667085;\r\n      --border: rgba(28, 36, 75, 0.14);\r\n      --shadow: 0 18px 45px rgba(28, 36, 75, 0.12);\r\n      --inner-shadow: 0 10px 26px rgba(28, 36, 75, 0.08);\r\n\r\n      width: 100%;\r\n      margin: 30px 0 24px;\r\n      font-family: Poppins, Arial, sans-serif;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-card {\r\n      overflow: hidden;\r\n      border-radius: 30px;\r\n      border: 1px solid var(--border);\r\n      background:\r\n        radial-gradient(circle at top left, rgba(37, 99, 235, 0.16), transparent 34%),\r\n        linear-gradient(135deg, #ffffff 0%, #f8fbff 100%);\r\n      box-shadow: var(--shadow);\r\n      padding: 30px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-top {\r\n      display: grid;\r\n      grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.1fr);\r\n      gap: 28px;\r\n      align-items: center;\r\n      margin-bottom: 24px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-image-link {\r\n      display: block;\r\n      text-decoration: none;\r\n      border-radius: 24px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-image {\r\n      width: 100%;\r\n      border-radius: 24px;\r\n      overflow: hidden;\r\n      border: 1px solid var(--border);\r\n      background: #ffffff;\r\n      box-shadow: var(--inner-shadow);\r\n      transition:\r\n        transform 0.35s ease,\r\n        box-shadow 0.35s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-image img {\r\n      width: 100%;\r\n      height: auto;\r\n      display: block;\r\n      transition: transform 0.45s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-image-link:hover .ols-course-cta-image {\r\n      transform: translateY(-8px) scale(1.015);\r\n      box-shadow:\r\n        0 26px 60px rgba(28, 36, 75, 0.18),\r\n        0 0 0 1px rgba(37, 99, 235, 0.12);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-image-link:hover .ols-course-cta-image img {\r\n      transform: scale(1.03);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-header-row {\r\n      display: flex;\r\n      flex-wrap: wrap;\r\n      align-items: center;\r\n      justify-content: space-between;\r\n      gap: 14px;\r\n      margin-bottom: 18px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-kicker {\r\n      display: inline-flex;\r\n      align-items: center;\r\n      padding: 8px 14px;\r\n      border-radius: 999px;\r\n      background: #ffffff;\r\n      border: 1px solid rgba(37, 99, 235, 0.18);\r\n      color: var(--blue);\r\n      font-size: 14px;\r\n      line-height: 1.2;\r\n      font-weight: 700;\r\n      box-shadow: var(--inner-shadow);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes h2 {\r\n      margin: 0 0 14px;\r\n      font-size: clamp(28px, 3.5vw, 42px);\r\n      line-height: 1.15;\r\n      font-weight: 800;\r\n      letter-spacing: -0.03em;\r\n      color: #111827;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-intro-stats {\r\n      display: grid;\r\n      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);\r\n      gap: 24px;\r\n      align-items: stretch;\r\n      margin: 0 0 30px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-intro {\r\n      margin: 0;\r\n      color: var(--body-text);\r\n      font-size: clamp(16px, 1.4vw, 18px);\r\n      line-height: 1.7;\r\n      font-weight: 300;\r\n      align-self: center;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-stats {\r\n      display: grid;\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n      gap: 14px;\r\n      margin: 0;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-stat {\r\n      background: #ffffff;\r\n      border: 1px solid var(--border);\r\n      border-radius: 18px;\r\n      padding: 16px;\r\n      box-shadow: var(--inner-shadow);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-stat span {\r\n      display: block;\r\n      margin-bottom: 6px;\r\n      color: var(--grey-text);\r\n      font-size: 13px;\r\n      line-height: 1.35;\r\n      font-weight: 700;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-stat strong {\r\n      display: block;\r\n      color: var(--navy);\r\n      font-size: 18px;\r\n      line-height: 1.35;\r\n      font-weight: 800;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-features {\r\n      display: grid;\r\n      grid-template-columns: repeat(2, minmax(0, 1fr));\r\n      gap: 14px;\r\n      margin: 0 0 30px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-feature {\r\n      background: rgba(255, 255, 255, 0.78);\r\n      border: 1px solid var(--border);\r\n      border-radius: 18px;\r\n      padding: 16px 18px;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-feature h3 {\r\n      margin: 0 0 6px;\r\n      color: var(--navy);\r\n      font-size: 18px;\r\n      line-height: 1.3;\r\n      font-weight: 800;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-feature p {\r\n      margin: 0;\r\n      color: var(--body-text);\r\n      font-size: 15px;\r\n      line-height: 1.6;\r\n      font-weight: 300;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-animation-wrap {\r\n      position: relative;\r\n      margin: 0 0 30px;\r\n      border-radius: 0;\r\n      overflow: visible;\r\n      border: 0;\r\n      background: transparent;\r\n      box-shadow: none;\r\n      padding: 0;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-animation-title {\r\n      margin: 0 0 18px;\r\n      text-align: center;\r\n      color: var(--navy);\r\n      font-size: clamp(26px, 3.2vw, 40px);\r\n      line-height: 1.15;\r\n      font-weight: 700;\r\n      letter-spacing: -0.03em;\r\n      text-shadow: -9px 0 9px rgba(28, 36, 75, 0.10);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-frame-shell {\r\n      position: relative;\r\n      width: 100%;\r\n      height: 620px;\r\n      border-radius: 24px;\r\n      overflow: hidden;\r\n      background:\r\n        radial-gradient(circle at top left, rgba(70, 127, 247, 0.14), transparent 34%),\r\n        linear-gradient(135deg, #f8fbff 0%, #e9efff 100%);\r\n      box-shadow: 0 24px 64px rgba(28, 36, 75, 0.18);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-frame-shell iframe {\r\n      display: block;\r\n      width: 100%;\r\n      height: 100%;\r\n      border: 0;\r\n      background: #e9efff;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-overlay {\r\n      position: absolute;\r\n      inset: 0;\r\n      z-index: 5;\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n      border: 0;\r\n      cursor: pointer;\r\n      background:\r\n        radial-gradient(circle at center, rgba(255, 255, 255, 0.26), rgba(28, 36, 75, 0.28)),\r\n        url(\"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/T2AB-Covalent-Bonding-Structure-Shapes-of-Molecules.jpg\");\r\n      background-size: cover;\r\n      background-position: center;\r\n      transition:\r\n        opacity 0.35s ease,\r\n        visibility 0.35s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-overlay::before {\r\n      content: \"\";\r\n      position: absolute;\r\n      inset: 0;\r\n      background: rgba(28, 36, 75, 0.30);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-overlay.is-hidden {\r\n      opacity: 0;\r\n      visibility: hidden;\r\n      pointer-events: none;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-content {\r\n      position: relative;\r\n      z-index: 2;\r\n      display: grid;\r\n      justify-items: center;\r\n      gap: 16px;\r\n      padding: 24px;\r\n      text-align: center;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-play-circle {\r\n      width: 96px;\r\n      height: 96px;\r\n      border-radius: 50%;\r\n      background: #ffffff;\r\n      color: var(--navy);\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n      box-shadow:\r\n        0 18px 40px rgba(28, 36, 75, 0.30),\r\n        0 0 0 12px rgba(255, 255, 255, 0.22);\r\n      animation: olsAnimationPlayPulse001 1.8s ease-in-out infinite;\r\n      transition:\r\n        transform 0.25s ease,\r\n        background 0.25s ease,\r\n        color 0.25s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-overlay:hover .ols-animation-play-circle {\r\n      transform: scale(1.08);\r\n      background: var(--navy);\r\n      color: #ffffff;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-play-icon {\r\n      width: 0;\r\n      height: 0;\r\n      margin-left: 7px;\r\n      border-top: 18px solid transparent;\r\n      border-bottom: 18px solid transparent;\r\n      border-left: 28px solid currentColor;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-start-text {\r\n      max-width: 540px;\r\n      margin: 0;\r\n      color: #ffffff;\r\n      font-size: clamp(20px, 3vw, 32px);\r\n      line-height: 1.2;\r\n      font-weight: 800;\r\n      text-shadow: 0 8px 20px rgba(0, 0, 0, 0.28);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-pause-button {\r\n      position: absolute;\r\n      left: 16px;\r\n      bottom: 16px;\r\n      z-index: 7;\r\n      display: none;\r\n      align-items: center;\r\n      justify-content: center;\r\n      min-width: 92px;\r\n      padding: 10px 16px;\r\n      border: 0;\r\n      border-radius: 999px;\r\n      background: rgba(28, 36, 75, 0.92);\r\n      color: #ffffff;\r\n      font-family: Poppins, Arial, sans-serif;\r\n      font-size: 14px;\r\n      line-height: 1.2;\r\n      font-weight: 800;\r\n      cursor: pointer;\r\n      box-shadow: 0 12px 28px rgba(28, 36, 75, 0.24);\r\n      transition:\r\n        transform 0.2s ease,\r\n        background 0.2s ease,\r\n        box-shadow 0.2s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-pause-button:hover {\r\n      transform: translateY(-2px);\r\n      background: var(--blue);\r\n      box-shadow: 0 16px 34px rgba(37, 99, 235, 0.28);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-animation-pause-button.is-visible {\r\n      display: inline-flex;\r\n    }\r\n\r\n    @keyframes olsAnimationPlayPulse001 {\r\n      0% {\r\n        box-shadow:\r\n          0 18px 40px rgba(28, 36, 75, 0.30),\r\n          0 0 0 0 rgba(255, 255, 255, 0.40);\r\n      }\r\n\r\n      70% {\r\n        box-shadow:\r\n          0 18px 40px rgba(28, 36, 75, 0.30),\r\n          0 0 0 18px rgba(255, 255, 255, 0);\r\n      }\r\n\r\n      100% {\r\n        box-shadow:\r\n          0 18px 40px rgba(28, 36, 75, 0.30),\r\n          0 0 0 0 rgba(255, 255, 255, 0);\r\n      }\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-video-status {\r\n      margin: 14px 0 0;\r\n      text-align: center;\r\n      color: var(--grey-text);\r\n      font-size: 13px;\r\n      line-height: 1.5;\r\n      font-weight: 500;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-cta-bottom {\r\n      display: flex;\r\n      justify-content: center;\r\n      padding-top: 22px;\r\n      border-top: 1px solid var(--border);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-button {\r\n      display: inline-flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n      padding: 15px 28px;\r\n      border-radius: 999px;\r\n      background: var(--navy);\r\n      color: #ffffff;\r\n      text-decoration: none;\r\n      font-size: 16px;\r\n      line-height: 1.2;\r\n      font-weight: 800;\r\n      box-shadow: 0 12px 26px rgba(28, 36, 75, 0.18);\r\n      transition:\r\n        transform 0.2s ease,\r\n        background 0.2s ease,\r\n        box-shadow 0.2s ease;\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-button:hover {\r\n      transform: translateY(-2px);\r\n      background: var(--blue);\r\n      color: #ffffff;\r\n      box-shadow: 0 16px 32px rgba(37, 99, 235, 0.24);\r\n    }\r\n\r\n    .ols-course-cta-covalent-shapes .ols-course-button-top {\r\n      flex-shrink: 0;\r\n      padding: 12px 22px;\r\n      font-size: 15px;\r\n    }\r\n\r\n    @media (max-width: 900px) {\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-top {\r\n        grid-template-columns: 1fr;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-image-link {\r\n        max-width: 520px;\r\n        margin: 0 auto;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-intro-stats {\r\n        grid-template-columns: 1fr;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-animation-frame-shell {\r\n        height: 520px;\r\n      }\r\n    }\r\n\r\n    @media (max-width: 760px) {\r\n      .ols-course-cta-covalent-shapes {\r\n        margin: 26px 0 22px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-card {\r\n        padding: 20px;\r\n        border-radius: 24px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-header-row {\r\n        align-items: stretch;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-button-top {\r\n        width: 100%;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-stats,\r\n      .ols-course-cta-covalent-shapes .ols-course-cta-features {\r\n        grid-template-columns: 1fr;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-animation-wrap {\r\n        padding: 0;\r\n        border-radius: 0;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-animation-frame-shell {\r\n        height: 420px;\r\n        border-radius: 18px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-animation-play-circle {\r\n        width: 76px;\r\n        height: 76px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-animation-play-icon {\r\n        border-top-width: 14px;\r\n        border-bottom-width: 14px;\r\n        border-left-width: 22px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-animation-pause-button {\r\n        left: 12px;\r\n        bottom: 12px;\r\n        min-width: 84px;\r\n        padding: 9px 14px;\r\n        font-size: 13px;\r\n      }\r\n\r\n      .ols-course-cta-covalent-shapes .ols-course-button {\r\n        width: 100%;\r\n      }\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"ols-course-cta-card\">\r\n\r\n    <div class=\"ols-course-cta-top\">\r\n\r\n      <a class=\"ols-course-cta-image-link\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/product\/covalent-bonding-shapes-of-molecules-edexcel-t2ab\/\" aria-label=\"Open the Edexcel A Level Chemistry Topic 2A\/B Covalent Bonding, Structure and Shapes of Molecules course page\">\r\n\r\n        <div class=\"ols-course-cta-image\">\r\n          <img decoding=\"async\"\r\n            src=\"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/T2AB-Covalent-Bonding-Structure-Shapes-of-Molecules.jpg\"\r\n            alt=\"Edexcel A Level Chemistry Topic 2A\/B Covalent Bonding, Structure and Shapes of Molecules course banner\"\r\n          >\r\n        <\/div>\r\n\r\n      <\/a>\r\n\r\n      <div class=\"ols-course-cta-content\">\r\n\r\n        <div class=\"ols-course-cta-header-row\">\r\n\r\n          <div class=\"ols-course-cta-kicker\">\r\n            Complete Topic 2A\/B Covalent Bonding, Structure & Shapes of Molecules Course\r\n          <\/div>\r\n\r\n          <a class=\"ols-course-button ols-course-button-top\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/product\/covalent-bonding-shapes-of-molecules-edexcel-t2ab\/\">\r\n            View Course\r\n          <\/a>\r\n\r\n        <\/div>\r\n\r\n        <h2>\r\n          Master Covalent Bonding, Structure and Shapes of Molecules for Edexcel A Level Chemistry\r\n        <\/h2>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"ols-course-cta-intro-stats\">\r\n\r\n      <p class=\"ols-course-cta-intro\">\r\n        Continue from these free revision notes into the full Topic 2A\/B Covalent Bonding, Structure and Shapes of Molecules course, with guided video teaching, diagnostic MCQ practice, teacher-marked short-answer questions and a specification assignment with a personalised progress report.\r\n      <\/p>\r\n\r\n      <div class=\"ols-course-cta-stats\">\r\n\r\n        <div class=\"ols-course-stat\">\r\n          <span>Guided learning<\/span>\r\n          <strong>13 hours<\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"ols-course-stat\">\r\n          <span>Video lessons<\/span>\r\n          <strong>281 mins<\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"ols-course-stat\">\r\n          <span>MCQ practice<\/span>\r\n          <strong>37 marks<\/strong>\r\n        <\/div>\r\n\r\n        <div class=\"ols-course-stat\">\r\n          <span>SAQ practice<\/span>\r\n          <strong>169 marks<\/strong>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"ols-course-cta-features\">\r\n\r\n      <div class=\"ols-course-feature\">\r\n        <h3>Guided video teaching<\/h3>\r\n        <p>\r\n          Learn covalent bonding, dot-and-cross diagrams, giant covalent structures, electronegativity, polarity and molecular shapes through structured video lessons with worked examples and walkthroughs.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ols-course-feature\">\r\n        <h3>Instant MCQ feedback<\/h3>\r\n        <p>\r\n          Auto-marked MCQ quizzes provide immediate diagnostic feedback for every answer choice.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ols-course-feature\">\r\n        <h3>Teacher-marked SAQs<\/h3>\r\n        <p>\r\n          Submit written exam responses and receive chemistry specialist feedback with improvement guidance.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <div class=\"ols-course-feature\">\r\n        <h3>Progress tracking<\/h3>\r\n        <p>\r\n          Identify strengths and weaknesses across covalent bonding, giant covalent structures, polarity, VSEPR theory and molecular shapes with targeted reporting.\r\n        <\/p>\r\n      <\/div>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"ols-course-animation-wrap\">\r\n\r\n      <h3 class=\"ols-course-animation-title\">\r\n        See how the course works\r\n      <\/h3>\r\n\r\n      <div class=\"ols-animation-frame-shell\">\r\n        <iframe\r\n          id=\"olsCourseAnimationFrame001\"\r\n          title=\"OLS course preview animation\"\r\n          loading=\"lazy\"\r\n          referrerpolicy=\"no-referrer\">\r\n        <\/iframe>\r\n\r\n        <button\r\n          class=\"ols-animation-start-overlay\"\r\n          id=\"olsCourseAnimationStart001\"\r\n          type=\"button\"\r\n          aria-label=\"Play OLS course preview animation\">\r\n          <span class=\"ols-animation-start-content\">\r\n            <span class=\"ols-animation-play-circle\" aria-hidden=\"true\">\r\n              <span class=\"ols-animation-play-icon\"><\/span>\r\n            <\/span>\r\n            <span class=\"ols-animation-start-text\">\r\n              Play course preview animation\r\n            <\/span>\r\n          <\/span>\r\n        <\/button>\r\n\r\n        <button\r\n          class=\"ols-animation-pause-button\"\r\n          id=\"olsCourseAnimationPause001\"\r\n          type=\"button\"\r\n          aria-label=\"Pause course preview animation\">\r\n          Pause\r\n        <\/button>\r\n      <\/div>\r\n\r\n      <p class=\"ols-course-video-status\">\r\n        Click play to start the course preview animation.\r\n      <\/p>\r\n\r\n    <\/div>\r\n\r\n    <div class=\"ols-course-cta-bottom\">\r\n\r\n      <a class=\"ols-course-button\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/product\/covalent-bonding-shapes-of-molecules-edexcel-t2ab\/\">\r\n        View Covalent Bonding & Shapes of Molecules Topic 2A\/B Course\r\n      <\/a>\r\n\r\n    <\/div>\r\n\r\n  <\/div>\r\n\r\n  <template id=\"olsCourseAnimationTemplate001\">\r\n<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<title>OLS Combined Promo Animation<\/title>\r\n\r\n<style>\r\n*{box-sizing:border-box;}\r\n\r\nhtml.ols-animation-paused *,\r\nhtml.ols-animation-paused *::before,\r\nhtml.ols-animation-paused *::after{\r\n  animation-play-state:paused!important;\r\n}\r\n\r\n:root{\r\n  --ols-video-screen-w:1180;\r\n  --ols-video-screen-h:664;\r\n  --ols-video-screen-scale:1;\r\n  --ols-mcq-screen-w:1360;\r\n  --ols-mcq-screen-h:1130;\r\n  --ols-mcq-screen-scale:1;\r\n  --ols-saq-screen-w:1360;\r\n  --ols-saq-screen-h:965;\r\n  --ols-saq-screen-scale:1;\r\n}\r\n\r\nhtml,\r\nbody{\r\n  width:100%;\r\n  height:100%;\r\n}\r\n\r\nbody{\r\n  margin:0;\r\n  overflow:hidden;\r\n  font-family:Poppins,Arial,sans-serif;\r\n  background:#e9efff;\r\n}\r\n\r\n.ols-combined-stage{\r\n  position:relative;\r\n  width:100vw;\r\n  height:100vh;\r\n  overflow:hidden;\r\n  background:\r\n    radial-gradient(circle at top left,rgba(70,127,247,0.14),transparent 34%),\r\n    linear-gradient(135deg,#f8fbff 0%,#e9efff 100%);\r\n}\r\n\r\n.ols-scene{\r\n  position:absolute;\r\n  inset:0;\r\n  width:100vw;\r\n  height:100vh;\r\n  opacity:0;\r\n  visibility:hidden;\r\n  pointer-events:none;\r\n}\r\n\r\n.ols-scene.active{\r\n  opacity:1;\r\n  visibility:visible;\r\n  pointer-events:auto;\r\n}\r\n\r\n.ols-scene.fade-out{\r\n  animation:olsSceneFadeOut 0.85s ease forwards;\r\n}\r\n\r\n@keyframes olsSceneFadeOut{\r\n  to{\r\n    opacity:0;\r\n    visibility:hidden;\r\n  }\r\n}\r\n\r\n.ols-title-cursor{\r\n  display:inline-block;\r\n  width:5px;\r\n  height:0.85em;\r\n  background:#1C244B;\r\n  margin-left:8px;\r\n  transform:translateY(8px);\r\n  animation:olsBlink 0.8s infinite;\r\n}\r\n\r\n.cursor{\r\n  display:inline-block;\r\n  width:3px;\r\n  height:28px;\r\n  background:#1c244b;\r\n  margin-left:3px;\r\n  transform:translateY(5px);\r\n  animation:olsBlink 0.8s infinite;\r\n}\r\n\r\n@keyframes olsBlink{\r\n  0%,45%{opacity:1;}\r\n  46%,100%{opacity:0;}\r\n}\r\n\r\n.ols-video-stage,\r\n.ols-mcq-stage,\r\n.ols-saq-stage{\r\n  width:100vw;\r\n  height:100vh;\r\n  display:flex;\r\n  justify-content:center;\r\n  align-items:center;\r\n  padding:0;\r\n  overflow:hidden;\r\n  background:\r\n    radial-gradient(circle at top left,rgba(70,127,247,0.14),transparent 34%),\r\n    linear-gradient(135deg,#f8fbff 0%,#e9efff 100%);\r\n}\r\n\r\n.ols-video-title-screen,\r\n.ols-mcq-intro-screen,\r\n.ols-saq-intro{\r\n  position:absolute;\r\n  inset:0;\r\n  z-index:50;\r\n  display:flex;\r\n  justify-content:center;\r\n  align-items:center;\r\n  background:\r\n    radial-gradient(circle at top left,rgba(70,127,247,0.14),transparent 34%),\r\n    linear-gradient(135deg,#f8fbff 0%,#e9efff 100%);\r\n  opacity:1;\r\n  visibility:visible;\r\n  pointer-events:none;\r\n}\r\n\r\n.ols-video-title-screen.hide{animation:olsVideoTitleFadeOut 0.85s ease forwards;}\r\n.ols-mcq-intro-screen.hide{animation:olsMcqIntroFadeOut 0.85s ease forwards;}\r\n.ols-saq-intro.hide{animation:olsSaqIntroFadeOut 0.85s ease forwards;}\r\n\r\n@keyframes olsVideoTitleFadeOut{to{opacity:0;visibility:hidden;}}\r\n@keyframes olsMcqIntroFadeOut{to{opacity:0;visibility:hidden;}}\r\n@keyframes olsSaqIntroFadeOut{to{opacity:0;visibility:hidden;}}\r\n\r\n.ols-video-title-wrap,\r\n.ols-mcq-intro-title-wrap,\r\n.ols-saq-intro-title-wrap{\r\n  max-width:1250px;\r\n  padding:0 34px;\r\n  text-align:center;\r\n}\r\n\r\n.ols-video-title,\r\n.ols-mcq-intro-title,\r\n.ols-saq-intro-title{\r\n  margin:0;\r\n  font-family:Poppins,Arial,sans-serif;\r\n  font-size:clamp(52px,8vw,124px);\r\n  font-weight:600;\r\n  line-height:1.08;\r\n  color:#1C244B;\r\n  text-shadow:-9px 0 9px rgba(28,36,75,0.16);\r\n  letter-spacing:-0.045em;\r\n}\r\n\r\n#videoTitleText,\r\n#mcqIntroTitleText,\r\n#saqIntroTitleText{\r\n  white-space:pre-wrap;\r\n}\r\n\r\n.ols-video-scene{\r\n  width:100%;\r\n  height:100%;\r\n  display:flex;\r\n  justify-content:center;\r\n  align-items:center;\r\n  opacity:0;\r\n  visibility:hidden;\r\n}\r\n\r\n.ols-video-scene.show{\r\n  visibility:visible;\r\n  animation:olsVideoSceneIn 1s ease forwards;\r\n}\r\n\r\n@keyframes olsVideoSceneIn{to{opacity:1;}}\r\n\r\n.ols-video-scale-wrap{\r\n  width:calc(var(--ols-video-screen-w) * 1px);\r\n  height:calc(var(--ols-video-screen-h) * 1px);\r\n  transform:scale(var(--ols-video-screen-scale));\r\n  transform-origin:center center;\r\n  display:flex;\r\n  justify-content:center;\r\n  align-items:center;\r\n}\r\n\r\n.ols-video-card{\r\n  width:1180px;\r\n  height:664px;\r\n  border-radius:28px;\r\n  overflow:hidden;\r\n  background:#1C244B;\r\n  box-shadow:0 28px 80px rgba(28,36,75,0.28);\r\n  transform:translateY(24px) scale(0.96);\r\n  opacity:0;\r\n}\r\n\r\n.ols-video-scene.show .ols-video-card{\r\n  animation:olsVideoCardIn 1s cubic-bezier(.18,.89,.32,1.12) forwards;\r\n  animation-delay:0.2s;\r\n}\r\n\r\n@keyframes olsVideoCardIn{\r\n  to{\r\n    transform:translateY(0) scale(1);\r\n    opacity:1;\r\n  }\r\n}\r\n\r\n.ols-video-card video{\r\n  display:block;\r\n  width:100%;\r\n  height:100%;\r\n  aspect-ratio:16 \/ 9;\r\n  object-fit:cover;\r\n  border:0;\r\n}\r\n\r\n.ols-mcq-scale-wrap,\r\n.ols-saq-scale-wrap{\r\n  width:calc(var(--ols-mcq-screen-w) * 1px);\r\n  height:calc(var(--ols-mcq-screen-h) * 1px);\r\n  transform:scale(var(--ols-mcq-screen-scale));\r\n  transform-origin:center center;\r\n  display:flex;\r\n  justify-content:center;\r\n  align-items:flex-start;\r\n}\r\n\r\n.ols-saq-scale-wrap{\r\n  width:calc(var(--ols-saq-screen-w) * 1px);\r\n  height:calc(var(--ols-saq-screen-h) * 1px);\r\n  transform:scale(var(--ols-saq-screen-scale));\r\n}\r\n\r\n.ols-mcq-screen{\r\n  width:1360px;\r\n  height:1130px;\r\n  border-radius:22px;\r\n  overflow:hidden;\r\n  background:#eaf0ff;\r\n  box-shadow:0 26px 70px rgba(28,36,75,0.22);\r\n  opacity:0;\r\n  transform:translateY(24px) scale(0.96);\r\n}\r\n\r\n.ols-mcq-screen.show{\r\n  animation:olsMcqScreenEnter 1s ease forwards;\r\n}\r\n\r\n@keyframes olsMcqScreenEnter{\r\n  from{opacity:0;transform:translateY(24px) scale(0.96);}\r\n  to{opacity:1;transform:translateY(0) scale(1);}\r\n}\r\n\r\n.mcq-question-area{\r\n  background:#eaf0ff;\r\n  padding:28px 30px 30px;\r\n  position:relative;\r\n  height:610px;\r\n}\r\n\r\n.mcq-question-lead{\r\n  margin:0 0 14px;\r\n  font-size:24px;\r\n  line-height:1.35;\r\n  color:#111827;\r\n}\r\n\r\n.mcq-ionic-table{\r\n  border-collapse:collapse;\r\n  width:500px;\r\n  margin-bottom:8px;\r\n  font-size:21px;\r\n  color:#111827;\r\n}\r\n\r\n.mcq-ionic-table th,\r\n.mcq-ionic-table td{\r\n  border:1.5px solid #c9ced8;\r\n  padding:12px 18px;\r\n  text-align:center;\r\n}\r\n\r\n.mcq-ionic-table th{\r\n  background:#f2f2f2;\r\n  font-weight:700;\r\n}\r\n\r\n.mcq-ionic-table td{\r\n  background:#eaf0ff;\r\n}\r\n\r\n.mcq-question-main{\r\n  margin:6px 0 28px;\r\n  font-size:24px;\r\n  line-height:1.35;\r\n  color:#111827;\r\n}\r\n\r\n.mcq-options-wrap{\r\n  display:flex;\r\n  flex-direction:column;\r\n  gap:17px;\r\n  max-width:1200px;\r\n}\r\n\r\n.mcq-option-row{\r\n  display:flex;\r\n  align-items:center;\r\n  min-height:34px;\r\n  position:relative;\r\n}\r\n\r\n.mcq-radio{\r\n  width:28px;\r\n  height:28px;\r\n  border-radius:50%;\r\n  border:2px solid #6b7280;\r\n  margin-right:16px;\r\n  background:transparent;\r\n  position:relative;\r\n  flex:0 0 auto;\r\n}\r\n\r\n.mcq-radio::after{\r\n  content:\"\";\r\n  position:absolute;\r\n  inset:5px;\r\n  border-radius:50%;\r\n  background:#6b7280;\r\n  opacity:0;\r\n  transform:scale(0.4);\r\n  transition:opacity 0.25s ease,transform 0.25s ease;\r\n}\r\n\r\n.mcq-option-row.selected .mcq-radio::after{\r\n  opacity:1;\r\n  transform:scale(1);\r\n}\r\n\r\n.mcq-radio-ripple{\r\n  position:absolute;\r\n  left:14px;\r\n  top:50%;\r\n  width:28px;\r\n  height:28px;\r\n  border-radius:50%;\r\n  border:2px solid rgba(28,36,75,0.28);\r\n  transform:translate(-50%,-50%) scale(1);\r\n  opacity:0;\r\n  pointer-events:none;\r\n}\r\n\r\n.mcq-option-row.clicking .mcq-radio-ripple{\r\n  animation:mcqRipple 0.75s ease forwards;\r\n}\r\n\r\n@keyframes mcqRipple{\r\n  0%{opacity:0.65;transform:translate(-50%,-50%) scale(1);}\r\n  100%{opacity:0;transform:translate(-50%,-50%) scale(2.5);}\r\n}\r\n\r\n.mcq-option-label{\r\n  font-size:23px;\r\n  color:#111827;\r\n}\r\n\r\n.mcq-specific-feedback{\r\n  display:inline-flex;\r\n  align-items:center;\r\n  margin-left:18px;\r\n  min-height:38px;\r\n  opacity:0;\r\n  transform:translateX(-8px);\r\n}\r\n\r\n.mcq-specific-feedback.show{\r\n  opacity:1;\r\n  transform:translateX(0);\r\n  transition:opacity 0.35s ease,transform 0.35s ease;\r\n}\r\n\r\n.mcq-cross-icon{\r\n  width:26px;\r\n  height:26px;\r\n  border-radius:50%;\r\n  border:2px solid #d83255;\r\n  color:#d83255;\r\n  display:inline-flex;\r\n  justify-content:center;\r\n  align-items:center;\r\n  font-size:18px;\r\n  font-weight:700;\r\n  margin-right:12px;\r\n  opacity:0;\r\n  transform:scale(0.4);\r\n}\r\n\r\n.mcq-cross-icon.show{\r\n  animation:mcqCrossPop 0.35s ease forwards;\r\n}\r\n\r\n@keyframes mcqCrossPop{\r\n  70%{opacity:1;transform:scale(1.18);}\r\n  100%{opacity:1;transform:scale(1);}\r\n}\r\n\r\n.mcq-specific-feedback-text{\r\n  display:inline-block;\r\n  background:#fff4b8;\r\n  color:#111827;\r\n  padding:8px 16px;\r\n  font-size:22px;\r\n  line-height:1.35;\r\n  min-width:850px;\r\n  min-height:44px;\r\n}\r\n\r\n.mcq-submit-button{\r\n  position:absolute;\r\n  right:34px;\r\n  bottom:30px;\r\n  border:0;\r\n  border-radius:999px;\r\n  background:#1C244B;\r\n  color:#ffffff;\r\n  padding:14px 28px;\r\n  font-size:18px;\r\n  font-weight:600;\r\n  box-shadow:0 14px 32px rgba(28,36,75,0.25);\r\n  cursor:default;\r\n  transition:transform 0.2s ease,box-shadow 0.2s ease,background 0.2s ease;\r\n}\r\n\r\n.mcq-submit-button.clicked{\r\n  transform:translateY(2px) scale(0.97);\r\n  background:#26315f;\r\n  box-shadow:0 7px 18px rgba(28,36,75,0.22);\r\n}\r\n\r\n.mcq-general-feedback{\r\n  height:520px;\r\n  background:#fff3c9;\r\n  color:#8a6a00;\r\n  padding:26px 30px 28px;\r\n  font-size:23px;\r\n  line-height:1.34;\r\n  opacity:0;\r\n  transform:translateY(20px);\r\n  transition:opacity 0.7s ease,transform 0.7s ease;\r\n  overflow:hidden;\r\n}\r\n\r\n.mcq-general-feedback.show{\r\n  opacity:1;\r\n  transform:translateY(0);\r\n}\r\n\r\n#mcqGeneralText{\r\n  white-space:pre-wrap;\r\n}\r\n\r\n.mcq-specific-cursor{background:#111827;}\r\n.mcq-general-cursor{background:#8a6a00;}\r\n\r\n.ols-saq-screen{\r\n  width:1360px;\r\n  height:965px;\r\n  border-radius:22px;\r\n  overflow:hidden;\r\n  background:#eaf0ff;\r\n  box-shadow:0 26px 70px rgba(28,36,75,0.22);\r\n  opacity:0;\r\n  transform:translateY(24px) scale(0.96);\r\n}\r\n\r\n.ols-saq-screen.show{\r\n  animation:olsSaqScreenEnter 1s ease forwards;\r\n}\r\n\r\n@keyframes olsSaqScreenEnter{\r\n  from{opacity:0;transform:translateY(24px) scale(0.96);}\r\n  to{opacity:1;transform:translateY(0) scale(1);}\r\n}\r\n\r\n.saq-question-area{\r\n  height:335px;\r\n  background:#eaf0ff;\r\n  padding:30px 40px 32px;\r\n}\r\n\r\n.saq-question-text{\r\n  font-size:25px;\r\n  line-height:1.42;\r\n  color:#111827;\r\n  margin-bottom:22px;\r\n}\r\n\r\n.saq-student-box{\r\n  height:195px;\r\n  background:#f3f4f6;\r\n  border:2px solid #cfd6e3;\r\n  border-radius:8px;\r\n  padding:23px 26px;\r\n  font-size:24px;\r\n  line-height:1.55;\r\n  color:#4b5563;\r\n  position:relative;\r\n  overflow:hidden;\r\n}\r\n\r\n.saq-teacher-feedback{\r\n  height:630px;\r\n  background:#dff3e6;\r\n  color:#075f3b;\r\n  padding:28px 40px 30px;\r\n  font-size:23px;\r\n  line-height:1.47;\r\n  opacity:0;\r\n  transform:translateY(20px);\r\n  transition:opacity 0.7s ease,transform 0.7s ease;\r\n  overflow:hidden;\r\n}\r\n\r\n.saq-teacher-feedback.show{\r\n  opacity:1;\r\n  transform:translateY(0);\r\n}\r\n\r\n#saqTeacherText{\r\n  white-space:pre-wrap;\r\n}\r\n\r\n.saq-teacher-cursor{\r\n  background:#075f3b;\r\n}\r\n\r\n@media(max-width:900px){\r\n  .ols-video-title,\r\n  .ols-mcq-intro-title,\r\n  .ols-saq-intro-title{\r\n    font-size:clamp(42px,11vw,78px);\r\n    line-height:1.12;\r\n  }\r\n\r\n  .ols-title-cursor{\r\n    width:4px;\r\n    margin-left:6px;\r\n  }\r\n\r\n  .ols-video-card{\r\n    border-radius:20px;\r\n  }\r\n}\r\n<\/style>\r\n<\/head>\r\n\r\n<body>\r\n<div class=\"ols-combined-stage\">\r\n\r\n  <section id=\"sceneVideo\" class=\"ols-scene active\">\r\n    <div class=\"ols-video-stage\">\r\n      <div id=\"videoTitleScreen\" class=\"ols-video-title-screen\">\r\n        <div class=\"ols-video-title-wrap\">\r\n          <h1 class=\"ols-video-title\">\r\n            <span id=\"videoTitleText\"><\/span><span id=\"videoTitleCursor\" class=\"ols-title-cursor\"><\/span>\r\n          <\/h1>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <section id=\"videoScene\" class=\"ols-video-scene\">\r\n        <div class=\"ols-video-scale-wrap\">\r\n          <div class=\"ols-video-card\">\r\n            <video\r\n              id=\"lessonVideo\"\r\n              src=\"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/Virtual-Lesson.mp4\"\r\n              muted\r\n              playsinline\r\n              preload=\"auto\">\r\n            <\/video>\r\n          <\/div>\r\n        <\/div>\r\n      <\/section>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <section id=\"sceneMcq\" class=\"ols-scene\">\r\n    <div class=\"ols-mcq-stage\">\r\n      <div id=\"mcqIntroScreen\" class=\"ols-mcq-intro-screen\">\r\n        <div class=\"ols-mcq-intro-title-wrap\">\r\n          <h1 class=\"ols-mcq-intro-title\">\r\n            <span id=\"mcqIntroTitleText\"><\/span><span id=\"mcqIntroTitleCursor\" class=\"ols-title-cursor\"><\/span>\r\n          <\/h1>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ols-mcq-scale-wrap\">\r\n        <main id=\"mcqScreen\" class=\"ols-mcq-screen\">\r\n          <section class=\"mcq-question-area\">\r\n            <p class=\"mcq-question-lead\">The shapes of some species are being compared.<\/p>\r\n\r\n            <p class=\"mcq-question-main\">Which species is not tetrahedral?<\/p>\r\n\r\n            <div class=\"mcq-options-wrap\">\r\n              <div id=\"mcqWrongOption\" class=\"mcq-option-row\">\r\n                <span class=\"mcq-radio\"><\/span>\r\n                <span class=\"mcq-radio-ripple\"><\/span>\r\n                <span class=\"mcq-option-label\">methane, CH<sub>4<\/sub><\/span>\r\n\r\n                <span id=\"mcqSpecificFeedback\" class=\"mcq-specific-feedback\">\r\n                  <span id=\"mcqCrossIcon\" class=\"mcq-cross-icon\">\u00d7<\/span>\r\n                  <span class=\"mcq-specific-feedback-text\">\r\n                    <span id=\"mcqSpecificText\"><\/span><span id=\"mcqSpecificCursor\" class=\"cursor mcq-specific-cursor\" style=\"display:none;\"><\/span>\r\n                  <\/span>\r\n                <\/span>\r\n              <\/div>\r\n\r\n              <div class=\"mcq-option-row\"><span class=\"mcq-radio\"><\/span><span class=\"mcq-radio-ripple\"><\/span><span class=\"mcq-option-label\">ammonium ion, NH<sub>4<\/sub><sup>+<\/sup><\/span><\/div>\r\n              <div class=\"mcq-option-row\"><span class=\"mcq-radio\"><\/span><span class=\"mcq-radio-ripple\"><\/span><span class=\"mcq-option-label\">tetrachloroiodate(III) ion, ICl<sub>4<\/sub><sup>\u2212<\/sup><\/span><\/div>\r\n              <div class=\"mcq-option-row\"><span class=\"mcq-radio\"><\/span><span class=\"mcq-radio-ripple\"><\/span><span class=\"mcq-option-label\">tetrachloromethane, CCl<sub>4<\/sub><\/span><\/div>\r\n            <\/div>\r\n\r\n            <button id=\"mcqSubmitButton\" class=\"mcq-submit-button\">Submit answer<\/button>\r\n          <\/section>\r\n\r\n          <section id=\"mcqGeneralFeedback\" class=\"mcq-general-feedback\">\r\n            <span id=\"mcqGeneralText\"><\/span><span id=\"mcqGeneralCursor\" class=\"cursor mcq-general-cursor\" style=\"display:none;\"><\/span>\r\n          <\/section>\r\n        <\/main>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n  <section id=\"sceneSaq\" class=\"ols-scene\">\r\n    <div class=\"ols-saq-stage\">\r\n      <div id=\"saqIntro\" class=\"ols-saq-intro\">\r\n        <div class=\"ols-saq-intro-title-wrap\">\r\n          <h1 class=\"ols-saq-intro-title\">\r\n            <span id=\"saqIntroTitleText\"><\/span><span id=\"saqIntroTitleCursor\" class=\"ols-title-cursor\"><\/span>\r\n          <\/h1>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"ols-saq-scale-wrap\">\r\n        <main id=\"saqScreen\" class=\"ols-saq-screen\">\r\n          <section class=\"saq-question-area\">\r\n            <div class=\"saq-question-text\">\r\n              <strong>(ii)<\/strong>&nbsp;&nbsp; Silicon has a much higher melting temperature than phosphorus.<br>\r\n              Explain this difference in terms of structure and bonding.\r\n            <\/div>\r\n\r\n            <div class=\"saq-student-box\">\r\n              <span id=\"saqStudentText\"><\/span><span id=\"saqStudentCursor\" class=\"cursor\"><\/span>\r\n            <\/div>\r\n          <\/section>\r\n\r\n          <section id=\"saqTeacherFeedback\" class=\"saq-teacher-feedback\">\r\n            <span id=\"saqTeacherText\"><\/span><span id=\"saqTeacherCursor\" class=\"cursor saq-teacher-cursor\" style=\"display:none;\"><\/span>\r\n          <\/section>\r\n        <\/main>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  const nativeSetTimeout=window.setTimeout.bind(window);\r\n  const nativeClearTimeout=window.clearTimeout.bind(window);\r\n  let nextTimerId=1;\r\n  let paused=false;\r\n  const timers=new Map();\r\n\r\n  function runTimer(timerId){\r\n    const timer=timers.get(timerId);\r\n\r\n    if(!timer || timer.cleared){\r\n      return;\r\n    }\r\n\r\n    timers.delete(timerId);\r\n    timer.callback();\r\n  }\r\n\r\n  window.setTimeout=function(callback,delay){\r\n    const timerId=nextTimerId++;\r\n    const safeDelay=Math.max(0,Number(delay) || 0);\r\n\r\n    const timer={\r\n      callback:callback,\r\n      delay:safeDelay,\r\n      remaining:safeDelay,\r\n      startedAt:Date.now(),\r\n      nativeId:null,\r\n      cleared:false\r\n    };\r\n\r\n    if(paused){\r\n      timer.startedAt=null;\r\n    }else{\r\n      timer.nativeId=nativeSetTimeout(function(){\r\n        runTimer(timerId);\r\n      },safeDelay);\r\n    }\r\n\r\n    timers.set(timerId,timer);\r\n    return timerId;\r\n  };\r\n\r\n  window.clearTimeout=function(timerId){\r\n    const timer=timers.get(timerId);\r\n\r\n    if(timer){\r\n      timer.cleared=true;\r\n\r\n      if(timer.nativeId!==null){\r\n        nativeClearTimeout(timer.nativeId);\r\n      }\r\n\r\n      timers.delete(timerId);\r\n      return;\r\n    }\r\n\r\n    nativeClearTimeout(timerId);\r\n  };\r\n\r\n  function pauseVideos(){\r\n    document.querySelectorAll(\"video\").forEach(function(video){\r\n      if(!video.paused && !video.ended){\r\n        video.dataset.olsWasPlaying=\"1\";\r\n        video.pause();\r\n      }\r\n    });\r\n  }\r\n\r\n  function resumeVideos(){\r\n    document.querySelectorAll(\"video\").forEach(function(video){\r\n      if(video.dataset.olsWasPlaying===\"1\"){\r\n        delete video.dataset.olsWasPlaying;\r\n\r\n        const playPromise=video.play();\r\n\r\n        if(playPromise!==undefined){\r\n          playPromise.catch(function(){});\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  function pauseAnimation(){\r\n    if(paused){\r\n      return \"paused\";\r\n    }\r\n\r\n    paused=true;\r\n    document.documentElement.classList.add(\"ols-animation-paused\");\r\n\r\n    timers.forEach(function(timer){\r\n      if(timer.nativeId!==null){\r\n        nativeClearTimeout(timer.nativeId);\r\n        timer.nativeId=null;\r\n      }\r\n\r\n      if(timer.startedAt!==null){\r\n        timer.remaining=Math.max(0,timer.delay-(Date.now()-timer.startedAt));\r\n        timer.startedAt=null;\r\n      }\r\n    });\r\n\r\n    pauseVideos();\r\n    return \"paused\";\r\n  }\r\n\r\n  function resumeAnimation(){\r\n    if(!paused){\r\n      return \"playing\";\r\n    }\r\n\r\n    paused=false;\r\n    document.documentElement.classList.remove(\"ols-animation-paused\");\r\n\r\n    timers.forEach(function(timer,timerId){\r\n      timer.startedAt=Date.now();\r\n      timer.delay=timer.remaining;\r\n      timer.nativeId=nativeSetTimeout(function(){\r\n        runTimer(timerId);\r\n      },timer.remaining);\r\n    });\r\n\r\n    resumeVideos();\r\n    return \"playing\";\r\n  }\r\n\r\n  window.olsToggleAnimationPause=function(){\r\n    if(paused){\r\n      return resumeAnimation();\r\n    }\r\n\r\n    return pauseAnimation();\r\n  };\r\n\r\n  window.olsPauseAnimation=pauseAnimation;\r\n  window.olsResumeAnimation=resumeAnimation;\r\n})();\r\n\r\nfunction typeWriter(target,text,speed,callback){\r\n  let i=0;\r\n\r\n  function typing(){\r\n    if(i<text.length){\r\n      const char=text.charAt(i);\r\n      target.textContent+=char;\r\n      i++;\r\n\r\n      let delay=speed;\r\n\r\n      if(char===\".\"){delay=speed*5;}\r\n      if(char===\",\"){delay=speed*2.5;}\r\n      if(char===\"\\n\"){delay=speed*4;}\r\n\r\n      setTimeout(typing,delay);\r\n    }else{\r\n      if(callback){callback();}\r\n    }\r\n  }\r\n\r\n  typing();\r\n}\r\n\r\nfunction switchScene(currentScene,nextScene,callback){\r\n  currentScene.classList.add(\"fade-out\");\r\n\r\n  setTimeout(function(){\r\n    currentScene.classList.remove(\"active\");\r\n    currentScene.classList.remove(\"fade-out\");\r\n    nextScene.classList.add(\"active\");\r\n\r\n    if(callback){callback();}\r\n  },850);\r\n}\r\n\r\nfunction fitVideoScreen(){\r\n  const baseWidth=1180;\r\n  const baseHeight=664;\r\n  const safePadding=24;\r\n  const availableWidth=window.innerWidth-safePadding;\r\n  const availableHeight=window.innerHeight-safePadding;\r\n  const scaleByWidth=availableWidth\/baseWidth;\r\n  const scaleByHeight=availableHeight\/baseHeight;\r\n  const finalScale=Math.min(scaleByWidth,scaleByHeight,1);\r\n  document.documentElement.style.setProperty(\"--ols-video-screen-scale\",finalScale.toFixed(4));\r\n}\r\n\r\nfunction fitMcqScreen(){\r\n  const baseWidth=1360;\r\n  const baseHeight=1130;\r\n  const safePadding=24;\r\n  const availableWidth=window.innerWidth-safePadding;\r\n  const availableHeight=window.innerHeight-safePadding;\r\n  const scaleByWidth=availableWidth\/baseWidth;\r\n  const scaleByHeight=availableHeight\/baseHeight;\r\n  const finalScale=Math.min(scaleByWidth,scaleByHeight,1);\r\n  document.documentElement.style.setProperty(\"--ols-mcq-screen-scale\",finalScale.toFixed(4));\r\n}\r\n\r\nfunction fitSaqScreen(){\r\n  const baseWidth=1360;\r\n  const baseHeight=965;\r\n  const safePadding=24;\r\n  const availableWidth=window.innerWidth-safePadding;\r\n  const availableHeight=window.innerHeight-safePadding;\r\n  const scaleByWidth=availableWidth\/baseWidth;\r\n  const scaleByHeight=availableHeight\/baseHeight;\r\n  const finalScale=Math.min(scaleByWidth,scaleByHeight,1);\r\n  document.documentElement.style.setProperty(\"--ols-saq-screen-scale\",finalScale.toFixed(4));\r\n}\r\n\r\nfunction fitAllScreens(){\r\n  fitVideoScreen();\r\n  fitMcqScreen();\r\n  fitSaqScreen();\r\n}\r\n\r\nwindow.addEventListener(\"resize\",fitAllScreens);\r\nwindow.addEventListener(\"orientationchange\",fitAllScreens);\r\nfitAllScreens();\r\n\r\nconst sceneVideo=document.getElementById(\"sceneVideo\");\r\nconst sceneMcq=document.getElementById(\"sceneMcq\");\r\nconst sceneSaq=document.getElementById(\"sceneSaq\");\r\n\r\nconst videoTitle=\"Online Chemistry Lessons\";\r\nconst videoTitleText=document.getElementById(\"videoTitleText\");\r\nconst videoTitleCursor=document.getElementById(\"videoTitleCursor\");\r\nconst videoTitleScreen=document.getElementById(\"videoTitleScreen\");\r\nconst videoScene=document.getElementById(\"videoScene\");\r\nconst lessonVideo=document.getElementById(\"lessonVideo\");\r\n\r\nlet videoFallbackTimer=null;\r\nlet videoSceneComplete=false;\r\n\r\nfunction playLessonVideo(){\r\n  lessonVideo.muted=true;\r\n  lessonVideo.currentTime=0;\r\n\r\n  const playPromise=lessonVideo.play();\r\n\r\n  if(playPromise!==undefined){\r\n    playPromise.catch(function(){\r\n      lessonVideo.muted=true;\r\n    });\r\n  }\r\n}\r\n\r\nfunction completeVideoScene(){\r\n  if(videoSceneComplete){return;}\r\n\r\n  videoSceneComplete=true;\r\n\r\n  if(videoFallbackTimer){\r\n    clearTimeout(videoFallbackTimer);\r\n  }\r\n\r\n  lessonVideo.pause();\r\n\r\n  setTimeout(function(){\r\n    switchScene(sceneVideo,sceneMcq,function(){\r\n      startMcqIntro();\r\n    });\r\n  },1400);\r\n}\r\n\r\nlessonVideo.addEventListener(\"ended\",function(){\r\n  lessonVideo.pause();\r\n  completeVideoScene();\r\n});\r\n\r\nfunction startVideoSection(){\r\n  fitVideoScreen();\r\n\r\n  setTimeout(function(){\r\n    typeWriter(videoTitleText,videoTitle,44,function(){\r\n      setTimeout(function(){\r\n        videoTitleCursor.style.display=\"none\";\r\n\r\n        setTimeout(function(){\r\n          videoTitleScreen.classList.add(\"hide\");\r\n\r\n          setTimeout(function(){\r\n            videoScene.classList.add(\"show\");\r\n\r\n            setTimeout(function(){\r\n              playLessonVideo();\r\n\r\n              videoFallbackTimer=setTimeout(function(){\r\n                completeVideoScene();\r\n              },45000);\r\n            },600);\r\n          },850);\r\n        },3000);\r\n      },250);\r\n    });\r\n  },700);\r\n}\r\n\r\nconst mcqIntroTitle=\"Multiple Choice Question Bank\";\r\nconst mcqSpecificFeedbackText=\"CH\u2084 is tetrahedral because it has four bonding pairs and no lone pairs around carbon.\";\r\nconst mcqGeneralFeedbackText=\r\n\"Your answer is incorrect.\\n\\n\"+\r\n\"To decide which species is not tetrahedral, count the electron pairs around the central atom and then consider the molecular shape.\\n\\n\"+\r\n\"\u2022 CH\u2084, NH\u2084\u207a and CCl\u2084 each have four bonding pairs and no lone pairs around the central atom, so they are tetrahedral.\\n\"+\r\n\"\u2022 ICl\u2084\u207b has six electron pairs around iodine: four bonding pairs and two lone pairs. The electron-pair geometry is octahedral, but the two lone pairs occupy opposite positions.\\n\"+\r\n\"\u2022 This leaves the four chlorine atoms arranged in a square plane.\\n\\n\"+\r\n\"The correct answer is: tetrachloroiodate(III) ion, ICl\u2084\u207b\";\r\n\r\nconst mcqIntroScreen=document.getElementById(\"mcqIntroScreen\");\r\nconst mcqIntroTitleText=document.getElementById(\"mcqIntroTitleText\");\r\nconst mcqIntroTitleCursor=document.getElementById(\"mcqIntroTitleCursor\");\r\nconst mcqScreen=document.getElementById(\"mcqScreen\");\r\nconst mcqWrongOption=document.getElementById(\"mcqWrongOption\");\r\nconst mcqSubmitButton=document.getElementById(\"mcqSubmitButton\");\r\nconst mcqSpecificFeedback=document.getElementById(\"mcqSpecificFeedback\");\r\nconst mcqCrossIcon=document.getElementById(\"mcqCrossIcon\");\r\nconst mcqSpecificText=document.getElementById(\"mcqSpecificText\");\r\nconst mcqSpecificCursor=document.getElementById(\"mcqSpecificCursor\");\r\nconst mcqGeneralFeedback=document.getElementById(\"mcqGeneralFeedback\");\r\nconst mcqGeneralText=document.getElementById(\"mcqGeneralText\");\r\nconst mcqGeneralCursor=document.getElementById(\"mcqGeneralCursor\");\r\n\r\nfunction selectMcqWrongOption(){\r\n  mcqWrongOption.classList.add(\"clicking\");\r\n\r\n  setTimeout(function(){\r\n    mcqWrongOption.classList.add(\"selected\");\r\n  },220);\r\n\r\n  setTimeout(function(){\r\n    mcqWrongOption.classList.remove(\"clicking\");\r\n  },850);\r\n}\r\n\r\nfunction clickMcqSubmit(){\r\n  mcqSubmitButton.classList.add(\"clicked\");\r\n\r\n  setTimeout(function(){\r\n    mcqSubmitButton.classList.remove(\"clicked\");\r\n  },240);\r\n}\r\n\r\nfunction showMcqSpecificFeedback(){\r\n  mcqSpecificFeedback.classList.add(\"show\");\r\n\r\n  setTimeout(function(){\r\n    mcqCrossIcon.classList.add(\"show\");\r\n  },180);\r\n\r\n  setTimeout(function(){\r\n    mcqSpecificCursor.style.display=\"inline-block\";\r\n\r\n    typeWriter(mcqSpecificText,mcqSpecificFeedbackText,12,function(){\r\n      mcqSpecificCursor.style.display=\"none\";\r\n\r\n      setTimeout(function(){\r\n        showMcqGeneralFeedback();\r\n      },650);\r\n    });\r\n  },560);\r\n}\r\n\r\nfunction showMcqGeneralFeedback(){\r\n  mcqGeneralFeedback.classList.add(\"show\");\r\n\r\n  setTimeout(function(){\r\n    mcqGeneralCursor.style.display=\"inline-block\";\r\n\r\n    typeWriter(mcqGeneralText,mcqGeneralFeedbackText,8,function(){\r\n      mcqGeneralCursor.style.display=\"none\";\r\n\r\n      setTimeout(function(){\r\n        switchScene(sceneMcq,sceneSaq,function(){\r\n          startSaqIntro();\r\n        });\r\n      },2600);\r\n    });\r\n  },600);\r\n}\r\n\r\nfunction startMcqAnimation(){\r\n  fitMcqScreen();\r\n  mcqScreen.classList.add(\"show\");\r\n\r\n  setTimeout(function(){\r\n    selectMcqWrongOption();\r\n\r\n    setTimeout(function(){\r\n      clickMcqSubmit();\r\n\r\n      setTimeout(function(){\r\n        showMcqSpecificFeedback();\r\n      },620);\r\n    },1150);\r\n  },1300);\r\n}\r\n\r\nfunction startMcqIntro(){\r\n  fitMcqScreen();\r\n\r\n  setTimeout(function(){\r\n    typeWriter(mcqIntroTitleText,mcqIntroTitle,44,function(){\r\n      setTimeout(function(){\r\n        mcqIntroTitleCursor.style.display=\"none\";\r\n\r\n        setTimeout(function(){\r\n          mcqIntroScreen.classList.add(\"hide\");\r\n\r\n          setTimeout(function(){\r\n            startMcqAnimation();\r\n          },850);\r\n        },3000);\r\n      },250);\r\n    });\r\n  },700);\r\n}\r\n\r\nconst saqIntroTitle=\"Chemistry Specialist\\nMarked Exam Feedback\";\r\nconst saqStudentAnswer=\"Silicon has a higher melting point because it has stronger covalent bonds than phosphorus, so more energy is needed to melt it.\";\r\nconst saqTeacherFeedbackText=\r\n\"Comment:\\n\"+\r\n\"This answer has the right idea that strong covalent bonds are involved, but it needs to compare the structures more precisely.\\n\\n\"+\r\n\"Silicon has a giant covalent structure. Many strong Si-Si covalent bonds extend throughout the whole lattice, so a large amount of energy is needed to overcome these bonds during melting.\\n\\n\"+\r\n\"Phosphorus exists as simple molecular P\u2084 molecules. The covalent bonds within each P\u2084 molecule are strong, but these are not the main forces overcome during melting. Melting phosphorus mainly involves overcoming weak London forces between molecules.\\n\\n\"+\r\n\"Next time, include:\\n\"+\r\n\"\u2022 Silicon: giant covalent lattice with many strong covalent bonds \u2713\\n\"+\r\n\"\u2022 Phosphorus: simple molecular P\u2084 structure \u2713\\n\"+\r\n\"\u2022 Melting phosphorus overcomes weak intermolecular forces, not covalent bonds within P\u2084 \u2713\\n\\n\"+\r\n\"This is why silicon has a much higher melting temperature than phosphorus.\";\r\n\r\nconst saqIntro=document.getElementById(\"saqIntro\");\r\nconst saqIntroTitleText=document.getElementById(\"saqIntroTitleText\");\r\nconst saqIntroTitleCursor=document.getElementById(\"saqIntroTitleCursor\");\r\nconst saqStudentText=document.getElementById(\"saqStudentText\");\r\nconst saqTeacherText=document.getElementById(\"saqTeacherText\");\r\nconst saqStudentCursor=document.getElementById(\"saqStudentCursor\");\r\nconst saqTeacherCursor=document.getElementById(\"saqTeacherCursor\");\r\nconst saqFeedbackBox=document.getElementById(\"saqTeacherFeedback\");\r\nconst saqScreen=document.getElementById(\"saqScreen\");\r\n\r\nfunction startSaqFeedbackAnimation(){\r\n  fitSaqScreen();\r\n  saqScreen.classList.add(\"show\");\r\n\r\n  setTimeout(function(){\r\n    typeWriter(saqStudentText,saqStudentAnswer,27,function(){\r\n      saqStudentCursor.style.display=\"none\";\r\n\r\n      setTimeout(function(){\r\n        saqFeedbackBox.classList.add(\"show\");\r\n        saqTeacherCursor.style.display=\"inline-block\";\r\n\r\n        typeWriter(saqTeacherText,saqTeacherFeedbackText,10,function(){\r\n          saqTeacherCursor.style.display=\"none\";\r\n        });\r\n      },650);\r\n    });\r\n  },850);\r\n}\r\n\r\nfunction startSaqIntro(){\r\n  fitSaqScreen();\r\n\r\n  setTimeout(function(){\r\n    typeWriter(saqIntroTitleText,saqIntroTitle,44,function(){\r\n      setTimeout(function(){\r\n        saqIntroTitleCursor.style.display=\"none\";\r\n\r\n        setTimeout(function(){\r\n          saqIntro.classList.add(\"hide\");\r\n\r\n          setTimeout(function(){\r\n            startSaqFeedbackAnimation();\r\n          },850);\r\n        },3000);\r\n      },250);\r\n    });\r\n  },700);\r\n}\r\n\r\nstartVideoSection();\r\n<\/script>\r\n<\/body>\r\n<\/html>\r\n  <\/template>\r\n\r\n  <script>\r\n    (function(){\r\n      var startButton = document.getElementById(\"olsCourseAnimationStart001\");\r\n      var pauseButton = document.getElementById(\"olsCourseAnimationPause001\");\r\n      var iframe = document.getElementById(\"olsCourseAnimationFrame001\");\r\n      var template = document.getElementById(\"olsCourseAnimationTemplate001\");\r\n\r\n      if (!startButton || !pauseButton || !iframe || !template) {\r\n        return;\r\n      }\r\n\r\n      startButton.addEventListener(\"click\", function(){\r\n        iframe.setAttribute(\"srcdoc\", template.innerHTML);\r\n        startButton.classList.add(\"is-hidden\");\r\n        pauseButton.classList.add(\"is-visible\");\r\n        pauseButton.textContent = \"Pause\";\r\n        pauseButton.setAttribute(\"aria-label\", \"Pause course preview animation\");\r\n      });\r\n\r\n      pauseButton.addEventListener(\"click\", function(){\r\n        if (!iframe.contentWindow || typeof iframe.contentWindow.olsToggleAnimationPause !== \"function\") {\r\n          return;\r\n        }\r\n\r\n        var state = iframe.contentWindow.olsToggleAnimationPause();\r\n\r\n        if (state === \"paused\") {\r\n          pauseButton.textContent = \"Resume\";\r\n          pauseButton.setAttribute(\"aria-label\", \"Resume course preview animation\");\r\n        } else {\r\n          pauseButton.textContent = \"Pause\";\r\n          pauseButton.setAttribute(\"aria-label\", \"Pause course preview animation\");\r\n        }\r\n      });\r\n    })();\r\n  <\/script>\r\n<\/section>\n\n      <section class=\"ols-faq-card\">\n        <h2>FAQs<\/h2>\n        <p>These questions target the common points students confuse when learning the trigonal pyramidal molecular shape.<\/p>\n        <div class=\"ols-faq-list\">\n          <div class=\"ols-faq-item\">\n            <h3>What makes a molecule trigonal pyramidal?<\/h3>\n            <p>A molecule is trigonal pyramidal when the central atom has three bonding pairs and one lone pair. The bonded atoms form a pyramidal shape because the lone pair occupies one electron domain but is not shown as an atom in the molecular shape.<\/p>\n          <\/div>\n          <div class=\"ols-faq-item\">\n            <h3>Why is NH<sub>3<\/sub> trigonal pyramidal?<\/h3>\n            <p>NH<sub>3<\/sub> has three N-H bonding pairs and one lone pair around the central nitrogen atom. The four electron domains are based on a tetrahedral arrangement, but the visible molecular shape is trigonal pyramidal.<\/p>\n          <\/div>\n          <div class=\"ols-faq-item\">\n            <h3>What is the bond angle in NH<sub>3<\/sub>?<\/h3>\n            <p>The H-N-H bond angle in NH<sub>3<\/sub> is about 107&deg;. It is smaller than 109.5&deg; because the lone pair repels the bonding pairs more strongly.<\/p>\n          <\/div>\n          <div class=\"ols-faq-item\">\n            <h3>Why is NH<sub>3<\/sub> not called tetrahedral?<\/h3>\n            <p>The electron-pair arrangement around nitrogen is based on a tetrahedron, but the molecular shape is named from the positions of the atoms only. Since one of the four electron domains is a lone pair, the molecular shape is trigonal pyramidal.<\/p>\n          <\/div>\n        <\/div>\n      <\/section>\n\n      <section class=\"ols-related-card\">\n        <h2>Related Topics<\/h2>\n        <p>Use these pages to connect trigonal pyramidal shape with the wider bonding and structure topic.<\/p>\n        <div class=\"ols-related-grid\">\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/\">Covalent Bonding<\/a>\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/covalent-bonding\/electronegativity\/\">Electronegativity<\/a>\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/tetrahedral\/\">Tetrahedral<\/a>\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/bent\/\">Bent<\/a>\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-planar\/\">Trigonal Planar<\/a>\n          <a class=\"ols-related-item\" href=\"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/polar-molecules\/\">Polar Molecules<\/a>\n        <\/div>\n      <\/section>\n\n      <section class=\"ols-attribution-card\">\n        <p><strong>&copy; Online Learning System.<\/strong> This revision page was written and produced for OLS by Dr. Mohammed Al-Fatah. All diagrams, explanations, interactive cards and revision resources on this page are protected by copyright and are provided for student revision and teaching use only.<\/p>\n      <\/section>\n\n      <script type=\"application\/ld+json\">\n{\n        \"@context\": \"https:\/\/schema.org\",\n        \"@graph\": [\n                {\n                        \"@type\": \"WebPage\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/#webpage\",\n                        \"url\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/\",\n                        \"name\": \"Trigonal Pyramidal Molecular Shape | Edexcel A Level Chemistry\",\n                        \"description\": \"Revision notes explaining trigonal pyramidal molecular shape using NH3, including three bonding pairs, one lone pair, lone-pair repulsion and the 107 degree bond angle.\",\n                        \"isPartOf\": {\n                                \"@type\": \"WebSite\",\n                                \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/#website\",\n                                \"name\": \"Online Learning System\",\n                                \"url\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/\"\n                        },\n                        \"about\": [\n                                {\n                                        \"@type\": \"Thing\",\n                                        \"name\": \"Trigonal pyramidal molecular shape\"\n                                },\n                                {\n                                        \"@type\": \"Thing\",\n                                        \"name\": \"Electron-pair repulsion theory\"\n                                },\n                                {\n                                        \"@type\": \"Thing\",\n                                        \"name\": \"Ammonia molecular shape\"\n                                }\n                        ],\n                        \"educationalLevel\": \"A Level\",\n                        \"learningResourceType\": \"Revision notes\",\n                        \"inLanguage\": \"en-GB\"\n                },\n                {\n                        \"@type\": \"Person\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/#dr-mohammed-al-fatah\",\n                        \"name\": \"Dr. Mohammed Al-Fatah\",\n                        \"url\": \"https:\/\/www.linkedin.com\/in\/doctormohammedfatah\/\",\n                        \"affiliation\": {\n                                \"@type\": \"Organization\",\n                                \"name\": \"Online Learning System\",\n                                \"url\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/\"\n                        }\n                },\n                {\n                        \"@type\": \"BreadcrumbList\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/#breadcrumb\",\n                        \"itemListElement\": [\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 1,\n                                        \"name\": \"Revision Notes\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/\"\n                                },\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 2,\n                                        \"name\": \"A Level Chemistry\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/\"\n                                },\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 3,\n                                        \"name\": \"Edexcel\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/\"\n                                },\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 4,\n                                        \"name\": \"Topic 2 Bonding and Structure\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/\"\n                                },\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 5,\n                                        \"name\": \"Shapes of Molecules\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/\"\n                                },\n                                {\n                                        \"@type\": \"ListItem\",\n                                        \"position\": 6,\n                                        \"name\": \"Trigonal Pyramidal\",\n                                        \"item\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/\"\n                                }\n                        ]\n                },\n                {\n                        \"@type\": \"Course\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/product\/covalent-bonding-shapes-of-molecules-edexcel-t2ab\/#course\",\n                        \"name\": \"Covalent Bonding, Structure and Shapes of Molecules\",\n                        \"description\": \"A paid OLS course covering covalent bonding, structure, molecular shapes, electron-pair repulsion, bond angles and exam-style practice for Edexcel A Level Chemistry.\",\n                        \"provider\": {\n                                \"@type\": \"Organization\",\n                                \"name\": \"Online Learning System\",\n                                \"sameAs\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/\"\n                        },\n                        \"url\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/product\/covalent-bonding-shapes-of-molecules-edexcel-t2ab\/\"\n                },\n                {\n                        \"@type\": \"ImageObject\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/NH3.png#image\",\n                        \"url\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-content\/uploads\/2026\/05\/NH3.png\",\n                        \"caption\": \"Trigonal pyramidal shape table entry showing three bonding pairs, one lone pair and a bond angle of about 107 degrees.\"\n                },\n                {\n                        \"@type\": \"FAQPage\",\n                        \"@id\": \"https:\/\/www.onlinelearningsystem.net\/xyz\/revision-notes\/a-level-chemistry\/edexcel\/topic-2-bonding-and-structure\/shapes-of-molecules\/trigonal-pyramidal\/#faq\",\n                        \"mainEntity\": [\n                                {\n                                        \"@type\": \"Question\",\n                                        \"name\": \"What makes a molecule trigonal pyramidal?\",\n                                        \"acceptedAnswer\": {\n                                                \"@type\": \"Answer\",\n                                                \"text\": \"A molecule is trigonal pyramidal when the central atom has three bonding pairs and one lone pair. The bonded atoms form a pyramidal shape because the lone pair occupies one electron domain but is not shown as an atom in the molecular shape.\"\n                                        }\n                                },\n                                {\n                                        \"@type\": \"Question\",\n                                        \"name\": \"Why is NH3 trigonal pyramidal?\",\n                                        \"acceptedAnswer\": {\n                                                \"@type\": \"Answer\",\n                                                \"text\": \"NH3 has three N-H bonding pairs and one lone pair around the central nitrogen atom. The four electron domains are based on a tetrahedral arrangement, but the visible molecular shape is trigonal pyramidal.\"\n                                        }\n                                },\n                                {\n                                        \"@type\": \"Question\",\n                                        \"name\": \"What is the bond angle in NH3?\",\n                                        \"acceptedAnswer\": {\n                                                \"@type\": \"Answer\",\n                                                \"text\": \"The H-N-H bond angle in NH3 is about 107 degrees. It is smaller than 109.5 degrees because the lone pair repels the bonding pairs more strongly.\"\n                                        }\n                                },\n                                {\n                                        \"@type\": \"Question\",\n                                        \"name\": \"Why is NH3 not called tetrahedral?\",\n                                        \"acceptedAnswer\": {\n                                                \"@type\": \"Answer\",\n                                                \"text\": \"The electron-pair arrangement around nitrogen is based on a tetrahedron, but the molecular shape is named from the positions of the atoms only. Since one of the four electron domains is a lone pair, the molecular shape is trigonal pyramidal.\"\n                                        }\n                                }\n                        ]\n                }\n        ]\n}\n      <\/script>\n      <div class=\"ols-image-lightbox\" id=\"olsImageLightboxTrigonalPyramidal9ch0\" aria-hidden=\"true\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Expanded revision image\">\n        <div class=\"ols-image-lightbox-inner\">\n          <button class=\"ols-image-lightbox-close\" type=\"button\" aria-label=\"Close enlarged image\">\u00d7<\/button>\n          <img decoding=\"async\" class=\"ols-image-lightbox-img\" src=\"\" alt=\"\">\n        <\/div>\n      <\/div>\n\n      <script>\n        (function(){\n          var page = document.querySelector(\".ols-trigonal-pyramidal-molecular-shape-9ch0-page\");\n          if (!page) {\n            return;\n          }\n\n          var lightbox = page.querySelector(\"#olsImageLightboxTrigonalPyramidal9ch0\");\n          if (!lightbox) {\n            return;\n          }\n\n          var lightboxImage = lightbox.querySelector(\".ols-image-lightbox-img\");\n          var closeButton = lightbox.querySelector(\".ols-image-lightbox-close\");\n          var clickableImages = page.querySelectorAll(\"img.ols-lightbox-target\");\n\n          function openLightbox(image) {\n            lightboxImage.src = image.currentSrc || image.src;\n            lightboxImage.alt = image.alt || \"Expanded revision image\";\n            lightbox.classList.add(\"is-open\");\n            lightbox.setAttribute(\"aria-hidden\", \"false\");\n\n            if (!document.body.dataset.olsPreviousOverflow) {\n              document.body.dataset.olsPreviousOverflow = document.body.style.overflow || \"default\";\n            }\n\n            document.body.style.overflow = \"hidden\";\n          }\n\n          function closeLightbox() {\n            lightbox.classList.remove(\"is-open\");\n            lightbox.setAttribute(\"aria-hidden\", \"true\");\n            lightboxImage.src = \"\";\n\n            if (document.body.dataset.olsPreviousOverflow) {\n              document.body.style.overflow = document.body.dataset.olsPreviousOverflow === \"default\" ? \"\" : document.body.dataset.olsPreviousOverflow;\n              delete document.body.dataset.olsPreviousOverflow;\n            }\n          }\n\n          clickableImages.forEach(function(image){\n            image.addEventListener(\"click\", function(event){\n              event.preventDefault();\n              event.stopPropagation();\n              openLightbox(image);\n            });\n          });\n\n          closeButton.addEventListener(\"click\", closeLightbox);\n\n          lightbox.addEventListener(\"click\", function(event){\n            if (event.target === lightbox) {\n              closeLightbox();\n            }\n          });\n\n          document.addEventListener(\"keydown\", function(event){\n            if (event.key === \"Escape\" && lightbox.classList.contains(\"is-open\")) {\n              closeLightbox();\n            }\n          });\n        })();\n      <\/script>\n\n    <\/main>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Revision Notes \/ A Level Chemistry \/ Edexcel \/ Topic 2 Bonding and Structure \/ Shapes of Molecules \/ Trigonal Pyramidal Trigonal Pyramidal Molecular Shape A focused revision guide to the trigonal pyramidal molecular shape, using NH3 as the key example. This page explains why three bonding pairs and one lone pair around a central [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"parent":4572,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"productId":0,"courseId":0,"footnotes":""},"class_list":["post-4588","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/pages\/4588","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/comments?post=4588"}],"version-history":[{"count":0,"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/pages\/4588\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/pages\/4572"}],"wp:attachment":[{"href":"https:\/\/www.onlinelearningsystem.net\/xyz\/wp-json\/wp\/v2\/media?parent=4588"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}