/* =======================================================================
 * LFI Victor Hugo, Djerba – inner pages (all pages except the home page)
 * Mediterranean palette: sea blue, turquoise, whitewash, sand, terracotta.
 * Header and footer stay identical to the other AFLEC sites.
 * ===================================================================== */
body.inner {
	--sea: #0b4a7d;
	--sea-d: #07355b;
	--turq: #1795a8;
	--turq-l: #e3f3f5;
	--sand-m: #f6f1e7;
	--sand-b: #e8dcc6;
	--terra: #c4573a;
	--shadow: 0 10px 30px -18px rgba(7, 53, 91, 0.45);
	background: var(--sand-m);
}

/* ---- Photo banner --------------------------------------------------- */
.inner .phead--photo { position: relative; isolation: isolate; overflow: hidden; background: var(--sea-d); border: 0; padding-block: clamp(48px, 7vw, 96px) clamp(64px, 8vw, 110px); color: #fff; }
.inner .phead__img { position: absolute; inset: 0; z-index: -2; inline-size: 100%; block-size: 100%; object-fit: cover; }
.inner .phead--photo::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(100deg, rgba(7, 53, 91, 0.92) 0%, rgba(11, 74, 125, 0.78) 45%, rgba(23, 149, 168, 0.35) 100%); }
:dir(rtl).inner .phead--photo::before, [dir="rtl"] .inner .phead--photo::before { background: linear-gradient(260deg, rgba(7, 53, 91, 0.92) 0%, rgba(11, 74, 125, 0.78) 45%, rgba(23, 149, 168, 0.35) 100%); }
.inner .phead__in { position: relative; }
.inner .phead .crumbs ol { color: rgba(255, 255, 255, 0.78); }
.inner .phead .crumbs a { color: #fff; text-decoration-color: rgba(255, 255, 255, 0.5); }
.inner .phead .crumbs li + li::before { color: rgba(255, 255, 255, 0.5); }
.inner .phead__eyebrow { display: inline-block; margin: 6px 0 12px; padding: 4px 12px; border-radius: 999px; background: rgba(255, 255, 255, 0.14); border: 1px solid rgba(255, 255, 255, 0.28); font-size: var(--step--1); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
:lang(ar) .inner .phead__eyebrow, .inner :lang(ar) .phead__eyebrow { letter-spacing: 0; text-transform: none; }
.inner .phead__t { color: #fff; font-size: clamp(2rem, 4.4vw, 3.3rem); line-height: 1.08; max-inline-size: 22ch; text-wrap: balance; }
.inner .phead__lede { margin: 16px 0 0; max-inline-size: 52ch; font-size: var(--step-1); line-height: 1.5; color: rgba(255, 255, 255, 0.9); }
.inner .phead__sub { color: rgba(255, 255, 255, 0.85); }
.inner .phead__wave { position: absolute; inset-inline: 0; inset-block-end: -1px; inline-size: 100%; block-size: clamp(28px, 4vw, 60px); fill: var(--sand-m); }

/* ---- Layout --------------------------------------------------------- */
.inner .layout { padding-block: clamp(28px, 4vw, 48px) clamp(56px, 7vw, 96px); }
.inner .layout__body { background: #fff; border-radius: 20px; padding: clamp(22px, 3.4vw, 44px); box-shadow: var(--shadow); min-inline-size: 0; }
.inner .layout--section .layout__body { background: transparent; box-shadow: none; padding: 0; }
.inner .layout__side { inset-block-start: 120px; }
.inner .secnav { background: #fff; border-radius: 16px; padding: 18px 8px 12px; box-shadow: var(--shadow); }
.inner .secnav__title { padding-inline: 14px; color: var(--sea); }
.inner .secnav__title a { color: var(--sea); }
.inner .secnav ul { border: 0; }
.inner .secnav li a { margin: 0; border: 0; border-radius: 10px; padding: 9px 14px; font-size: var(--step--1); }
.inner .secnav li a:hover { background: var(--turq-l); color: var(--sea); }
.inner .secnav li a[aria-current] { background: var(--sea); color: #fff; }

/* ---- Prose ---------------------------------------------------------- */
.inner .prose { font-size: var(--step-0); line-height: 1.75; }
.inner .prose > p:first-child { font-size: var(--step-1); line-height: 1.6; color: var(--sea-d); }
.inner .prose h2 { position: relative; color: var(--sea); padding-block-start: 18px; margin-block: 1.8em 0.6em; }
.inner .prose h2::before { content: ""; position: absolute; inset-block-start: 0; inset-inline-start: 0; inline-size: 44px; block-size: 4px; border-radius: 4px; background: linear-gradient(90deg, var(--turq), var(--terra)); }
.inner .prose > h2:first-child, .inner .prose > figure + h2 { margin-block-start: 0.6em; }
.inner .prose a { color: var(--sea); text-decoration-color: var(--turq); text-underline-offset: 3px; }
.inner .prose a:hover { color: var(--turq); }
.inner .prose table { border-radius: 14px; overflow: hidden; border: 1px solid var(--sand-b); }
.inner .prose th { background: var(--turq-l); color: var(--sea-d); }
.inner .prose img { border-radius: 14px; }

/* Feature photo */
.inner .feature-img { margin: 0 0 8px; border-radius: 18px; overflow: hidden; aspect-ratio: 21 / 8; }
.inner .feature-img img { inline-size: 100%; block-size: 100%; object-fit: cover; object-position: center 55%; border-radius: 0; }

/* Fact tiles */
.inner .facts { list-style: none; padding: 0; margin: 12px 0 24px; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.inner .facts li { display: grid; gap: 4px; padding: 16px 18px; border-radius: 14px; background: var(--sand-m); border-block-start: 4px solid var(--turq); }
.inner .facts li:nth-child(2n) { border-block-start-color: var(--terra); }
.inner .facts__k { font-size: var(--step--1); color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; font-weight: 700; }
:lang(ar) .inner .facts__k, .inner :lang(ar) .facts__k { text-transform: none; letter-spacing: 0; }
.inner .facts__v { font: 700 var(--step-0)/1.35 var(--f-head); color: var(--sea-d); }

/* Documents: tiles instead of a plain list */
.inner .prose ul.doclist, .inner .doctiles { list-style: none; padding: 0; margin: 14px 0 24px; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.inner .prose ul.doclist li { margin: 0; }
.inner .prose ul.doclist a, .inner .doctiles a { display: flex; align-items: center; gap: 12px; block-size: 100%; padding: 14px 16px; border-radius: 14px; background: #fff; border: 1px solid var(--sand-b); color: var(--sea-d); text-decoration: none; font-weight: 600; line-height: 1.35; transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s; }
.inner .prose ul.doclist a::before { content: "PDF"; flex: none; display: grid; place-items: center; inline-size: 44px; block-size: 44px; border-radius: 12px; background: var(--terra); color: #fff; font: 800 0.72rem/1 var(--f-head); letter-spacing: 0.04em; }
.inner .prose ul.doclist a:not([href$=".pdf"])::before { content: "↗"; background: var(--turq); font-size: 1.1rem; }
.inner .prose ul.doclist a:hover, .inner .doctiles a:hover { border-color: var(--turq); transform: translateY(-2px); box-shadow: var(--shadow); }
.inner .doctiles__ico { flex: none; display: grid; place-items: center; inline-size: 44px; block-size: 44px; border-radius: 12px; background: var(--terra); color: #fff; }
.inner .doctiles__t { flex: 1; }
.inner .doctiles__k { flex: none; font-size: 0.72rem; font-weight: 800; color: var(--muted); text-transform: uppercase; }

/* Callout (contacts) */
.inner .prose .callout { list-style: none; margin: 18px 0; padding: 18px 22px; border-radius: 16px; background: var(--turq-l); border-inline-start: 5px solid var(--turq); }
.inner .prose ul.callout li { margin-block: 4px; }

/* School levels */
.inner .levels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 24px 0; }
.inner .level { border-radius: 18px; overflow: hidden; background: #fff; border: 1px solid var(--sand-b); display: grid; grid-template-rows: 170px auto; }
.inner .level img { inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: 0; }
.inner .level__b { padding: 16px 20px 20px; }
.inner .level__k { font-size: var(--step--1); font-weight: 800; color: var(--terra); letter-spacing: 0.04em; }
.inner .level h3 { margin: 4px 0 6px; color: var(--sea); font-size: var(--step-1); }
.inner .level p { margin: 0; font-size: var(--step--1); line-height: 1.6; }

/* Big statistics */
.inner .stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; margin: 16px 0 22px; }
.inner .bigstat { display: grid; gap: 4px; padding: 22px 24px; border-radius: 18px; color: #fff; background: linear-gradient(135deg, var(--sea), var(--turq)); }
.inner .bigstat:nth-child(2) { background: linear-gradient(135deg, var(--terra), #e0874f); }
.inner .bigstat strong { font: 800 clamp(2.4rem, 5vw, 3.4rem)/1 var(--f-head); }
.inner .bigstat span { font-size: var(--step--1); opacity: 0.95; }
.inner .prose video { inline-size: 100%; border-radius: 16px; background: #000; }

/* Supplies: class cards */
.inner .classgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; margin: 10px 0 8px; }
.inner .classcard { display: grid; gap: 12px; align-content: space-between; padding: 16px; border-radius: 16px; background: var(--sand-m); border: 1px solid var(--sand-b); }
.inner .classcard__t { font: 800 var(--step-1)/1.2 var(--f-head); color: var(--sea); }
.inner .classcard__links { display: flex; flex-wrap: wrap; gap: 6px; }
.inner .prose .classcard__btn { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; background: #fff; border: 1px solid var(--turq); color: var(--sea); font-size: var(--step--1); font-weight: 700; text-decoration: none; }
.inner .prose .classcard__btn::before { content: "↓"; color: var(--terra); }
.inner .prose .classcard__btn:hover { background: var(--sea); border-color: var(--sea); color: #fff; }

/* Councils */
.inner .instgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin: 18px 0; }
.inner .instcard { margin: 0; border-radius: 16px; overflow: hidden; border: 1px solid var(--sand-b); background: var(--sand-m); }
.inner .instcard img { inline-size: 100%; aspect-ratio: 4 / 3; object-fit: contain; background: #fff; border-radius: 0; }
.inner .instcard figcaption { padding: 10px 14px; font-weight: 700; color: var(--sea-d); font-size: var(--step--1); }

/* Class news cards */
.inner .postcards { list-style: none; padding: 0; margin: 10px 0 18px; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px; }
.inner .postcards li { margin: 0; }
.inner .prose .postcards a { display: grid; grid-template-rows: 150px auto; block-size: 100%; border-radius: 16px; overflow: hidden; background: #fff; border: 1px solid var(--sand-b); text-decoration: none; color: var(--sea-d); }
.inner .postcards img { inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: 0; transition: transform 0.35s; }
.inner .postcards a:hover img { transform: scale(1.05); }
.inner .postcards span { padding: 12px 14px; font-weight: 700; line-height: 1.35; }

/* ---- Section pages: photo cards ------------------------------------ */
.inner .kids--photo { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin-block-start: 8px; }
.inner .kids--photo .kids__i a { display: grid; grid-template-rows: 190px auto; padding: 0; gap: 0; overflow: hidden; border: 0; border-radius: 20px; background: #fff; box-shadow: var(--shadow); transition: transform 0.25s, box-shadow 0.25s; }
.inner .kids--photo .kids__i a:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -20px rgba(7, 53, 91, 0.55); }
.inner .kids__img { display: block; overflow: hidden; }
.inner .kids__img img { inline-size: 100%; block-size: 100%; object-fit: cover; transition: transform 0.4s; }
.inner .kids--photo a:hover .kids__img img { transform: scale(1.05); }
.inner .kids__body { position: relative; display: grid; gap: 6px; padding: 30px 22px 22px; }
.inner .kids__ico { position: absolute; inset-block-start: -24px; inset-inline-start: 20px; display: grid; place-items: center; inline-size: 48px; block-size: 48px; border-radius: 14px; background: var(--terra); color: #fff; box-shadow: 0 6px 14px -6px rgba(196, 87, 58, 0.7); }
.inner .kids--photo .kids__i:nth-child(2n) .kids__ico { background: var(--turq); box-shadow: 0 6px 14px -6px rgba(23, 149, 168, 0.7); }
.inner .kids--photo .kids__t { color: var(--sea); font-size: var(--step-1); }
.inner .kids--photo .kids__x { font-size: var(--step--1); }
.inner .kids__more { display: inline-flex; align-items: center; gap: 6px; margin-block-start: 6px; font-weight: 700; font-size: var(--step--1); color: var(--terra); }
[dir="rtl"] .inner .kids__more .ico { transform: scaleX(-1); }
.inner .layout--section .doctiles { margin-block-start: 24px; }

/* ---- News, albums, single ------------------------------------------ */
.inner .newsitem { background: #fff; border-radius: 18px; padding: 16px; box-shadow: var(--shadow); }
.inner .newsitem__img img { border-radius: 12px; }
.inner .newsitem__t a { color: var(--sea); }
.inner .mcard__img { border-radius: 18px; box-shadow: var(--shadow); }
.inner .mcard__title { color: var(--sea); }
.inner .notice-archive { border-radius: 12px; background: var(--sand-m); border-inline-start: 4px solid var(--terra); padding: 10px 14px; }
.inner .wp-block-gallery { gap: 10px !important; }

/* Contact page */
.inner .layout--contact { padding-block: clamp(28px, 4vw, 48px) clamp(56px, 7vw, 96px); }
.inner .campus { background: #fff; border-radius: 20px; box-shadow: var(--shadow); border: 0; }
.inner .campus__t { color: var(--sea); }
.inner .hours li { display: flex; gap: 10px; }
.inner .hours li::before { content: ""; flex: none; inline-size: 8px; block-size: 8px; margin-block-start: 0.6em; border-radius: 50%; background: var(--turq); }
.inner .layout--contact > .prose:last-child, .inner .cform { background: #fff; border-radius: 20px; padding: clamp(20px, 3vw, 36px); box-shadow: var(--shadow); }
.inner .mapframe { border: 0; box-shadow: var(--shadow); border-radius: 20px; }

/* ---- Small screens -------------------------------------------------- */
@media (max-width: 760px) {
	.inner .levels { grid-template-columns: 1fr; }
	.inner .feature-img { aspect-ratio: 16 / 9; }
	.inner .phead__t { font-size: clamp(1.8rem, 8vw, 2.4rem); }
}
@media print {
	.inner .phead--photo { color: #000; background: none; padding-block: 0 12px; }
	.inner .phead__img, .inner .phead--photo::before, .inner .phead__wave { display: none; }
	.inner .phead__t { color: #000; }
}
.inner .prose ul.facts { border: 0; background: none; }
