/* Public website and CMS enhancement — blue, green and orange Senzimehluko palette. */
html{scroll-behavior:smooth}
body.public-body{min-height:100vh}
.site-head{border-bottom:1px solid var(--border-soft);padding-top:11px;padding-bottom:11px}
.site-head img{height:68px;width:165px;object-fit:contain}
.public-menu-toggle{display:none;border:1px solid var(--border-soft);border-radius:11px;padding:9px 12px;background:var(--surface);color:var(--text-main);font-weight:750;cursor:pointer}
.hero{position:relative;isolation:isolate;min-height:620px;padding-top:92px;padding-bottom:100px}
.hero:before{content:"";position:absolute;z-index:-1;inset:7% -12% 10% -12%;background:radial-gradient(ellipse at 13% 24%,rgba(6,132,177,.10),transparent 43%),radial-gradient(ellipse at 79% 75%,rgba(84,184,69,.14),transparent 42%);pointer-events:none}
.hero h1{font-size:clamp(2.75rem,5.8vw,5.65rem);letter-spacing:-.052em;line-height:1.04;max-width:790px;background:linear-gradient(130deg,#073d59 12%,#0877a6 72%,#2d945b);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="dark"] .hero h1{background:linear-gradient(135deg,#f4fcff 10%,#7fd4ee 68%,#a1e9a4);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-actions .btn{padding:15px 22px;min-height:50px;border-radius:14px}
.hero .eyebrow{font-size:.74rem;color:var(--blue);letter-spacing:.14em}
.hero-visual{min-height:430px;display:flex;align-items:center;justify-content:center;overflow:visible;background:linear-gradient(155deg,rgba(240,252,255,.92),rgba(235,249,238,.86));border:1px solid #dcebf0;box-shadow:0 40px 90px #234f5914}
.hero-visual img.senz-hero-logo{display:block;object-fit:contain;width:min(95%,410px);height:auto;max-height:430px;filter:drop-shadow(0 23px 32px rgba(6,58,70,.12))}
.hero-visual:before{content:"";position:absolute;border-radius:50%;width:240px;height:240px;background:radial-gradient(circle,#59bda82a,transparent 68%);top:-58px;right:-30px;pointer-events:none}
.impact-pill{transition:transform .2s ease,box-shadow .2s ease}
.impact-pill:hover,.feature-card:hover,.story-card:hover{transform:translateY(-3px)}
.impact-pill,.feature-card,.story-card{transition:transform .2s ease,box-shadow .2s ease}
.section{scroll-margin-top:90px}
.section-title h2{font-size:clamp(1.75rem,3.2vw,2.65rem);letter-spacing:-.045em}
.section-more{text-align:center;margin-top:30px}
.public-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.story-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}
.story-card a{display:block;color:inherit}
.story-card a:hover{text-decoration:none}
.story-cover{display:block;width:100%;height:218px;object-fit:cover;background:linear-gradient(135deg,#0b718f,#398d6b)}
.story-placeholder{display:flex;align-items:center;justify-content:center;color:#ffffffee;letter-spacing:.17em;font-size:.8rem;font-weight:800}
.story-copy{padding:23px}
.story-copy h3{font-size:1.2rem;margin:10px 0}
.story-copy p{font-size:.9rem;color:var(--text-soft);line-height:1.65}
.story-more{font-weight:750;font-size:.86rem;color:var(--blue)}
.public-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.gallery-tile{display:block;position:relative;margin:0;overflow:hidden;border-radius:19px;background:var(--surface-2);min-height:220px;box-shadow:var(--shadow)}
.gallery-tile img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .35s}
.gallery-tile:hover img{transform:scale(1.045)}
.gallery-tile span,.gallery-tile figcaption{position:absolute;bottom:0;left:0;right:0;padding:23px 15px 15px;background:linear-gradient(transparent,rgba(3,32,46,.88));color:white;font-weight:700;font-size:.86rem}
.gallery-tile figcaption small{display:block;font-weight:400;margin-top:5px;opacity:.92}
.inside-page{min-height:65vh}
.inside-hero{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:68px max(5%,calc((100vw - 1160px)/2));background:linear-gradient(120deg,#073e57,#086c90 68%,#298b68);color:white;overflow:hidden}
.inside-hero .inside-hero-inner{max-width:750px}
.inside-hero .eyebrow{color:#b8efd5}
.inside-hero h1{font-size:clamp(2.35rem,5vw,4.25rem);line-height:1.07;margin:13px 0 15px;letter-spacing:-.05em}
.inside-hero p{font-size:1.05rem;color:#e1f4ff;max-width:680px}
.inside-hero img{height:200px;width:210px;object-fit:contain;background:rgba(255,255,255,.94);padding:13px;border-radius:25px;flex-shrink:0}
.back-home{display:inline-block;color:#effaff;margin-top:14px;font-size:.87rem;font-weight:700}
.inside-content{padding-top:60px;padding-bottom:100px}
.inside-content .mission-panel h2{font-size:1.7rem;margin:12px 0}
.inside-content .mission-panel h3{margin-top:24px}
.gallery-full{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery-full .gallery-tile{min-height:280px}
.longform-article{max-width:850px;margin:auto;background:var(--surface);border:1px solid var(--border-soft);border-radius:24px;padding:36px;box-shadow:var(--shadow)}
.article-photo{width:100%;max-height:480px;object-fit:cover;border-radius:16px;margin:15px 0 28px}
.article-body{font-size:1rem;line-height:1.9;overflow-wrap:anywhere;white-space:normal;margin-bottom:28px;color:var(--text-main)}
/* Dashboard's content management and account picture forms */
.avatar{overflow:hidden;flex-shrink:0}.avatar-img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.profile-box{display:flex;align-items:center;gap:24px;margin-bottom:22px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:20px;padding:19px}
.profile-box h3{font-size:1.2rem}
.profile-box p{font-size:.82rem;color:var(--text-soft)}
.profile-preview,.profile-placeholder{width:100px;height:100px;flex-shrink:0;border-radius:50%;object-fit:cover;border:4px solid var(--surface);box-shadow:0 8px 25px #123a481a}
.profile-placeholder{display:grid;place-items:center;background:linear-gradient(145deg,#0882ae,#6abf55);color:white;font-weight:800;font-size:2.7rem}
.admin-photo-preview{width:150px;max-height:165px;object-fit:cover;display:block;border-radius:13px;margin:12px 0}
.avatar-preview{aspect-ratio:1;border-radius:50%;width:96px;height:96px}
.checkline{display:flex;align-items:center;gap:9px;margin:7px 0;font-size:.85rem}
.checkline input[type=checkbox]{width:17px;height:17px;accent-color:var(--blue)}
.site-admin-links{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:22px}
.details-block summary{cursor:pointer;line-height:1.6}
.details-block[open]>form.stack{margin-top:15px}
.details-block[open]>.inline-form{margin-top:12px}
@media(max-width:1120px){.site-head nav{gap:12px;font-size:.82rem}.site-head img{width:125px}.hero{gap:25px}.public-gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.hero{grid-template-columns:1fr;gap:28px;min-height:auto;padding:60px 5%}.hero-visual{max-width:600px;margin:auto;width:100%;min-height:320px}.hero-visual img.senz-hero-logo{max-height:300px;width:min(70%,300px)}.public-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inside-hero{padding:45px 5%}.inside-hero img{height:140px;width:140px}.inside-hero h1{font-size:clamp(2.1rem,5vw,3.1rem)}}
@media(max-width:790px){.site-head{padding:11px 5%;gap:8px}.site-head .public-menu-toggle{display:block;margin-left:auto}.site-head nav{display:none;position:absolute;z-index:10;top:100%;left:0;right:0;background:var(--surface);padding:18px 5% 22px;box-shadow:0 18px 35px #123b4f2b;border-top:1px solid var(--border-soft);flex-direction:column;align-items:stretch;gap:8px}.site-head nav.open{display:flex}.site-head nav a{padding:9px 0}.site-head nav .theme-toggle{align-self:flex-start}.site-head nav a[href*="#about"],.site-head nav a[href*="#team"],.site-head nav a[href*="#contact"],.site-head nav a[href*="login.php"]{display:block!important}.site-head img{width:140px;height:58px}}
@media(max-width:600px){.public-card-grid{grid-template-columns:1fr}.public-gallery-grid,.gallery-full{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-tile,.gallery-full .gallery-tile{min-height:190px}.hero h1{font-size:clamp(2.6rem,10vw,4rem)}.impact-strip{grid-template-columns:1fr}.inside-hero img{display:none}.longform-article{padding:22px}.profile-box{flex-direction:column;text-align:center}.inside-content{padding-top:38px}.site-head nav{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.gallery-tile img,.story-card,.feature-card,.impact-pill{transition:none!important}}
