@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url(fonts/poppins-latin-400-normal.woff2) format('woff2')}@font-face{font-family:Poppins;font-style:italic;font-weight:400;font-display:swap;src:url(fonts/poppins-latin-400-italic.woff2) format('woff2')}@font-face{font-family:Poppins;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/poppins-latin-600-normal.woff2) format('woff2')}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/poppins-latin-700-normal.woff2) format('woff2')}@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url(fonts/montserrat-latin-600-normal.woff2) format('woff2')}@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url(fonts/montserrat-latin-700-normal.woff2) format('woff2')}@font-face{font-family:Montserrat;font-style:normal;font-weight:800;font-display:swap;src:url(fonts/montserrat-latin-800-normal.woff2) format('woff2')}
:root{--forest:#285349;--seafoam:#89C0BA;--sunset:#FFA365;--ochre:#D4944C;--ink:#212527;--charcoal:#4D4B48;--warm:#FAF9F6;--soft:#E9ECEB;--white:#fff;--error:#B3261E;--r:22px}
*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:Poppins,Arial,sans-serif;background:var(--warm);color:var(--ink);user-select:none}.screen{width:100%;height:100%;min-height:100vh;display:flex;flex-direction:column}.header{height:112px;display:flex;align-items:center;padding:0 4vw;gap:28px;background:rgba(250,249,246,.96);border-bottom:1px solid var(--soft);flex:0 0 auto}.brand{font-family:Montserrat,Arial,sans-serif;font-weight:800;letter-spacing:-1px;color:var(--forest);font-size:30px;cursor:pointer}.brand small{display:block;font-size:12px;letter-spacing:2px;font-weight:700}.spacer{flex:1}.navbtn,.btn{border:0;border-radius:999px;padding:20px 30px;font-weight:700;font-size:22px;min-height:72px;cursor:pointer}.navbtn{background:transparent}.primary{background:var(--sunset);color:var(--ink)}.secondary{background:var(--forest);color:white}.ghost{background:var(--soft);color:var(--ink)}.content{padding:36px 4vw 46px;flex:1;overflow:auto}.eyebrow{font-family:Montserrat,Arial,sans-serif;font-size:17px;font-weight:800;letter-spacing:2.5px;color:var(--forest);text-transform:uppercase}.hero-title,h1,h2,h3{font-family:Montserrat,Arial,sans-serif;margin:.2em 0}.hero-title{font-size:clamp(52px,5vw,86px);line-height:.98;letter-spacing:-2px}.lead{font-size:clamp(22px,1.8vw,30px);line-height:1.45;color:var(--charcoal);max-width:1100px}.attract{position:relative;background:linear-gradient(125deg,#173b34,#285349 55%,#4d7c71);color:white;justify-content:flex-end;padding:7vh 6vw}.attract:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 30%,rgba(137,192,186,.6),transparent 28%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 55%)}.attract>*{position:relative;z-index:1}.touch{margin-top:30px;display:inline-flex;align-items:center;gap:18px;font-size:28px;font-weight:800}.pulse{width:18px;height:18px;border-radius:50%;background:var(--sunset);box-shadow:0 0 0 0 rgba(255,163,101,.7);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 18px rgba(255,163,101,0)}100%{box-shadow:0 0 0 0 rgba(255,163,101,0)}}
.homeintro{display:flex;align-items:end;gap:40px;margin-bottom:26px}.homeintro h1{font-size:48px;line-height:1}.homeintro p{font-size:21px;color:var(--charcoal);max-width:780px;margin:0}.tiles{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,minmax(260px,1fr));gap:22px;min-height:650px}.tile{position:relative;border:0;border-radius:var(--r);overflow:hidden;cursor:pointer;text-align:left;background:var(--forest);min-height:250px;padding:0;box-shadow:0 1px 0 rgba(0,0,0,.05)}.tile .ph{position:absolute;inset:0;background:linear-gradient(135deg,var(--seafoam),var(--forest));transform:scale(1.01)}.tile .shade{position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(21,31,29,.88))}.tilecopy{position:absolute;left:25px;right:25px;bottom:22px;color:#fff}.tilecopy h2{font-size:30px;line-height:1.05;margin:0 0 7px}.tilecopy p{font-size:17px;margin:0;opacity:.9}.tile.cta .ph{background:linear-gradient(135deg,var(--sunset),var(--ochre))}.tile.cta .tilecopy{color:var(--ink)}.tile.cta .shade{display:none}
.topic-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:stretch;min-height:400px}.hero-photo{border-radius:28px;min-height:400px;background:linear-gradient(135deg,var(--seafoam),var(--forest));position:relative;overflow:hidden}.hero-copy{display:flex;flex-direction:column;justify-content:center}.hero-copy h1{font-size:58px;line-height:1.02}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}.card{background:white;border:1px solid var(--soft);border-radius:20px;padding:28px;min-height:170px}.card h3{font-size:25px;margin-top:8px}.card p{font-size:19px;line-height:1.45;color:var(--charcoal)}.quote{background:var(--forest);color:white}.quote p{color:white;font-size:22px}.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.role{background:#fff;border:1px solid var(--soft);border-radius:20px;padding:26px;min-height:160px;cursor:pointer;text-align:left;font:inherit;color:inherit}.role p{font-size:18px;color:var(--charcoal);line-height:1.4}.role h3{font-size:26px}.badge{display:inline-block;background:var(--ochre);color:var(--ink);font-weight:800;border-radius:999px;padding:8px 13px;font-size:13px}.faq{display:grid;grid-template-columns:1fr 1fr;gap:18px}.faqitem{background:#fff;border:1px solid var(--soft);border-radius:18px;padding:24px;cursor:pointer;text-align:left;font:inherit;color:inherit;min-height:96px}.faqitem h3{font-size:23px}.faqitem p{font-size:19px;color:var(--charcoal);line-height:1.45}.formwrap{max-width:1100px;margin:0 auto}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field label{display:block;font-weight:800;font-size:18px;margin:0 0 8px}.field input{width:100%;height:82px;border:2px solid #cfd5d3;border-radius:16px;background:white;padding:0 22px;font-size:25px;outline:none}.field input:focus{border-color:var(--forest)}.formactions{display:flex;justify-content:flex-end;margin-top:28px}.note{background:#eef5f3;border-radius:16px;padding:18px 22px;margin:24px 0;font-size:17px;color:var(--forest)}.thanks{background:var(--forest);color:white;display:flex;align-items:center;justify-content:center;text-align:center}.thanks h1{font-size:70px}.thanks p{font-size:28px;max-width:900px}.modal{position:fixed;inset:0;background:rgba(33,37,39,.72);display:flex;align-items:center;justify-content:center;z-index:99}.hidden{display:none!important}.modal-card{background:white;border-radius:28px;padding:50px;max-width:700px;text-align:center}.modal-card h2{font-size:38px}.admin{background:#f4f5f4}.admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stat{background:white;border-radius:18px;padding:26px;border:1px solid var(--soft)}.stat strong{font-size:38px;color:var(--forest);display:block}.pinpad{display:grid;grid-template-columns:repeat(3,100px);gap:12px;justify-content:center}.pinpad button{height:80px;border:0;border-radius:14px;background:var(--soft);font-size:26px;font-weight:800}.pin-dots{font-size:38px;letter-spacing:12px;height:60px}.statusdot{display:inline-block;width:12px;height:12px;border-radius:50%;background:#38a169;margin-right:8px}.footer-note{font-size:14px;color:#6c7471;margin-top:18px}.back{background:transparent;border:0;font-size:22px;font-weight:800;cursor:pointer}@media(max-width:1100px),(orientation:portrait){.tiles{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.topic-hero{grid-template-columns:1fr}.cards,.roles{grid-template-columns:1fr 1fr}.faq{grid-template-columns:1fr}.formgrid{grid-template-columns:1fr}.header{height:96px}.content{padding:28px}.homeintro{align-items:start;flex-direction:column;gap:8px}}
/* v1.2 additions */
.on-dark{color:#fff}.page-title{font-size:56px;line-height:1.05}
.admin-zone{position:absolute!important;top:0;left:0;width:140px;height:140px;z-index:5}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.field .err{min-height:26px;color:var(--error);font-size:18px;font-weight:600;margin-top:6px}.field input.invalid{border-color:var(--error)}
.warnbar{background:#fff0e3;border:2px solid var(--ochre);color:var(--ink);border-radius:16px;padding:18px 22px;margin:0 0 20px;font-size:19px;font-weight:600}
.row{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.stat{display:flex;flex-direction:column;gap:8px}.stat span{color:var(--charcoal)}.stat strong.small{font-size:24px}
.stat.wide{margin-top:20px}.stat.wide input{height:72px;border:2px solid #cfd5d3;border-radius:14px;padding:0 18px;font:22px Poppins,Arial,sans-serif;max-width:720px}
.cards.two{grid-template-columns:repeat(2,1fr)}.btn:disabled{opacity:.6}
.toast{position:fixed;left:50%;bottom:48px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:18px 28px;border-radius:999px;font-size:20px;font-weight:600;z-index:120;max-width:80vw;text-align:center}
.pinpad button{font-family:inherit}.pinpad button[data-k=Clear],.pinpad button[data-k=Enter]{font-size:18px}
body.previewing:after{content:"PREVIEW: draft content";position:fixed;top:12px;left:50%;transform:translateX(-50%);background:var(--ochre);color:var(--ink);padding:8px 18px;border-radius:999px;font:700 15px Poppins,Arial,sans-serif;z-index:200}
@media(max-width:1100px),(orientation:portrait){.cards.two{grid-template-columns:1fr}.page-title{font-size:44px}}
button,input,textarea{font-family:inherit}.stat>.btn,.stat .row .btn{align-self:flex-start}
