/* Noah's Ark School theme: colours, fonts and sizes come from the Customizer (CSS variables). */
:root{--na-primary:#7D2C13;--na-accent:#FF6A00;--na-cream:#FFF8F0;--na-dark:#2B1208;--na-text:#3A2A22;--na-container:1180px;--na-radius:18px;--na-font-head:'Nunito','Trebuchet MS',system-ui,sans-serif;--na-font-body:'Nunito','Segoe UI',system-ui,sans-serif;--na-overlay:.55;--na-line:rgba(125,44,19,.14);--na-shadow:0 10px 30px rgba(125,44,19,.12)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--na-font-body);color:var(--na-text);background:#fff;line-height:1.7;font-size:17px}
img{max-width:100%;height:auto;display:block}
a{color:var(--na-primary);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--na-accent)}
h1,h2,h3,h4{font-family:var(--na-font-head);color:var(--na-primary);line-height:1.2;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.5vw,3.2rem)}h2{font-size:clamp(1.6rem,3vw,2.3rem)}h3{font-size:1.2rem}
p{margin:0 0 1em}
ul{padding-left:1.2em}
.na-container{width:min(100% - 2.5rem,var(--na-container));margin-inline:auto}
.screen-reader-text,.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.6rem 1rem;z-index:999;border-radius:8px}
:focus-visible{outline:3px solid var(--na-accent);outline-offset:2px}
.na-center{text-align:center}
.hide-sm{display:none}

