/* October 2026 amendments. Layouts remain readable without JavaScript. */
.detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:34px;padding-bottom:30px;flex-wrap:wrap}
.back-button{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#002238;padding:10px 0;min-height:44px}
.back-button>.icon{width:18px;height:18px;transform:rotate(180deg)}
.back-button:hover{text-decoration:underline;text-underline-offset:4px}
.menu-page,.partner-detail,.booking-page{background:#f4f3ef;padding-bottom:20px}
.menu-document,.programme-sheet,.booking-document{background:#fff;box-shadow:0 12px 44px #00223814;overflow:hidden;border:1px solid #e5ddca}
.menu-masthead{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 54px 26px;background:linear-gradient(115deg,#002238 70%,#dfb860 70.2%,#f8edcd 71%,#fff 71.2%);min-height:230px}
.menu-masthead h1{color:white;font-size:clamp(40px,6vw,80px);letter-spacing:1px;margin:0;font-weight:700;line-height:1}
.menu-masthead p{font:56px/1 Allura,cursive;color:#dfb95f;margin:4px 0 0 24px}
.menu-masthead img{width:230px;max-width:27%;height:auto;object-fit:contain}
.menu-range{background:linear-gradient(90deg,#b38024,#f4df9e 45%,#d1a543);color:#002238;padding:12px 24px;display:flex;align-items:center;justify-content:center;gap:14px;font:700 30px/1.2 var(--serif)}
.menu-range .icon{width:27px;height:27px}
.menu-price-strip{background:#002238;color:#fff;display:flex;align-items:center;justify-content:space-around;gap:14px;padding:14px 28px;font-size:17px}
.menu-price-strip>strong{color:#f2d595;font-size:14px;letter-spacing:1px}
.menu-price-strip span{white-space:nowrap}
.menu-price-strip b{font-size:23px;margin-left:5px}
.menu-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:48px 30px 24px}
.menu-day,.menu-notes{position:relative;border:2px solid #c5a354;border-radius:18px 18px 0 0;min-width:0;background:#fff;display:flex;flex-direction:column;margin:0;overflow:visible}
.menu-day h2{background:#002238;color:#fff;text-align:center;border-radius:15px 15px 0 0;font-size:30px;padding:36px 12px 14px;margin:0}
.menu-day-icon{position:absolute;top:-25px;left:calc(50% - 27px);width:54px;height:54px;border-radius:50%;background:#002238;border:3px solid #c7a758;display:flex;align-items:center;justify-content:center;color:#eed394;z-index:1}
.menu-day-icon>.icon{width:28px;height:28px}
.menu-day dl{padding:22px 22px 16px;margin:0;flex:1}
.menu-day dl>div{padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid #d8be83}
.menu-day dl>div:last-child{border:0;margin:0;padding:0}
.menu-day dt{font-family:var(--serif);font-size:23px;font-weight:700;color:#002238;line-height:1.2;margin-bottom:7px}
.menu-day dd{font-size:16px;line-height:1.45;margin:0;color:#283b46}
.menu-food{width:100%;aspect-ratio:1.6;object-fit:cover;border-top:2px solid #c5a354;display:block}
.menu-signoff{padding:5px 25px 24px;text-align:center;color:#6b5127;font-family:var(--serif);font-size:18px;letter-spacing:.5px}
.menu-signoff span{margin:0 12px}
.menu-notes{border-color:#c5a354;padding-top:27px}
.menu-notes section{padding:10px 18px 15px;border-bottom:1px solid #d4b56e}
.menu-notes section:last-child{border:0}
.menu-notes h2{font-size:19px;letter-spacing:.2px;background:#002238;color:white;margin:0 -18px 12px;padding:10px 12px;text-align:center}
.menu-notes ul{padding-left:18px;font-size:14px;line-height:1.55;margin:0}
.meal-prices{margin:0}
.meal-prices>div{display:flex;justify-content:space-between;font-size:17px;line-height:1.4}
.meal-prices dd{font-weight:bold;margin:0}
.salad-list{columns:2;column-gap:18px}
.menu-notes .salad-choice{font-size:14px;font-weight:bold;margin:10px 0 0;color:#76571d}
.menu-drinks{text-align:center;background:#fbf4df;border-block:1px solid #d1b168;padding:15px 20px;font-size:17px;font-weight:bold;margin:0!important}
.menu-contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#002238;color:#fff;padding:24px 28px;gap:20px}
.menu-contact>a{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.menu-contact .icon{width:27px;height:27px;flex-shrink:0;color:#e7c776}
.menu-contact strong{display:block;font-size:15px;color:#fff}
/* Partner cards and brochure-inspired detail pages */
.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.partner-card{display:flex;flex-direction:column;border:1px solid #dfdfd7;border-top:5px solid var(--partner-color,#002238);border-radius:12px;background:white;overflow:hidden;box-shadow:0 8px 20px #00223808}
.theme-brightstone{--partner-color:#697a28;--partner-light:#f3f4dd}
.theme-nursing{--partner-color:#164a68;--partner-light:#eef6e5}
.theme-agriculture{--partner-color:#36742c;--partner-light:#f0f5e7}
.partner-brand{height:165px;display:flex;align-items:center;justify-content:center;padding:25px;background:#fff;border-bottom:1px solid #eee}
.partner-logo{width:auto;height:94px;max-width:100%;object-fit:contain;display:block;mix-blend-mode:multiply}
.partner-name-mark{display:flex;align-items:center;gap:15px;max-width:380px;color:#164a68;font-family:var(--serif);font-weight:bold;font-size:27px;line-height:1.15}
.partner-name-mark>.icon{width:46px;height:46px;flex-shrink:0}
.partner-copy{padding:26px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.partner-copy h3{font-size:26px}
.partner-copy>p{color:#4c5e65;font-size:15px}
.partner-email{font-size:14px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px;margin:0 0 25px}
.partner-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:auto}
.course-preview{border:1px solid #dfd8c5;background:white;border-radius:12px;overflow:hidden}
.course-preview>img{width:100%;height:210px;object-fit:cover;display:block}
.course-preview>div{padding:28px}
.programme-sheet h1{font-size:clamp(36px,4.6vw,62px);letter-spacing:-1px;margin:18px 0;line-height:1.02}
.programme-sheet h2{font-size:28px}
.programme-sheet ul{padding-left:22px}
.programme-sheet .programme-note{font-size:13px;color:#53606a;margin:20px 36px;line-height:1.6}
.programme-sheet .partner-contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:34px 40px;background:#002238;color:white;margin-top:30px}
.partner-contact .eyebrow{color:#e3c27b}
.partner-contact h2{margin-bottom:10px;color:white}
.partner-contact p:last-child{margin-bottom:0;font-size:15px}
.partner-contact-links{display:flex;flex-direction:column;justify-content:center;gap:13px}
.partner-contact-links a{display:flex;gap:12px;align-items:center;font-size:16px;overflow-wrap:anywhere}
.partner-contact-links .icon{width:21px;height:21px;flex-shrink:0;color:#e9cc84}
.brightstone-hero{display:grid;grid-template-columns:1.5fr 1fr;background:linear-gradient(120deg,#fff 60%,#f1f3df 60.2%);padding:35px 40px 0;min-height:380px;gap:15px;align-items:end}
.brightstone-lead{padding-bottom:30px}
.brightstone-lead .partner-logo{height:90px;margin-bottom:25px}
.programme-kicker{font-size:15px;font-weight:bold;letter-spacing:.5px;color:#718122;max-width:500px}
.brightstone-lead .study-label{font-size:28px;color:#657b28;font-weight:700;margin-bottom:4px}
.brightstone-lead h1{font-family:var(--sans);font-weight:800;color:#153e35;font-size:clamp(34px,4.2vw,56px);margin:0 0 20px}
.brightstone-lead h1 span{display:block;color:#6d7d2c}
.health-worker{width:100%;height:400px;object-fit:contain;object-position:bottom;align-self:end}
.qualification-bar{background:#a4a82f;color:#fff;display:flex;gap:40px;justify-content:center;padding:13px;font-size:21px;font-weight:700;letter-spacing:1px}
.brightstone-info{display:grid;grid-template-columns:1fr 1.2fr .9fr;gap:28px;padding:35px}
.brightstone-info h2{font-family:var(--sans);font-size:22px;color:#3c5f2b;font-weight:700}
.check-list{list-style:none;margin:0 0 18px;padding:0!important}
.check-list li{padding-left:24px;position:relative;margin-bottom:12px;line-height:1.55}
.check-list li:before{content:'✓';position:absolute;left:0;color:var(--partner-color,#087887);font-weight:bold}
.fee-pill{border-radius:40px;background:#ee2f32;color:white;text-align:center;padding:14px 20px;font-size:14px;line-height:1.4;margin:24px 0 18px}
.fee-pill strong{display:block;font-size:28px}
.accommodation-badge{font-size:13px;font-weight:bold;display:flex;align-items:center;gap:10px;color:#536920}
.accommodation-badge .icon{width:25px;height:25px}
.benefit-list{list-style:none;padding:0!important;margin:0}
.benefit-list li{border-bottom:1px solid #dce2c6;padding-bottom:12px;margin-bottom:12px;line-height:1.45;font-size:14px}
.benefit-list strong,.benefit-list span{display:block}
.benefit-list strong{color:#435e2a;margin-bottom:4px}
.course-price{background:#f7f7e9;border-radius:12px;border:2px solid #9ca33b;align-self:start;text-align:center;padding:26px 14px;color:#405920}
.course-price>span:first-child{font-size:13px;font-weight:bold;letter-spacing:1px}
.course-price>strong{display:block;font-size:42px;line-height:1.2;margin:14px 0 4px;color:#174b31}
.course-price>b{font-size:20px;color:#e23530;display:block}
.course-price>p{font-size:15px;margin:15px 0}
.funding-pill{display:block;border-radius:30px;background:#8b9a35;color:white;padding:8px;font-size:15px;font-weight:bold}
.career-band{padding:25px 35px;background:#355f2e;color:white}
.career-band h2{font-size:23px;color:white}
.career-band>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.career-band span{border-left:3px solid #b8c855;padding-left:12px;font-size:15px;line-height:1.5}
.programme-photo-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:28px 35px 8px}
.programme-photo-row figure{margin:0}
.programme-photo-row img{width:100%;height:170px;object-fit:cover;display:block;border-radius:8px}
.programme-photo-row figcaption{font-weight:bold;font-size:14px;color:#46642f;padding:9px 0}
.course-accreditation{display:flex;align-items:center;gap:22px;margin:18px 35px}
.course-accreditation img{width:105px;height:75px;object-fit:contain}
.course-accreditation p{font-size:13px;margin:0;color:#596467}
.nursing-hero{display:grid;grid-template-columns:1.4fr 1fr;background:linear-gradient(110deg,#002238 65%,#124967 65.2%);color:white;padding:36px 40px 0;gap:30px}
.nursing-hero>div{padding-bottom:35px}
.nursing-hero .partner-name-mark{color:white;margin-bottom:30px;font-size:24px}
.nursing-hero .eyebrow{color:#d6dfae;font-size:11px}
.nursing-hero h1{font-size:clamp(40px,4.7vw,61px);font-weight:400}
.nursing-hero h1 span{color:#d8e7ab}
.nursing-hero p{font-size:16px;max-width:650px}
.nursing-hero .health-worker{height:360px}
.pathway-section{padding:35px 40px}
.pathway-section>h2{color:#164a68;margin-bottom:25px}
.pathway-row{display:grid;grid-template-columns:1fr 54px 1.35fr;align-items:stretch;margin-bottom:18px;gap:14px}
.pathway-start{background:#002c48;color:white;border-radius:8px;padding:20px 24px}
.pathway-start h3{font-family:var(--sans);font-size:23px;margin-bottom:7px}
.pathway-start p{font-size:14px;color:#dfebf1;margin:0}
.pathway-arrow{display:flex;align-items:center;justify-content:center;color:#71883d}
.pathway-arrow .icon{width:38px;height:38px}
.pathway-end{background:#eff5df;border:1px solid #c7d697;border-radius:8px;margin:0;padding:20px 25px!important;display:flex;flex-direction:column;justify-content:center}
.pathway-end li{font-size:16px;margin-bottom:6px}
.pathway-end li:last-child{margin:0}
.nursing-support{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 40px 25px}
.nursing-support>div{padding:24px;border:1px solid #c8d8bd;border-radius:10px;background:#f8faf3}
.nursing-support .icon{width:37px;height:37px;color:#23617a;margin-bottom:14px}
.nursing-support h2{font-size:25px}
.nursing-support p{font-size:15px;margin:0}
.nursing-important{background:#f6eccd;color:#344a54;padding:22px 26px;margin:25px 40px!important;display:flex;gap:15px;font-size:14px}
.nursing-important>.icon{width:32px;height:32px;flex-shrink:0;color:#93732c}
.source-flyer{margin:25px 40px;border:1px solid #d8e0e5;border-radius:7px;background:#fafbfc}
.source-flyer summary{cursor:pointer;padding:14px 18px;font-size:14px;font-weight:700}
.source-flyer img{max-width:100%;height:auto;display:block}
.agriculture-hero{display:grid;grid-template-columns:1.6fr 1fr;gap:30px;align-items:center;background:linear-gradient(130deg,#eff5e7 65%,#38712b 65.2%);padding:40px}
.agriculture-hero .partner-logo{height:90px;margin-bottom:26px}
.agriculture-hero .eyebrow{color:#46702b}
.agriculture-hero h1{color:#214c25;font-weight:400}
.agriculture-hero p:last-child{font-size:18px;max-width:590px}
.agriculture-symbol{height:250px;display:flex;align-items:center;justify-content:center;color:#edf2bd}
.agriculture-symbol .icon{width:190px;height:190px}
.agriculture-intro{max-width:850px;padding:35px 40px 10px}
.agriculture-intro .eyebrow{color:#47762e}
.agriculture-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;padding:10px 40px 25px}
.agriculture-topics section{padding:25px;background:#f3f7ec;border-top:4px solid #6c8f3b}
.agriculture-topics .icon{width:40px;height:40px;color:#4e7931;margin-bottom:18px}
.agriculture-topics h2{font-size:26px;color:#295527}
.agriculture-topics p{font-size:15px;margin:0}
/* Academy leaflets: blue angular ribbons and practical course details. */
.academy-detail{--course:#087d9b;--course-deep:#003c75;--partner-color:#087d9b}
.academy-health{--course:#008e9b;--course-deep:#004b77}
.academy-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;padding:35px 40px;background:linear-gradient(155deg,#fff 65%,#e9f6f8 65.2%)}
.academy-lead .partner-logo{height:95px;margin-bottom:25px}
.academy-lead .eyebrow{color:var(--course)}
.academy-lead h1{font-family:var(--sans);font-weight:800;color:var(--course-deep);font-size:clamp(40px,4.8vw,64px);margin:15px 0}
.academy-lead>p:last-child{font-size:18px;font-weight:700;color:#52656c}
.academy-photo-collage{display:grid;grid-template-columns:1fr 1fr;gap:12px;transform:rotate(-3deg);align-self:center}
.academy-photo-collage img{display:block;width:100%;height:140px;object-fit:cover;border:5px solid white;box-shadow:0 5px 18px #003c7529}
.academy-photo-collage img:first-child{grid-column:1/-1;height:210px}
.academy-ribbon{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 40px;background:linear-gradient(110deg,var(--course-deep) 42%,var(--course) 42.2%);color:white}
.academy-ribbon>span{font-size:26px;font-weight:700;display:flex;align-items:center;gap:14px;white-space:nowrap}
.academy-ribbon .icon{width:28px;height:28px}
.academy-ribbon>strong{font-size:17px;text-align:right;max-width:58%}
.academy-info{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:35px 40px}
.academy-info h2{color:var(--course-deep);font-family:var(--sans);font-size:27px}
.academy-info .check-list li{border-bottom:1px solid #dbe9ed;padding-bottom:12px;margin-bottom:12px}
.academy-fees{background:#edf7fa;border-left:5px solid var(--course);padding:20px 25px;color:var(--course-deep)}
.academy-fees>span{letter-spacing:1px;font-size:12px;font-weight:700}
.academy-fees>strong{font-size:39px;display:block;line-height:1.3;margin:5px 0}
.academy-fees p{margin-bottom:10px}
.academy-fees p:last-child{margin:0;font-weight:bold}
.academy-fees small{font-weight:normal;color:#49616d}
.academy-overview,.academy-progression{padding:30px 40px;background:#f1f8fa;border-block:1px solid #d2e5e9}
.academy-overview h2,.academy-progression h2{color:var(--course-deep)}
.academy-overview p:last-child,.academy-progression p:last-child{margin-bottom:0}
.academy-careers{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;padding:40px;align-items:center}
.academy-careers>div{background:linear-gradient(135deg,var(--course),var(--course-deep));padding:38px 25px;color:#fff;text-align:center;clip-path:polygon(0 0,90% 0,100% 50%,90% 100%,0 100%)}
.academy-careers>div>.icon{width:50px;height:50px;margin-bottom:18px}
.academy-careers h2{font-size:35px;margin:0}
.academy-careers ul{list-style:none;margin:0;padding:0}
.academy-careers li{display:flex;gap:15px;align-items:center;border-bottom:1px solid #c9e0e5;padding:12px 0;font-size:18px;font-weight:bold;color:var(--course-deep)}
.academy-careers li .icon{width:20px;height:20px;flex-shrink:0;color:var(--course)}
.academy-address{padding:25px 40px;display:flex;gap:12px;flex-direction:column;color:var(--course-deep)}
/* Booking form: navy headings, gold section badges, two-column PDF layout. */
.booking-masthead{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:32px 40px;background:linear-gradient(115deg,#002238 74%,#d2af5c 74.2%,#f4df9c 75%,#fff 75.2%);color:white;border-bottom:6px solid #c5a052}
.booking-masthead .eyebrow{color:#eed89f;font-size:12px}
.booking-masthead h1{font-size:clamp(40px,5vw,64px);font-weight:400;margin:0 0 12px}
.booking-masthead p:last-child{margin:0;color:#e9edf0}
.booking-masthead img{width:190px;max-width:22%;height:auto}
.booking-welcome{padding:30px 36px 24px;border-bottom:1px solid #e4dcc8}
.booking-welcome h2{font-size:30px;color:#002238}
.booking-welcome p{font-size:15px;max-width:940px}
.booking-contact-row{display:flex;gap:30px;flex-wrap:wrap}
.booking-contact-row a{display:flex;align-items:center;gap:10px;color:#735016;font-size:14px;overflow-wrap:anywhere}
.booking-contact-row .icon{width:20px;height:20px;flex-shrink:0}
#booking-request-form{padding:24px 36px 30px}
.required-note{font-size:13px;color:#52616a;margin:0 0 24px!important}
.required-mark{color:#a63327;font-weight:bold}
.booking-panels{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.booking-panel{min-width:0;padding:22px 20px;border:1px solid #c9ae72;border-radius:6px;margin:0;background:#fff}
.booking-panel>legend{background:#002238;color:white;border-radius:5px;padding:7px 15px;font-family:var(--serif);font-size:23px;font-weight:bold;line-height:1.4;max-width:100%}
.booking-panel>legend b{background:linear-gradient(130deg,#ebcf89,#bc8a30);color:#002238;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;font-family:var(--sans);font-size:20px;border-radius:4px;margin-right:8px}
.booking-panel>legend small{font:12px var(--sans);font-weight:normal;white-space:nowrap}
.booking-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 16px}
.field-wide{grid-column:1/-1}
.booking-field{min-width:0}
.booking-field>label{display:block;font-size:13px;font-weight:700;line-height:1.45;color:#253e4d;margin-bottom:6px}
.booking-field>label small{font-size:11px;font-weight:normal;color:#5d6d76;white-space:nowrap}
.booking-field input,.booking-field textarea{display:block;font:16px/1.45 var(--sans);width:100%;max-width:100%;min-width:0;min-height:43px;padding:9px 10px;color:#173c51;border:1px solid #b7c2c8;background:#fcfcfa;border-radius:4px;box-sizing:border-box}
.booking-field textarea{resize:vertical;min-height:90px}
.booking-field input:focus,.booking-field textarea:focus{outline:2px solid #b78a37;outline-offset:2px;background:white}
.booking-field input[aria-invalid],.booking-field textarea[aria-invalid]{border-color:#a82e29;background:#fff8f6}
.booking-field input:disabled,.booking-field textarea:disabled{background:#edf0f1;color:#6d7c85;opacity:.7}
.field-error{display:block;color:#a02c27;font-size:12px;line-height:1.5;margin-top:6px}
.booking-total{display:flex;align-items:center;justify-content:space-between;background:#f6efd9;border:1px solid #dfce9c;padding:12px 16px;border-radius:4px;gap:16px;color:#002238;font-weight:bold}
.booking-total small{font-size:12px;display:block;font-weight:normal}
.booking-total output{font-size:30px;line-height:1.1}
.booking-choices{margin:0;padding:0;border:0;min-width:0}
.booking-choices>legend{font-size:14px;font-weight:bold;color:#253e4d;margin-bottom:10px;padding:0}
.booking-choices>div{display:flex;flex-wrap:wrap;gap:7px 18px}
.booking-choices label{display:flex;align-items:center;gap:7px;font-size:14px;min-height:36px;cursor:pointer}
.booking-choices input,.acceptance-checks input{width:18px;height:18px;accent-color:#002238;flex-shrink:0;margin:0}
.field-help{font-size:12px;line-height:1.65;color:#536874;margin:0!important}
.payment-panel{margin-top:28px}
.payment-panel>.field-help{margin-bottom:20px!important}
.payment-panel>.booking-fields{grid-template-columns:repeat(4,minmax(0,1fr))}
.booking-terms{margin:28px 0;padding:24px 25px;background:#f5f2e9;border-left:4px solid #b78a37}
.booking-terms h2{font-size:26px;margin-bottom:15px}
.booking-terms ol{padding-left:21px;margin:0}
.booking-terms li{font-size:14px;padding-left:4px;margin-bottom:8px}
.booking-terms li:last-child{margin:0}
.acceptance-checks{display:grid;gap:16px;margin-bottom:25px}
.acceptance-checks label{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;cursor:pointer}
.acceptance-checks input{margin-top:3px}
.acceptance-panel>.field-help{margin-top:18px!important}
.booking-submit{display:flex;flex-direction:column;align-items:center;text-align:center;margin:28px auto 0;max-width:680px}
.booking-submit>p{font-size:13px;line-height:1.6;color:#536874}
.booking-submit button{cursor:pointer;min-height:50px!important;font-size:14px!important;white-space:normal}
.booking-submit button:disabled{opacity:.65;cursor:wait}
.booking-submit .submission-progress{margin-top:16px;margin-bottom:0}
.booking-document-footer{background:#002238;color:#efd59c;padding:20px;text-align:center;font-family:var(--serif);font-size:17px}
.booking-document-footer span{margin:0 10px}
.booking-trap{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.booking-status{padding:24px 28px;margin:25px 36px;border:1px solid;border-radius:5px;scroll-margin-top:24px}
.booking-status h2{font-size:28px}
.booking-status.error{background:#fff7f3;border-color:#c16f56;color:#71382a}
.booking-status.success{background:#edf7ec;border-color:#6b9c61;color:#254b2b}
.booking-status ul{padding-left:22px;margin:0}
.booking-status a{text-decoration:underline}
.booking-status p:last-child{margin-bottom:0}
.booking-status .button{text-decoration:none}
/* Tablet: retain menu columns where readable; condense complex brochure layouts. */
@media(max-width:1050px){
 .partner-grid{gap:16px}.partner-copy{padding:20px}.partner-name-mark{font-size:22px}
 .menu-masthead{padding-inline:35px}.menu-columns{gap:14px;padding-inline:20px}.menu-day dl{padding:20px 16px 15px}.menu-day dd{font-size:14px}.menu-day dt{font-size:21px}.menu-contact{gap:14px;padding:22px 20px}.menu-contact strong{font-size:13px}
 .brightstone-info{grid-template-columns:1fr 1fr;padding:28px}.course-price{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6px 20px}.course-price>strong{grid-row:1/4;grid-column:1;font-size:48px;margin:0}.course-price>span:first-child{display:none}.course-price p{margin:0}.course-price .funding-pill{max-width:240px;justify-self:center;width:100%}
 .programme-sheet .partner-contact{gap:24px;padding:28px}.brightstone-hero,.nursing-hero,.academy-hero,.agriculture-hero{padding:30px 28px 0}.academy-hero,.agriculture-hero{padding-bottom:30px}.health-worker{height:340px}.nursing-hero .health-worker{height:310px}
 .academy-ribbon{padding:18px 28px}.academy-ribbon>strong{font-size:14px}.academy-info{gap:28px;padding:28px}.academy-photo-collage img{height:110px}.academy-photo-collage img:first-child{height:170px}
 .agriculture-topics{gap:16px;padding-inline:28px}.agriculture-topics section{padding:20px}.agriculture-topics h2{font-size:23px}
 .booking-fields{grid-template-columns:1fr}.booking-panels{gap:18px}.booking-panel{padding:20px 16px}.booking-panel>legend{font-size:21px}.acceptance-panel>.booking-fields{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .detail-toolbar{padding-top:24px;padding-bottom:20px;gap:6px 20px}.detail-toolbar .text-link{font-size:12px}
 .partner-grid{grid-template-columns:1fr}.partner-brand{height:auto;min-height:140px}.partner-card .partner-logo{height:85px}.partner-copy{padding:25px}.partner-name-mark{font-size:27px}.partner-copy h3{font-size:28px}.course-preview-grid{grid-template-columns:1fr}
 .menu-masthead{padding:28px 24px;min-height:175px}.menu-masthead h1{font-size:clamp(30px,6.5vw,48px)}.menu-masthead p{font-size:40px;margin-left:12px}.menu-masthead img{max-width:25%;width:140px}
 .menu-range{font-size:24px;padding:12px 16px}.menu-price-strip{flex-wrap:wrap;font-size:14px;gap:6px 20px;padding:14px 16px}.menu-price-strip>strong{flex-basis:100%;text-align:center}.menu-price-strip b{font-size:18px}
 .menu-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 18px;padding:45px 22px 25px}.menu-columns>.menu-day:last-child:nth-child(3){grid-column:1/-1;max-width:420px;justify-self:center;width:100%}.menu-notes{grid-column:1/-1}.menu-day dl{padding:22px 18px}.menu-day dd{font-size:15px}.menu-day dt{font-size:23px}.menu-notes section{padding-inline:25px}.menu-notes h2{margin-inline:-25px}.menu-notes ul{font-size:15px}.salad-list{columns:3}
 .menu-contact{grid-template-columns:1fr;gap:20px;padding:25px}.menu-contact strong{font-size:16px}.menu-signoff{font-size:15px}.menu-drinks{font-size:15px}
 .programme-sheet h1{letter-spacing:-.5px}.brightstone-hero{grid-template-columns:1.4fr 1fr;gap:0}.brightstone-lead h1{font-size:33px}.brightstone-lead .partner-logo{height:70px}.programme-kicker{font-size:12px}.health-worker{height:300px}.brightstone-lead>p:last-child{font-size:14px}
 .qualification-bar{font-size:17px;gap:30px}.brightstone-info{gap:22px}.career-band{padding:25px}.career-band>div{grid-template-columns:1fr 1fr}.programme-photo-row{gap:12px;padding:25px}.programme-photo-row img{height:130px}.programme-photo-row figcaption{font-size:12px}.course-accreditation{margin-inline:25px}.programme-sheet .programme-note{margin-inline:25px}
 .programme-sheet .partner-contact{grid-template-columns:1fr;padding:26px;gap:24px}.partner-contact-links a{font-size:15px}
 .nursing-hero{grid-template-columns:1fr}.nursing-hero .health-worker{display:none}.nursing-hero h1{font-size:44px}.nursing-hero .partner-name-mark{font-size:22px}.pathway-section{padding:28px}.pathway-row{grid-template-columns:1fr 28px 1.2fr;gap:9px}.pathway-start{padding:18px}.pathway-start h3{font-size:20px}.pathway-end{padding:18px!important}.pathway-end li{font-size:14px}.pathway-arrow .icon{width:25px;height:25px}.nursing-support{margin-inline:28px;gap:18px}.nursing-support>div{padding:20px}.nursing-important,.source-flyer{margin-inline:28px!important}
 .agriculture-hero{grid-template-columns:1fr;position:relative;background:#eff5e7}.agriculture-symbol{position:absolute;right:20px;top:25px;height:90px;color:#779951;opacity:.45}.agriculture-symbol .icon{width:85px;height:85px}.agriculture-hero .partner-logo{max-width:60%;height:80px}.agriculture-hero h1{font-size:42px}.agriculture-intro{padding-inline:28px}.agriculture-topics{grid-template-columns:1fr}.agriculture-topics section{padding:25px}
 .academy-hero{grid-template-columns:1fr;gap:12px}.academy-photo-collage{transform:none;grid-template-columns:1fr 1fr 1fr}.academy-photo-collage img:first-child{grid-column:auto;height:130px}.academy-photo-collage img{height:130px}.academy-lead h1{font-size:44px}.academy-ribbon{flex-direction:column;align-items:flex-start;background:linear-gradient(110deg,var(--course-deep),var(--course));gap:10px}.academy-ribbon>strong{max-width:100%;text-align:left}.academy-info{gap:25px}.academy-careers{padding:28px;gap:25px;grid-template-columns:1fr 1.4fr}.academy-careers h2{font-size:28px}.academy-careers li{font-size:15px}.academy-overview,.academy-progression,.academy-address{padding:28px}
 .booking-masthead{padding:28px}.booking-masthead h1{font-size:42px}.booking-masthead .eyebrow{font-size:10px;max-width:200px}.booking-masthead p:last-child{font-size:14px;max-width:240px}.booking-masthead img{max-width:23%}
 .booking-welcome{padding:25px}.booking-welcome h2{font-size:27px}.booking-contact-row{gap:12px}#booking-request-form{padding:22px}.booking-panels{grid-template-columns:1fr;gap:24px}.booking-fields{grid-template-columns:1fr 1fr}.booking-panel{padding:22px 18px}.payment-panel>.booking-fields{grid-template-columns:1fr 1fr}.booking-status{margin:22px;padding:22px}.booking-document-footer{font-size:15px}.booking-panel>legend{font-size:22px}
}
@media(max-width:480px){
 .menu-document.content-width,.programme-sheet.content-width,.booking-document.content-width{width:calc(100% - 24px)}
 .menu-masthead{padding:25px 18px;gap:12px;min-height:150px}.menu-masthead h1{font-size:30px}.menu-masthead p{font-size:35px}.menu-masthead img{max-width:26%}.menu-range{font-size:22px;gap:9px}.menu-range .icon{width:22px;height:22px}.menu-columns{grid-template-columns:1fr;gap:44px;padding:45px 20px 24px}.menu-columns>.menu-day:last-child:nth-child(3){grid-column:auto}.menu-notes{grid-column:auto}.menu-day h2{font-size:30px}.menu-day dd{font-size:16px}.menu-day dl{padding:24px}.menu-food{aspect-ratio:1.8}.salad-list{columns:2}.menu-signoff span{display:none}.menu-signoff{max-width:250px;margin:auto}
 .brightstone-hero{grid-template-columns:1fr;padding:26px 24px 0;position:relative;background:linear-gradient(130deg,#fff 70%,#eef2db 70.2%)}.brightstone-hero .health-worker{height:215px;width:160px;position:absolute;right:0;bottom:0}.brightstone-lead{z-index:1}.brightstone-lead .partner-logo{height:60px;max-width:85%}.programme-kicker{max-width:260px;margin-bottom:20px}.brightstone-lead h1{max-width:190px;font-size:32px;overflow-wrap:normal}.brightstone-lead>p:last-child{max-width:180px;font-size:13px}.brightstone-lead .study-label{font-size:22px}.qualification-bar{gap:20px;font-size:15px}.brightstone-info{grid-template-columns:1fr;padding:25px}.course-price{grid-template-columns:1fr;gap:10px}.course-price>strong{grid-column:auto;grid-row:auto}.career-band>div{gap:18px}.programme-photo-row{grid-template-columns:1fr;padding:24px}.programme-photo-row img{height:190px}.programme-photo-row figcaption{font-size:14px}.course-accreditation{align-items:flex-start;gap:15px}.course-accreditation img{width:75px;height:65px}.course-accreditation p{font-size:12px}
 .nursing-hero{padding:25px 24px 0}.nursing-hero h1{font-size:38px}.nursing-hero .partner-name-mark{font-size:21px}.pathway-section{padding:26px 22px}.pathway-row{grid-template-columns:1fr;gap:8px;margin-bottom:25px}.pathway-arrow{height:22px}.pathway-arrow .icon{transform:rotate(90deg);width:22px;height:22px}.pathway-start{text-align:center}.pathway-end li{font-size:15px}.nursing-support{grid-template-columns:1fr;margin-inline:22px}.nursing-important{margin-inline:22px!important;padding:20px;gap:12px}.nursing-important>.icon{width:24px;height:24px}.source-flyer{margin-inline:22px!important}
 .agriculture-hero,.agriculture-intro{padding-inline:24px}.agriculture-hero h1{font-size:37px}.agriculture-topics{padding-inline:24px}
 .academy-hero{padding:25px 24px}.academy-lead h1{font-size:40px}.academy-lead .partner-logo{height:75px}.academy-lead>p:last-child{font-size:15px}.academy-photo-collage img,.academy-photo-collage img:first-child{height:95px;border-width:3px}.academy-ribbon{padding:20px 24px}.academy-ribbon>span{font-size:24px}.academy-info{grid-template-columns:1fr;padding:25px}.academy-careers{grid-template-columns:1fr;padding:25px}.academy-careers>div{clip-path:none;border-radius:5px;padding:25px}.academy-careers>div>.icon{width:35px;height:35px;margin-bottom:10px}.academy-careers li{font-size:16px}
 .booking-masthead{padding:25px 20px;background:#002238;align-items:flex-start}.booking-masthead h1{font-size:36px}.booking-masthead img{max-width:24%;background:white;border-radius:5px;padding:4px}.booking-masthead .eyebrow{font-size:9px;letter-spacing:1px}.booking-welcome{padding:23px 20px}.booking-contact-row a{font-size:12px}#booking-request-form{padding:22px 16px}.booking-fields,.acceptance-panel>.booking-fields,.payment-panel>.booking-fields{grid-template-columns:1fr}.booking-panel>legend{font-size:20px;padding:7px 11px}.booking-panel{padding:19px 14px}.booking-panel>legend b{height:27px;width:27px;font-size:17px}.booking-terms{padding:20px}.booking-terms h2{font-size:25px}.booking-status{margin:20px 16px;padding:20px}.booking-status h2{font-size:26px}.booking-submit .button{padding-inline:14px}.booking-document-footer span{display:none}.booking-document-footer{font-size:14px;padding:20px 30px}
}
@media print{
 .site-header,.site-footer,.detail-toolbar,.back-to-top,.booking-submit{display:none!important}
 .menu-page,.booking-page,.partner-detail{background:white}.menu-document,.programme-sheet,.booking-document{width:100%!important;box-shadow:none;border:0}
 [data-fly-in],.ev-reveal{opacity:1!important;transform:none!important}.menu-day,.booking-panel,.pathway-row{break-inside:avoid}
 .menu-range.second-range{break-before:page}.menu-masthead,.menu-range,.menu-price-strip,.menu-day h2,.booking-panel>legend{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}
/* Supplied partner marks and Ifa Langa's October 2026 programme material. */
.nursing-hero .partner-logo{height:140px;max-width:220px;background:white;padding:10px;border-radius:7px;mix-blend-mode:normal;margin-bottom:25px}
.theme-nursing .partner-brand .partner-logo{height:125px}
.theme-brightstone .partner-brand .partner-logo{height:115px}
.academy-lead .partner-logo{height:120px}
.brightstone-more{padding:28px 35px;background:#f6f8ed;border-block:1px solid #d9e1c6}
.brightstone-more h2{color:#365a30}
.brightstone-more .two-column>a{display:flex;align-items:flex-start;gap:16px;padding:22px;background:white;border:1px solid #cdd8b5;border-radius:8px;color:#314d29;font-size:14px}
.brightstone-more .icon{width:32px;height:32px;flex-shrink:0;color:#758632}
.brightstone-more strong,.brightstone-more small{display:block}
.brightstone-more strong{font-size:19px;line-height:1.3;margin-bottom:10px}
.brightstone-more small{font-size:12px;margin-top:12px;text-decoration:underline}
.brightstone-more .field-help{margin-top:20px!important}
.ifa-hero{display:grid;grid-template-columns:1fr 1.1fr;background:#064c30;color:white;min-height:440px}
.ifa-student{background-size:214% auto;background-position:left top;background-repeat:no-repeat;min-height:440px;background-color:#5d864c}
.ifa-hero-copy{padding:35px 38px;background:linear-gradient(135deg,#006741,#032f26)}
.ifa-hero-copy .partner-logo{background:white;mix-blend-mode:normal;border-radius:8px;padding:10px;height:115px;max-width:100%;margin-bottom:22px}
.ifa-hero-copy .eyebrow{color:#bdde9c}
.ifa-hero-copy h1{font:700 clamp(32px,4vw,53px)/1.13 var(--sans);letter-spacing:0;text-transform:uppercase;margin:16px 0}
.ifa-hero-copy>p:last-child{font-size:16px;color:#d9eddf;margin:20px 0 0}
.ifa-page-nav{display:flex;justify-content:center;gap:26px;background:#0c2b5b;color:white;padding:17px 25px;flex-wrap:wrap;border-bottom:4px solid #e0a748}
.ifa-page-nav a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.ifa-programmes{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;padding:38px;background:#f5f5f1}
.ifa-programmes h2{font:700 29px/1.25 var(--sans);text-transform:uppercase;color:#163c2f}
.ifa-programmes .eyebrow{color:#0c4670}
.ifa-programmes .check-list li{font-size:17px;margin-bottom:10px}
.ifa-photo-stack{display:flex;flex-direction:column;justify-content:center;gap:28px}
.ifa-photo-stack figure{border:4px solid white;border-radius:25px;margin:0;background:#005734;overflow:hidden;box-shadow:0 6px 18px #003c7521}
.ifa-poultry,.ifa-analyst{aspect-ratio:1.45;background-repeat:no-repeat;background-size:232% auto;background-color:#d8e6d2}
.ifa-poultry{background-position:91% 42.5%}.ifa-analyst{background-position:91% 73.7%}
.ifa-photo-stack figcaption{display:flex;align-items:center;justify-content:center;gap:14px;background:#0b2c5d;color:white;font-size:16px;line-height:1.2;font-weight:bold;min-height:50px;text-align:center;padding:8px}
.ifa-photo-stack figcaption span{color:#d6efce}
.ifa-boarding{display:flex;align-items:center;justify-content:center;gap:14px;padding:20px 25px;color:#0c2b5b;font-size:20px;letter-spacing:.5px;border-block:1px solid #a3b99d;text-align:center}
.ifa-boarding .icon{width:30px;height:30px;flex-shrink:0}
.ifa-short-section{background:linear-gradient(125deg,#73c890,#e2f3df);padding-bottom:24px}
.ifa-fee-header{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:300px}
.ifa-fee-header>div:first-child{padding:30px 38px}
.ifa-fee-header .partner-logo{height:95px;max-width:300px;margin-bottom:16px}
.ifa-fee-header .eyebrow{color:#104f3a;margin-bottom:7px}
.ifa-fee-header h2{font:700 50px/1.05 var(--sans);text-transform:uppercase;letter-spacing:1px;color:#fff;margin:0;text-shadow:0 1px 2px #1d7457}
.ifa-training-photo{background-repeat:no-repeat;background-size:210% auto;background-position:right top;min-height:300px;background-color:#2e7e50}
.ifa-table-wrap{padding:0 35px}
.ifa-table-wrap table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:16px;line-height:1.5}
.ifa-table-wrap caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ifa-table-wrap th,.ifa-table-wrap td{padding:14px 14px;border:2px solid #fff;text-align:left;overflow-wrap:break-word}
.ifa-table-wrap thead th{background:#0c7090;color:white;text-transform:uppercase;font-weight:normal;text-align:center;font-size:17px}
.ifa-table-wrap tbody th{font-weight:normal}
.ifa-short-table thead th:first-child{width:61%}
.ifa-short-table thead th:nth-child(2){width:16%}
.ifa-short-table tbody th,.ifa-short-table tbody td{background:#f2fbf1e8;border-color:#93c7ad}
.ifa-short-table tbody td{text-align:center}
.ifa-short-table tbody td:nth-child(2){color:#266b7a}
.ifa-short-table tbody td:last-child{color:#b3423e;font-weight:700;font-size:19px;white-space:nowrap}
.ifa-discount{background:#0b7090;color:white;padding:15px 24px;border-radius:25px;margin:24px 35px 16px!important;text-align:center;font-size:14px;font-weight:bold}
.ifa-date-note{text-align:center;color:#07432e;font-weight:bold;font-size:15px;margin:0 30px!important}
.ifa-qualifications{padding:35px 0 5px;background:white}
.ifa-qualifications>header{padding:25px 35px;background:#293e6b;color:white;margin-bottom:25px;text-align:center}
.ifa-qualifications>header .eyebrow{color:#d5e8bb}
.ifa-qualifications h2{font:700 43px/1.1 var(--sans);text-transform:uppercase;margin:0 0 12px}
.ifa-qualifications>header>p:last-child{margin:0;font-size:16px;color:#e4ebf7}
.ifa-qualification-table thead th{background:#293e6b;font-size:13px;font-weight:700}
.ifa-qualification-table thead th:first-child{width:12%}.ifa-qualification-table thead th:nth-child(2){width:49%}.ifa-qualification-table thead th:nth-child(3){width:9%}.ifa-qualification-table thead th:nth-child(4){width:10%}.ifa-qualification-table thead th:last-child{width:20%}
.ifa-qualification-table tbody tr:nth-child(even){background:#d9e7bd}
.ifa-qualification-table tbody td:first-child{background:#e3e3df;text-align:center}
.ifa-qualification-table tbody td:nth-child(3),.ifa-qualification-table tbody td:nth-child(4){text-align:center}
.ifa-qualification-table tbody td:last-child{background:#293e6b;color:white;white-space:nowrap;font-weight:bold;text-align:center;font-size:15px}
.ifa-qualification-table th,.ifa-qualification-table td{padding:10px 12px;font-size:14px}
.ifa-qualification-note{font-size:13px;line-height:1.7;color:#657141;margin:25px 35px!important}
.ifa-source-links{display:flex;gap:15px 25px;flex-wrap:wrap;padding:20px 35px;background:#f3f6ed;font-size:13px;color:#254730}
.ifa-source-links strong{flex-basis:100%}.ifa-source-links a{text-decoration:underline;text-underline-offset:4px}
.ifa-office{display:flex;gap:35px;align-items:center;background:#006137;color:white;padding:27px 35px;border-top:4px solid #b6cb8b}
.ifa-office h2{margin:0;font:700 35px/1.1 var(--sans)}.ifa-office p{margin:0;font-size:15px;border-left:1px solid #98bd94;padding-left:30px}
.ifa-sheet .partner-contact{margin-top:0;background:#0c2b5b}
@media(max-width:1050px){.ifa-hero-copy{padding:28px}.ifa-hero-copy h1{font-size:38px}.ifa-programmes{padding:30px;gap:28px}.ifa-programmes h2{font-size:25px}.ifa-programmes .check-list li{font-size:15px}.ifa-photo-stack figcaption{font-size:13px;gap:10px}.ifa-table-wrap{padding-inline:25px}.ifa-qualification-table th,.ifa-qualification-table td{padding:10px 7px;font-size:12px}.ifa-qualification-table tbody td:last-child{font-size:13px}.ifa-fee-header>div:first-child{padding:28px}.ifa-fee-header .partner-logo{height:80px;max-width:100%}}
@media(max-width:760px){
 .brightstone-more{padding:25px}.brightstone-more .two-column{grid-template-columns:1fr;gap:15px}
 .ifa-hero{min-height:360px;grid-template-columns:.85fr 1fr}.ifa-student{min-height:360px;background-size:260% auto;background-position:2% 0}.ifa-hero-copy{padding:25px 22px}.ifa-hero-copy .partner-logo{height:85px;padding:6px}.ifa-hero-copy h1{font-size:28px}.ifa-hero-copy .eyebrow{font-size:10px}.ifa-hero-copy>p:last-child{font-size:14px}
 .ifa-page-nav{gap:12px 20px;padding:15px}.ifa-page-nav a{font-size:12px}.ifa-programmes{grid-template-columns:1fr;padding:26px}.ifa-photo-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ifa-photo-stack figcaption{flex-direction:column;gap:3px;padding:10px;font-size:12px}.ifa-boarding{font-size:16px;padding-inline:20px}.ifa-fee-header h2{font-size:36px}.ifa-fee-header{min-height:250px}.ifa-training-photo{min-height:250px;background-size:260% auto;background-position:100% 0}.ifa-fee-header .partner-logo{height:75px}.ifa-fee-header>div:first-child{padding:25px 22px}.ifa-table-wrap{padding-inline:22px}.ifa-table-wrap th,.ifa-table-wrap td{padding:11px;font-size:14px}.ifa-short-table tbody td:last-child{font-size:16px}.ifa-discount{margin-inline:22px!important}
 .ifa-qualification-table,.ifa-qualification-table tbody{display:block;width:100%}.ifa-qualification-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ifa-qualification-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #b7c49c;border-radius:7px;margin-bottom:15px;background:#f4f8ed;overflow:hidden}.ifa-qualification-table tbody tr:nth-child(even){background:#e7efd8}.ifa-qualification-table tbody th{grid-column:1/-1;grid-row:1;padding:15px;font-size:17px;font-weight:bold;color:#213e33;border:0}.ifa-qualification-table tbody td{border:0!important;padding:9px 12px!important;text-align:left!important;font-size:14px!important;background:transparent!important}.ifa-qualification-table tbody td:before{content:attr(data-label);display:block;font-size:11px;text-transform:uppercase;color:#526a5c;margin-bottom:3px}.ifa-qualification-table tbody td:last-child{grid-column:1/-1;background:#293e6b!important;color:white!important;display:flex;justify-content:space-between;align-items:center;font-size:18px!important;padding:12px 15px!important}.ifa-qualification-table tbody td:last-child:before{color:#d6e2f7;font-size:12px;margin:0}
 .ifa-qualifications>header{padding:25px}.ifa-qualifications h2{font-size:35px}.ifa-qualification-note{margin-inline:24px!important}.ifa-source-links{padding:22px 25px}.ifa-office{padding:25px;gap:22px}.ifa-office h2{font-size:28px}.ifa-office p{padding-left:22px;font-size:14px}
}
@media(max-width:480px){
 .ifa-hero{grid-template-columns:1fr}.ifa-student{min-height:260px;background-size:210% auto;background-position:0 9%}.ifa-hero-copy{padding:25px}.ifa-hero-copy .partner-logo{height:90px;max-width:270px}.ifa-hero-copy h1{font-size:35px;max-width:320px}.ifa-hero-copy .eyebrow{font-size:11px}.ifa-programmes{padding:25px}.ifa-programmes h2{font-size:26px}.ifa-programmes .check-list li{font-size:16px}.ifa-photo-stack{grid-template-columns:1fr;gap:25px}.ifa-photo-stack figcaption{flex-direction:row;gap:12px;font-size:14px}.ifa-boarding{font-size:14px;gap:10px}.ifa-boarding .icon{width:24px;height:24px}.ifa-fee-header{grid-template-columns:1fr}.ifa-fee-header h2{font-size:44px}.ifa-fee-header .partner-logo{height:80px;max-width:280px}.ifa-training-photo{min-height:200px;background-size:200% auto;background-position:right top}.ifa-short-table,.ifa-short-table tbody{display:block}.ifa-short-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ifa-short-table tbody tr{display:grid;grid-template-columns:1fr 1fr;margin-top:13px;border:1px solid #81b69b;border-radius:6px;overflow:hidden;background:#f5fcf3}.ifa-short-table tbody th{grid-column:1/-1;padding:14px;font-size:17px;font-weight:700;border:0}.ifa-short-table tbody td{border:0;border-top:1px solid #bcdcc7;text-align:left;padding:12px 14px}.ifa-short-table tbody td:before{content:attr(data-label);display:block;font-size:11px;text-transform:uppercase;color:#426955;font-weight:normal}.ifa-short-table tbody td:last-child{text-align:right;font-size:19px}.ifa-office{display:block}.ifa-office h2{margin-bottom:15px}.ifa-office p{border:0;padding:0}.ifa-page-nav{justify-content:flex-start;padding:18px 25px}
}
/* Renovation facilities remain listed without promotional photographs. */
.page-home .facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-home .other-facilities{height:auto;min-height:160px;grid-template-columns:70px minmax(0,1fr);padding:18px 15px;gap:10px}
.page-home .other-list ul{margin-left:0;font-size:14px;line-height:1.45}
.page-home .other-list li{margin-top:8px;padding-left:18px}
.page-home .other-list small{display:block;font-size:11px;line-height:1.45;color:#655534}
.page-home .other-note{grid-column:2;padding:0;border:0;margin-top:8px;font-size:12px}
.page-home .other-note p{margin:5px 0 0;font-size:12px}
.page-home .other-note br{display:none}
.dining-photo{display:block;overflow:hidden}.dining-photo img{width:100%;height:100%;object-fit:cover;display:block}
.other-facility-panel{margin-top:42px;border:1px solid #ddc894;border-radius:12px;background:#faf6ea;padding:32px}
.other-facility-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin-top:25px}
.other-facility-grid article>.icon{width:36px;height:36px;color:#926921;margin-bottom:16px}
.other-facility-grid h3{font-size:24px}.other-facility-grid p{font-size:14px;line-height:1.6;margin:0}
@media(max-width:900px){.other-facility-grid{grid-template-columns:1fr 1fr}.other-facility-panel{padding:26px}}
@media(max-width:480px){.other-facility-grid{grid-template-columns:1fr}.other-facility-panel{padding:24px}.page-home .other-facilities{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:20px 15px}.page-home .other-icon>.icon{width:35px;height:35px}.page-home .other-list h3{font-size:25px}}
