/*
Theme Name: PatrolFlow Portal
Theme URI: https://solvenza.ca/
Author: Solvenza
Description: Public site and portal presentation theme for PatrolFlow, a Solvenza security operations software platform.
Version: 3.0.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: patrolflow-portal
*/
:root{--pf-navy:#071821;--pf-navy2:#0e2c35;--pf-green:#39d3ae;--pf-green-dark:#087763;--pf-ink:#13232c;--pf-muted:#667781;--pf-line:#dce5e9;--pf-bg:#f4f7f8;--pf-white:#fff}*{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--pf-ink);background:var(--pf-bg)}a{color:var(--pf-green-dark)}.site-shell{min-height:100vh;display:flex;flex-direction:column}.public-header{position:sticky;top:0;z-index:100;background:rgba(7,24,33,.96);backdrop-filter:blur(14px);color:#fff;border-bottom:1px solid rgba(255,255,255,.08)}.public-header-inner{max-width:1220px;margin:auto;padding:15px 24px;display:flex;align-items:center;justify-content:space-between;gap:22px}.public-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.public-brand-mark{width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,#56e3c1,#0f8f76);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:10px;box-shadow:0 9px 24px rgba(57,211,174,.2)}.public-brand-mark i{display:block;width:5px;border-radius:99px;background:#06241d;transform:skew(-18deg)}.public-brand-mark i:nth-child(1){height:11px}.public-brand-mark i:nth-child(2){height:20px}.public-brand-mark i:nth-child(3){height:29px}.public-brand strong,.public-brand small{display:block}.public-brand strong{font-size:17px}.public-brand small{font-size:11px;color:#a7bac2;margin-top:2px}.public-nav{display:flex;align-items:center;gap:19px}.public-nav a{color:#cbd8dd;text-decoration:none;font-size:13px;font-weight:700}.public-nav a:hover{color:#fff}.public-nav .button{background:#fff;color:var(--pf-navy);padding:10px 14px;border-radius:10px}.public-main{flex:1}.hero{background:radial-gradient(circle at 86% 5%,#1b5e65 0,#0c3039 25%,var(--pf-navy) 65%);color:#fff;padding:94px 24px 105px}.hero-inner,.section-inner{width:min(1160px,100%);margin:auto}.hero-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:center;gap:72px}.kicker,.section-kicker{font-size:12px;font-weight:850;letter-spacing:.13em;color:var(--pf-green)}.hero h1{font-size:clamp(48px,7.4vw,86px);line-height:.98;letter-spacing:-.04em;margin:16px 0 24px;max-width:800px}.hero-copy>p:not(.kicker){font-size:19px;line-height:1.65;color:#c2d3da;max-width:760px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}.hero-actions a{padding:13px 17px;border-radius:11px;text-decoration:none;font-weight:800}.hero-actions .primary{background:var(--pf-green);color:#05231d}.hero-actions .secondary{border:1px solid #58737e;color:#fff}.hero-proof{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.hero-proof span{padding:7px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#adc2ca;font-size:11px}.hero-flow{display:grid;gap:12px}.flow-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:17px;padding:20px;box-shadow:0 18px 50px rgba(0,0,0,.16)}.flow-card.active{background:rgba(57,211,174,.12);border-color:rgba(57,211,174,.42)}.flow-card small,.flow-card strong,.flow-card span{display:block}.flow-card small{color:#8fa8b2;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.flow-card strong{font-size:21px;margin:7px 0}.flow-card span{color:#c2d3da;font-size:13px}.flow-line{height:22px;width:2px;margin:-5px auto;background:linear-gradient(var(--pf-green),transparent)}.public-section{padding:82px 24px}.public-section.alt{background:#fff}.public-section h2{font-size:clamp(34px,5vw,55px);line-height:1.08;letter-spacing:-.035em;max-width:850px;margin:12px 0 30px}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.workflow-grid article,.feature-card{border:1px solid var(--pf-line);border-radius:17px;padding:23px;background:#fff}.workflow-grid b{color:var(--pf-green-dark);font-size:13px}.workflow-grid h3,.feature-card h3{margin:22px 0 8px;font-size:19px}.workflow-grid p,.feature-card p{color:var(--pf-muted);line-height:1.65;margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-card{background:linear-gradient(145deg,#fff,#f8fbfb)}.responsibility{background:var(--pf-navy);color:#fff}.responsibility-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.responsibility h2{margin-bottom:14px}.responsibility p{color:#bed0d7;line-height:1.65;max-width:780px}.responsibility a{white-space:nowrap;background:var(--pf-green);color:#05231d;text-decoration:none;padding:14px 18px;border-radius:11px;font-weight:850}.public-footer{background:#040e14;color:#8ea3ad;padding:34px 24px}.public-footer-inner{width:min(1160px,100%);margin:auto;display:grid;grid-template-columns:.65fr 1.5fr auto;align-items:start;gap:28px;font-size:12px;line-height:1.6}.public-footer strong,.public-footer span{display:block}.public-footer strong{color:#fff;font-size:17px}.public-footer p{margin:0}.public-footer a{color:#c8d6dc;text-decoration:none;margin-left:15px}.content-shell{max-width:920px;margin:50px auto;background:#fff;padding:34px;border-radius:18px}.portal-page .public-header,.portal-page .public-footer{display:none}.portal-page .public-main{min-height:100vh}.portal-diagnostic{max-width:760px;margin:70px auto;background:#fff;border:1px solid #dce4e9;border-radius:18px;padding:32px;box-shadow:0 12px 36px rgba(19,33,43,.08)}.portal-diagnostic h1{margin-top:0}.portal-diagnostic p{line-height:1.65;color:#5e6d77}.portal-diagnostic-button{display:inline-block;background:#0d6b5c;color:#fff!important;text-decoration:none;padding:12px 17px;border-radius:10px;font-weight:800}.patrolflow-portal-fallback{min-height:70vh}
@media(max-width:940px){.public-nav a:not(.button){display:none}.hero-inner{grid-template-columns:1fr;gap:50px}.hero-flow{grid-template-columns:repeat(3,1fr);align-items:center}.flow-line{width:22px;height:2px;margin:auto;background:linear-gradient(90deg,var(--pf-green),transparent)}.workflow-grid{grid-template-columns:repeat(2,1fr)}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.public-header-inner{padding:13px 17px}.public-nav{gap:10px}.public-nav a{display:none}.public-nav .button{display:block}.hero{padding:68px 18px 76px}.hero h1{font-size:50px}.hero-copy>p:not(.kicker){font-size:16px}.hero-actions a{width:100%;text-align:center}.hero-flow{grid-template-columns:1fr}.flow-line{width:2px;height:18px;background:linear-gradient(var(--pf-green),transparent)}.public-section{padding:60px 18px}.workflow-grid,.feature-grid{grid-template-columns:1fr}.responsibility-inner{display:block}.responsibility a{display:inline-block;margin-top:18px;white-space:normal}.public-footer-inner{grid-template-columns:1fr}.public-footer a{margin:0 14px 0 0}}
