/* ============================================================
   Giving Evidence homepage redesign — Additional CSS
   Paste this WHOLE file into: Appearance -> Customize -> Additional CSS
   Every rule is scoped under .ge-home-2026 so it ONLY affects the new
   draft homepage and cannot change the look of any of your existing
   live pages, even once you click Publish in the Customizer.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');

:root{
  --ge-red:#A9112C;
  --ge-red-dark:#7C0D20;
  --ge-ink:#20201E;
  --ge-grey:#5B5A56;
  --ge-line:#E7E3DD;
  --ge-bg:#FBF9F6;
  --ge-card:#FFFFFF;
}

.ge-home-2026, .ge-home-2026 *{box-sizing:border-box;}
.ge-home-2026{font-family:'Inter',Arial,sans-serif;color:var(--ge-ink);background:var(--ge-bg);line-height:1.6;}
.ge-home-2026 h1,.ge-home-2026 h2,.ge-home-2026 h3{font-family:'Poppins',Arial,sans-serif;font-weight:600;margin:0;}
.ge-home-2026 p,.ge-home-2026 ul{margin:0;}
.ge-home-2026 ul{list-style:none;padding:0;}
.ge-home-2026 a{color:var(--ge-red);text-decoration:none;}
.ge-home-2026 .wrap{max-width:1080px;margin:0 auto;padding:0 32px;}
.ge-home-2026 .em{color:var(--ge-red);font-weight:700;}

.ge-home-2026 header{background:#fff;border-bottom:1px solid var(--ge-line);position:relative;}
.ge-home-2026 .navbar{display:flex;align-items:center;justify-content:space-between;padding:18px 32px;max-width:1080px;margin:0 auto;}
.ge-home-2026 .logo img{height:80px;display:block;}
.ge-home-2026 nav ul{display:flex;gap:26px;align-items:center;}
.ge-home-2026 nav a{color:var(--ge-ink);font-size:14px;font-weight:500;}
.ge-home-2026 nav a:hover{color:var(--ge-red);}
.ge-home-2026 .has-dropdown{position:relative;}
.ge-home-2026 .has-dropdown .dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--ge-line);border-radius:8px;padding:8px;min-width:210px;box-shadow:0 12px 24px rgba(0,0,0,.08);flex-direction:column;gap:0;z-index:10;}
.ge-home-2026 .has-dropdown:hover .dropdown{display:flex;}
.ge-home-2026 .dropdown li{width:100%;}
.ge-home-2026 .dropdown a{display:block;padding:9px 12px;border-radius:6px;font-size:13.5px;white-space:nowrap;}
.ge-home-2026 .dropdown a:hover{background:var(--ge-bg);}
.ge-home-2026 .dropdown a span{color:var(--ge-grey);font-weight:400;}

.ge-home-2026 .btn{display:inline-block;background:var(--ge-red);color:#fff;font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;padding:11px 22px;border-radius:4px;border:none;cursor:pointer;}
.ge-home-2026 .btn:hover{background:var(--ge-red-dark);color:#fff;}
.ge-home-2026 .btn-outline{display:inline-block;border:1.5px solid var(--ge-red);color:var(--ge-red);font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;padding:10px 22px;border-radius:4px;background:none;}

.ge-home-2026 .hero{position:relative;padding:110px 0 90px;text-align:center;overflow:hidden;color:#fff;}
.ge-home-2026 .hero::before{content:"";position:absolute;inset:0;background:url('https://giving-evidence.com/wp-content/uploads/2026/08/Divo-classroom.jpg') center top/cover;}
.ge-home-2026 .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(32,32,30,.5),rgba(32,32,30,.65));}
.ge-home-2026 .hero-inner{position:relative;z-index:1;}
.ge-home-2026 .hero h1{font-size:34px;line-height:1.3;max-width:1000px;margin:0 auto 20px;color:#fff !important;white-space:nowrap;}
.ge-home-2026 .hero p{font-size:18px;color:#E9E7E2;max-width:600px;margin:0 auto 32px;}
.ge-home-2026 .action-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
.ge-home-2026 .pill{display:inline-block;border:1.5px solid rgba(255,255,255,.55);border-radius:24px;padding:11px 20px;color:#fff;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:600;}
.ge-home-2026 .pill:hover{background:rgba(255,255,255,.1);color:#fff;}
.ge-home-2026 .pill-primary{background:var(--ge-red);border-color:var(--ge-red);}
.ge-home-2026 .pill-primary:hover{background:var(--ge-red-dark);border-color:var(--ge-red-dark);}

.ge-home-2026 .services{padding:72px 0 32px;}
.ge-home-2026 .section-head{text-align:center;margin-bottom:40px;}
.ge-home-2026 .section-head h2{font-size:28px;margin-bottom:10px;}
.ge-home-2026 .section-head p{color:var(--ge-grey);font-size:15px;}
.ge-home-2026 .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ge-home-2026 .card{background:var(--ge-card);border:1px solid var(--ge-line);border-radius:10px;overflow:hidden;}
.ge-home-2026 .card img{width:100%;height:240px;object-fit:cover;object-position:center top;display:block;}
.ge-home-2026 .card .body{padding:22px 24px;}
.ge-home-2026 .card h3{font-size:18px;margin-bottom:10px;}
.ge-home-2026 .card p{font-size:14.5px;color:var(--ge-grey);margin-bottom:14px;}
.ge-home-2026 .card a{font-size:14px;font-weight:600;}

.ge-home-2026 .track{background:#fff;border-top:1px solid var(--ge-line);border-bottom:1px solid var(--ge-line);padding:32px 0 8px;}
.ge-home-2026 .stats{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;}
.ge-home-2026 .stat{text-align:center;display:block;width:160px;padding:6px;border-radius:8px;}
.ge-home-2026 .stat .num{font-family:'Poppins',sans-serif;font-weight:700;font-size:36px;color:var(--ge-red);}
.ge-home-2026 .stat .lbl{font-size:13.5px;color:var(--ge-grey);margin-top:6px;}
.ge-home-2026 a.stat:hover{background:var(--ge-bg);}
.ge-home-2026 a.stat:hover .lbl{color:var(--ge-red);text-decoration:underline;}

.ge-home-2026 .quote-scroll{overflow:hidden;width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.ge-home-2026 .quote-track{display:flex;gap:20px;width:max-content;animation:ge2026-scroll-left 69s linear infinite;padding:4px 0 8px;}
.ge-home-2026 .quote-scroll:hover .quote-track{animation-play-state:paused;}
.ge-home-2026 .qcard{background:var(--ge-bg);border:1px solid var(--ge-line);border-radius:10px;padding:24px;width:320px;flex-shrink:0;display:flex;flex-direction:column;}
.ge-home-2026 .qcard p.quote{font-size:13.5px;color:var(--ge-ink);margin-bottom:14px;flex:1;}
.ge-home-2026 .qcard .who{font-size:13px;font-weight:600;color:var(--ge-red);}
.ge-home-2026 .qcard .role{font-size:12px;color:var(--ge-grey);}
@keyframes ge2026-scroll-left{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.ge-home-2026 .ribbon-wrap{background:#fff;border-top:1px solid var(--ge-line);padding:34px 0 8px;margin-top:10px;}
.ge-home-2026 .press-label{font-size:12.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ge-grey);font-weight:600;margin-bottom:14px;}
.ge-home-2026 .ribbon-static{display:flex;flex-wrap:wrap;gap:36px;justify-content:center;}
.ge-home-2026 .ribbon-static a{font-family:'Poppins',sans-serif;font-weight:600;font-size:15px;color:#8B8A85;white-space:nowrap;}
.ge-home-2026 .ribbon-static a:hover{color:var(--ge-red);}

.ge-home-2026 .whoweare{padding:8px 0 72px;}
.ge-home-2026 .whoweare .wrap{display:grid;grid-template-columns:220px 1fr;gap:44px;align-items:center;}
.ge-home-2026 .whoweare img{width:100%;border-radius:10px;}
.ge-home-2026 .whoweare h2{font-size:26px;margin-bottom:14px;}
.ge-home-2026 .whoweare p{font-size:15px;color:var(--ge-grey);margin-bottom:16px;}

.ge-home-2026 .fpr-banner{background:var(--ge-red);padding:48px 0;}
.ge-home-2026 .fpr-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;}
.ge-home-2026 .fpr-text h2{color:#fff;font-size:26px;margin-bottom:12px;}
.ge-home-2026 .fpr-text p{color:#F5DEDE;font-size:14.5px;max-width:520px;margin-bottom:18px;}
.ge-home-2026 .fpr-banner .btn{background:#fff;color:var(--ge-red);}
.ge-home-2026 .fpr-banner .btn:hover{background:#F1EFE9;}
.ge-home-2026 .fpr-stats{display:flex;gap:32px;flex-shrink:0;}
.ge-home-2026 .fpr-stats .num{color:#fff;}
.ge-home-2026 .fpr-stats .lbl{color:#F5DEDE;}

.ge-home-2026 .say{background:#fff;border-top:1px solid var(--ge-line);padding:72px 0;}
.ge-home-2026 .igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:44px;}
.ge-home-2026 .ipost{border:1px solid var(--ge-line);border-radius:10px;overflow:hidden;background:var(--ge-bg);}
.ge-home-2026 .ipost img{width:100%;height:130px;object-fit:cover;object-position:center top;display:block;}
.ge-home-2026 .ipost .body{padding:18px 20px;}
.ge-home-2026 .ipost .cat{font-size:11px;color:var(--ge-red);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;}
.ge-home-2026 .ipost .date{font-size:12px;color:var(--ge-grey);margin-bottom:8px;}
.ge-home-2026 .ipost h3{font-size:15.5px;margin-bottom:8px;line-height:1.4;}
.ge-home-2026 .ipost p{font-size:13.5px;color:var(--ge-grey);margin-bottom:12px;}
.ge-home-2026 .ipost a{font-size:13px;font-weight:600;}
.ge-home-2026 .see-all{text-align:center;margin-top:36px;}

.ge-home-2026 .book-band{background:rgb(169,17,44) !important;color:#fff;padding:60px 0;}
.ge-home-2026 .book-band .wrap{display:flex;align-items:center;gap:44px;}
.ge-home-2026 .book-band img{width:150px;border-radius:4px;flex-shrink:0;box-shadow:0 12px 30px rgba(0,0,0,.35);}
.ge-home-2026 .book-band h2{color:#fff !important;font-size:24px;margin-bottom:10px;}
.ge-home-2026 .book-band p{color:#F5DEDE !important;font-size:14.5px;margin-bottom:20px;max-width:520px;}
.ge-home-2026 .book-band .btn{background:var(--ge-ink) !important;color:#fff !important;}
.ge-home-2026 .book-band .btn:hover{background:#000 !important;}

/* Videos page */
.ge-home-2026 .filters{display:flex;gap:10px;flex-wrap:wrap;padding:26px 0 6px;}
.ge-home-2026 .filter-btn{display:inline-block;font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;padding:8px 16px;border-radius:20px;border:1.5px solid var(--ge-line);background:#fff;color:var(--ge-grey);cursor:pointer;}
.ge-home-2026 .filter-btn.active{background:rgb(169,17,44) !important;border-color:rgb(169,17,44) !important;color:#fff !important;}
.ge-home-2026 .filter-btn:hover{border-color:rgb(169,17,44);color:rgb(169,17,44);}
.ge-home-2026 .badge{display:inline-block;font-family:'Poppins',sans-serif;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:4px 9px;border-radius:4px;background:var(--ge-bg);color:rgb(169,17,44);border:1px solid var(--ge-line);margin-right:6px;}
.ge-home-2026 .vmeta{font-size:12.5px;color:var(--ge-grey);margin-top:6px;}
.ge-home-2026 .vlist{margin-top:24px;display:flex;flex-direction:column;}
.ge-home-2026 .vrow{display:grid;grid-template-columns:220px 1fr;gap:26px;padding:26px 0;border-bottom:1px solid var(--ge-line);align-items:start;}
.ge-home-2026 .vrow.fpr{border-left:3px solid rgb(169,17,44);padding-left:20px;margin-left:-23px;}
.ge-home-2026 .vrow .vthumb{position:relative;height:130px;border-radius:8px;overflow:hidden;background:#20201E;display:block;}
.ge-home-2026 .vrow .vthumb img{width:100%;height:100%;object-fit:cover;}
.ge-home-2026 .play-btn{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.ge-home-2026 .play-btn::after{content:"";width:44px;height:44px;border-radius:50%;background:rgba(169,17,44,.9);box-shadow:0 8px 20px rgba(0,0,0,.3);}
.ge-home-2026 .play-btn::before{content:"";position:absolute;width:0;height:0;border-style:solid;border-width:8px 0 8px 13px;border-color:transparent transparent transparent #fff;z-index:1;margin-left:4px;}
.ge-home-2026 .vrow h3{font-size:17px;margin-bottom:6px;line-height:1.4;}
.ge-home-2026 .vrow p.vdesc{font-size:14px;color:var(--ge-grey);margin-bottom:8px;}
.ge-home-2026 .series-tag{display:inline-flex;align-items:center;gap:6px;font-family:'Poppins',sans-serif;font-size:11.5px;font-weight:600;color:rgb(169,17,44);margin-bottom:6px;}
.ge-home-2026 .series-tag::before{content:"";width:7px;height:7px;border-radius:50%;background:rgb(169,17,44);}
.ge-home-2026 .vph{display:flex;align-items:center;justify-content:center;height:100%;color:#fff;font-family:'Poppins',sans-serif;font-size:12px;text-align:center;padding:8px;}
.ge-home-2026 .vph.vlogo{background:#20201E;font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;}
@media(max-width:820px){ .ge-home-2026 .vrow{grid-template-columns:1fr;} }

/* Hide the old theme header/nav/title, and let content go full width,
   on the homepage, appointment page and videos page. When you build a
   new page the same way, add its page ID to each of the two selector
   lists below (that's the only edit needed — nothing on the page itself). */
body.page-id-3834 #header,
body.page-id-3902 #header,
body.page-id-3953 #header,
body.page-id-3834 #masthead,
body.page-id-3902 #masthead,
body.page-id-3953 #masthead,
body.page-id-3834 #access,
body.page-id-3902 #access,
body.page-id-3953 #access,
body.page-id-3834 .entry-title,
body.page-id-3902 .entry-title,
body.page-id-3953 .entry-title,
body.page-id-3834 .entry-header,
body.page-id-3902 .entry-header,
body.page-id-3953 .entry-header {
  display: none !important;
}

body.page-id-3834 #wrapper,
body.page-id-3902 #wrapper,
body.page-id-3953 #wrapper,
body.page-id-3834 #main,
body.page-id-3902 #main,
body.page-id-3953 #main,
body.page-id-3834 #primary,
body.page-id-3902 #primary,
body.page-id-3953 #primary,
body.page-id-3834 #content,
body.page-id-3902 #content,
body.page-id-3953 #content,
body.page-id-3834 #secondary,
body.page-id-3902 #secondary,
body.page-id-3953 #secondary {
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ge-home-2026 footer{background:#fff;border-top:1px solid var(--ge-line);padding:40px 0;text-align:center;}
.ge-home-2026 footer p{font-size:13px;color:var(--ge-grey);}
.ge-home-2026 .search-row{display:flex;gap:10px;}
.ge-home-2026 .search-row input{flex:1;border:1px solid var(--ge-line);border-radius:6px;padding:10px 14px;font-size:14px;font-family:'Inter',sans-serif;}

@media(max-width:860px){
  .ge-home-2026 .grid3,.ge-home-2026 .igrid{grid-template-columns:1fr;}
  .ge-home-2026 .hero h1{white-space:normal;font-size:28px;max-width:100%;}
  .ge-home-2026 nav ul{display:none;}
  .ge-home-2026 .book-band .wrap{flex-direction:column;text-align:center;}
  .ge-home-2026 .whoweare .wrap{grid-template-columns:1fr;text-align:center;}
  .ge-home-2026 .fpr-inner{flex-direction:column;text-align:center;}
}

/* Appointment page — intro band */
.ge-home-2026 .intro-band{background:rgb(169,17,44) !important;padding:56px 0 48px;color:#fff;}
.ge-home-2026 .intro-band .wrap{max-width:760px;}
.ge-home-2026 .intro-band h1{color:#fff;font-size:32px;margin-bottom:16px;}
.ge-home-2026 .intro-band p{color:#F5DEDE;font-size:15.5px;margin-bottom:12px;}
.ge-home-2026 .intro-band p:last-child{margin-bottom:0;}
.ge-home-2026 .intro-band .wave{font-size:32px;margin-bottom:8px;}

/* Appointment page — form card */
.ge-home-2026 .form-section{padding:56px 0 80px;}
.ge-home-2026 .form-card{max-width:680px;margin:-40px auto 0;background:var(--ge-card);border-radius:14px;box-shadow:0 20px 50px rgba(32,32,30,.12);padding:44px 48px;border:1px solid var(--ge-line);}
.ge-home-2026 .field{margin-bottom:24px;}
.ge-home-2026 .field label{display:block;font-family:'Poppins',sans-serif;font-weight:600;font-size:14px;color:var(--ge-ink);margin-bottom:7px;}
.ge-home-2026 .field .hint{font-weight:400;color:var(--ge-grey);font-size:12.5px;margin-left:4px;}
.ge-home-2026 .field input[type=text],
.ge-home-2026 .field input[type=email],
.ge-home-2026 .field textarea{
  width:100%;
  border:1.5px solid var(--ge-line);
  border-radius:8px;
  padding:12px 14px;
  font-family:'Inter',sans-serif;
  font-size:14.5px;
  color:var(--ge-ink);
  background:var(--ge-bg);
}
.ge-home-2026 .field input:focus,
.ge-home-2026 .field textarea:focus{
  outline:none;
  border-color:var(--ge-red);
  background:#fff;
}
.ge-home-2026 .field textarea{min-height:120px;resize:vertical;}
.ge-home-2026 .field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.ge-home-2026 .submit-row{margin-top:8px;text-align:center;}
.ge-home-2026 .submit-row .btn{width:100%;font-size:15px;padding:13px 22px;border:none;cursor:pointer;}
.ge-home-2026 .privacy-note{margin-top:16px;font-size:12px;color:var(--ge-grey);text-align:center;}
@media(max-width:700px){
  .ge-home-2026 .form-card{padding:32px 24px;border-radius:10px;}
  .ge-home-2026 .field-row{grid-template-columns:1fr;}
}

/* ============================================================
   Sitewide header for every page/post that ISN'T the homepage,
   appointment page or videos page. Confirmed by directly inspecting
   the live DOM: #masthead contains exactly two children, #branding
   (logo) and #access (nav) — so #masthead is flexed to sit them
   side by side, matching the new pages' layout. This only works
   properly once the actual WordPress menu (Appearance -> Menus) is
   simplified to: What we do > Consulting (advisory)/Research/
   Campaigning (talks and press), then Insights, Previous engagements,
   Who we are, Buy the book — see the separate checklist for that.
   Has no effect on the homepage/appointment/videos page, since the
   whole #header/#masthead/#access area is already hidden there.
   ============================================================ */
#header {
  /* Break out of the page's fixed 940px #wrapper so the header can be
     full-width like the homepage, without changing the width of the
     body content below it. */
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
  position: relative !important;
  /* Black rule lines above and below the whole header (previously
     these were only on the logo image itself). */
  border-top: 4px solid #000 !important;
  border-bottom: 1px solid #000 !important;
  background: #fff !important;
}
#masthead {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  padding: 18px 32px !important;
  max-width: 1080px !important;
  margin: 0 auto !important;
  background: #fff !important;
}
#site-title, #site-description {
  display: none !important;
}
#branding {
  margin: 0 !important;
  width: auto !important;
  float: none !important;
  flex: 0 0 auto !important;
}
#branding img {
  height: 80px !important;
  width: auto !important;
  display: block !important;
  border: none !important;
  float: none !important;
}
#access {
  background: none !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  float: none !important;
  flex: 1 1 auto !important;
  display: flex !important;
  justify-content: flex-end !important;
}
#access .skip-link {
  position: absolute !important;
  left: -9999px !important;
}
#access .menu-header,
#access ul.menu {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#access ul.menu > li {
  position: relative !important;
}
#access ul.menu > li > a {
  font-family: 'Poppins', Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ge-ink) !important;
  text-decoration: none !important;
  background: none !important;
  padding: 0 !important;
}
#access ul.menu > li > a:hover {
  color: var(--ge-red) !important;
}
#access .current-menu-item > a,
#access .current_page_item > a,
#access .current_page_ancestor > a,
#access .current-menu-ancestor > a {
  color: var(--ge-red) !important;
}
#access .sub-menu {
  display: none;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  background: #fff !important;
  border: 1px solid var(--ge-line) !important;
  border-radius: 8px !important;
  padding: 8px !important;
  min-width: 210px !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.08) !important;
  list-style: none !important;
  margin: 0 !important;
  z-index: 10 !important;
}
#access ul.menu > li:hover > .sub-menu {
  display: block !important;
}
#access .sub-menu li {
  width: 100% !important;
}
#access .sub-menu a {
  display: block !important;
  padding: 9px 12px !important;
  border-radius: 6px !important;
  font-size: 13.5px !important;
  color: var(--ge-ink) !important;
  white-space: nowrap !important;
  background: none !important;
}
#access .sub-menu a:hover {
  background: var(--ge-bg) !important;
  color: var(--ge-red) !important;
}

/* "Buy the book" styled as a red button — after adding this menu
   item in Appearance -> Menus, give it the CSS class "nav-btn"
   (see checklist). */
#access ul.menu > li.nav-btn > a {
  background: var(--ge-red) !important;
  color: #fff !important;
  font-weight: 600 !important;
  padding: 11px 22px !important;
  border-radius: 4px !important;
}
#access ul.menu > li.nav-btn > a:hover {
  background: var(--ge-red-dark) !important;
  color: #fff !important;
}

@media(max-width:860px){
  #access .menu-header,
  #access ul.menu {
    display: none !important;
  }
}