/* 2.5: a warm Cairene palette over the unchanged 2.3 layout. */
.cg{--cg-paper:#f3eee6;--cg-ink:#243e36;--cg-line:#d9ccb8;--cg-border:#d9ccb8;--cg-surface:#fffbf5;--cg-muted:#6d6658;--cg-gold:#a77b42;--cg-deep:#24483f;font-family:"Cairo",Tahoma,Arial,sans-serif;color:var(--cg-ink);line-height:1.8}
body:has(.cg-site-header){background:#f3eee6;color:#243e36}
.cg[dir=rtl],.cg[dir=rtl] h1,.cg[dir=rtl] h2,.cg[dir=rtl] h3,.cg[dir=rtl] h4,.cg .cg-text-ar,.cg[dir=rtl] .cg-floating,.cg[dir=rtl] .cg-floating small{font-family:"Cairo",Tahoma,sans-serif;letter-spacing:0}
.cg[data-cg-mode=en] h1,.cg[data-cg-mode=en] h2,.cg[data-cg-mode=en] h3,.cg[data-cg-mode=en] h3 .cg-text-en,.cg[data-cg-mode=en] .cg-floating{font-family:"Lora",Georgia,serif;letter-spacing:-.02em}
.cg[data-cg-mode=en] h3 .cg-text-ar{font-family:"Cairo",Tahoma,sans-serif;letter-spacing:0}
.cg button,.cg input,.cg select,.cg .cg-button,.cg .cg-language a{font-family:"Cairo",Tahoma,sans-serif}
.cg h1,.cg h2,.cg h3,.cg h4{color:var(--cg-ink)}
.cg :focus-visible{outline:3px solid #946231;outline-offset:4px}
.cg.cg-site-header{border-color:var(--cg-line)}
.cg-site-header nav a{color:var(--cg-deep)}
.cg .cg-language{background:#eae1d3;border-color:#d4c3a9}
.cg .cg-language a[aria-current=true]{background:var(--cg-deep);color:#fffaf2}
.cg .cg-home-hero{background:#ece2d3;border-color:#d9c8ae;box-shadow:inset 0 0 0 5px #f5efe5;border-radius:26px}
.cg .cg-home-hero h1{color:var(--cg-deep)}
.cg[dir=rtl] .cg-home-hero h1{font-weight:700;font-size:clamp(37px,4.4vw,57px);line-height:1.55}
.cg .cg-intro,.cg-home-hero .cg-intro{color:#675e50;line-height:1.9}
.cg .cg-eyebrow{color:#8a4d31}
.cg-home-hero .cg-hero-pattern{color:rgba(112,88,49,.18)}
.cg-hero-pattern .cg-hero-courtyard{color:rgba(48,84,70,.25)}
.cg-hero-pattern .cg-hero-sand-line{color:rgba(154,110,50,.35)}
.cg-hero-pattern .cg-hero-courtyard-wash{color:rgba(169,125,60,.055)}
.cg-home-hero .cg-floating{background:#fffbf4;border:1px solid #d4bd98;box-shadow:0 8px 22px #6652300a}
.cg-home-hero .cg-floating::before{background:var(--cg-gold)}
.cg-home-hero .cg-floating small{color:#6d6658}
.cg .cg-home-search,.cg .cg-search{background:var(--cg-surface);border-color:#d8c7ad;box-shadow:0 6px 18px #5c432108}
.cg input,.cg select{background:#fffcf7;border-color:#d5c7b4;color:#243e36}
.cg .cg-home-search button,.cg button,.cg .cg-button{background:var(--cg-deep);color:#fffaf2!important}
.cg button:hover,.cg .cg-button:hover{background:#355f51}
.cg .cg-secondary{background:#e8dfd0;color:#3f4839!important}
.cg .cg-popular,.cg .cg-resultbar{color:#6d6658}
.cg .cg-popular a{color:#76432d}
.cg .cg-trust{border-color:#d9ccb8}
.cg .cg-trust span{color:#5d614f}
.cg .cg-term{background:#ede5d8;border-color:#d9ccb8;color:var(--cg-deep)}
.cg .cg-term:hover{background:#e4d7c2}
.cg .cg-term small{color:#73634d}
.cg .cg-neighbourhood{background:#e4e5d9;border:1px solid #cbd0bb;color:#243e36}
.cg .cg-neighbourhood .cg-term{background:#f6f2e9;border-color:#cdd0bc}
.cg .cg-how{background:transparent}
.cg .cg-how p{color:#675e50}
.cg .cg-how b{color:#24483f}
/* Compact square logo frames, enlarged without cropping the artwork. */
.cg .cg-card,.cg .cg-course-card{position:relative;isolation:isolate;background:var(--cg-surface);border:1px solid #d7c5a8;border-radius:22px 22px 14px 14px;box-shadow:0 4px 16px #654d2506;padding:24px 20px 20px}
.cg .cg-card::before{content:"";position:absolute;z-index:-1;pointer-events:none;inset-block-start:9px;inset-inline-end:9px;width:76px;height:76px;background:url("card-rosette.svg") center/contain no-repeat;opacity:.19}
.cg .cg-card:hover,.cg .cg-course-card:hover,.cg .cg-card:focus-within{border-color:#b59769;box-shadow:0 8px 24px #654d2510;transform:translateY(-2px)}
.cg .cg-card-art{width:84px!important;height:84px!important;flex:0 0 84px;aspect-ratio:1;padding:7px!important;background:#f5eee2!important;border:1px solid #d7c4a4;border-radius:18px;box-shadow:0 0 0 3px #fcf7ee}
.cg .cg-card-art:has(img[src*="zooba"]){background:#24483b!important;border-color:#24483b}
.cg .cg-card-art img,.cg .cg-course-logo img{object-fit:contain!important;max-width:100%;max-height:100%}
.cg .cg-card-art .cg-media-missing{border:0;background:transparent}
.cg .cg-card h3{font-size:18px;line-height:1.6}
.cg .cg-card h3 a{color:#243e36}
.cg[dir=rtl] .cg-card h3 .cg-text-ar{font-size:18px;line-height:1.75}
.cg[data-cg-mode=en] .cg-card h3 .cg-text-en{font-size:18px;line-height:1.5;font-weight:600}
.cg .cg-card-head .cg-eyebrow{color:#6f6757;font-size:10.5px}
.cg .cg-card .cg-cuisine{color:#8a4d31!important;line-height:1.8}
.cg .cg-card-body .cg-card-excerpt,.cg .cg-course-card .cg-course-excerpt{color:#6d6658;line-height:1.85;font-size:13px}
.cg .cg-card-foot,.cg .cg-course-card-footer{position:relative;border-color:#dbcbb1;padding-top:18px}
.cg .cg-card-foot::before,.cg .cg-course-card-footer::before{content:"";position:absolute;top:-6px;left:calc(50% - 5px);width:8px;height:8px;transform:rotate(45deg);border:1px solid #b29360;background:var(--cg-surface);pointer-events:none}
.cg .cg-card-foot,.cg .cg-course-fee-label{color:#746650}
.cg .cg-card-foot strong,.cg .cg-course-fee strong{color:#243e36}
.cg .cg-card-cta{background:#e9e5d8;color:#2c4d3f!important}
.cg .cg-card:hover .cg-card-cta{background:#24483f;color:white!important}
.cg .cg-course-card .cg-course-logo{width:64px!important;height:64px!important;flex-basis:64px;border:1px solid #d7c4a4;border-radius:14px;background:#f5eee2;padding:5px;box-shadow:0 0 0 3px #fcf7ee}
.cg .cg-course-card-top{gap:12px;flex-wrap:wrap;align-items:center}
.cg .cg-course-card-identity{min-width:100px}
.cg .cg-course-card-top>.cg-att-badge{margin-inline-start:auto}
.cg .cg-course-card .cg-course-provider,.cg .cg-course-location{color:#69624f;line-height:1.8}
.cg .cg-course-card .cg-course-category{color:#8a4d31}
.cg .cg-course-type-badge{background:#f3e6d8;border-color:#ddc4aa;color:#85472d}
.cg .cg-att-badge,.cg .cg-att-chip{background:#e8ebdf;border-color:#ccd1be;color:#34543e}
.cg .cg-att-online{background:#e3ece7;border-color:#c3d4c9;color:#315846}
.cg .cg-loc-badge{background:#eee5d6;border-color:#d9c9ad;color:#66573f}
.cg .cg-course-details-link{background:#24483f;color:#fffbf5}
.cg .cg-course-details-link:hover{background:#355f51}
.cg .cg-course-icon{color:#8b754f}
.cg .cg-hero{background:#ece2d3;background-image:none;border:1px solid #dac9af}
.cg .cg-tag{border-color:#bd9d6a;color:#6c5638}
.cg .cg-profile-header,.cg .cg-sidebar-block,.cg .cg-course-overview-card{background:var(--cg-surface);border-color:#d7c5a8;box-shadow:0 4px 18px #654d2505}
.cg .cg-profile-logo,.cg .cg-course-detail-logo{background:#f3ebdd;border-color:#d7c4a4;width:88px;height:88px;max-width:88px;flex-basis:88px}
.cg .cg-place-title{font-family:"Lora","Cairo",Georgia,serif!important;line-height:1.5!important;letter-spacing:0!important}
.cg[dir=rtl] .cg-place-title,.cg .cg-place-title .cg-text-ar{font-family:"Cairo",Tahoma,sans-serif!important}
.cg .cg-profile-intro,.cg .cg-course-overview-body{color:#625e50;line-height:1.9}
.cg .cg-menu-toolbar,.cg .cg-course-keybar,.cg .cg-course-address{background:#eee5d8;border-color:#dbccb5}
.cg .cg-meta-chip,.cg .cg-section-count{background:#ece5d6;border-color:#d9c9ad;color:#62543e}
.cg .cg-meta-cuisine,.cg .cg-item-badge{background:#f4e4d5;border-color:#dfc2a6;color:#85472d}
.cg .cg-cat-pill{border-color:#d7c5a8;background:#fffbf5;color:#365041!important}
.cg .cg-cat-pill.is-active{background:#24483f;border-color:#24483f;color:white!important}
.cg .cg-menu-list{background:#fffbf5;border-color:#d7c5a8;border-radius:16px;box-shadow:none}
.cg .cg-menu-item{background:transparent;border-color:#e4d8c6}
.cg .cg-menu-item:hover{background:#f6efe3}
.cg .cg-item-desc{color:#6d6658!important;line-height:1.8!important}
.cg .cg-item-image{width:72px;height:72px;flex-basis:72px;background:#f3ecdf;object-fit:contain;border:1px solid #ddccb1}
.cg .cg-price{background:#f1e8d7;border-color:#d9c5a0;color:#3f4c36}
.cg .cg-branch{background:#f4eddf;border-color:#dfcdb0}
.cg .cg-branch p{color:#675e50;line-height:1.8}
.cg .cg-map-link{background:#e5e4d4;color:#35513f!important}
.cg .cg-course-keylabel,.cg .cg-course-detail-provider{color:#72644f}
.cg .cg-course-fee-highlight{background:#24483f;color:white}
.cg .cg-course-address address{color:#4d5949}
.cg .cg-disclaimer{border-color:#d9ccb8;color:#756c5d}
.cg .cg-empty{background:#eee5d6;color:#4e5545;border:1px solid #dbcab0}
.cg.cg-site-footer{background:#e9dfcf;border-color:#d3c1a4}
.cg-site-footer .cg-footer-tagline{color:#6e624f}
.cg-site-footer .cg-footer-nav a{color:#24483f}
@media(max-width:800px){
 .cg .cg-home-hero{padding:24px 20px;min-height:0}
 .cg[dir=rtl] .cg-home-hero h1{font-size:32px;line-height:1.65}
 .cg .cg-home-hero .cg-floating{font-size:17px}
 .cg .cg-language a{font-size:12px}
 .cg .cg-course-card h3{font-size:18px}
}
@media(max-width:560px){
 .cg .cg-card,.cg .cg-course-card{padding:20px 16px 16px}
 .cg .cg-card-art{width:72px!important;height:72px!important;flex-basis:72px}
 .cg .cg-course-card .cg-course-logo{width:58px!important;height:58px!important;flex-basis:58px}
 .cg .cg-card::before{width:60px;height:60px;opacity:.16}
 .cg .cg-item-image{width:56px;height:56px;flex-basis:56px}
 .cg .cg-price{white-space:normal!important;max-width:35%;overflow-wrap:anywhere}
 .cg .cg-profile-logo,.cg .cg-course-detail-logo{width:72px;height:72px;max-width:72px;flex-basis:72px}
}
@media(prefers-reduced-motion:reduce){.cg .cg-card,.cg .cg-course-card{transition:none}.cg .cg-card:hover,.cg .cg-course-card:hover{transform:none}}

/* 2.7: homepage learning section and expanded navigation. */
.cg-home-courses{padding-top:34px;border-top:1px solid var(--cg-line)}
.cg-home-courses .cg-section-heading>div{max-width:690px}
.cg-home-courses-intro{font-size:15px;line-height:1.9;color:var(--cg-muted);margin:15px 0 0;max-width:620px}
.cg-home-courses-all{flex-shrink:0;border-bottom:1px solid #b29561;padding-bottom:6px}
.cg-home-courses .cg-courses-grid{align-items:stretch}
.cg-home-courses .cg-course-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.cg-site-header #cg-nav a{white-space:nowrap}
@media(min-width:801px) and (max-width:1100px){.cg-site-header{gap:14px}.cg-site-header #cg-nav ul{gap:14px}.cg-site-header #cg-nav li{font-size:12px}.cg-site-header .cg-language a{padding:8px}.cg-site-header .cg-brand-svg{width:158px}}
@media(max-width:800px){.cg-home-courses .cg-section-heading{align-items:flex-start;flex-direction:column;gap:18px}.cg-home-courses-intro{font-size:14px}.cg-home-courses{padding-top:24px}}

.cg .cg-course-logo.cg-course-logo-placeholder,.cg .cg-course-detail-logo.cg-course-logo-placeholder{background:#f3eee6!important;border-color:#d7c4a4!important}.cg .cg-course-logo-placeholder img{object-fit:contain!important}


/* Oriental theme: same strip, with the theme's larger corner radius and a
 * 40px logo (down from 64px), and no heavy ring shadow around the logo. */
.cg .cg-course-card-top{background:#f5eee2;border-color:#d7c4a4;border-radius:14px;padding:12px 14px;gap:12px;flex-wrap:nowrap}
.cg .cg-course-card-top .cg-course-logo{width:40px!important;height:40px!important;flex-basis:40px;border-radius:14px;padding:3px;box-shadow:none}
.cg .cg-course-card-top .cg-course-provider{font-size:15px;color:#243e36}
.cg .cg-course-card-top .cg-course-category{color:#8a4d31}

.cg .cg-course-card-footer.cg-course-card-footer-no-fee{justify-content:flex-start}

/* Course cards only: remove the background rosette (.cg-card::before). The new
 * header strip covers most of it, leaving only a stray sliver, and the strip
 * already carries its own faint rosette. Restaurant cards keep theirs. */
.cg .cg-course-card::before{display:none}

/* Restaurants: smaller logos, tighter frame, square frame. */
.cg .cg-card-art{padding:4px!important;border-radius:0!important}
.cg .cg-card-art img{border-radius:0!important}
.cg .cg-profile-logo:not(.cg-course-detail-logo){padding:4px!important;border-radius:0!important}
.cg .cg-profile-logo:not(.cg-course-detail-logo) img{border-radius:0!important}
/* Courses: frame radius zero only. Size and padding unchanged. */
.cg .cg-course-card-top .cg-course-logo{border-radius:0!important}
.cg .cg-course-detail-logo{border-radius:0!important}
.cg .cg-course-detail-logo img{border-radius:0!important}

/* Restaurants, 2.9.22: logo + frame only a very little bit smaller. */
.cg .cg-card-art{width:78px!important;height:78px!important;flex:0 0 78px!important}
.cg .cg-profile-logo:not(.cg-course-detail-logo){width:82px!important;height:82px!important;flex:0 0 82px!important}
@media(max-width:560px){.cg .cg-card-art{width:68px!important;height:68px!important;flex:0 0 68px!important}.cg .cg-profile-logo:not(.cg-course-detail-logo){width:68px!important;height:68px!important;flex:0 0 68px!important}}
/* Restaurants, 2.9.22: a subtle warm grade on real logo images only, to
 * match the site's warm oriental feel. The 12% sepia in 2.9.22 was
 * not visible at all, so it is raised to 30%: a clearly visible warm
 * grade that still leaves brand colours recognisable, not a full sepia
 * look. The placeholder (already warm) is excluded. */
.cg .cg-card-art img:not([src*="course-logo-placeholder"]){filter:sepia(.30) saturate(1.12)}
.cg .cg-profile-logo:not(.cg-course-detail-logo) img:not([src*="course-logo-placeholder"]){filter:sepia(.30) saturate(1.12)}

/* Courses, 2.9.24: the same warm tint as restaurant logos in 2.9.23,
 * on real course logo images only (card and detail). The placeholder
 * is excluded, as it is already warm by design. */
.cg .cg-course-logo img:not([src*="course-logo-placeholder"]){filter:sepia(.30) saturate(1.12)}
.cg .cg-course-detail-logo img:not([src*="course-logo-placeholder"]){filter:sepia(.30) saturate(1.12)}