/* Buttons */
.na-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;padding:.7em 1.4em;border-radius:999px;font-weight:800;text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:var(--na-font-body);font-size:1rem;line-height:1.2;transition:transform .15s,box-shadow .15s,background .15s}
.na-btn:hover{transform:translateY(-2px);box-shadow:var(--na-shadow)}
.na-btn-lg{padding:.9em 1.8em;font-size:1.05rem}
.na-btn-primary{background:var(--na-primary);color:#fff}.na-btn-primary:hover{background:var(--na-dark);color:#fff}
.na-btn-accent{background:var(--na-accent);color:#fff}.na-btn-accent:hover{background:var(--na-primary);color:#fff}
.na-btn-light{background:#fff;color:var(--na-primary)}.na-btn-light:hover{background:var(--na-cream);color:var(--na-primary)}
.na-btn-ghost{border-color:var(--na-primary);color:var(--na-primary);background:transparent}.na-btn-ghost:hover{background:var(--na-primary);color:#fff}

/* Notices, top bar */
.na-notice{background:#b00020;color:#fff;text-align:center;padding:.5rem 0;font-weight:700}
.na-topbar{background:var(--na-dark);color:#f3e5dc;font-size:.88rem}
.na-topbar a{color:#f3e5dc;text-decoration:none}.na-topbar a:hover{color:var(--na-accent)}
.na-topbar-in{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:.45rem;flex-wrap:wrap}
.na-topbar ul,.na-social{list-style:none;margin:0;padding:0;display:flex;gap:1rem;flex-wrap:wrap}
.na-admit{background:var(--na-accent);color:#fff;text-align:center;font-weight:700;padding:.5rem 0;font-size:.95rem}
.na-admit a{color:#fff;margin-left:.5rem;text-decoration:underline}

/* Header */
.na-header{background:#fff;border-bottom:1px solid var(--na-line);z-index:50}
.na-sticky .na-header{position:sticky;top:0;box-shadow:0 2px 14px rgba(0,0,0,.05)}
.admin-bar.na-sticky .na-header{top:32px}
.na-header-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.6rem}
.na-brand img,.na-brand .custom-logo{width:auto;max-height:62px}
.na-burger{display:inline-flex;flex-direction:column;gap:5px;background:none;border:0;padding:.6rem;cursor:pointer}
.na-burger span{width:26px;height:3px;background:var(--na-primary);border-radius:3px;transition:.2s}
.na-burger[aria-expanded=true] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.na-burger[aria-expanded=true] span:nth-child(2){opacity:0}
.na-burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.na-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:1rem 1.25rem 1.5rem;border-bottom:1px solid var(--na-line);box-shadow:var(--na-shadow)}
.na-nav.is-open{display:block}
.na-header{position:relative}.na-sticky .na-header{position:sticky}
.na-menu,.na-menu ul{list-style:none;margin:0;padding:0}
.na-menu a{display:block;padding:.6rem .2rem;text-decoration:none;color:var(--na-primary);font-weight:800}
.na-menu a:hover,.na-menu .current-menu-item>a,.na-menu .current_page_item>a{color:var(--na-accent)}
.na-menu .sub-menu{padding-left:1rem}
.na-nav-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}

/* Hero */
.na-hero{position:relative;color:#fff;background:linear-gradient(135deg,var(--na-primary),var(--na-dark));background-size:cover;background-position:center;padding:4.5rem 0 7rem;overflow:hidden;isolation:isolate}
.na-hero.has-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--na-primary),var(--na-dark));opacity:var(--na-overlay);z-index:-1}
.na-hero h1{color:#fff;font-weight:900}
.na-hero-in{display:grid;gap:2rem;align-items:center}
.na-hero p{font-size:1.15rem;max-width:36rem;opacity:.95}
.na-pill{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);padding:.3em 1em;border-radius:999px;font-weight:800;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem}
.na-hero-btns{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}
.na-hero-emblem{display:none;justify-self:center}
.na-hero-emblem img{width:min(320px,100%);filter:drop-shadow(0 12px 30px rgba(0,0,0,.35))}
.na-hero-shapes i{position:absolute;border-radius:50%;background:rgba(255,106,0,.18);z-index:-1}
.na-hero-shapes i:nth-child(1){width:380px;height:380px;right:-90px;top:-120px}
.na-hero-shapes i:nth-child(2){width:180px;height:180px;left:6%;bottom:60px;background:rgba(255,255,255,.07)}
.na-hero-shapes i:nth-child(3){width:90px;height:90px;left:44%;top:30px;background:rgba(255,255,255,.1)}
.na-wave{position:absolute;left:0;bottom:-1px;width:100%;height:60px;color:#fff}

/* Sections */
.na-section{padding:4.5rem 0}
.na-section-soft{background:var(--na-cream)}
.na-sec-head{margin-bottom:2.2rem}.na-sec-head.is-center{text-align:center;max-width:46rem;margin-inline:auto}
.na-kicker{display:inline-block;color:var(--na-accent);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem;margin-bottom:.4rem}
.na-grid{display:grid;gap:1.4rem}
.na-split{display:grid;gap:2.5rem;align-items:center}
.na-photo-ph{background:var(--na-cream);border:2px dashed var(--na-line);border-radius:var(--na-radius);aspect-ratio:4/3;display:grid;place-content:center;justify-items:center;gap:.6rem;text-align:center;padding:1rem;color:#8a6a5a}
.na-split-media img{border-radius:var(--na-radius);box-shadow:var(--na-shadow);width:100%}

/* Cards */
.na-card{background:#fff;border:1px solid var(--na-line);border-radius:var(--na-radius);overflow:hidden;box-shadow:0 4px 14px rgba(125,44,19,.06);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.na-card:hover{transform:translateY(-4px);box-shadow:var(--na-shadow)}
.na-card h3 a{text-decoration:none}
.na-card-body{padding:1.2rem 1.3rem 1.4rem}
.na-card-body time{font-size:.82rem;color:#8a6a5a;font-weight:700}
.na-thumb{display:block;aspect-ratio:16/10;background:var(--na-cream);overflow:hidden}.na-thumb-sq{aspect-ratio:1}
.na-thumb img{width:100%;height:100%;object-fit:cover}
.na-thumb-ph{display:grid;place-items:center;width:100%;height:100%}.na-thumb-ph img{width:90px;height:auto;opacity:.5;object-fit:contain}
.na-prog{padding:1.6rem;text-align:left}
.na-prog-icon{width:58px;height:58px;border-radius:16px;background:var(--na-cream);display:grid;place-items:center;font-size:1.8rem;margin-bottom:.8rem}
.na-tag{display:inline-block;background:var(--na-cream);color:var(--na-primary);font-weight:800;font-size:.78rem;padding:.2em .8em;border-radius:999px;margin-bottom:.6rem}
.na-more{font-weight:800;text-decoration:none;margin-top:auto}
.na-feature{text-align:center;padding:1rem}
.na-feature-icon{width:72px;height:72px;border-radius:50%;background:var(--na-cream);display:grid;place-items:center;font-size:2rem;margin:0 auto 1rem;border:2px solid var(--na-line)}

/* Stats */
.na-stats{background:var(--na-primary);color:#fff;padding:2.6rem 0}
.na-stat{text-align:center}.na-stat strong{display:block;font-family:var(--na-font-head);font-size:clamp(2rem,4vw,3rem);font-weight:900;color:#fff;line-height:1}
.na-stat span{opacity:.85;font-weight:700}
.na-grid-4.na-grid{grid-template-columns:repeat(2,1fr)}

/* Events */
.na-events{list-style:none;margin:0 auto 2rem;padding:0;display:grid;gap:1rem;max-width:820px}
.na-event{display:flex;gap:1.1rem;align-items:center;background:#fff;border:1px solid var(--na-line);border-radius:var(--na-radius);padding:1rem 1.2rem;box-shadow:0 4px 14px rgba(125,44,19,.05)}
.na-event h3{margin:0 0 .2rem}.na-event h3 a{text-decoration:none}.na-event p{margin:0;color:#8a6a5a;font-size:.95rem}
.na-date{flex:0 0 64px;text-align:center;background:var(--na-primary);color:#fff;border-radius:14px;padding:.45rem 0;line-height:1.1}
.na-date b{display:block;font-size:1.5rem}.na-date span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}

/* Testimonials */
.na-quote{margin:0;background:#fff;border-radius:var(--na-radius);padding:1.6rem;border:1px solid var(--na-line);position:relative}
.na-quote::before{content:"“";position:absolute;top:-.1em;left:.5rem;font-size:5rem;color:var(--na-accent);opacity:.35;font-family:Georgia,serif;line-height:1}
.na-quote blockquote{margin:0 0 1rem;font-style:italic;position:relative}
.na-quote figcaption strong{display:block;color:var(--na-primary)}.na-quote figcaption span{font-size:.88rem;color:#8a6a5a}

/* CTA */
.na-cta{background:linear-gradient(120deg,var(--na-accent),#ff8a3d);color:#fff;padding:3.5rem 0}
.na-cta h2{color:#fff}.na-cta p{margin:0;font-size:1.1rem}
.na-cta-in{display:grid;gap:1.5rem;align-items:center}
.na-cta-btns{display:flex;gap:.8rem;flex-wrap:wrap}
.na-cta .na-btn-accent{background:var(--na-primary)}.na-cta .na-btn-accent:hover{background:var(--na-dark)}

/* Inner pages */
.na-banner{background:linear-gradient(135deg,var(--na-primary),var(--na-dark));color:#fff;padding:3rem 0 2.6rem}
.na-banner h1{color:#fff;margin:.3rem 0 0}.na-banner p{margin:.6rem 0 0;opacity:.9;max-width:40rem}
.na-crumbs{font-size:.88rem;opacity:.85}.na-crumbs a{color:#fff}
.na-page{padding:3rem 0 4rem}
.na-layout{display:grid;gap:2.5rem;padding:3rem 0 4rem}
.na-prose{max-width:760px}.na-page .na-prose{max-width:none}
.na-prose h2{margin-top:1.6em}.na-prose img{border-radius:12px}
.na-prose table{width:100%;border-collapse:collapse;margin:1rem 0;display:block;overflow-x:auto}
.na-prose th,.na-prose td{border:1px solid var(--na-line);padding:.6rem .8rem;text-align:left}.na-prose th{background:var(--na-cream);color:var(--na-primary)}
.na-featured{margin-bottom:1.6rem}.na-featured img{border-radius:var(--na-radius);width:100%}
.na-meta{color:#8a6a5a;font-weight:700}
.na-facts{list-style:none;padding:1rem 1.2rem;margin:0 0 1.5rem;background:var(--na-cream);border-radius:14px;display:grid;gap:.3rem}
.na-facts strong{color:var(--na-primary);margin-right:.4rem}
.na-sidebar .widget{background:var(--na-cream);border-radius:var(--na-radius);padding:1.2rem 1.3rem;margin-bottom:1.2rem}
.na-sidebar ul{padding-left:1.1rem;margin:0}
.widget-title{font-size:1.05rem}
.na-search{display:flex;gap:.5rem}.na-search input{flex:1;min-width:0;padding:.7em 1em;border:2px solid var(--na-line);border-radius:999px;font:inherit}
.pagination,.nav-links{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:2rem}
.page-numbers{padding:.45em .9em;border-radius:999px;border:1px solid var(--na-line);text-decoration:none;font-weight:800}
.page-numbers.current{background:var(--na-primary);color:#fff;border-color:var(--na-primary)}

/* Forms (also used by companion plugin) */
.na-form{display:grid;gap:1rem;max-width:760px}
.na-form .row{display:grid;gap:1rem}
.na-form label{font-weight:800;color:var(--na-primary);display:block;margin-bottom:.25rem;font-size:.95rem}
.na-form input[type=text],.na-form input[type=email],.na-form input[type=tel],.na-form input[type=date],.na-form select,.na-form textarea,.na-form input[type=file]{width:100%;padding:.75em 1em;border:2px solid var(--na-line);border-radius:12px;font:inherit;background:#fff;color:var(--na-text)}
.na-form input:focus,.na-form select:focus,.na-form textarea:focus{border-color:var(--na-accent);outline:0}
.na-form .hp{position:absolute;left:-9999px}
.na-alert{padding:1rem 1.2rem;border-radius:12px;font-weight:700;margin-bottom:1rem}
.na-alert.ok{background:#e7f6ec;color:#146c2e}.na-alert.err{background:#fde8e8;color:#a31212}
.na-map iframe{width:100%;height:360px;border:0;border-radius:var(--na-radius)}

/* Footer */
.na-footer{background:var(--na-dark);color:#e8d9cf;margin-top:0}
.na-footer a{color:#e8d9cf}.na-footer a:hover{color:var(--na-accent)}
.na-footer h3,.na-footer .widget-title{color:#fff}
.na-footer-grid{display:grid;gap:2rem;padding:3.5rem 0 2.5rem}
.na-footer-col img{width:120px;margin-bottom:1rem}
.na-footer-menu,.na-footer-contact{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.na-footer .na-social{margin-top:1rem}.na-footer .na-social a{text-decoration:none;border:1px solid rgba(255,255,255,.25);padding:.25em .8em;border-radius:999px;font-size:.85rem}
.na-footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1.1rem 0;font-size:.9rem}
.na-footer-bottom .na-container{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.na-whatsapp{position:fixed;left:1rem;bottom:1rem;background:#25d366;color:#073b1b;font-weight:800;padding:.7em 1.1em;border-radius:999px;text-decoration:none;box-shadow:0 8px 20px rgba(0,0,0,.2);z-index:60}
.na-whatsapp span{display:none}
.na-totop{position:fixed;right:1rem;bottom:1rem;width:46px;height:46px;border-radius:50%;border:0;background:var(--na-primary);color:#fff;font-size:1.3rem;cursor:pointer;box-shadow:var(--na-shadow);z-index:60}

/* Responsive */
@media (min-width:600px){
	.na-grid-3{grid-template-columns:repeat(2,1fr)}
	.na-grid-2{grid-template-columns:repeat(2,1fr)}
	.na-form .row{grid-template-columns:1fr 1fr}
	.na-whatsapp span{display:inline}
	.hide-sm{display:list-item}
}
@media (min-width:900px){
	.na-burger{display:none}
	.na-nav{display:flex;position:static;padding:0;border:0;box-shadow:none;align-items:center;gap:1.4rem;background:transparent}
	.na-menu{display:flex;gap:.2rem}
	.na-menu a{padding:.6rem .7rem;font-size:.95rem}
	.na-menu li{position:relative}
	.na-menu .sub-menu{position:absolute;left:0;top:100%;min-width:220px;background:#fff;border:1px solid var(--na-line);border-radius:14px;padding:.5rem;box-shadow:var(--na-shadow);display:none;z-index:5}
	.na-menu li:hover>.sub-menu,.na-menu li:focus-within>.sub-menu{display:block}
	.na-nav-actions{margin:0}
	.na-hero{padding:6rem 0 8rem}
	.na-hero-in{grid-template-columns:1.3fr .9fr}.na-hero-emblem{display:block}
	.na-split{grid-template-columns:1fr 1fr}
	.na-grid-3{grid-template-columns:repeat(3,1fr)}
	.na-grid-4.na-grid{grid-template-columns:repeat(4,1fr)}
	.na-cta-in{grid-template-columns:1.4fr 1fr}.na-cta-btns{justify-content:flex-end}
	.na-layout{grid-template-columns:minmax(0,1fr) 320px}.na-layout.no-sidebar{grid-template-columns:minmax(0,1fr)}
	.na-footer-grid{grid-template-columns:1.4fr 1fr 1fr 1.3fr}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.na-topbar,.na-header,.na-admit,.na-footer,.na-whatsapp,.na-totop,.na-hero-shapes{display:none!important}body{font-size:12pt}}
