/* The Schools Challenge — homepage content refresh.
   Load after the existing screen.css / screenNEW.css.
   Homepage content only: header, menus and footer are untouched. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

html:has(body#homepage #TSCTVVideoHomePage){min-width:0!important}
body#homepage #container{--tsc-navy:#192b6d;--tsc-blue:#2f5caa;--tsc-sky:#91c5ed;--tsc-pale:#edf6fc;--tsc-paper:#fff;--tsc-ink:#172243;--tsc-muted:#5e6981;--tsc-line:rgba(25,43,109,.16);--tsc-serif:'Playfair Display',Georgia,serif;--tsc-sans:'DM Sans',Arial,sans-serif;box-sizing:border-box;display:grid!important;grid-template-columns:minmax(0,2fr) minmax(250px,1fr);align-items:start;gap:24px;width:min(1000px,calc(100% - 2*clamp(18px,4vw,56px)))!important;max-width:1000px!important;min-height:0!important;margin:0 auto!important;padding:clamp(38px,6vw,68px) 0 clamp(52px,7vw,82px)!important;background:transparent!important;color:var(--tsc-ink);font:400 16px/1.68 var(--tsc-sans);-webkit-font-smoothing:antialiased}
body#homepage #container::before{content:'';position:fixed;z-index:-2;inset:0;background:linear-gradient(180deg,var(--tsc-pale) 0,#fff 720px)}
body#homepage #container *,body#homepage #container *::before,body#homepage #container *::after{box-sizing:border-box}
body#homepage #container>br,body#homepage #container>.clearallclass,body#homepage #container>.clearallleft{display:none!important}
body#homepage #container a{color:var(--tsc-blue);text-underline-offset:4px}
body#homepage #container h1,body#homepage #container h2,body#homepage #container h3{font-family:var(--tsc-serif)!important;font-weight:500!important;letter-spacing:-.02em}

/* Rebuild the legacy floated columns as a responsive grid. */
body#homepage #container>.homepageLEFTColumn{grid-column:1;float:none!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
body#homepage #container>.homepageRIGHTColumn{grid-column:2;float:none!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important}

/* TSC TV feature */
body#homepage #TSCTVVideoHomePage{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(24px,4vw,38px)!important;background:#fff!important;border:1px solid var(--tsc-line)!important;border-top:6px solid var(--tsc-navy)!important;box-shadow:0 13px 36px rgba(25,43,109,.08);text-align:center!important}
body#homepage #TSCTVVideoHomePage>br{display:none!important}
body#homepage #TSCTVVideoHomePage>h2{max-width:700px;margin:0 auto 22px!important;padding:0!important;color:var(--tsc-navy)!important;text-align:center!important;font-size:clamp(1.65rem,3vw,2.35rem)!important;line-height:1.18!important}
body#homepage #SCTVHomePageWrapper{position:relative!important;width:100%!important;height:0!important;margin:0!important;padding:0 0 56.25%!important;overflow:hidden;border:0!important;background:#10162a!important;box-shadow:0 8px 24px rgba(18,31,78,.16)}
body#homepage #SCTVHomePageWrapper iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;border:0!important}
body#homepage #TSCTVVideoHomePage>h3{margin:18px 0 0!important;padding:0!important;color:var(--tsc-muted)!important;text-align:center!important;font:600 14px/1.5 var(--tsc-sans)!important;letter-spacing:0!important}

/* Four homepage action tiles */
body#homepage #homepageblocks{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;overflow:visible!important}
body#homepage #homepageblocks>.homepageblocksnewlinespacer,body#homepage #homepageblocks>.clearallclass{display:none!important}
body#homepage #homepageblocks>.homepageblocksblock{position:relative;display:flex!important;flex-direction:column;align-items:center;justify-content:center;float:none!important;width:100%!important;height:auto!important;min-height:150px;margin:0!important;padding:20px 14px 42px!important;overflow:hidden;background:var(--tsc-navy)!important;border:0!important;border-radius:0!important;color:#fff!important;text-align:center!important;cursor:pointer;box-shadow:0 8px 24px rgba(25,43,109,.14);transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
body#homepage #homepageblocks>.homepageblocksblock:nth-of-type(even){background:var(--tsc-blue)!important}
body#homepage #homepageblocks>.homepageblocksblock::after{content:'→';position:absolute;right:13px;bottom:12px;display:flex;align-items:center;justify-content:center;width:29px;height:29px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.48);border-radius:50%;color:#fff;font:700 15px/1 var(--tsc-sans)}
body#homepage #homepageblocks>.homepageblocksblock:hover{background:#244b94!important;opacity:1!important;transform:translateY(-3px);box-shadow:0 13px 28px rgba(25,43,109,.22)}
body#homepage #homepageblocks>.homepageblocksblock h1,body#homepage #homepageblocks>.homepageblocksblock h2{margin:0!important;padding:0!important;color:#fff!important;text-align:center!important;font:500 clamp(1.2rem,2.2vw,1.55rem)/1.18 var(--tsc-serif)!important;letter-spacing:-.015em}
body#homepage #homepageblocks>.homepageblocksblock:not(:has(img)) h1,body#homepage #homepageblocks>.homepageblocksblock:not(:has(img)) h2{font-size:clamp(1.45rem,2.5vw,1.8rem)!important;line-height:1.14!important}
body#homepage #homepageblocks>.homepageblocksblock br{display:none!important}
body#homepage #homepageblocks .TSCLogoInTiles{display:block!important;width:auto!important;max-width:105px!important;max-height:74px!important;margin:0 auto!important;object-fit:contain}
body#homepage #homepageblocks>.homepageblocksblock img:not(.TSCLogoInTiles){display:block!important;width:54px!important;height:54px!important;margin:12px auto 0!important;object-fit:contain;border-radius:50%}
body#homepage #homepageblocks>.homepageblocksblock img[src*="calendar"]{width:70px!important;height:70px!important;padding:3px!important;border:1px solid rgba(255,255,255,.58)!important;border-radius:5px!important;background:#fff!important;object-fit:contain!important;box-shadow:0 4px 12px rgba(10,25,70,.18)}

