/* The public homepage only; private dashboards and access rules keep their own styles. */
body.public-home-page{background:#020c1d;color:#f4f8ff}
.public-home-page .topbar{position:relative;z-index:10;display:flex;align-items:center;gap:22px;min-height:89px;padding:7px max(22px,calc((100vw - 1060px)/2));border-bottom:1px solid #145379;background:radial-gradient(circle at 55% 0,#07346a 0,#04152c 38%,#020916 82%);box-shadow:0 3px 18px #0009}
.public-home-page .topbar .brand{display:flex;align-items:center;gap:13px;min-width:0;margin-right:auto;text-decoration:none}
.public-home-page .topbar .ph-brand-mark{width:68px;height:68px;flex:none;object-fit:contain;filter:drop-shadow(0 0 6px #02bbec8a)}
.public-home-page .topbar .brand-copy strong{display:block;color:#f8fbff;font-size:1.48rem;line-height:1.05;letter-spacing:-.025em}
.public-home-page .topbar .brand-copy small{display:block;margin-top:2px;color:#00d7f5;font-size:1.18rem;font-weight:900;letter-spacing:.23em;text-transform:uppercase}
.public-home-page .ph-login{display:flex;align-items:center;justify-content:center;gap:10px;min-width:205px;min-height:50px;padding:7px 18px;border:2px solid #00c9ec;border-radius:14px;background:#06192e;color:#f7fbff;font-size:1.15rem;font-weight:750;text-decoration:none;box-shadow:inset 0 0 12px #007ec640,0 0 8px #00cfff40}
.public-home-page .ph-login:hover{background:#0b3154;box-shadow:0 0 15px #00d4fa77}
.public-home-page .ph-login svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.public-home-page .nav-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:59px;height:59px;flex:none;margin:0;border:1px solid #416c8f;border-radius:15px;background:linear-gradient(145deg,#133e5c,#07182e);box-shadow:inset 0 1px #ffffff2b,0 4px 12px #0008}
.public-home-page .nav-toggle span{display:block;width:21px;height:2px;min-height:2px;flex:none;margin:0;border-radius:2px;background:#f4f9ff}
.public-home-page .shell{width:min(100%,1060px);max-width:none;margin:0 auto;padding:0 20px 65px}
.public-home-page .wa-contact{display:none}
.public-home-page .ph-icons{position:absolute;width:0;height:0;overflow:hidden}
.public-home-page .ph-page{display:grid;gap:16px}
.public-home-page .ph-page svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.public-home-page .ph-hero{position:relative;display:flex;align-items:center;min-height:383px;margin:0 -20px;overflow:hidden;background-image:linear-gradient(90deg,#020b1cee 0,#020d1cdb 29%,#020d1c65 55%,#020d1c04 75%),url('public-home-hero-20261101.png');background-repeat:no-repeat;background-position:center,right center;background-size:cover;box-shadow:inset 0 -34px 30px #020c1d}
.public-home-page .ph-hero-copy{position:relative;z-index:1;width:min(53%,500px);padding:18px 0 20px 41px;text-shadow:0 2px 6px #0009}
.public-home-page .ph-eyebrow{margin:0 0 9px;color:#00dcf0;font-size:1rem;font-weight:850;letter-spacing:.095em;text-transform:uppercase}
.public-home-page .ph-hero h1{margin:0;color:#f4f6fb;font-size:clamp(2.35rem,5.4vw,4.1rem);font-weight:850;line-height:.99;letter-spacing:-.045em}
.public-home-page .ph-hero h1 em{color:#00d5ec;font-style:normal}
.public-home-page .ph-lead{max-width:395px;margin:15px 0 20px;color:#f1f4fb;font-size:clamp(.98rem,2.1vw,1.24rem);line-height:1.38}
.public-home-page .ph-hero-actions{display:flex;align-items:center;gap:18px}
.public-home-page .ph-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:53px;padding:9px 21px;border:2px solid #05bdf6;border-radius:13px;color:#fff;font-size:1.05rem;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 5px 15px #0007}
.public-home-page .ph-button svg{width:26px;height:26px}
.public-home-page .ph-button-primary{background:linear-gradient(125deg,#06c8eb,#0664e7)}
.public-home-page .ph-button-secondary{background:#041628}
.public-home-page .ph-button:hover{filter:brightness(1.17);transform:translateY(-1px)}
.public-home-page .ph-lookup,.public-home-page .ph-quick a,.public-home-page .ph-tool-grid a,.public-home-page .ph-service-grid a{border:1px solid #246d9d;background:linear-gradient(145deg,#0a3758,#06182e 52%,#031322);box-shadow:inset 0 1px #75cbff26,0 5px 13px #0007}
.public-home-page .ph-lookup{border-radius:20px;overflow:hidden}
.public-home-page .ph-lookup>summary{display:flex;align-items:center;gap:27px;min-height:104px;padding:15px 25px;cursor:pointer;list-style:none}
.public-home-page .ph-lookup>summary::-webkit-details-marker{display:none}
.public-home-page .ph-lookup>summary>.ph-lookup-icon{width:96px;height:70px;padding-right:26px;border-right:1px solid #2a709c;color:#00d8f7;filter:drop-shadow(0 0 5px #08e6ff8a)}
.public-home-page .ph-lookup>summary span{display:grid;gap:5px;min-width:0}
.public-home-page .ph-lookup>summary strong{color:#f6f8fd;font-size:clamp(1.3rem,3vw,1.85rem);line-height:1.1}
.public-home-page .ph-lookup>summary small{color:#b8c7df;font-size:clamp(.83rem,1.8vw,1.14rem)}
.public-home-page .ph-round-arrow{display:grid;place-items:center;width:45px;height:45px;flex:none;margin-left:auto;border-radius:50%;background:#075079;color:#f5f9ff}
.public-home-page .ph-round-arrow svg{width:27px;height:27px}
.public-home-page .ph-lookup>summary>.ph-round-arrow{width:45px;height:45px}
.public-home-page .ph-lookup[open]>summary>.ph-round-arrow{transform:rotate(90deg)}
.public-home-page .ph-lookup-form{padding:0 25px 22px 146px;border-top:1px solid #194666;color:#b8c7df}
.public-home-page .ph-lookup-form p{margin:14px 0 10px}
.public-home-page .ph-lookup-input{display:flex;gap:9px}
.public-home-page .ph-lookup-input input{min-width:0;flex:1;padding:12px;border:1px solid #3986ae;border-radius:10px;background:#031020;color:#fff;font:inherit;text-transform:uppercase}
.public-home-page .ph-lookup-input button{padding:10px 18px;border:0;border-radius:10px;background:#087fce;color:#fff;font:inherit;font-weight:750;cursor:pointer}
.public-home-page .ph-lookup-form>small{display:block;margin-top:8px}
.public-home-page .ph-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.public-home-page .ph-quick a{position:relative;display:grid;grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto 1fr;gap:6px 12px;min-height:146px;padding:19px 18px;border-radius:18px;color:#f6f9ff;text-decoration:none}
.public-home-page .ph-quick a>svg{width:54px;height:54px;grid-column:1;grid-row:1;color:#00d5f2;filter:drop-shadow(0 0 5px #00d7ec77)}
.public-home-page .ph-quick a>strong{grid-column:2;grid-row:1;align-self:center;font-size:1.18rem;line-height:1.14}
.public-home-page .ph-quick a>small{grid-column:1/-1;grid-row:2;align-self:end;color:#bbcae0;font-size:1rem;line-height:1.3}
.public-home-page .ph-quick a>.ph-round-arrow{position:absolute;right:14px;bottom:16px;width:39px;height:39px}
.public-home-page .ph-quick a:hover,.public-home-page .ph-tool-grid a:hover,.public-home-page .ph-service-grid a:hover{border-color:#0fe5fa;background:linear-gradient(140deg,#105178,#0a2442)}
.public-home-page .ph-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.public-home-page .ph-tool-grid a{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;min-height:72px;padding:10px;border-radius:15px;color:#f7f9fd;text-align:center;text-decoration:none}
.public-home-page .ph-tool-grid svg{width:32px;height:32px;color:#00d8f2;filter:drop-shadow(0 0 5px #00d7fb78)}
.public-home-page .ph-tool-grid svg.ph-purple{color:#d032ec;filter:drop-shadow(0 0 5px #dd3ef18c)}
.public-home-page .ph-tool-grid strong{font-size:.98rem;line-height:1.1}
.public-home-page .ph-services{padding-top:6px}
.public-home-page .ph-services h2{display:flex;align-items:center;gap:15px;margin:0 0 14px 9px;color:#f6f9ff;font-size:1.8rem;line-height:1.2}
.public-home-page .ph-services h2 svg{width:35px;height:35px;color:#00d5ef}
.public-home-page .ph-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.public-home-page .ph-service-grid a{display:grid;place-items:center;align-content:center;gap:6px;min-height:100px;padding:10px;border-radius:16px;color:#f7f9fd;text-align:center;text-decoration:none}
.public-home-page .ph-service-grid svg{width:46px;height:46px;color:#00d8f2;filter:drop-shadow(0 0 5px #00d7fb78)}
.public-home-page .ph-service-grid svg.ph-purple{color:#d032ec;filter:drop-shadow(0 0 5px #dd3ef18c)}
.public-home-page .ph-service-grid strong{font-size:1.07rem;line-height:1.1}
.public-home-page .ph-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px;padding:35px 4px 0;border-top:1px solid #183a5b}
.public-home-page .ph-trust a{display:flex;align-items:flex-start;gap:15px;min-width:0;padding:0 9px;border-right:1px solid #254a69;color:#f5f9ff;text-decoration:none}
.public-home-page .ph-trust a:last-child{border-right:0}
.public-home-page .ph-trust svg{width:47px;height:47px;color:#00d4ef;filter:drop-shadow(0 0 5px #00ccea6e)}
.public-home-page .ph-trust span{display:grid;gap:8px}
.public-home-page .ph-trust strong{font-size:1.03rem;white-space:nowrap}
.public-home-page .ph-trust small{color:#c0cbda;font-size:.92rem;line-height:1.25}
.public-home-page .ph-page a:focus-visible,.public-home-page .ph-lookup>summary:focus-visible,.public-home-page .ph-login:focus-visible{outline:2px solid #67eaff;outline-offset:3px}
@media(max-width:750px){.public-home-page .topbar{padding:7px 17px}.public-home-page .topbar .brand-copy strong{font-size:1.1rem}.public-home-page .topbar .brand-copy small{font-size:.9rem}.public-home-page .topbar .ph-brand-mark{width:58px;height:58px}.public-home-page .ph-login{min-width:0;padding:7px 13px;font-size:.94rem}.public-home-page .ph-hero-copy{width:57%;padding-left:25px}.public-home-page .ph-eyebrow{font-size:.82rem}.public-home-page .ph-hero h1{font-size:clamp(2.05rem,5.2vw,3.1rem)}.public-home-page .ph-quick a{grid-template-columns:44px 1fr;gap:3px 8px;padding:13px 12px}.public-home-page .ph-quick a>svg{width:40px;height:40px}.public-home-page .ph-quick a>strong{font-size:1rem}.public-home-page .ph-quick a>small{font-size:.84rem}.public-home-page .ph-service-grid strong{font-size:.9rem}.public-home-page .ph-trust a{gap:8px;padding:0 4px}.public-home-page .ph-trust svg{width:37px;height:37px}.public-home-page .ph-trust strong{font-size:.83rem}.public-home-page .ph-trust small{font-size:.78rem}}
@media(max-width:540px){
  .public-home-page .topbar{min-height:58px;gap:7px;padding:5px 12px}
  .public-home-page .topbar .ph-brand-mark{width:42px;height:42px}
  .public-home-page .topbar .brand{gap:5px}
  .public-home-page .topbar .brand-copy strong{font-size:.78rem}
  .public-home-page .topbar .brand-copy small{font-size:.63rem}
  .public-home-page .ph-login{min-height:35px;padding:5px 7px;border-width:1px;font-size:.69rem;gap:3px}
  .public-home-page .ph-login svg{width:16px;height:16px}
  .public-home-page .nav-toggle{width:37px;height:37px;border-radius:10px;flex-direction:column;gap:4px}
  .public-home-page .shell{padding:0 10px 32px}
  .public-home-page .ph-page{gap:10px}
  .public-home-page .ph-hero{min-height:258px;margin:0 -10px;background-image:linear-gradient(90deg,#020b1cf0 0,#020b1cb8 43%,#020b1c2b 100%),linear-gradient(0deg,#020b1cab 0,transparent 45%),url('public-home-hero-20261101.png');background-position:center,center,67% center;background-size:cover;box-shadow:inset 0 -14px 14px #020c1d}
  .public-home-page .ph-hero-copy{width:100%;max-width:300px;padding:10px 10px 12px 17px}
  .public-home-page .ph-eyebrow{margin-bottom:5px;font-size:.65rem;letter-spacing:.07em}
  .public-home-page .ph-hero h1{font-size:clamp(1.55rem,7vw,1.85rem);line-height:1.02}
  .public-home-page .ph-lead{max-width:270px;margin:9px 0 11px;font-size:.78rem;line-height:1.25}
  .public-home-page .ph-hero-actions{gap:7px;flex-wrap:nowrap}
  .public-home-page .ph-button{min-height:36px;padding:5px 7px;border-width:1px;border-radius:9px;font-size:.7rem;gap:5px}
  .public-home-page .ph-button svg{width:16px;height:16px}
  .public-home-page .ph-lookup{border-radius:13px}
  .public-home-page .ph-lookup>summary{min-height:69px;gap:9px;padding:7px 10px}
  .public-home-page .ph-lookup>summary>.ph-lookup-icon{width:45px;height:45px;padding-right:9px}
  .public-home-page .ph-lookup>summary strong{font-size:.98rem}
  .public-home-page .ph-lookup>summary small{font-size:.7rem}
  .public-home-page .ph-lookup>summary>.ph-round-arrow{width:29px;height:29px}
  .public-home-page .ph-round-arrow svg{width:17px;height:17px}
  .public-home-page .ph-lookup-form{padding:0 10px 14px}
  .public-home-page .ph-quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .public-home-page .ph-quick a{min-width:0;min-height:96px;grid-template-columns:27px minmax(0,1fr);grid-template-rows:auto 1fr;gap:3px 4px;padding:9px 7px;border-radius:12px}
  .public-home-page .ph-quick a>svg{width:27px;height:27px;grid-column:1;grid-row:1}
  .public-home-page .ph-quick a>strong{grid-column:2;grid-row:1;align-self:center;font-size:.72rem;line-height:1.04;letter-spacing:-.025em}
  .public-home-page .ph-quick a>small{grid-column:1/-1;grid-row:2;align-self:end;padding-right:17px;font-size:.64rem;line-height:1.2}
  .public-home-page .ph-quick a>.ph-round-arrow{right:6px;bottom:8px;width:21px;height:21px}
  .public-home-page .ph-quick a>.ph-round-arrow svg{width:13px;height:13px}
  .public-home-page .ph-tool-grid{gap:7px}
  .public-home-page .ph-tool-grid a{flex-direction:column;gap:4px;min-height:65px;padding:7px 3px;border-radius:12px}
  .public-home-page .ph-tool-grid svg{width:25px;height:25px}
  .public-home-page .ph-tool-grid strong{font-size:.71rem;line-height:1.08}
  .public-home-page .ph-services{padding-top:3px}
  .public-home-page .ph-services h2{gap:8px;margin:0 0 8px 4px;font-size:1.25rem}
  .public-home-page .ph-services h2 svg{width:25px;height:25px}
  .public-home-page .ph-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .public-home-page .ph-service-grid a{min-height:77px;gap:4px;padding:7px 3px;border-radius:12px}
  .public-home-page .ph-service-grid svg{width:30px;height:30px}
  .public-home-page .ph-service-grid strong{font-size:.72rem;line-height:1.08}
  .public-home-page .ph-trust{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:12px;padding:17px 0 0}
  .public-home-page .ph-trust a{gap:5px;padding:0 4px;border-right:1px solid #254a69;border-bottom:0}
  .public-home-page .ph-trust a:last-child{border-right:0}
  .public-home-page .ph-trust svg{width:27px;height:27px}
  .public-home-page .ph-trust span{gap:4px}
  .public-home-page .ph-trust strong{font-size:.66rem;line-height:1.1;white-space:normal}
  .public-home-page .ph-trust small{font-size:.61rem;line-height:1.18}
}
