/* Certify: forest green, muted teal, warm gold. Status colours remain semantic. */
:root{--brand-forest:#006633;--brand-teal:#669999;--brand-gold:#e7a658;--brand-ink:#183b32;--brand-canvas:#f4f7f3;--brand-border:#dce5de;--brand-radius:18px;color-scheme:light}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body.certify-site,body:has(.auth-page){font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--brand-ink);background:var(--brand-canvas);line-height:1.6;-webkit-font-smoothing:antialiased}
.certify-site h1,.certify-site h2,.certify-site h3{letter-spacing:-.035em;line-height:1.2}
.certify-site>header{border-radius:0;border-bottom:1px solid var(--brand-border);box-shadow:0 3px 18px #183b3206;background:#fff}
.certify-site>header nav{min-height:84px;padding-top:10px;padding-bottom:10px;gap:18px}
.certify-site>main{padding-top:32px;padding-bottom:36px;min-height:50vh}
.brand-lockup{display:inline-flex;align-items:center;gap:9px;text-align:left;vertical-align:middle;line-height:1;white-space:nowrap}
.brand-symbol{display:block;width:72px;height:58px;object-fit:contain;flex-shrink:0}
.brand-wordmark{font-size:25px;font-weight:800;letter-spacing:-1.1px;color:#006633}

#mobile-menu .brand-symbol{width:54px;height:44px}#mobile-menu .brand-wordmark{font-size:21px}
.admin-brand-label{font-size:11px;padding:5px 10px;margin-left:14px;border-radius:30px;background:#e0eeee;color:#326161;font-weight:600}
.certify-site .bg-gray-50{background-color:var(--brand-canvas)}
.certify-site .text-gray-900{color:var(--brand-ink)}
.certify-site .text-gray-600{color:#53655c}
.certify-site .border-gray-200{border-color:var(--brand-border)}
.certify-site .shadow-md{box-shadow:0 6px 24px #183b3209,0 1px 3px #183b3205}
.certify-site .shadow-lg{box-shadow:0 12px 36px #183b3210}
.certify-site .rounded-xl{border-radius:var(--brand-radius)}
.certify-site .bg-white.shadow-md{border:1px solid #e1e9e3}
.certify-site input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]):not([type=submit]),.certify-site textarea,.certify-site select{border-radius:10px;border-color:#cddbd1;accent-color:#006633}
.certify-site input[type=checkbox],.certify-site input[type=radio]{accent-color:#006633}
a,button,input,textarea,select{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a76a22;outline-offset:4px}
.certify-site table{font-variant-numeric:tabular-nums}
.certify-site thead{background:#edf3ee}
.certify-site>footer{background:#123b2d;color:#d3e3d8;border-top:4px solid #e7a658}
.certify-site>footer h4{font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.certify-site>footer p,.certify-site>footer li{font-size:14px;line-height:1.8}
.footer-brand{display:inline-block;margin-bottom:20px;padding:12px 16px;border-radius:14px;background:#f4f7f3}
.footer-brand .brand-symbol{width:60px;height:48px}.footer-brand .brand-wordmark{font-size:23px}
.certify-site>footer .border-gray-700{border-color:#ffffff26}
.brand-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:48px;padding:64px 58px;margin-bottom:64px;position:relative;overflow:hidden;background:#fff;border:1px solid #dce5de;border-radius:26px;box-shadow:0 12px 36px #183b3205}
.brand-eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:750;color:#326161;display:flex;align-items:center;gap:9px;margin:0 0 24px}
.brand-eyebrow span{width:8px;height:8px;background:#e7a658;border-radius:50%;flex-shrink:0}
.brand-hero h1{font-size:clamp(36px,4.2vw,60px);font-weight:760;letter-spacing:-.055em;line-height:1.06;margin:0 0 24px;color:#123b2d}
.brand-hero h1 em{font-style:normal;color:#407a7a}
.brand-hero-description{max-width:460px;color:#53655c;font-size:16px;line-height:1.85;margin-bottom:28px}
.brand-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.brand-button,.brand-button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 22px;border-radius:10px;font-size:14px;font-weight:650;text-decoration:none;line-height:1.5}
.brand-button{background:#006633;color:#fff;border:1px solid #006633;box-shadow:0 4px 12px #00663312}.brand-button:hover{background:#00552b}
.brand-button-secondary{background:#fff;border:1px solid #cddbd1;color:#183b32}.brand-button-secondary:hover{background:#f0f7f3;border-color:#669999}
.brand-assurances{display:flex;flex-wrap:wrap;gap:20px;margin-top:26px;color:#53655c;font-size:11px;font-weight:500}.brand-assurances i{margin-right:6px;color:#407a7a}
.brand-hero-art{text-align:center;align-self:center}.brand-art-ring{max-width:360px;aspect-ratio:1;margin:auto;display:flex;align-items:center;justify-content:center;background:#f4f7f3;border:1px solid #e0e9e1;border-radius:50%;position:relative}
.brand-art-ring:before{content:"";position:absolute;inset:16px;border:1px solid #e7a65855;border-radius:50%}
.brand-art-ring img{width:94%;height:auto;position:relative}.brand-hero-art>p{font-size:11px;letter-spacing:.03em;color:#62756a;margin:24px 0 0}
.auth-brand .brand-lockup{justify-content:center}.auth-card{box-shadow:0 12px 32px #183b3210!important;border-color:#dce5de!important}.auth-page{background:#f4f7f3}
.checkout-heading{padding-bottom:24px;border-bottom:1px solid var(--brand-border);margin-bottom:24px}.checkout-eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#407a7a;margin-bottom:10px}
.checkout-amount{background:#f0f7f3;border:1px solid #dcece2;padding:20px 24px;border-radius:14px;margin:24px 0}.checkout-amount-label{font-size:12px;font-weight:600;color:#53655c}.checkout-amount-value{font-size:34px;line-height:1.3;font-weight:750;color:#006633;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
@media(max-width:1024px){.brand-hero{gap:24px;padding:44px 34px}.brand-art-ring{max-width:290px}.brand-hero h1{font-size:44px}.brand-wordmark{font-size:23px}.brand-symbol{width:62px;height:50px}}
@media(max-width:767px){.certify-site>header nav{min-height:72px;gap:8px}.brand-hero{grid-template-columns:1fr;padding:34px 24px;gap:32px;margin-bottom:40px;border-radius:20px}.brand-hero h1{font-size:42px}.brand-hero-description{font-size:15px}.brand-hero-art{border-top:1px solid #dce5de;padding-top:28px}.brand-art-ring{max-width:210px}.brand-hero-art>p{margin-top:14px}.brand-symbol{width:54px;height:44px}.brand-wordmark{font-size:22px}.brand-lockup{gap:5px}.certify-site>main{padding-top:22px}.brand-hero-actions{gap:10px}.brand-button,.brand-button-secondary{padding:12px 16px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.certify-site>header.rounded-xl{border-radius:0}
.certify-site a.bg-blue-600,.certify-site button.bg-blue-600,.certify-site a.bg-indigo-600,.certify-site button.bg-indigo-600{border-radius:10px}
.certify-site main>.min-h-screen.bg-gradient-to-br{min-height:620px;background:none;padding:28px 0 48px}
.certify-site main>.min-h-screen.bg-gradient-to-br>.auth-form-container{background:#fff;border:1px solid #dce5de;border-radius:20px;padding:32px;box-shadow:0 12px 36px #183b3208}
@media(max-width:640px){.certify-site main>.min-h-screen.bg-gradient-to-br>.auth-form-container{padding:28px 20px}.certify-site main>.min-h-screen.bg-gradient-to-br{min-height:0;padding:0 0 12px}.brand-benefits{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.brand-benefits>div{padding:22px 14px}.brand-benefits p{font-size:13px}.brand-benefits h3{font-size:16px}}