/* Main feature panels */
body#homepage .homepagefeatureboxwider{float:none!important;width:100%!important;max-width:none!important;height:auto!important;margin:0 0 20px!important;padding:clamp(20px,3vw,28px)!important;background:#fff!important;border:1px solid var(--tsc-line)!important;border-radius:0!important;text-align:center!important;box-shadow:0 8px 26px rgba(25,43,109,.055)}
body#homepage .homepagefeatureboxwider>a{display:block!important;width:100%!important;margin:0!important}
body#homepage .homepagefeatureboxwider>a+a{margin-top:20px!important}
body#homepage .homepagefeatureboxwider>br{display:none!important}
body#homepage .homepagefeatureboxwider img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;margin:0 auto!important}
body#homepage #facebooksurround{width:100%!important;max-width:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}

/* Stock highlights */
body#homepage #homepagestocktop5featurebox{float:none!important;width:100%!important;max-width:none!important;margin:0 0 20px!important}
body#homepage #stocktop5{width:100%!important;margin:0!important;padding:0!important;background:transparent!important;border-radius:0!important}
body#homepage #stocktop5 .top5stockadditions{width:100%!important;margin:0!important;border:0!important;border-collapse:collapse!important;table-layout:fixed;color:var(--tsc-ink)!important;font:400 14px/1.45 var(--tsc-sans)!important}
body#homepage #stocktop5 .top5stockadditions th{padding:0 0 18px!important;background:transparent!important;border:0!important;color:var(--tsc-navy)!important;text-align:left!important;font:600 16px/1.5 var(--tsc-sans)!important}
body#homepage #stocktop5 .top5stockadditions td{padding:10px 8px!important;background:transparent!important;border:0!important;border-top:1px solid var(--tsc-line)!important;color:var(--tsc-ink)!important;font:500 13px/1.4 var(--tsc-sans)!important}
body#homepage #stocktop5 .top5stockadditions .tdstockright{width:110px;text-align:right!important;color:var(--tsc-navy)!important;font-weight:700!important;white-space:nowrap}
body#homepage #stocktop5 .yellowtextspan a,body#homepage #stocktop5>.rightp a{color:var(--tsc-blue)!important;font-weight:700!important}
body#homepage #stocktop5>.rightp{margin:13px 0 0!important;padding:0!important;text-align:right!important;font:600 12px/1.4 var(--tsc-sans)!important}

/* Sidebar adverts and social links */
body#homepage #advertssidebar{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:18px!important;background:#fff!important;border:1px solid var(--tsc-line)!important;text-align:center!important;box-shadow:0 8px 26px rgba(25,43,109,.055)}
body#homepage #advertssidebar>a{display:block!important;margin:0 0 15px!important;padding:12px!important;background:#fff!important;border:1px solid var(--tsc-line)!important;transition:transform .2s ease,box-shadow .2s ease}
body#homepage #advertssidebar>a:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(25,43,109,.1)}
body#homepage #advertssidebar>a>img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;margin:0 auto!important}
body#homepage #advertssidebar>br,body#homepage #advertssidebar>.thicklineadvertdivider{display:none!important}
body#homepage #SocialMediaShareButtons{margin:0 0 18px!important;padding:18px 12px!important;background:var(--tsc-pale)!important;border:1px solid var(--tsc-line)!important}
body#homepage #SocialMediaShareButtons h1,body#homepage #SocialMediaShareButtons h2{margin:0 0 12px!important;padding:0!important;color:var(--tsc-navy)!important;text-align:center!important;font:600 14px/1.4 var(--tsc-sans)!important}
body#homepage #SocialMediaShareButtons table{width:auto!important;margin:0 auto 16px!important;border-collapse:collapse!important}
body#homepage #SocialMediaShareButtons td{width:auto!important;padding:4px 7px!important;background:transparent!important;border:0!important}
body#homepage #SocialMediaShareButtons img{max-width:40px!important;height:auto!important;margin:0!important}

