@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');

:root { --ink:#075885; --deep:#06466c; --sage:#e6f1e4; --cream:#fafcf9; --sand:#e3f0e1; --coral:#4e962d; --gold:#79b84c; --white:#fff; }
* { box-sizing:border-box; }
body { margin:0; font-family:Cairo, sans-serif; color:var(--ink); background:var(--cream); line-height:1.8; }
a { color:inherit; text-decoration:none; }
.container { width:min(1120px, calc(100% - 40px)); margin:auto; }
.topbar { background:var(--deep); color:#ecf4ee; padding:8px 0; font-size:.8rem; }
.topbar .container { display:flex; justify-content:space-between; gap:15px; }
header { background:rgba(251,248,241,.94); position:sticky; top:0; z-index:20; border-bottom:1px solid rgba(24,58,55,.08); }
.nav { min-height:150px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.brand { display:flex; align-items:center; gap:9px; line-height:1.25; font-weight:800; font-size:1.2rem; }
.brand-logo { display:block; width:52px; height:52px; object-fit:contain; }
.nav .brand-logo { width:128px; height:128px; }
.brand-name { display:flex; flex-direction:column; white-space:nowrap; font-size:1rem; color:var(--ink); }
.brand-name small { color:var(--coral); font-size:.57rem; font-weight:700; margin-top:3px; }
.brand small { color:var(--gold); font-size:.64rem; font-weight:600; letter-spacing:.02em; }
.nav-links { display:flex; align-items:center; gap:23px; font-size:.9rem; font-weight:600; }
.nav-links a:hover,.nav-links a.active { color:var(--coral); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:8px; background:var(--coral); color:white; padding:11px 23px; border-radius:999px; border:1px solid var(--coral); font-weight:700; font-size:.9rem; transition:.2s; cursor:pointer; }
.button:hover { transform:translateY(-2px); box-shadow:0 8px 18px #d86d4a38; }
.button-outline { background:transparent; color:var(--ink); border-color:var(--ink); }
.menu { display:none; border:0; background:none; font-size:1.35rem; color:var(--ink); }
.hero { min-height:600px; position:relative; overflow:hidden; padding:86px 0 60px; background:linear-gradient(112deg, #eef7f3 0%, #f9fcfa 55%, #d8ebed 100%); }
.hero:after { content:''; width:470px; height:470px; border:1px solid #4e962d70; border-radius:50%; position:absolute; left:-120px; top:-150px; }
.hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr .9fr; gap:50px; align-items:center; }
.eyebrow { display:flex; align-items:center; gap:9px; color:var(--coral); font-weight:700; font-size:.86rem; }
.eyebrow:before { content:''; height:1px; width:35px; background:currentColor; }
.eyebrow.no-line:before { display:none; }
h1,h2,h3,p { margin-top:0; } h1 { font-size:clamp(2.2rem,5vw,4.4rem); line-height:1.32; margin:15px 0; font-weight:800; } h1 em { color:var(--coral); font-style:normal; }
h2 { font-size:clamp(1.65rem,3vw,2.35rem); line-height:1.45; font-weight:800; } .hero p { max-width:560px; color:#46625e; font-size:1.03rem; }
.actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:27px; }
.gift-badge { display:inline-flex; align-items:center; gap:7px; margin-top:16px; padding:8px 13px; border-radius:8px; background:#e7f3dd; color:#2c6d20; font-size:.82rem; font-weight:700; }
.hero-card { min-height:390px; display:flex; align-items:end; padding:30px; border-radius:18px; background:linear-gradient(180deg, transparent 38%, #06466cdd), url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/home-hero-graduates.jpeg?v=20260922-cropped') center 43%/cover; color:white; box-shadow:18px 20px 0 #d9ecdf; }
.hero-card span { color:#c9eba6; font-size:.85rem; } .hero-card h3 { font-size:1.55rem; margin:5px 0 0; }
.course-hero-gallery { min-height:390px; display:grid; grid-template-columns:repeat(3,1fr); gap:4px; overflow:hidden; border-radius:18px; box-shadow:18px 20px 0 #d9ecdf; }
.course-hero-gallery div { background:center/cover; }.course-hero-gallery div:nth-child(1) { background-image:url('https://images.unsplash.com/photo-1515377905703-c4788e51af15?auto=format&fit=crop&w=750&q=80'); }.course-hero-gallery div:nth-child(2) { background-image:url('https://images.unsplash.com/photo-1512290923902-8a9f81dc236c?auto=format&fit=crop&w=750&q=80'); }.course-hero-gallery div:nth-child(3) { background-image:url('https://images.unsplash.com/photo-1506126613408-eca07ce68773?auto=format&fit=crop&w=750&q=80'); }
.section { padding:88px 0; } .section-tint { background:var(--sage); } .section-heading { max-width:630px; margin-bottom:36px; } .section-heading p { color:#55706c; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.card { background:white; padding:28px; border-radius:13px; border-bottom:3px solid transparent; box-shadow:0 6px 20px #0758850c; }.card:hover { border-color:var(--coral); }.card .number { color:var(--gold); font-family:'Playfair Display',serif; font-size:1.7rem; }.card h3 { margin:7px 0; font-size:1.12rem; }.card p { margin:0; color:#53706a; font-size:.9rem; }
.journey { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; position:relative; }.journey-step { background:white; border-radius:12px; padding:16px 12px; text-align:center; box-shadow:0 6px 18px #0758850c; }.journey-step b { display:block; color:var(--coral); font-size:.78rem; }.journey-step span { display:block; font-weight:800; font-size:1rem; margin:5px 0; }.journey-step small { color:#58716c; line-height:1.45; font-size:.82rem; }
.course-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:23px; }.course { background:white; border-radius:14px; overflow:hidden; box-shadow:0 8px 25px #183a3710; }.course-photo { height:180px; background:#ceded5 center/cover; }.course:nth-child(1) .course-photo { background-image:url('https://images.unsplash.com/photo-1515377905703-c4788e51af15?auto=format&fit=crop&w=700&q=80'); }.course:nth-child(2) .course-photo { background-image:url('https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&w=700&q=80'); }.course:nth-child(3) .course-photo { background-image:url('https://images.unsplash.com/photo-1517836357463-d25dfeac3438?auto=format&fit=crop&w=700&q=80'); }.course-body { padding:21px; }.tag { font-size:.75rem; color:var(--coral); font-weight:700; }.course h3 { margin:8px 0; font-size:1.15rem; }.course p { color:#607773; font-size:.85rem; margin:0 0 15px; }.text-link { color:var(--ink); font-weight:800; font-size:.86rem; }.text-link:after { content:' ←'; color:var(--coral); }
.choice-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.choice-card { min-height:220px; padding:34px; border-radius:14px; background:white; display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 8px 25px #0758850c; }.choice-card h3 { font-size:1.5rem; margin:0 0 8px; }.choice-card p { color:#53706a; max-width:390px; margin:0; }
.course-parts { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin:0 0 36px; }.course-part { background:var(--sage); border-radius:14px; padding:24px; }.course-part h3 { margin:0 0 9px; color:var(--ink); }.course-part p { margin:0; color:#53706a; line-height:1.8; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:65px; align-items:center; }.feature-photo { min-height:380px; border-radius:16px; background:linear-gradient(#173c3938,#173c3938),url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1000&q=80') center/cover; }.checks { padding:0; list-style:none; }.checks li { margin:12px 0; }.checks li:before { content:'✓'; color:var(--coral); font-weight:800; margin-left:10px; }
.quote { background:var(--deep); color:white; padding:48px; border-radius:15px; }.quote blockquote { font-size:1.25rem; margin:0 0 16px; }.quote small { color:#dbc08e; }
.page-hero { padding:76px 0 62px; background:var(--sage); }.page-hero h1 { font-size:clamp(2.2rem,4vw,3.5rem); }.page-hero p { max-width:620px; color:#49635f; }
.compact-list-hero { padding:34px 0 28px; }
.compact-list-hero h1 { margin:0; }
.compact-list-hero p { margin:8px 0 0; }
.course-body h3 a { color:inherit; text-decoration:none; transition:color .2s ease; }
.course-body h3 a:hover { color:var(--coral); }
.info-strip { background:var(--deep); color:white; }.info-strip .container { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); }.info { padding:22px; border-left:1px solid #ffffff25; font-size:.85rem; }.info b { display:block; color:#e5c38c; }
.faq { border-top:1px solid #c9d6cd; padding:18px 0; }.faq h3 { margin:0; font-size:1rem; }.faq p { color:#607773; margin:7px 0 0; font-size:.9rem; }
.contact-box { background:white; padding:35px; border-radius:14px; }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.input { width:100%; padding:12px 14px; border:1px solid #d4ddd6; border-radius:8px; background:#fdfdfb; font-family:inherit; }.input.full { grid-column:span 2; } textarea.input { min-height:130px; resize:vertical; }
.legal-business-note { align-items:flex-start; flex-direction:column; gap:3px; padding:15px 18px; border:1px solid #cfe1ca; border-radius:12px; background:#f3f8f1; }
.legal-business-note strong { display:block; color:var(--ink); font-size:.82rem; }
.legal-business-note bdi { color:var(--coral); font-size:1.05rem; font-weight:800; }
footer { padding:14px 0 10px; background:#06466c; color:#eaf5f6; } .footer-grid { display:grid; grid-template-columns:1.4fr .8fr .8fr; gap:30px; }.footer-grid h3 { color:#c9eba6; font-size:1rem; }.footer-grid a { display:block; font-size:.85rem; margin:6px 0; }.copyright { border-top:1px solid #ffffff1f; margin-top:12px; padding-top:10px; font-size:.75rem; color:#c5dde1; }
.footer-grid .brand-logo { filter:brightness(0) invert(1); }.footer-grid .brand-name { color:white; }.footer-grid .brand-name small { color:#c9eba6; }
@media(max-width:800px) { .nav { min-height:112px; } .nav .brand-logo { width:94px; height:94px; } .menu { display:block; }.nav-links { display:none; position:absolute; top:112px; right:0; left:0; background:var(--cream); padding:18px 20px; flex-direction:column; align-items:stretch; box-shadow:0 8px 12px #0001; }.nav-links.open { display:flex; }.nav-links .button { text-align:center; }.hero { padding-top:55px; }.hero-grid,.split { grid-template-columns:1fr; gap:32px; }.hero-card,.course-hero-gallery { min-height:280px; }.cards,.course-grid,.choice-grid,.course-parts { grid-template-columns:1fr; }.cards .card { display:grid; grid-template-columns:34px auto 1fr; align-items:center; column-gap:10px; padding:13px 16px; }.cards .card .number,.cards .card h3,.cards .card p { margin:0; }.cards .card .number { font-size:1rem; }.cards .card h3 { font-size:1rem; }.journey { grid-template-columns:1fr; gap:8px; }.journey-step { display:grid; grid-template-columns:32px auto 1fr; align-items:center; column-gap:10px; padding:13px 16px; text-align:right; }.journey-step b,.journey-step span,.journey-step small { margin:0; }.journey-step small { line-height:1.45; }.info-strip .container { grid-template-columns:1fr 1fr; }.section { padding:62px 0; }.footer-grid { grid-template-columns:1fr; }.topbar .container { justify-content:center; }.topbar span:last-child { display:none; } }
@media(max-width:800px) { .choice-card { min-height:0; display:grid; grid-template-columns:1fr auto; align-items:center; gap:5px 16px; padding:18px 20px; }.choice-card > div { display:contents; }.choice-card h3 { grid-column:1; margin:0; font-size:1.15rem; }.choice-card p { grid-column:1 / -1; max-width:none; margin:0; line-height:1.55; }.choice-card .text-link { grid-column:2; grid-row:1; white-space:nowrap; } }
@media(max-width:480px) { .container { width:min(100% - 28px,1120px); }.info-strip .container { grid-template-columns:1fr; }.form-grid { grid-template-columns:1fr; }.input.full { grid-column:auto; }.quote { padding:28px; }.journey { grid-template-columns:1fr; } }

.cma-card { display:grid; grid-template-columns:130px 1fr; align-items:center; gap:24px; background:white; border-radius:18px; padding:25px 28px; box-shadow:0 8px 25px #0758850c; }.accreditation-logos { display:flex; align-items:center; justify-content:center; gap:9px; }.accreditation-logos img { width:56px; height:56px; object-fit:contain; background:white; border-radius:7px; padding:2px; }.cma-card .accreditation-logos { justify-self:center; }.cma-card .accreditation-logos img:first-child { width:88px; height:66px; }.cma-page-hero .container { display:grid; grid-template-columns:170px 1fr; align-items:center; gap:28px; }.cma-page-hero .accreditation-logos { justify-content:flex-start; }.cma-page-hero .accreditation-logos img:first-child { width:120px; height:90px; background:transparent; border-radius:0; padding:0; mix-blend-mode:multiply; }.cma-page-hero .accreditation-logos img:last-child { width:70px; height:70px; }.cma-course-note { background:#f4f9f3; border-top:1px solid #d8e8d7; border-bottom:1px solid #d8e8d7; }.cma-course-note a { min-height:104px; display:grid; grid-template-columns:92px 1fr auto; align-items:center; gap:18px; color:inherit; text-decoration:none; }.cma-course-note .accreditation-logos { flex-direction:column; justify-content:center; gap:4px; }.cma-course-note .accreditation-logos img { width:48px; height:42px; }.cma-course-note .accreditation-logos img:first-child { width:62px; height:46px; }.cma-course-note b { display:block; color:var(--ink); margin-bottom:5px; }.cma-course-note span { display:block; color:#53706a; font-size:.9rem; }.cma-course-note em { color:var(--coral); font-style:normal; font-weight:700; font-size:.85rem; white-space:nowrap; }.accreditation-footer-strip { padding:14px 0; background:#f5f8f2; border-top:1px solid #dfeadd; }.cma-footer { padding:0; text-align:center; }.cma-footer a { display:inline-flex; align-items:center; gap:14px; padding:9px 16px; border-radius:14px; background:#e7f2e5; color:var(--ink); font-size:.82rem; font-weight:700; box-shadow:0 5px 16px #07588517; }.cma-footer .accreditation-logos { gap:9px; }.cma-footer .accreditation-logos img { width:45px; height:34px; background:transparent; border-radius:0; padding:0; mix-blend-mode:multiply; }.cma-footer .accreditation-logos img:first-child { width:62px; }.local-accreditation { text-align:center; }.local-accreditation img { max-width:130px; width:100%; border-radius:10px; }.local-accreditation p { margin:13px 0 0; color:#53706a; }
@media(max-width:800px) { .cma-card,.cma-page-hero .container { grid-template-columns:1fr; gap:18px; }.cma-card .accreditation-logos,.cma-page-hero .accreditation-logos { justify-self:start; justify-content:flex-start; }.cma-page-hero .accreditation-logos img:first-child { width:120px; height:90px; }.cma-page-hero .accreditation-logos img:last-child { width:76px; height:76px; }.cma-course-note a { grid-template-columns:104px 1fr; gap:12px; padding:16px 0; }.cma-course-note em { grid-column:2; }.cma-course-note .accreditation-logos { gap:3px; }.cma-course-note .accreditation-logos img { width:42px; height:42px; }.cma-course-note .accreditation-logos img:first-child { width:58px; } }

.graduates-intro { max-width:700px; }.graduates-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }.graduate-card { margin:0; overflow:hidden; background:white; border-radius:14px; box-shadow:0 8px 24px #07588512; }.graduate-card img { display:block; width:100%; aspect-ratio:4 / 3; object-fit:cover; }.graduate-card figcaption { padding:14px 16px; color:#45635e; font-weight:700; font-size:.9rem; }.graduate-card figcaption span { display:inline-block; min-width:92px; border-bottom:1px dashed #8ba49d; margin-right:5px; }.graduates-more { margin-top:28px; }.graduates-more summary { cursor:pointer; color:var(--ink); font-weight:800; padding:16px 0; }.graduates-more .graduates-grid { padding-top:14px; }
@media(max-width:800px) { .graduates-grid { grid-template-columns:1fr 1fr; gap:14px; }.graduate-card figcaption { padding:11px 12px; font-size:.78rem; }.graduate-card figcaption span { min-width:58px; } }
@media(max-width:480px) { .graduates-grid { grid-template-columns:1fr; }.graduate-card img { aspect-ratio:4 / 3; } }

.graduates-showcase { overflow:hidden; }.graduates-slider { width:100%; padding-inline:20px; }.graduates-track { display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-inline:contain; touch-action:pan-x; }.graduates-track::-webkit-scrollbar { display:none; }.graduate-slide { position:relative; flex:0 0 calc((100% - 54px) / 4); height:310px; overflow:hidden; border-radius:15px; scroll-snap-align:start; background:var(--deep); box-shadow:0 8px 24px #07588516; }.graduate-slide img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .35s ease; }.graduate-slide > span { position:absolute; inset:auto 0 0; padding:48px 18px 17px; color:white; text-align:right; background:linear-gradient(transparent,#063f61e8); transform:translateY(10px); opacity:.92; transition:.25s; }.graduate-slide strong,.graduate-slide small,.linked-graduate strong,.linked-graduate small { display:block; }.graduate-slide small,.linked-graduate small { color:#d7edcb; }.graduate-slide:hover img { transform:scale(1.04); }.graduate-slide:hover > span { transform:none; opacity:1; }.graduates-cta { margin-top:34px; text-align:center; }.graduates-cta h3 { margin-bottom:10px; }.graduates-cta .actions { justify-content:center; }.graduate-category { margin-bottom:46px; }.linked-graduate { position:relative; }.linked-graduate > span { position:absolute; inset:auto 0 0; padding:42px 16px 14px; color:white; background:linear-gradient(transparent,#063f61e8); }.graduate-lightbox { position:fixed; inset:0; z-index:100; display:none; place-items:center; padding:24px; background:#042f48dd; }.graduate-lightbox.open { display:grid; }.lightbox-card { width:min(900px,100%); max-height:88vh; overflow:auto; display:grid; grid-template-columns:1.4fr .8fr; background:white; border-radius:18px; box-shadow:0 24px 70px #0005; }.lightbox-card img { width:100%; height:100%; min-height:420px; object-fit:cover; }.lightbox-card > div { padding:32px; align-self:center; }.lightbox-close { position:fixed; top:18px; left:22px; z-index:1; border:0; background:white; color:var(--deep); width:42px; height:42px; border-radius:50%; font-size:1.8rem; cursor:pointer; }.cupping-gallery div:nth-child(1) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/graduates/graduate-01.jpeg'); }.cupping-gallery div:nth-child(2) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/graduates/graduate-02.jpeg'); }.cupping-gallery div:nth-child(3) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/graduates/graduate-04.jpeg'); }.courses-journey { margin-top:42px; padding:34px; text-align:center; border-radius:16px; background:var(--sage); }.courses-journey h2 { margin-bottom:16px; }
@media(max-width:1000px) { .graduate-slide { flex-basis:calc((100% - 36px) / 3); } }
@media(max-width:800px) { .graduate-slide { flex-basis:100%; height:300px; }.lightbox-card { grid-template-columns:1fr; }.lightbox-card img { min-height:0; height:min(55vh,420px); }.lightbox-card > div { padding:22px; } }

@media(min-width:801px) { .graduate-slide { flex-basis:calc((100% - 36px) / 3); } }

.cupping-gallery div:nth-child(1) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/cupping-graduates/cupping-01.jpeg'); }
.cupping-gallery div:nth-child(2) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/cupping-graduates/cupping-04.jpeg'); }
.cupping-gallery div:nth-child(3) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/cupping-graduates/cupping-06.jpeg'); }
.cupping-graduates-section { background:var(--sage); }
.cupping-graduates-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.cupping-graduates-grid a { display:block; height:390px; overflow:hidden; border-radius:15px; box-shadow:0 8px 24px #07588516; }
.cupping-graduates-grid img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.cupping-graduates-grid a:hover img { transform:scale(1.025); }
@media(max-width:800px) { .cupping-graduates-grid { grid-template-columns:1fr; }.cupping-graduates-grid a { height:310px; } }

.workshop-hero-photo { display:block; min-height:390px; overflow:hidden; border-radius:18px; box-shadow:18px 20px 0 #d9ecdf; }
.workshop-hero-photo img { display:block; width:100%; height:100%; min-height:390px; object-fit:cover; }
@media(max-width:800px) { .workshop-hero-photo,.workshop-hero-photo img { min-height:280px; } }

.kinesio-graduates-section { background:var(--sage); }
.single-graduate-photo { max-width:820px; margin:auto; }
.single-graduate-photo a { display:block; height:480px; overflow:hidden; border-radius:15px; box-shadow:0 8px 24px #07588516; }
.single-graduate-photo img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.single-graduate-photo a:hover img { transform:scale(1.025); }
@media(max-width:800px) { .single-graduate-photo a { height:310px; } }

.massage-gallery div:nth-child(1) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/massage-course/massage-page-01.jpeg'); }
.massage-gallery div:nth-child(2) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/massage-course/massage-page-02.jpeg'); }
.massage-gallery div:nth-child(3) { background-image:url('https://ephemeral-sprinkles-e7a5f1.netlify.app/assets/massage-course/massage-page-03.jpeg'); }

.hero-text-only { grid-template-columns:minmax(0,760px); justify-content:center; text-align:center; }
.hero-text-only > div:first-child { margin:auto; }
.hero-text-only .actions { justify-content:center; }
.hero:has(.hero-text-only) { min-height:auto; padding:58px 0 34px; }
.hero:has(.hero-text-only) + .info-strip { background:var(--sage); padding:0 0 24px; }
.hero:has(.hero-text-only) + .info-strip .container { position:relative; z-index:2; background:linear-gradient(135deg,#075885 0%,#086f91 100%); border-radius:16px; padding:8px; box-shadow:0 12px 30px #06466c24; overflow:hidden; }
.hero:has(.hero-text-only) + .info-strip .info { min-height:68px; display:flex; flex-direction:column; justify-content:center; gap:3px; padding:11px 16px; border-left:1px solid #ffffff24; line-height:1.45; }
.hero:has(.hero-text-only) + .info-strip .info:last-child { border-left:0; }
.hero:has(.hero-text-only) + .info-strip .info b { color:#d9efa9; font-size:.74rem; }
.course-graduates-section { background:var(--sage); }
.course-graduates-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:18px; }
.course-graduates-gallery a { display:block; height:310px; overflow:hidden; border-radius:15px; background:white; box-shadow:0 8px 24px #07588516; }
.course-graduates-gallery img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.course-graduates-gallery a:hover img { transform:scale(1.025); }
@media(max-width:800px) { .hero-text-only { text-align:right; }.hero-text-only .actions { justify-content:flex-start; }.hero:has(.hero-text-only) { padding:42px 0 24px; }.hero:has(.hero-text-only) + .info-strip { padding-bottom:18px; }.hero:has(.hero-text-only) + .info-strip .container { grid-template-columns:1fr 1fr; border-radius:14px; }.hero:has(.hero-text-only) + .info-strip .info { min-height:62px; padding:9px 12px; border-bottom:1px solid #ffffff1c; }.course-graduates-gallery { grid-template-columns:1fr; }.course-graduates-gallery a { height:300px; } }

@media(max-width:480px) { .hero:has(.hero-text-only) + .info-strip .container { grid-template-columns:1fr 1fr; }.hero:has(.hero-text-only) + .info-strip .info { font-size:.78rem; } }

.graduate-slide[data-course-href="herbal-compress-workshop.html"] img { object-position:center top; }

/* Keep the newly cropped cupping photo at its original 1440x783 ratio. */
.graduate-slide[data-lightbox="assets/cupping-graduates/cupping-03.jpeg"] {
  height:auto;
  aspect-ratio:1440 / 783;
  align-self:flex-start;
}
.graduate-slide[data-lightbox="assets/cupping-graduates/cupping-03.jpeg"] img {
  object-fit:contain;
}
.lightbox-card.show-full-image img {
  height:auto;
  min-height:0;
  object-fit:contain;
  align-self:center;
}

.cma-answer-logo { margin-top:22px; }
.cma-answer-logo img { max-width:180px; height:105px; object-fit:contain; background:transparent; border-radius:0; padding:0; mix-blend-mode:multiply; }

/* About page */
.about-page .eyebrow::before { display:none; }
.about-hero { padding:62px 0 54px; background:linear-gradient(120deg,#e6f1e4 0%,#f3f8f1 100%); }
.about-hero-content { max-width:880px; margin-inline:auto; text-align:center; }
.about-hero .eyebrow { justify-content:center; }
.about-hero h1 { max-width:820px; margin:14px auto 16px; }
.about-hero p { max-width:780px; margin:0 auto; font-size:1.02rem; }
.about-hero-points { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; max-width:820px; margin:26px auto 0; }
.about-hero-points span { position:relative; padding:10px 34px 10px 16px; border:1px solid #bfd6b9; border-radius:999px; background:#ffffffb8; color:var(--ink); font-size:.88rem; font-weight:700; box-shadow:0 5px 15px #07588508; }
.about-hero-points span::before { content:""; position:absolute; right:15px; top:50%; width:8px; height:8px; border-radius:50%; background:var(--coral); transform:translateY(-50%); }
.about-intro-section { padding-block:76px; }
.about-intro-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; align-items:start; }
.about-intro-grid h2 { max-width:430px; margin-bottom:0; }
.about-intro-grid .about-intro-title { color:var(--ink); font-size:clamp(1.8rem,3.1vw,2.65rem); line-height:1.35; font-weight:800; }
.about-intro-copy { padding:28px 30px; border-right:4px solid var(--coral); border-radius:0 14px 14px 0; background:white; box-shadow:0 10px 28px #0758850d; }
.about-intro-copy p { font-size:1rem; line-height:1.9; }
.about-intro-copy p:last-child { margin-bottom:0; }
.founders-section { padding-top:20px; }
.founders-heading { max-width:760px; }
.founders-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.founder-card { overflow:hidden; display:grid; grid-template-columns:210px 1fr; min-height:330px; border-radius:18px; background:white; border:1px solid #dbe8dc; box-shadow:0 10px 28px #0758850d; }
.founder-photo-placeholder { min-height:330px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:24px; text-align:center; background:linear-gradient(145deg,#e4f0e2,#f4f8f2); color:#54706a; border-left:1px dashed #a9bfa8; }
.founder-photo-placeholder .placeholder-icon { display:grid; place-items:center; width:72px; height:72px; margin-bottom:8px; border:2px solid #87aa7b; border-radius:50%; color:var(--coral); font-size:2rem; }
.founder-photo-placeholder b { color:var(--ink); font-size:.86rem; }
.founder-photo-placeholder small { font-size:.72rem; line-height:1.5; }
.founder-copy { align-self:center; padding:30px 26px; }
.founder-role { display:inline-block; color:var(--coral); font-size:.76rem; font-weight:800; }
.founder-copy h3 { margin:7px 0 13px; font-size:1.3rem; }
.founder-copy p { margin:0; color:#53706a; font-size:.88rem; line-height:1.9; }
.lecturers-section { padding-top:34px; }
.lecturers-heading { max-width:720px; }
.lecturers-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.lecturer-card { overflow:hidden; border:1px solid #dbe8dc; border-radius:17px; background:white; box-shadow:0 9px 26px #0758850d; }
.lecturer-photo-placeholder { display:flex; min-height:235px; flex-direction:column; align-items:center; justify-content:center; gap:10px; background:linear-gradient(145deg,#e4f0e2,#f5f9f3); color:#607a74; border-bottom:1px dashed #a9bfa8; }
.lecturer-photo-placeholder span { display:grid; place-items:center; width:68px; height:68px; border:2px solid #87aa7b; border-radius:50%; color:var(--coral); font-size:2rem; }
.lecturer-photo-placeholder small { font-size:.78rem; font-weight:700; }
.lecturer-copy { padding:20px 22px 22px; text-align:center; }
.lecturer-copy h3 { margin:0 0 5px; font-size:1.18rem; }
.lecturer-copy p { margin:0; color:#607a74; font-size:.86rem; }
.mission-vision-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.identity-card { min-height:390px; padding:38px; border-radius:18px; box-shadow:0 12px 32px #07588510; }
.identity-card h2 { margin:18px 0 16px; font-size:1.65rem; }
.identity-card p { margin:0; }
.mission-card { background:var(--deep); color:white; }
.mission-card p { color:#d8eaec; }
.vision-card { background:white; }
.vision-card p { color:#53706a; }
.identity-label { display:inline-flex; padding:5px 12px; border-radius:999px; background:#ffffff18; color:#c9eba6; font-size:.8rem; font-weight:800; }
.vision-card .identity-label { background:#e7f3dd; color:#2c6d20; }
.values-section .section-heading { max-width:730px; }
.about-values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.about-value { min-height:145px; display:flex; flex-direction:column; justify-content:center; padding:20px 22px; border-radius:15px; background:white; border:1px solid #dbe8dc; box-shadow:0 7px 22px #0758850b; }
.about-value h3 { margin:0 0 6px; }
.about-value p { margin:0; color:#53706a; font-size:.9rem; }
.about-path-section { background:#f4f8f3; }
.about-path-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:65px; align-items:start; }
.about-path-steps { display:grid; gap:13px; }
.about-path-steps article { display:grid; grid-template-columns:48px 1fr; gap:16px; align-items:center; padding:19px 22px; border-radius:14px; background:white; box-shadow:0 7px 20px #0758850c; }
.about-path-steps b { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--sage); color:var(--coral); }
.about-path-steps h3 { margin:0 0 3px; font-size:1.05rem; }
.about-path-steps p { margin:0; color:#53706a; font-size:.88rem; }
.about-cta-section { padding-block:58px; }
.about-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:34px 38px; border-radius:18px; background:linear-gradient(120deg,#075885,#06466c); color:white; }
.about-cta .eyebrow { color:#c9eba6; }
.about-cta h2 { margin:8px 0; }
.about-cta p { margin:0; color:#d8eaec; }
.about-cta .button { flex:0 0 auto; background:#fff; border-color:#fff; color:var(--ink); }
@media(max-width:800px) {
  .about-hero { padding:44px 0 38px; }
  .about-hero-content { text-align:right; }
  .about-hero .eyebrow { justify-content:flex-start; }
  .about-hero-points { justify-content:flex-start; margin-top:22px; }
  .about-intro-grid,.mission-vision-grid,.about-path-grid,.founders-grid { grid-template-columns:1fr; gap:28px; }
  .about-intro-section { padding-block:56px; }
  .about-intro-copy { padding:22px; }
  .identity-card { min-height:0; padding:28px; }
  .founder-card { grid-template-columns:180px 1fr; min-height:290px; }
  .founder-photo-placeholder { min-height:290px; }
  .about-values-grid,.lecturers-grid { grid-template-columns:1fr 1fr; }
  .about-value { min-height:0; }
  .about-cta { align-items:stretch; flex-direction:column; padding:28px; }
  .about-cta .button { align-self:flex-start; }
}
@media(max-width:520px) {
  .about-values-grid,.lecturers-grid { grid-template-columns:1fr; }
  .lecturer-photo-placeholder { min-height:260px; }
  .founder-card { grid-template-columns:1fr; }
  .founder-photo-placeholder { min-height:260px; border-left:0; border-bottom:1px dashed #a9bfa8; }
  .about-path-steps article { grid-template-columns:42px 1fr; padding:16px; }
  .about-cta .button { width:100%; }
}

.course-photo { width:100%; height:auto; aspect-ratio:1/1; }
.compact-list-hero ~ .section .course-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.contact-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.contact-actions .button { width:100%; border:0; cursor:pointer; }
.contact-whatsapp { background:#2f9e44; }
.contact-email { background:var(--ink); }
.contact-form-note { margin:0; color:#607773; font-size:.82rem; text-align:center; }
@media(max-width:560px) { .contact-actions { grid-template-columns:1fr; } }
@media(max-width:1000px) { .compact-list-hero ~ .section .course-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:800px) { .compact-list-hero ~ .section .course-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .compact-list-hero ~ .section .course-grid { grid-template-columns:1fr; } }
@media(max-width:800px) {
  .footer-grid { grid-template-columns:1fr 1fr; gap:16px 28px; }
  .footer-grid > div:first-child { grid-column:1 / -1; }
}

.footer-social-inline { display:flex; align-items:center; gap:10px; margin-top:14px; padding-top:12px; border-top:1px solid #ffffff24; }
.footer-social-inline > span { display:block; margin:0; color:#c9eba6; font-size:.8rem; font-weight:700; white-space:nowrap; }
.footer-social-inline > div { display:flex; align-items:center; gap:8px; }
.social-icon,.contact-social-link { text-decoration:none; }
.social-icon { position:relative; width:34px; height:34px; flex:0 0 34px; border-radius:50%; display:block; color:white; background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045); box-shadow:0 5px 13px #001a2938; transition:transform .2s ease,box-shadow .2s ease; }
.social-icon:hover { transform:translateY(-2px); box-shadow:0 9px 20px #9c276744; }
.social-icon > svg { position:absolute; top:50%; left:50%; width:19px; height:19px; display:block; transform:translate(-50%,-50%); fill:none; stroke:currentColor; stroke-width:1.8; }
.social-icon.facebook > svg { width:20px; height:20px; transform:translate(-48%,-50%); }
.social-icon .social-icon-dot { fill:currentColor; stroke:none; }
.social-icon.facebook { background:#1877f2; }
.social-icon .social-icon-fill,.contact-social-link .social-icon-fill { fill:currentColor; stroke:none; }
.contact-social-section { padding-top:0; }
.contact-social-card { display:flex; align-items:center; justify-content:space-between; gap:28px; padding:28px 32px; border-radius:20px; background:#eef7ec; box-shadow:0 9px 25px #0758850e; }
.contact-social-card h2 { margin:4px 0 7px; }
.contact-social-card p { margin:0; }
.contact-social-link { min-width:235px; display:flex; align-items:center; gap:13px; padding:13px 17px; border-radius:15px; color:white; background:linear-gradient(135deg,#833ab4,#c13584,#fd1d1d,#fcb045); box-shadow:0 9px 22px #9c27672b; }
.contact-social-link svg { width:32px; height:32px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.7; }
.contact-social-link .social-icon-dot { fill:currentColor; stroke:none; }
.contact-social-link span { display:grid; gap:1px; }
.contact-social-link b { font-size:1rem; }
.contact-social-link small { direction:ltr; font-size:.75rem; opacity:.9; }
.contact-social-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.contact-social-link.facebook { background:#1877f2; }
@media(max-width:700px) { .contact-social-card { align-items:stretch; flex-direction:column; padding:24px 20px; }.contact-social-link { min-width:0; justify-content:center; } }
@media(max-width:480px) { .contact-social-actions { grid-template-columns:1fr; } }

/* Student trust statistics */
.trust-section { background:linear-gradient(180deg,var(--sage),#f3f8f1); }
.trust-heading { max-width:720px; margin-inline:auto; text-align:center; }
.trust-heading p { max-width:620px; margin-inline:auto; font-size:1rem; }
.trust-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.trust-card { min-height:210px; padding:28px 24px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:var(--white); border:1px solid #dbe8dc; border-radius:15px; box-shadow:0 8px 25px #0758850c; transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.trust-card:hover { transform:translateY(-4px); border-color:#a9cba0; box-shadow:0 15px 34px #07588518; }
.trust-icon { display:grid; place-items:center; width:52px; height:52px; margin-bottom:13px; border-radius:50%; background:#edf1f3; color:var(--deep); line-height:1; }
.trust-icon svg { width:25px; height:25px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.trust-card:first-child .trust-icon svg { width:31px; height:31px; }
.trust-card:nth-child(4) .trust-icon svg,.trust-card:nth-child(6) .trust-icon svg { width:28px; height:28px; stroke-width:1.75; }
.trust-card h3 { margin:0 0 8px; color:var(--ink); font-size:1.35rem; line-height:1.45; }
.trust-card p { max-width:290px; margin:0; color:#53706a; font-size:.9rem; line-height:1.75; }
.trust-card bdi { direction:ltr; unicode-bidi:isolate; }
@media(max-width:800px) { .trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.trust-card { min-height:190px; padding:24px 18px; } }
@media(max-width:520px) { .trust-heading { text-align:right; }.trust-grid { grid-template-columns:1fr; gap:11px; }.trust-card { min-height:0; display:grid; grid-template-columns:48px 1fr; column-gap:14px; padding:18px; text-align:right; align-items:center; justify-items:start; }.trust-icon { grid-row:1 / 3; margin:0; width:46px; height:46px; }.trust-icon svg { width:22px; height:22px; }.trust-card:first-child .trust-icon svg { width:27px; height:27px; }.trust-card h3 { margin:0; font-size:1.12rem; }.trust-card p { margin-top:2px; max-width:none; font-size:.86rem; } }
@media(prefers-reduced-motion:reduce) { .trust-card { transition:none; }.trust-card:hover { transform:none; } }

.protocols-section { margin-top:22px; }.protocols-card { min-height:0; }.protocols-card p { max-width:780px; }.protocols-card h3 { line-height:1.65; }

/* Three accreditation logos */
.accreditation-logos img.recognized-college-seal { background:transparent; border-radius:0; padding:0; mix-blend-mode:normal; flex-shrink:0; }
.cma-card { grid-template-columns:220px 1fr; }
.cma-page-hero .container { grid-template-columns:290px 1fr; }
@media(max-width:800px) { .cma-card,.cma-page-hero .container { grid-template-columns:1fr; } }


/* ===== تحسينات عامة لتناسق الموقع على الكمبيوتر والهاتف ===== */
@media (min-width: 901px) {
  .container { width:min(1180px, calc(100% - 48px)); }

  /* تقليل الفراغات العمودية */
  .section { padding:56px 0; }
  .page-hero { padding:50px 0 42px; }
  .hero { min-height:auto; padding:60px 0 48px; }
  .section-heading { margin-bottom:24px; }
  .actions { margin-top:20px; }

  /* العناوين الطويلة تظهر بسطر واحد قدر الإمكان على الكمبيوتر */
  .page-hero h1,
  .hero h1 {
    font-size:clamp(1.85rem, 2.8vw, 3.15rem);
    line-height:1.3;
  }
  .page-hero h1 { white-space:nowrap; }
  .page-hero p { max-width:850px; margin-bottom:0; }

  /* مسافات أهدأ داخل البطاقات */
  .card, .choice-card, .course-part, .contact-box { padding:22px; }
  .cards, .choice-grid, .course-parts { gap:16px; }

  /* ترتيب البطاقات في الوسط، بما في ذلك الصف الأخير الناقص */
  .cards,
  .course-grid {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:18px;
  }
  .cards > .card,
  .course-grid > .course {
    flex:0 1 calc((100% - 36px) / 3);
    max-width:calc((100% - 36px) / 3);
    min-width:280px;
  }

  /* 5 عناصر مثلًا: 3 بالأعلى و2 بالأسفل في المنتصف */
  .journey {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
  }
  .journey > .journey-step {
    flex:0 1 calc((100% - 24px) / 3);
    max-width:calc((100% - 24px) / 3);
  }

  /* صفحة البروتوكولات */
  .protocol-grid { gap:12px !important; }
  .protocol-card summary { padding:14px 16px !important; }
  .protocol-details { padding:0 16px 14px !important; }
  .protocol-notes { padding:22px !important; }
}

@media (max-width: 900px) {
  .page-hero h1 { white-space:normal; }
}

@media (max-width: 800px) {
  .container { width:min(100% - 28px, 1120px); }
  .section { padding:40px 0; }
  .page-hero { padding:34px 0 30px; }
  .hero { min-height:auto; padding:40px 0 34px; }

  h1, .page-hero h1 {
    font-size:clamp(1.7rem, 7.2vw, 2.35rem);
    line-height:1.35;
  }
  h2 { font-size:clamp(1.4rem, 6vw, 1.9rem); }
  .section-heading { margin-bottom:20px; }

  .cards,
  .course-grid,
  .choice-grid,
  .course-parts {
    gap:12px;
  }

  .course-body { padding:16px; }
  .course-photo { height:auto; aspect-ratio:1/1; }
  .contact-box { padding:20px; }

  .protocol-grid { gap:10px !important; }
  .protocol-card summary { padding:12px !important; }
  .protocol-details { padding:0 12px 12px !important; }
  .protocol-notes { padding:18px !important; }
}

@media (max-width: 480px) {
  .container { width:calc(100% - 22px); }
  .section { padding:34px 0; }
  .page-hero { padding:28px 0 24px; }
  .topbar { padding:6px 0; }
  .nav { min-height:94px; }
  .nav .brand-logo { width:78px; height:78px; }
  .nav-links { top:94px; }
}

/* Keep the homepage tagline on one line on desktop. */
@media(min-width:901px){.hero-grid:has(.hero-tagline){grid-template-columns:1.35fr .65fr;gap:28px}.hero-tagline{display:block;white-space:nowrap;font-size:clamp(1.35rem,2.35vw,2.15rem);line-height:1.5}}
@media(max-width:900px){.hero-tagline{display:block;white-space:normal;font-size:.82em}}

/* Compact homepage introduction */
.home-intro-heading{max-width:none;text-align:center;margin-inline:auto}.home-intro-heading h2{font-size:clamp(1.45rem,2.35vw,2rem);line-height:1.45;margin:8px 0 10px}.home-intro-heading p{max-width:none;margin:0 auto;color:#55706c;font-size:clamp(.85rem,1.1vw,.98rem);line-height:1.7}@media(min-width:901px){.home-intro-heading h2,.home-intro-heading p{white-space:nowrap}}@media(max-width:900px){.home-intro-heading h2,.home-intro-heading p{white-space:normal}}


/* تنسيق قسم اكتشف الكورسات/الورشات/البرنامج المتقدم */
.explore-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}
.explore-choice-grid .explore-card{
  min-height:0;
  padding:22px 24px;
  display:block;
}
.explore-choice-grid .explore-card h3{
  margin:0 0 8px;
  font-size:1.28rem;
  line-height:1.4;
}
.explore-choice-grid .explore-card p{
  margin:0;
  color:#53706a;
  font-size:.88rem;
  line-height:1.65;
}
@media (min-width:901px){
  .explore-choice-grid .explore-card p{white-space:nowrap;}
  .explore-choice-grid .protocols-card h3{font-size:1.08rem;}
  .explore-choice-grid .protocols-card p{font-size:.82rem;}
}
@media (max-width:900px){
  .explore-choice-grid{grid-template-columns:1fr;}
  .explore-choice-grid .explore-card{padding:18px 20px;}
  .explore-choice-grid .explore-card h3{font-size:1.15rem;}
  .explore-choice-grid .explore-card p{font-size:.86rem;}
}

/* Course audience heading: full-width, single line when space permits. */
.course-audience-heading{max-width:none;width:100%;margin-bottom:24px}
.course-audience-heading h2{font-size:clamp(1.45rem,2.15vw,1.85rem);line-height:1.5;margin:8px 0 0}
@media(min-width:901px){.course-audience-heading h2{white-space:nowrap}}
@media(max-width:900px){.course-audience-heading h2{white-space:normal;font-size:clamp(1.35rem,5vw,1.8rem)}}


/* توحيد عرض معلومات المواعيد في جميع الكورسات والورشات */
.info-strip .info {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
  min-width:0;
}
.info-strip .info b {
  display:block;
  margin:0;
  line-height:1.5;
}
.info-strip .info .info-value {
  display:block;
  width:100%;
  margin:0;
  line-height:1.6;
}
.info-strip .info .info-value.time-value {
  white-space:nowrap;
}
.info-strip .info time,
.info-strip .info .info-value span[dir="ltr"] {
  display:inline-block;
}
@media(max-width:480px) {
  .info-strip .info { align-items:flex-start; }
  .info-strip .info .info-value.time-value { white-space:normal; }
}


/* عناوين أقسام الخريجين والصور في الكورسات والورشات */
@media(min-width:901px){
  .graduates-intro,
  .graduates-showcase .section-heading,
  .section-heading:has(+ .graduates-grid),
  .section-heading:has(+ .graduates-slider),
  .section-heading:has(+ .gallery-grid){
    max-width:none;
    width:100%;
  }
  .graduates-intro h2,
  .graduates-showcase .section-heading h2,
  .section-heading:has(+ .graduates-grid) h2,
  .section-heading:has(+ .graduates-slider) h2,
  .section-heading:has(+ .gallery-grid) h2{
    font-size:clamp(1.55rem,2.2vw,2rem);
    line-height:1.4;
    white-space:nowrap;
  }
}
@media(max-width:900px){
  .graduates-intro,
  .graduates-showcase .section-heading{
    max-width:100%;
  }
  .graduates-intro h2,
  .graduates-showcase .section-heading h2{
    font-size:clamp(1.4rem,5vw,1.9rem);
    white-space:normal;
    overflow-wrap:normal;
  }
}


/* تصحيح عرض الهيرو في الصفحة الرئيسية */
@media (min-width:901px){
  body.home-page .hero{
    min-height:600px;
    padding:86px 0 60px;
  }
  body.home-page .hero-card{
    min-height:390px;
    background-size:cover;
    background-position:center 43%;
  }
}


/* إصلاح بطاقات الاستكشاف: النص داخل الحدود وبمحاذاة وسطية */
.explore-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
  width:100%;
  max-width:100%;
}
.explore-choice-grid .explore-card{
  box-sizing:border-box;
  min-width:0;
  min-height:0;
  padding:24px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.explore-choice-grid .explore-card>div{width:100%;min-width:0}
.explore-choice-grid .explore-card h3{
  margin:0 0 10px;
  font-size:1.2rem;
  line-height:1.5;
  white-space:normal;
  overflow-wrap:normal;
  text-align:center;
}
.explore-choice-grid .explore-card p,
.explore-choice-grid .protocols-card p{
  margin:0;
  font-size:.95rem;
  line-height:1.8;
  white-space:normal !important;
  overflow-wrap:normal;
  max-width:100%;
  text-align:center;
}
.explore-choice-grid .protocols-card h3{font-size:1.1rem}
@media(max-width:900px){
  .explore-choice-grid{grid-template-columns:1fr;gap:12px}
  .explore-choice-grid .explore-card{padding:20px 18px}
}


/* تنسيق قسم الفئات المستهدفة في صفحة الكورسات */
.course-audience-heading{
  max-width:100%;
  text-align:center;
  margin-inline:auto;
}
.course-audience-heading .eyebrow,
.course-audience-heading h2{
  text-align:center;
  margin-inline:auto;
}
.course-audience-heading h2{
  max-width:1050px;
  font-size:clamp(1.55rem,2.4vw,2.15rem);
  line-height:1.55;
  white-space:normal !important;
  text-wrap:balance;
}
.course-audience-heading + .cards{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:16px;
}
.course-audience-heading + .cards > .card{
  box-sizing:border-box;
  flex:0 1 calc((100% - 32px)/3);
  max-width:calc((100% - 32px)/3);
  min-width:0;
  padding:24px 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.course-audience-heading + .cards > .card h3,
.course-audience-heading + .cards > .card p{
  width:100%;
  max-width:100%;
  text-align:center;
  margin-inline:auto;
  white-space:normal;
}
.course-audience-heading + .cards > .card h3{margin-bottom:10px}
.course-audience-heading + .cards > .card p{margin-top:0;line-height:1.8}
@media(max-width:900px){
  .course-audience-heading h2{font-size:clamp(1.4rem,5vw,1.9rem);max-width:100%}
  .course-audience-heading + .cards > .card{
    flex:0 1 calc((100% - 16px)/2);
    max-width:calc((100% - 16px)/2);
  }
}
@media(max-width:600px){
  .course-audience-heading + .cards > .card{
    flex:0 1 100%;max-width:100%;padding:20px 18px;
  }
}


/* عرض الصورة الرئيسية كاملة دون قص */
.hero-card,
body.home-page .hero-card{
  background-image:linear-gradient(180deg,transparent 0%,transparent 76%,rgba(6,70,108,.12) 84%,rgba(6,70,108,.82) 100%),url('assets/home-hero-graduates.jpeg?v=20260923-fog') !important;
  background-size:100% 100%,cover !important;
  background-position:center,center !important;
  background-repeat:no-repeat !important;
  background-color:#e9f3ee;
  aspect-ratio:1440/896;
  min-height:0 !important;
  height:auto;
  box-sizing:border-box;
  border-radius:18px;
  box-shadow:none;
  overflow:hidden;
}
@media(max-width:900px){
  .hero-card,body.home-page .hero-card{
    aspect-ratio:1440/896;
    min-height:0 !important;
  }
}


/* تكبير صورة الواجهة مع الحفاظ على كامل الصورة */
@media(min-width:901px){
  body.home-page .hero .container{max-width:1280px;width:calc(100% - 48px)}
  body.home-page .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
  body.home-page .hero-card{
    width:100%;
    max-width:none;
    aspect-ratio:1440/896;
    background-size:100% 100%,cover !important;
    background-repeat:no-repeat !important;
    min-height:0 !important;
  }
}

/* Balanced two-line homepage heading and a larger graduate photo. */
body.home-page .hero h1 { font-size:clamp(1.7rem,2.8vw,3.15rem); }
body.home-page .hero-tagline { display:block; font-size:.61em; line-height:1.65; white-space:nowrap; }
@media(min-width:901px){
  body.home-page .hero-grid { grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:28px; }
}
@media(max-width:600px){
  body.home-page .hero h1 { font-size:clamp(1.35rem,6.1vw,2rem); }
}

/* Compact homepage benefits. */
body.home-page .home-benefits { padding:34px 0; }
.home-benefits-heading { text-align:center; margin-bottom:22px; }
.home-benefits-heading h2 { color:var(--ink); font-size:clamp(1.5rem,2.4vw,2rem); line-height:1.5; margin:0 0 8px; }
.home-benefits-heading p { color:#55706c; font-size:.95rem; margin:0; }
.home-benefits-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; max-width:880px; margin:0 auto; }
.home-benefit { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:158px; padding:17px 14px; border-radius:14px; background:white; text-align:center; box-shadow:0 5px 18px #07588508; }
.home-benefit-icon { display:grid; place-items:center; width:38px; height:38px; margin:0 auto 10px; color:var(--coral); background:var(--sage); border-radius:50%; }
.home-benefit-icon svg { width:22px; height:22px; }
.home-benefit h3 { color:var(--ink); font-size:1rem; line-height:1.5; margin:0 0 6px; }
.home-benefit p { color:#55706c; font-size:.84rem; line-height:1.7; margin:0; }
.home-benefit .home-benefit-note { font-weight:300; }
@media(max-width:700px){
  .home-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .home-benefit { min-height:148px; padding:14px 10px; }
  .home-benefit h3 { font-size:.94rem; margin:0 0 3px; }
  .home-benefit p { font-size:.78rem; }
  body.home-page .home-benefits { padding:26px 0; }
}

/* Course enrollment and contact actions */
.course-enrollment-actions{gap:14px;align-items:stretch;flex-wrap:wrap}
.course-enrollment-actions .button{font-family:inherit;text-align:center;min-height:54px;padding:13px 24px;line-height:1.7}
.course-enrollment-actions .button-outline{background:transparent;border:2px solid var(--ink);color:var(--ink)}

/* Course and workshop schedule labels. */
.course .course-date{
  margin:0 0 10px;
  padding:7px 10px;
  border-radius:8px;
  background:var(--sage);
  color:var(--ink);
  font-size:.79rem;
  font-weight:600;
  line-height:1.7;
}
.course .course-date strong{color:var(--coral)}
.contact-actions .button{font-family:inherit;font-size:.95rem;font-weight:700;line-height:1.7;border-radius:16px;min-height:56px;padding:14px 18px;border:1px solid transparent;box-shadow:0 5px 16px #06466c12}
.contact-actions .contact-whatsapp{background:#287a3d;color:#fff}
.contact-actions .contact-email{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.contact-social-card{flex-direction:column;align-items:stretch}
.contact-social-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-social-link{min-width:0}
.contact-social-link.community{background:#fff;color:var(--ink);border:1px solid #a8d89a;box-shadow:0 6px 18px #287a3d12}
.contact-social-link.community img{width:80px;height:80px;object-fit:contain;border-radius:10px;flex-shrink:0}
.contact-social-link.community small{direction:rtl}
.button:focus-visible,.contact-social-link:focus-visible{outline:3px solid #075885;outline-offset:4px}
@media(max-width:800px){.contact-social-actions{grid-template-columns:1fr}.contact-social-link{justify-content:flex-start}}
@media(max-width:600px){.course-enrollment-actions{flex-direction:column}.course-enrollment-actions .button{width:100%}}

.contact-actions.full{grid-column:1/-1} #contact-form{scroll-margin-top:180px}
