/* Candidate-specific design: overrides are restricted to the hero and new programme section. */
.internship-preview .hero{grid-template-columns:1.12fr 1fr;align-items:start;padding-top:clamp(32px,5vw,64px);gap:clamp(28px,4vw,64px)}
.internship-preview .hero h1{font-size:clamp(40px,4.65vw,66px);font-weight:550;line-height:1.06;letter-spacing:-.05em;max-width:12.8ch;text-wrap:balance}
.internship-preview .hero .service-label{margin-bottom:25px;font-size:12px}
.internship-preview .hero .lead{max-width:39ch;font-size:clamp(17px,1.5vw,20px)}
.internship-preview .hero .actions{gap:16px 24px}
.ip-hero-context{font-size:13px;color:var(--muted);margin-top:22px;max-width:49ch}
.ip-programme{background:#173f35;color:#f7f7f2;padding:clamp(24px,4vw,52px);margin-block:10px 64px;scroll-margin-top:100px}
.ip-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid #567669;padding-bottom:18px}
.ip-eyebrow{font-size:11px;font-weight:700;letter-spacing:.11em;line-height:1.6;color:inherit}
.ip-edition{font-size:12px;color:#c9d9d0}
.ip-intro{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;padding-block:36px 40px}
.ip-intro h2{font-size:clamp(32px,3.4vw,48px);line-height:1.12;font-weight:500;color:#fff}
.ip-intro>div>p:not(.ip-lead){font-size:15px;color:#d6e2da;margin-top:16px}
.ip-lead{font-size:22px;line-height:1.4;letter-spacing:-.025em;max-width:25ch}
.ip-link{display:inline-flex;justify-content:space-between;gap:24px;align-items:center;border-bottom:1px solid #9fc3b1;padding-block:13px;min-height:48px;margin-top:14px;font-size:14px;font-weight:650;color:white}
.ip-workbench{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;border-top:1px solid #567669;padding-block:36px}
.ip-brief{background:#f1f0e6;color:#173f35;padding:clamp(22px,3vw,36px);align-self:start;box-shadow:9px 9px 0 #284e40}
.ip-brief h3{font-size:clamp(26px,2.5vw,34px);font-weight:550;margin-top:20px}
.ip-brief dl{margin:24px 0 0}.ip-brief dl>div{display:grid;grid-template-columns:110px 1fr;gap:14px;border-top:1px solid #b5c0b4;padding-block:14px;font-size:13px}.ip-brief dt{font-weight:750}.ip-brief dd{margin:0;color:#3e5548}
.ip-example{font-size:11px;color:#526058;border-top:1px solid #b5c0b4;padding-top:16px}
.ip-chain ol{list-style:none;margin:15px 0 0;padding:0}.ip-chain li{display:grid;grid-template-columns:36px 1fr;gap:12px;border-top:1px solid #567669;padding-block:14px}.ip-chain li>span{font-size:12px;color:#c6d8cc;padding-top:3px;font-variant-numeric:tabular-nums}.ip-chain h3{font-size:19px;font-weight:600}.ip-chain p{font-size:13px;color:#d6e2da;margin-top:5px;max-width:39ch}
.ip-markets{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;border-top:1px solid #567669;padding-block:30px}.ip-markets h3{font-size:32px;font-weight:500;margin-top:12px}.ip-markets>div>p:not(.ip-eyebrow){font-size:15px}.ip-markets .ip-fine{font-size:12px!important;color:#d6e2da;margin-top:16px}
.ip-responsibility{border-top:1px solid #567669;border-bottom:1px solid #567669}.ip-responsibility summary{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:64px;font-size:15px;font-weight:650;list-style:none}.ip-responsibility summary::-webkit-details-marker{display:none}.ip-responsibility summary span{font-size:24px;font-weight:400}.ip-responsibility[open] summary span{transform:rotate(45deg)}.ip-responsibility p{font-size:13px;color:#d6e2da;max-width:90ch;margin-bottom:18px}.ip-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px}.ip-bottom>p{font-size:15px}.ip-bottom .button{background:#f1f0e6;color:#173f35;border-color:#f1f0e6}.ip-programme :focus-visible{outline:2px solid #e1edb5;outline-offset:5px}.ip-chain-note{font-size:12px;color:#cfe0d6;margin-top:16px}
/* No new animation: the programme remains stable while the existing photo controls retain pause. */
@media(max-width:760px){.internship-preview .hero{grid-template-columns:1fr}.internship-preview .hero h1{font-size:clamp(40px,9.7vw,58px);max-width:13ch}.internship-preview .hero .actions{align-items:stretch}.internship-preview .hero .button{width:100%;padding-inline:16px}.ip-programme{margin-bottom:40px}.ip-edition{display:none}.ip-intro,.ip-workbench,.ip-markets{grid-template-columns:1fr;gap:28px}.ip-intro{padding-block:28px}.ip-workbench{padding-block:28px}.ip-brief{margin-right:8px}.ip-brief dl>div{grid-template-columns:1fr;gap:5px}.ip-bottom{flex-direction:column;align-items:stretch}.ip-bottom .button{width:100%;padding-inline:12px}.ip-responsibility summary{padding-block:16px;line-height:1.4}.ip-programme{scroll-margin-top:56px}}
@media(prefers-reduced-motion:reduce){.ip-programme *{animation:none!important;transition:none!important}}
@media print{.ip-programme{break-inside:auto}.ip-responsibility>p{display:block!important}}
/* The local fallback has no overlap guard. Keep its inline WhatsApp entry only. */
body[data-local-preview-fallback=true] .wa-floating{display:none!important}
/* Progressive fallback: expose navigation and documentary captions without scripting. */
html:not(.js) .internship-preview .mobile-menu[hidden]{display:grid!important}
html:not(.js) .internship-preview .menu-button,
html:not(.js) .internship-preview .service-filters,
html:not(.js) .internship-preview .scene-tabs,
html:not(.js) .internship-preview .evidence-controls{display:none!important}
html:not(.js) .internship-preview .evidence-slide[hidden]{display:block!important}
@media(min-width:761px){html:not(.js) .internship-preview .mobile-menu[hidden]{display:none!important}}

/* Employer FAQ integration: authored answers preserved; draft state explicit. */
.ip-faq{max-width:1280px;margin:0 auto;padding:64px 40px;color:#17453a;scroll-margin-top:100px}.ip-faq h2{font-size:clamp(30px,4vw,48px);line-height:1.08;max-width:760px;margin:16px 0 24px;letter-spacing:-.035em}.ip-faq-note{max-width:880px;font-size:14px;line-height:1.65;color:#52695d}.ip-faq-list{margin-top:28px;border-top:1px solid #b5c3b8}.ip-faq-list details{border-bottom:1px solid #b5c3b8;padding:20px 0}.ip-faq-list summary{cursor:pointer;font-size:18px;font-weight:600;line-height:1.45;list-style:none;padding-right:30px;position:relative}.ip-faq-list summary:after{content:'+';position:absolute;right:0;top:0}.ip-faq-list details[open] summary:after{content:'−'}.ip-faq-list details p{max-width:900px;margin:18px 0 4px;font-size:16px;line-height:1.7;color:#40584c}.ip-faq-list summary:focus-visible{outline:2px solid #17453a;outline-offset:5px}@media(max-width:760px){.ip-faq{padding:42px 24px}.ip-faq-list summary{font-size:17px}.ip-faq-list details p{font-size:15px}}
