/* PSYORA V1 — responsive design system */
:root{--cream:#f3eee6;--paper:#fbf8f2;--ink:#292722;--muted:#716d64;--green:#263e2d;--sage:#a9b69d;--sage-light:#e0e7da;--terracotta:#ad512d;--peach:#f1c2a4;--sand:#e5d8c8;--line:rgba(41,39,34,.15);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--max:1190px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.wrap{width:min(var(--max),90%);margin-inline:auto}.topline{background:var(--green);color:#f6efe5;text-align:center;padding:7px 12px;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.topline span{color:var(--peach);padding:0 9px}.site-header{height:96px;padding:0 max(5%,calc((100% - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(251,248,242,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;flex:0 0 auto;min-width:0;line-height:0}.brand .header-logo{display:block;width:auto;height:82px;max-width:190px;object-fit:contain;object-position:left center}.main-nav{display:flex;align-items:center;gap:25px;font-size:11px}.main-nav>a:not(.nav-cta):hover{color:var(--terracotta)}.nav-cta{background:var(--green);color:#fff;padding:12px 17px;border-radius:30px}.nav-cta span{padding-left:8px}.menu-toggle{display:none;border:0;background:none;padding:8px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px}.hero{min-height:610px;display:grid;grid-template-columns:1fr .92fr;gap:5%;align-items:center;padding-top:65px;padding-bottom:65px}.eyebrow,.section-label{font-size:9px;letter-spacing:.2em;font-weight:700;color:var(--terracotta)}.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow span{height:1px;width:25px;background:var(--terracotta)}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.035em;line-height:1.08}h1{font-size:clamp(48px,6vw,78px);margin:22px 0;max-width:630px}h2{font-size:clamp(37px,4.4vw,57px);margin:16px 0}h1 em,h2 em{font-weight:500;color:var(--terracotta)}.hero-lead,.lead{font-size:15px;line-height:1.85;color:var(--muted);max-width:500px}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid transparent;border-radius:28px;font-size:11px;font-weight:700;cursor:pointer;transition:.2s}.button-primary{background:var(--terracotta);color:white}.button-primary:hover{background:#843d23}.button-primary b{padding-left:12px}.button-outline{border-color:var(--ink);background:transparent}.button-outline:hover{background:var(--ink);color:white}.button-light{background:var(--peach);color:var(--ink)}.button-disabled{background:#d8d4cc;color:#777;cursor:not-allowed}.button-full{width:100%}.hero-meta{display:flex;align-items:center;gap:17px;margin-top:39px;font-size:10px;color:var(--muted)}.hero-meta i{height:18px;width:1px;background:var(--line)}.hero-image{height:475px;position:relative;overflow:hidden;border-radius:48% 48% 8px 8px;background:var(--sage-light)}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image-note{position:absolute;bottom:18px;right:18px;background:rgba(251,248,242,.88);padding:9px 13px;font-size:8px;letter-spacing:.17em}.belief-strip{background:#e9e4da}.belief-items{display:flex;justify-content:center;gap:clamp(20px,6vw,90px);padding:19px 0;font-family:var(--serif);font-size:16px}.belief-items span:first-letter{color:var(--terracotta)}.section-pad{padding:100px 0}.about-section{padding-top:100px;padding-bottom:100px}.two-col{display:grid;grid-template-columns:1fr .85fr;gap:12%;padding-top:25px}.two-col>div{padding-top:12px}.two-col p:not(.lead){font-size:12px;line-height:1.9;color:var(--muted)}.inline-link{display:inline-block;font-size:11px;font-weight:700;border-bottom:1px solid var(--terracotta);padding-bottom:5px}.programmes-section{background:#eeeae2}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:40px}.section-heading>p{max-width:340px;color:var(--muted);font-size:12px;line-height:1.9;margin-bottom:6px}.programme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.programme-card{min-height:285px;padding:23px;display:flex;flex-direction:column}.programme-card.sage{background:#dfe6d9}.programme-card.peach{background:#f1d9cc}.programme-card.blue{background:#dce5e7}.programme-card.lilac{background:#e6dfeb}.programme-icon{font-size:35px;color:var(--green);margin:12px 0}.programme-card h3{font-family:var(--serif);font-size:22px;line-height:1.2;font-weight:500;margin:0 0 12px}.programme-card p{font-size:10px;color:#625f57;line-height:1.8}.programme-card a{font-size:10px;font-weight:700;margin-top:auto;border-bottom:1px solid rgba(41,39,34,.3);width:max-content;padding-bottom:4px}.events-section{background:var(--paper)}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.event-card{background:white;border:1px solid var(--line);box-shadow:0 8px 25px rgba(40,35,25,.04)}.event-image{height:205px;display:block;position:relative;overflow:hidden;background:#e8e1d6}.event-image img{width:100%;height:100%;object-fit:cover}.event-type{position:absolute;top:13px;left:13px;background:var(--paper);padding:7px 10px;border-radius:20px;font-size:9px}.event-image-fallback{height:100%;display:grid;place-items:center;background:linear-gradient(140deg,#dfe6d9,#f0d7c8);font-family:var(--serif);font-size:35px;letter-spacing:.15em}.event-image-fallback span{color:var(--terracotta)}.event-body{padding:20px}.event-date{font-size:9px;color:var(--terracotta);letter-spacing:.06em}.event-body h3{font-family:var(--serif);font-weight:500;font-size:23px;line-height:1.25;margin:8px 0}.event-body>p:not(.event-date){font-size:11px;color:var(--muted);min-height:45px}.event-foot{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:13px;font-size:9px}.event-foot a{font-weight:700;color:var(--terracotta)}.empty-events{border:1px solid var(--line);padding:28px;display:flex;align-items:center;gap:20px}.empty-events>span{width:54px;height:54px;border-radius:50%;background:var(--sage-light);display:grid;place-items:center;font-size:25px}.empty-events h3{font-family:var(--serif);font-size:22px;font-weight:500;margin:0 0 4px}.empty-events p{font-size:11px;color:var(--muted);margin:0}.empty-events .button{margin-left:auto;white-space:nowrap}.founder-section{background:#e9e2d8;padding:95px 0}.founder-grid{display:grid;grid-template-columns:.82fr 1fr;gap:10%;align-items:center}.founder-photo{height:490px;position:relative;max-width:410px;background:#d9d0c3;overflow:hidden;border-radius:48% 48% 6px 6px}.founder-photo img{width:100%;height:100%;object-fit:cover}.founder-photo>span{position:absolute;bottom:16px;left:16px;background:rgba(251,248,242,.9);padding:8px 11px;font-size:8px;letter-spacing:.15em}.founder-copy h2{font-size:clamp(36px,4vw,52px);margin:16px 0 0}.founder-role{font-family:var(--serif);font-size:22px;color:var(--terracotta);margin-bottom:20px}.founder-copy p:not(.eyebrow){font-size:12px;line-height:1.9;color:var(--muted)}.founder-copy .muted-note{font-size:10px!important;font-style:italic}.founder-copy .button{margin-top:12px}.initiative-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.initiative{min-height:245px;padding:20px;display:flex;flex-direction:column;justify-content:end}.initiative>span{font-size:8px;letter-spacing:.13em;margin-bottom:auto}.initiative h3{font-family:var(--serif);font-size:25px;line-height:1.15;font-weight:500;margin:25px 0 8px}.initiative p{font-size:10px;line-height:1.7;margin:0;color:#514d45}.initiative-one{background:linear-gradient(150deg,#d8e0d1,#aebca4)}.initiative-two{background:linear-gradient(150deg,#f1dfd1,#e7c1a9)}.initiative-three{background:linear-gradient(150deg,#d9e2e2,#a8bdbd)}.initiative-four{background:linear-gradient(150deg,#f4e0d2,#e6c2ae)}.organisation-section{background:#e9e4da;padding:95px 0}.organisation-inner{display:grid;grid-template-columns:.9fr 1fr;gap:9%;align-items:start}.organisation-inner>div>p{font-size:12px;line-height:1.9;color:var(--muted);max-width:480px}.lead-form{background:var(--paper);padding:28px;box-shadow:0 10px 35px rgba(40,35,25,.06)}.lead-form h3{font-family:var(--serif);font-size:25px;font-weight:500;margin:0 0 5px}.lead-form>p{font-size:10px;color:var(--muted);margin-bottom:20px}.lead-form label,.stack-form label,.admin-form label{display:block;font-size:10px;font-weight:700;margin-bottom:13px}.lead-form input,.lead-form select,.lead-form textarea,.stack-form input,.admin-form input,.admin-form select,.admin-form textarea{width:100%;margin-top:6px;border:1px solid #d9d2c8;background:#fff;padding:12px 13px;border-radius:3px;font-size:11px;outline:none}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus,.stack-form input:focus{border-color:var(--sage-dark)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent{display:flex!important;align-items:flex-start;gap:8px;font-weight:400!important;line-height:1.5}.consent input{width:auto;margin:2px 0 0}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}.closing-cta{background:var(--green);color:#fff;text-align:center;padding:85px 0}.closing-inner h2{font-size:clamp(42px,5vw,64px);color:#fff}.closing-inner>p:not(.section-label){font-size:12px;color:#d8e0d4;margin:20px 0 28px}.closing-inner .section-label{color:var(--peach)}.site-footer{background:#222c24;color:#f4eee6;padding:55px 0 18px}.footer-main{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:35px;padding-bottom:42px}.footer-brand img{width:200px}.footer-main>div:first-child p{max-width:260px;font-family:var(--serif);font-size:17px;line-height:1.5;color:#d3d7cf;margin-top:18px}.footer-links{display:flex;flex-direction:column;gap:11px;font-size:10px;color:#d5d8d1}.footer-links strong{font-size:11px;color:#fff;margin-bottom:5px}.footer-links a:hover{color:var(--peach)}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:16px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;color:#bfc5bc}.flash{width:min(900px,90%);margin:14px auto;padding:12px 16px;font-size:12px;border-radius:4px}.flash-success{background:#e2eddf;color:#315339}.flash-error{background:#f6e2dd;color:#8d3d2c}.page-main{padding-top:55px;padding-bottom:100px;min-height:55vh}.page-hero{padding:35px 0 50px}.page-hero h1{font-size:clamp(44px,6vw,70px)}.page-hero p{color:var(--muted);font-size:14px}.event-grid-page{grid-template-columns:repeat(3,1fr)}.back-link{display:inline-block;font-size:11px;margin-bottom:25px;color:var(--muted)}.event-detail-grid{display:grid;grid-template-columns:1.4fr .7fr;gap:8%;align-items:start}.detail-banner{width:100%;max-height:430px;object-fit:cover;margin-bottom:30px}.event-detail h1{font-size:clamp(38px,5vw,58px)}.event-description{font-size:13px;line-height:1.9;color:var(--muted);white-space:normal}.registration-panel,.form-panel,.success-panel{background:white;border:1px solid var(--line);padding:28px;box-shadow:0 8px 30px rgba(40,35,25,.05)}.registration-panel{position:sticky;top:110px}.registration-panel h2{font-size:35px}.registration-panel p{font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:10px}.tiny-note{font-size:9px;color:#89847b;line-height:1.6;margin-top:18px}.narrow-page{max-width:680px}.form-panel h1,.success-panel h1{font-size:48px}.registration-summary{background:#f1eee8;padding:15px;display:flex;flex-direction:column;gap:5px;font-size:11px;margin:20px 0}.registration-summary span{color:var(--muted)}.stack-form{margin-top:20px}.form-error{background:#f7e3df;color:#8a3729;padding:10px 12px;font-size:11px;margin:10px 0}.success-panel{text-align:center;padding:45px 30px}.success-mark{width:60px;height:60px;border-radius:50%;background:var(--sage-light);color:var(--green);display:grid;place-items:center;font-size:30px;margin:0 auto 20px}.success-panel p{font-size:12px;color:var(--muted)}.success-panel .button{margin-top:20px}.legal-page{max-width:850px}.legal-page h1{font-size:56px;margin-bottom:35px}.legal-page h2{font-size:23px;margin:28px 0 8px}.legal-page p{font-size:12px;color:var(--muted);line-height:1.9}.legal-page a{color:var(--terracotta);text-decoration:underline}
/* Admin */
.admin-body{background:#f3f1ec}.admin-top{height:65px;background:var(--green);color:#fff;padding:0 4%;display:flex;align-items:center;justify-content:space-between;font-size:11px}.admin-top a{color:#fff}.admin-brand{font-family:var(--serif);font-size:22px;letter-spacing:.15em}.admin-brand span{font:9px var(--sans);letter-spacing:.15em;color:var(--peach);margin-left:8px}.admin-layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 65px)}.admin-sidebar{background:#e8e5dd;padding:25px 15px;display:flex;flex-direction:column;gap:5px}.admin-sidebar a{padding:12px 14px;font-size:11px;border-radius:4px}.admin-sidebar a:hover{background:#d8e0d3}.admin-content{padding:35px;min-width:0}.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.admin-page-heading h1{font-size:42px;margin:7px 0}.admin-page-heading p{font-size:11px;color:var(--muted);margin:0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:25px}.stat-card,.admin-panel{background:#fff;border:1px solid var(--line);padding:20px}.stat-card span{display:block;font-size:10px;color:var(--muted)}.stat-card strong{display:block;font-family:var(--serif);font-size:30px;font-weight:500;margin-top:8px}.admin-panel{margin-bottom:18px}.admin-panel h2{font-size:23px;margin:0}.admin-panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.admin-panel-heading a{font-size:10px;color:var(--terracotta)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:10px;min-width:650px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}td small{display:block;color:var(--muted);margin-top:4px}td a{color:var(--terracotta);font-weight:700}.inline-form{display:inline}.link-danger{border:0;background:none;color:#a33c2d;font-size:10px;cursor:pointer;margin-left:8px}.status{display:inline-block;padding:5px 8px;background:#e8e8e2;border-radius:20px;font-size:9px}.status-published,.status-confirmed,.status-converted{background:#dfeadd;color:#31533a}.status-draft,.status-pending,.status-new{background:#f2e8d4;color:#765c2c}.status-closed,.status-cancelled,.status-not_interested{background:#f2dfda;color:#8a4031}.admin-form{max-width:850px}.admin-form .form-row{gap:18px}.admin-form input,.admin-form select,.admin-form textarea{font-size:12px}.admin-form button{margin-top:10px}.inline-status select{padding:6px;font-size:10px;border:1px solid var(--line);background:#fff}.lead-admin-card p{font-size:11px;color:var(--muted)}.compact-form{border-top:1px solid var(--line);padding-top:15px}.admin-login{margin-top:50px}.admin-login h1{font-size:43px}
@media(max-width:950px){.main-nav{gap:14px;font-size:10px}.programme-grid,.initiative-grid{grid-template-columns:repeat(2,1fr)}.footer-main{grid-template-columns:repeat(2,1fr)}.hero{gap:3%}.hero-image{height:410px}.stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.topline{font-size:7px}.site-header{height:76px}.brand .header-logo{height:64px;max-width:160px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:71px;left:0;right:0;background:var(--paper);padding:22px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:17px}.main-nav.is-open{display:flex}.nav-cta{text-align:center}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:45px;gap:35px}.hero h1{font-size:52px}.hero-image{height:350px}.hero-meta{gap:10px;font-size:9px}.belief-items{gap:12px 22px;font-size:12px;justify-content:flex-start}.section-pad,.about-section{padding:70px 0}.two-col,.founder-grid,.organisation-inner,.event-detail-grid{grid-template-columns:1fr;gap:25px}.two-col{padding-top:12px}.section-heading{display:block}.section-heading>p{margin-top:15px}.programme-grid,.initiative-grid,.event-grid,.event-grid-page{grid-template-columns:1fr 1fr;gap:9px}.programme-card{padding:16px;min-height:255px}.programme-card h3{font-size:19px}.event-image{height:145px}.event-body{padding:13px}.event-body h3{font-size:19px}.event-foot{flex-direction:column}.founder-photo{height:390px;width:min(100%,360px);margin:auto}.founder-section,.organisation-section{padding:70px 0}.organisation-inner{gap:30px}.lead-form{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.initiative{min-height:210px;padding:15px}.initiative h3{font-size:21px}.empty-events{flex-wrap:wrap}.empty-events .button{margin-left:74px}.closing-cta{padding:65px 0}.footer-main{grid-template-columns:1fr 1fr;gap:25px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:grid;gap:9px}.event-detail-grid{gap:25px}.registration-panel{position:static}.admin-layout{grid-template-columns:1fr}.admin-sidebar{flex-direction:row;overflow-x:auto;padding:8px}.admin-sidebar a{white-space:nowrap}.admin-content{padding:20px 4%}.admin-page-heading{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr 1fr}.admin-top{padding:0 4%;font-size:9px}.admin-top>div{font-size:9px}}
@media(max-width:390px){.programme-grid,.initiative-grid,.event-grid,.event-grid-page{grid-template-columns:1fr}.hero h1{font-size:46px}.form-panel{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