/* Sponsors */
body#homepage #oursponsors{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;clear:both!important;float:none!important;width:100%!important;max-width:none!important;margin:20px 0 0!important;padding:clamp(28px,4vw,42px)!important;background:var(--tsc-pale)!important;border:1px solid var(--tsc-line)!important}
body#homepage #oursponsors>.homepagecentereddiv{grid-column:1/-1;width:100%!important;margin:0!important}
body#homepage #oursponsors>.homepagecentereddiv h2{margin:0 0 12px!important;padding:0!important;color:var(--tsc-navy)!important;text-align:center!important;font:500 clamp(1.7rem,3vw,2.35rem)/1.2 var(--tsc-serif)!important}
body#homepage #oursponsors>.sponsorlogohomepage{display:flex!important;align-items:center;justify-content:center;float:none!important;width:100%!important;height:130px!important;margin:0!important;padding:18px!important;background:#fff!important;border:1px solid var(--tsc-line)!important}
body#homepage #oursponsors>.sponsorlogohomepage br{display:none!important}
body#homepage #oursponsors>.sponsorlogohomepage a{display:flex!important;align-items:center;justify-content:center;width:100%;height:100%}
body#homepage #oursponsors>.sponsorlogohomepage img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:85px!important;margin:auto!important;object-fit:contain!important}
body#homepage #container>#oursponsors+.clearallclass+ .homepagecentereddiv,body#homepage #container>.homepagecentereddiv:last-of-type{grid-column:1/-1;width:100%!important;max-width:850px!important;margin:0 auto!important;padding:0 20px!important}
body#homepage #container>.homepagecentereddiv:last-of-type h2{margin:0!important;padding:0!important;color:var(--tsc-muted)!important;text-align:center!important;font:500 clamp(1.25rem,2vw,1.6rem)/1.45 var(--tsc-serif)!important}
body#homepage #container>.homepagecentereddiv:last-of-type br{display:none!important}

@media(max-width:820px){
  body#homepage #container{grid-template-columns:1fr;gap:20px}
  body#homepage #container>.homepageLEFTColumn,body#homepage #container>.homepageRIGHTColumn{grid-column:1}
  body#homepage #container>.homepageLEFTColumn:nth-of-type(1){grid-row:auto}
  body#homepage #homepageblocks{grid-template-columns:repeat(2,minmax(0,1fr));width:100%!important;max-width:100%!important;overflow:hidden!important}
  body#homepage #homepageblocks>.homepageblocksblock{min-height:138px;padding-left:8px!important;padding-right:8px!important}
  body#homepage #advertssidebar{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
  body#homepage #SocialMediaShareButtons{grid-column:1/-1;margin-bottom:0!important}
  body#homepage #advertssidebar>a{display:flex!important;align-items:center;justify-content:center;min-height:145px;margin:0!important}
}

@media(max-width:620px){
  body#homepage #container{width:calc(100% - 30px)!important;padding:32px 0 54px!important}
  body#homepage #TSCTVVideoHomePage{padding:24px 15px!important}
  body#homepage #TSCTVVideoHomePage>h2{font-size:1.75rem!important}
  body#homepage #homepageblocks{grid-template-columns:1fr 1fr;gap:10px}
  body#homepage #homepageblocks>.homepageblocksblock{min-height:135px}
  body#homepage .homepagefeatureboxwider{padding:16px!important}
  body#homepage #stocktop5 .top5stockadditions th{font-size:14px!important}
  body#homepage #stocktop5 .top5stockadditions td{padding:9px 4px!important;font-size:12px!important}
  body#homepage #stocktop5 .top5stockadditions .tdstockright{width:82px}
  body#homepage #advertssidebar{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));padding:14px!important}
  body#homepage #SocialMediaShareButtons{grid-column:1/-1}
  body#homepage #oursponsors{grid-template-columns:1fr 1fr;padding:22px 14px!important;gap:10px}
  body#homepage #oursponsors>.sponsorlogohomepage{height:115px!important;padding:13px!important}
}

@media(max-width:390px){body#homepage #homepageblocks{grid-template-columns:1fr}body#homepage #homepageblocks>.homepageblocksblock{min-height:116px}body#homepage #advertssidebar,body#homepage #oursponsors{grid-template-columns:1fr}body#homepage #oursponsors>.sponsorlogohomepage{height:108px!important}}
@media(prefers-reduced-motion:reduce){body#homepage #container *,body#homepage #container *::before,body#homepage #container *::after{transition:none!important}}
