/* AWSUM site identity. Official header asset sourced from awsumnews.co.za. */
:root{--awsum-blue:#0074bf;--awsum-navy:#201c62;--awsum-red:#ed1c24;--ink:#20203a;--paper:#fafbfe;--muted:#626778;--mint:#eaf4fc;--green:#0074bf}
body{background:var(--paper);color:var(--ink)}header{background:#fff;border-color:#e3e7ee}.brand{display:inline-flex;align-items:center;line-height:1;letter-spacing:normal;flex-shrink:0}.awsum-logo{display:block;width:190px!important;height:auto!important;max-width:100%;object-fit:contain}header .brand{padding:0}.concept{background:var(--awsum-navy);color:#fff}.edition-home .edition-hero{background:var(--awsum-navy)}.edition-home .cover-copy>.eyebrow,.edition-home .cover-copy h1 em{color:#9ed6ff}.edition-home .cover-copy p,.edition-home .cover-bottom{color:#e0e9ff}.edition-home .cover-caption{background:#eaf4fc;color:var(--awsum-navy)}.button,.dark{background:var(--awsum-blue);color:#fff}.button:hover,.dark:hover{background:var(--awsum-navy)}.outline{color:var(--awsum-navy);border-color:#cbd4e3;background:#fff}.edition-home .edition-end{background:#edf3fa}.edition-home .end-note{border-color:#cbd4e3}.eyebrow{color:var(--awsum-blue)}.campaign-sticky{border-top-color:var(--awsum-blue)}.campaign-view{color:var(--awsum-blue)}.campaign-choices [aria-pressed=true]{color:var(--awsum-blue)}.campaign-identity{color:var(--awsum-navy)}.campaign-controls button{background:#eef2f8;color:var(--awsum-navy)}.placement-toolbar a,.placement-toolbar button{color:var(--awsum-navy);border-color:#d4dbe8}.hub-card a{color:#0068ab}.school-cta{color:var(--awsum-navy)}a:focus-visible,button:focus-visible,input:focus-visible{outline-color:var(--awsum-blue)}footer .brand{background:#fff;padding:10px 16px;border-radius:6px}footer .awsum-logo{width:155px!important}.hero{background:#006e59}.hero .school,.hero .eyebrow{color:white}.hero h1 em{color:#d6efa4}.hero .button{background:#d9f0d8;color:#173d32}.email-preview>.awsum-logo{margin-bottom:20px}@media(max-width:650px){header .awsum-logo{width:145px!important}header{gap:14px;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}.home-nav{gap:12px;flex-wrap:wrap}.home-nav .outline{padding:10px 12px}.hub header{padding:16px}.awsum-logo{width:165px!important}}
.edition-home .cover-photos{background:#29276d}
.package-scroll{overflow-x:auto;border:1px solid #d8dfeb;border-radius:12px;margin:20px 0;background:#fff}.hub .package-compare{margin:0;min-width:710px;table-layout:fixed;border-collapse:separate;border-spacing:0}.package-compare caption{text-align:left;padding:15px 18px;background:#edf3fa;font-size:13px;color:#383b59}.hub .package-compare th,.hub .package-compare td{border:0;border-bottom:1px solid #e4e9f0;padding:16px 14px;vertical-align:middle;font-size:13px;line-height:1.4}.hub .package-compare thead th{text-align:center;width:22%;background:#f0f5fb;border-top:5px solid #0074bf}.hub .package-compare thead th:first-child{width:34%;text-align:left;border-top-color:#d8dfeb}.hub .package-compare thead th.tier-standard{border-top-color:#16735b}.hub .package-compare thead th.tier-premium{border-top-color:#a85c00;background:#fff7eb}.package-compare thead strong{font-size:21px;color:#201c62}.package-price{display:block;font-size:27px;font-weight:700;margin:12px 0 6px;color:#201c62}.package-tag{display:block;font-weight:400;font-size:12px}.hub .package-compare tbody th{font-weight:500;background:#fff;text-align:left}.hub .package-compare td{text-align:center}.hub .package-compare tbody tr:nth-child(even) td{background:#f7f9fc}.included{color:#176346;font-weight:600}.included>span{font-size:19px;margin-right:4px}.excluded{color:#737a87;font-size:12px}.comparison-note{font-size:13px;color:#545d70}.comparison-hint{display:none}@media(max-width:750px){.comparison-hint{display:block;font-size:12px;color:#626778}.package-compare th:first-child{position:sticky;left:0;z-index:1;box-shadow:3px 0 5px #00000008}.hub .package-compare thead th:first-child{background:#f0f5fb}.package-scroll:focus-visible{outline:3px solid #0074bf;outline-offset:3px}}
/* Bold AWSUM footer; retain existing responsive dimensions and controls. */
.campaign-sticky{background:#201c62;border-top-color:#201c62;color:#fff;box-shadow:0 -4px 20px #201c6226}.campaign-sticky .campaign-identity,.campaign-sticky .campaign-identity strong,.campaign-sticky .campaign-identity small,.campaign-sticky .campaign-message{color:#fff}.campaign-sticky .campaign-thumb{background:#fff!important;border-color:#fff}.campaign-sticky .campaign-action{background:#fff;color:#201c62}.campaign-sticky .campaign-action:hover{background:#eaf4fc;color:#201c62}.campaign-sticky .campaign-controls button{background:#ffffff20;color:#fff}.campaign-sticky .campaign-controls button:hover{background:#ffffff35}.campaign-sticky .campaign-choices button{color:#ffffff80}.campaign-sticky .campaign-choices [aria-pressed=true]{color:#fff}.campaign-sticky button:focus-visible{outline:3px solid #fff;outline-offset:3px}
/* Clearer AWSUM colour hierarchy, rounded controls and readable compact cards. */
.button,.outline,.dark,.placement-toolbar a,.placement-toolbar button,.campaign-view,.reset,.page-actions a{border-radius:12px;font-size:14px;line-height:1.35;min-height:44px;padding:12px 18px;gap:10px}
header .outline,.home-nav .outline,.dialog-actions button,.page-actions .outline,.page-actions .dark,.ad-bottom .dark{font-size:14px;padding:12px 16px;border-radius:12px;min-height:44px}
.filters button,.share-tabs button{font-size:14px;min-height:44px;padding:10px 16px}
.portrait-school .school-copy{padding:14px;min-height:108px}
.portrait-school .school-copy h3{font:600 15px/1.35 Arial,sans-serif;margin:0 0 14px;overflow-wrap:anywhere}
.portrait-school .school-cta{font-size:13px;font-weight:600;line-height:1.35;gap:8px;color:#201c62;align-items:center}
.school-arrow{width:32px;height:32px;flex:0 0 32px;font:600 18px Arial;border:0;background:#201c62;color:white}
.native-card{background:#201c62;color:#fff;border:0;border-left:6px solid #0074bf;border-radius:18px;padding:28px}
.native-card .native-label{color:#d5e6f5}.native-card h2{color:#fff}.native-card p{color:#eef2fb;line-height:1.6}.native-card>strong,.native-card>a{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;padding:10px 16px;background:white;color:#201c62;border-radius:12px;font-size:14px}
.partner-ack{background:white;border:1px solid #cbd4e3;border-left:5px solid #0074bf;color:#201c62;border-radius:14px}.partner-ack a{font-weight:600;text-decoration:underline;text-underline-offset:4px}
.share-kit,.share-banner,.edition-home .edition-end{background:white;border:1px solid #cbd4e3;border-top:5px solid #0074bf;border-radius:18px}.share-kit .eyebrow,.share-banner .eyebrow{color:#201c62}.hub-note{background:white;border:1px solid #cbd4e3;border-left:5px solid #0074bf;color:#201c62;border-radius:12px}.empty-schools{background:white;border:1px solid #cbd4e3;border-radius:16px}
.campaign-logo-group{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.campaign-disclosure{display:block;font:400 10px/1.2 Arial;color:#cbd0db;text-align:center;letter-spacing:0}
.campaign-sticky{grid-template-columns:110px minmax(200px,340px)150px auto 36px;min-height:110px}
.campaign-sticky .campaign-action{font-size:14px!important;border-radius:12px;min-height:46px;padding:12px;white-space:normal}
.campaign-space{padding-bottom:calc(126px + env(safe-area-inset-bottom,0px))!important}
.campaign-view{display:flex;align-items:center;justify-content:center;width:max-content}
@media(max-width:650px){.portrait-school .school-copy{padding:12px;min-height:110px}.campaign-sticky{grid-template-columns:70px minmax(0,1fr)100px 30px;gap:8px;min-height:110px;padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px))}.campaign-thumb{width:70px;height:48px}.campaign-identity strong{font-size:13px;line-height:1.25;overflow-wrap:anywhere}.campaign-message{font-size:11px;line-height:1.35}.campaign-sticky .campaign-action{font-size:14px!important;padding:10px 8px}.campaign-disclosure{font-size:10px}.campaign-choices{display:none}.native-card{padding:22px}.native-card h2{font-size:27px}}
@media(max-width:360px){.campaign-sticky{grid-template-columns:62px minmax(0,1fr)86px 28px;gap:6px;padding-left:8px;padding-right:8px}.campaign-thumb{width:62px}.campaign-disclosure{font-size:9px}.campaign-identity strong{font-size:12px}.campaign-message{font-size:10px}.portrait-school .school-copy{padding:10px}}
/* Supplied corporate banner retains its original proportions and native size. */
.partner-ack{flex-wrap:wrap}.corporate-artwork{display:block;width:320px;max-width:100%;height:auto;flex:0 1 320px;object-fit:contain}.newsletter-partner{align-items:flex-start;flex-direction:column}.newsletter-partner .corporate-artwork{flex-basis:auto}@media(max-width:650px){.partner-ack .corporate-artwork{flex-basis:auto;align-self:center}.partner-ack small{font-size:10px;line-height:1.5;display:inline-block}}
/* Corporate artwork fills the banner; supporting labels sit above it. */
.partner-ack{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;overflow:hidden;padding:0;border:1px solid #cbd4e3;border-radius:14px;background:white}
.partner-ack>div:not(.placement-tag){padding:12px 16px;min-width:0}.partner-ack>div:not(.placement-tag)>br,.partner-ack>div:not(.placement-tag)>strong{display:none}
.partner-ack>div:not(.placement-tag)>small{display:block;font:600 10px/1.5 Arial;letter-spacing:.4px}
.partner-ack>a{grid-column:2;grid-row:1;align-self:center;padding:12px 16px;font-size:12px}
.partner-ack .corporate-artwork{grid-column:1/-1;grid-row:2;display:block;width:100%;max-width:none;height:auto;object-fit:contain;align-self:stretch}
.partner-ack>.placement-tag{grid-column:1/-1;grid-row:3}
@media(max-width:650px){.partner-ack{grid-template-columns:1fr}.partner-ack>div:not(.placement-tag){padding:10px 12px}.partner-ack>a{grid-column:1;grid-row:3;padding:10px 12px}.partner-ack>.placement-tag{grid-row:4}.partner-ack .corporate-artwork{width:100%;height:auto}}
.partner-article{max-width:820px;padding-top:30px}.partner-article h1{font-size:clamp(34px,4.5vw,54px);line-height:1.12;letter-spacing:-1.4px;color:#201c62}.partner-article .article-meta{font-size:14px;color:#626778}.partner-article article{font-size:17px;line-height:1.75}.partner-article article p{line-height:1.75;margin:22px 0}.partner-article .article-lead{font-size:19px}.partner-article article h2{margin-top:40px;font-size:29px;line-height:1.2;color:#201c62}.partner-article blockquote{margin:30px 0;padding:8px 0 8px 24px;border-left:4px solid #0074bf;font:22px/1.55 Georgia,serif;color:#201c62}.partner-article article a{text-decoration:underline;color:#0074bf;text-underline-offset:3px}.article-back{display:inline-flex;min-height:44px;align-items:center;font-size:14px;font-weight:600;color:#201c62}.partner-article .hub-note{font-size:13px}.partner-article .article-link-note{font-size:12px;margin-bottom:0}@media(max-width:650px){.partner-article{padding:20px 18px 50px}.partner-article article{font-size:16px}.partner-article .article-lead{font-size:18px}.partner-article blockquote{font-size:20px;padding-left:18px}}
/* Consistent download/copy icons and spacious select chevrons. */
.action-icon{display:block;width:18px;height:18px;flex:0 0 18px}.kit-actions button,.learner-sharing>button,.share-kit>button,.dialog-actions button{gap:8px}.share-kit select,.learner-sharing select{appearance:none;-webkit-appearance:none;padding-right:42px;min-width:145px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23201c62' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:18px 18px;background-position:right 12px center}
/* AWSUM red provides small accents; school identity remains independent. */
.edition-home .cover-copy>.eyebrow:before,.section-head .eyebrow:before{content:"";display:inline-block;width:22px;height:3px;background:var(--awsum-red);vertical-align:middle;margin-right:9px}
.native-card{border-left-color:var(--awsum-red)}.share-kit,.share-banner,.edition-home .edition-end{border-top-color:var(--awsum-red)}
.school-arrow{background:#454a50;color:white}.school-card:hover .school-arrow{background:#30353a}
.campaign-sticky{border-top-color:var(--awsum-red)}
.hub .package-compare thead th.tier-premium{border-top-color:var(--awsum-red);background:#fff}
.partner-article blockquote{border-left-color:var(--awsum-red)}
.button:hover,.dark:hover,.outline:hover{box-shadow:inset 0 -3px 0 var(--awsum-red)}
/* Stellenberg crest teal, sampled from the supplied crest artwork. */
body[data-school="0"]{--stellenberg-teal:#13a795}
body[data-school="0"] .hero{background:var(--stellenberg-teal);color:var(--awsum-navy)}
body[data-school="0"] .hero .school,body[data-school="0"] .hero .eyebrow,body[data-school="0"] .hero p{color:var(--awsum-navy)}
body[data-school="0"] .hero h1 em{color:#fff}
body[data-school="0"] .hero .button{background:#fff;color:var(--awsum-navy)}
body[data-school="0"] .hero-foot b{color:var(--awsum-navy)}
body[data-school="0"] .portrait-wall img{background:var(--stellenberg-teal)}
body[data-school="0"] .achievement{background:var(--stellenberg-teal);color:var(--awsum-navy)}
body[data-school="0"] .achievement .eyebrow{color:var(--awsum-navy)}
body[data-school="0"] .achievement .credit{border-top-color:#201c6233}

/* Final editorial hierarchy */
header{padding-top:18px!important;padding-bottom:18px!important}
.sales-toggle{display:block;margin:12px 0;font-size:12px!important;min-height:36px!important}
.placement-toolbar[hidden]{display:none!important}
.package-premium .artwork-button,.opening-ad .artwork-button,.full-ad .artwork-button{max-width:520px!important}
.package-feature .artwork-button{max-width:380px!important}
.package-standard .artwork-button{max-width:280px!important}
.partner-ack{margin:24px 0!important}
.native-card{margin:24px 0!important}
.cover-photos img{object-position:center top}
@media(min-width:800px){.edition-hero .cover-copy{padding-top:32px;padding-bottom:32px}.edition-hero h1{font-size:clamp(40px,4vw,64px)}}

/* Keep school-card arrows centred independently of mobile font baselines. */
.school-arrow{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;box-sizing:border-box}.school-arrow>svg{display:block;width:18px;height:18px;flex:none;margin:0}

/* Mobile sponsor bar: logo and identity are primary; controls stay secondary. */
.campaign-sticky .campaign-action{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.campaign-sticky .campaign-action svg,.campaign-controls svg{display:block;flex:none;width:18px;height:18px}
.campaign-controls button{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0}
.campaign-space{padding-bottom:calc(var(--campaign-height,126px) + 16px)!important}
@media(max-width:760px){
 .campaign-sticky{grid-template-columns:72px minmax(0,1fr)32px;grid-template-rows:minmax(28px,auto) 36px;gap:0 12px;min-height:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));border-top-width:2px}
 .campaign-logo-group{grid-column:1;grid-row:1 / 3;gap:5px;align-self:center}
 .campaign-sticky .campaign-thumb{width:72px;height:44px;padding:6px;border-radius:7px}
 .campaign-sticky .campaign-thumb img{max-width:100%;max-height:32px;object-fit:contain}
 .campaign-sticky .campaign-disclosure{font:400 10px/1.2 Arial,sans-serif;color:#cbd0db}
 .campaign-sticky .campaign-identity{grid-column:2;grid-row:1;align-self:end;min-width:0;min-height:0;padding:0 0 1px}
 .campaign-sticky .campaign-identity strong{font:700 14px/1.3 Arial,sans-serif;overflow-wrap:anywhere;word-break:normal}
 .campaign-sticky .campaign-message{display:none}
 .campaign-sticky .campaign-action{grid-column:2;grid-row:2;justify-self:start;align-self:start;justify-content:flex-start;white-space:nowrap;font:400 13px/1.3 Arial,sans-serif!important;min-height:36px;height:36px;width:auto;max-width:100%;padding:0;border:0;border-radius:3px;gap:7px;background:transparent;color:#fff;box-shadow:none}
 .campaign-sticky .campaign-action span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
 .campaign-sticky .campaign-action:hover{background:transparent;color:#c7e7ff;box-shadow:none}
 .campaign-sticky .campaign-action svg{width:15px;height:15px}
 .campaign-sticky .campaign-controls{grid-column:3;grid-row:1 / 3;display:flex;flex-direction:column;gap:0;align-items:center;align-self:center;border-left:1px solid #ffffff25;padding-left:0}
 .campaign-sticky .campaign-controls button{width:32px;height:32px;min-width:32px;border:0;border-radius:4px;background:transparent;color:#d7dbec}
 .campaign-sticky .campaign-controls button:hover{background:#ffffff20;color:#fff}
 .campaign-sticky .campaign-controls svg{width:16px;height:16px}
 .campaign-sticky .campaign-choices{display:none}
}
@media(max-width:350px){
 .campaign-sticky{grid-template-columns:66px minmax(0,1fr)32px;column-gap:10px;padding-left:10px;padding-right:10px}
 .campaign-sticky .campaign-thumb{width:66px;padding:5px}
 .campaign-sticky .campaign-identity strong{font-size:13px}
}
