/* POLACY PRESTON — 2026 premium dark editorial refresh. Presentation-only overrides. */
:root{--pp-ink:#0a182d;--pp-navy:#0a1a31;--pp-accent:#ed3151;--pp-soft:#f5f7fb;--pp-radius:18px;--pp-border:#dce5ef;--pp-shadow:0 12px 38px rgba(16,35,61,.09)}
html{scroll-behavior:smooth;scroll-padding-top:18px}*,*::before,*::after{box-sizing:border-box}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
body.portal{background:linear-gradient(180deg,#e6edf7 0,#f4f7fb 580px,#f7f9fc 100%);color:#182b43}
body.portal .pp-masthead{background:#08182e url('pp-city-header.jpg') center 47%/cover no-repeat}
body.portal .pp-masthead-shade{background:linear-gradient(110deg,rgba(5,15,32,.99),rgba(7,25,47,.93) 58%,rgba(9,33,56,.74))}
.pp-masthead-inner{min-height:130px!important;height:auto!important;padding-block:24px!important}
.pp-logo-mark{font-size:24px!important;letter-spacing:-.1em;display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;border-radius:18px;background:linear-gradient(140deg,#fc566e,#c80e39);box-shadow:0 12px 30px rgba(233,40,78,.23)}
.pp-logo strong{font-size:clamp(25px,2.5vw,38px)!important;letter-spacing:-1.3px!important;font-weight:900!important}
.pp-logo small{opacity:.82;letter-spacing:.03em;font-size:12px!important}
.pp-motto{font-size:14px!important;letter-spacing:.01em;opacity:.75;transform:none!important;text-align:right}
.pp-header-actions{gap:8px!important;flex-wrap:wrap}
.pp-header-actions button,.pp-header-actions a,.btn,.resource-button,.pp-approved-rail .rail-ad b,#pp-chat-fab,.pp-user button,.pp-admin-toolbar input,.pp-admin-field select{
 border-radius:12px!important;transition:background .18s ease,transform .18s ease,box-shadow .18s ease,border-color .18s ease!important
}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #51b8ff!important;outline-offset:3px}
button:not(:disabled){cursor:pointer}
.pp-header-actions button:hover,.btn:hover,.resource-button:hover,.pp-user button:hover,#pp-chat-fab:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,25,51,.18)}
.pp-header-actions .pp-join,.btn-primary,.pp-approved-rail .rail-ad b,.pp-red-label,.pp-ad-label{background:linear-gradient(135deg,#ff536d,#da1c43)!important;border-color:#ec3052!important;color:#fff!important}
.pp-nav{background:#0c1f39!important;border-bottom:1px solid #28425f!important}
.pp-nav a{font-size:12px!important;border-right:1px solid rgba(255,255,255,.08)!important;font-weight:720!important;letter-spacing:.005em;transition:background .2s ease,color .2s ease!important}
.pp-nav a.pp-current,.pp-nav a:hover{background:#da294b!important}
.pp-subnav{background:rgba(255,255,255,.93)!important;backdrop-filter:blur(14px);box-shadow:0 6px 18px rgba(9,24,48,.05)}
.pp-subnav a{color:#344861!important}
.pp-home{gap:18px!important;margin-top:22px!important}
.pp-panel,.pp-lead-card,.pp-mini-news,.pp-category-grid a,.pp-approved-rail .rail-item,.rail-ad,.pp-social-card,.pp-member,.service-card,.resource-card,.account-box,.local-grid article{border-radius:var(--pp-radius)!important;box-shadow:var(--pp-shadow)!important;border-color:var(--pp-border)!important;overflow:hidden}
.pp-panel{padding:18px!important}
.pp-panel h2{font-weight:830!important;letter-spacing:-.03em}
.pp-lead-grid{gap:14px!important}
.pp-lead-card,.pp-lead-image{border-radius:19px!important}
.pp-lead-image{min-height:347px!important;background:linear-gradient(0deg,rgba(3,12,27,.96),rgba(5,19,38,.15) 80%),url('pp-city-clean.jpg') center/cover!important}
.pp-lead-copy{bottom:24px!important;left:24px!important;right:24px!important}
.pp-lead-copy h1{font-size:clamp(25px,2.3vw,37px)!important;line-height:1.08!important;letter-spacing:-.045em!important;font-weight:900!important;max-width:680px}
.pp-lead-copy p{font-size:14px!important;line-height:1.6!important;color:#e4edfa!important}
.pp-lead-copy a{display:inline-flex!important;align-items:center;font-size:12px!important;margin-top:16px!important;padding:10px 15px;border-radius:10px;background:#fff;color:#091b34!important;text-shadow:none!important;font-weight:800!important;text-decoration:none!important}
.pp-mini-news{gap:12px!important;padding:11px!important;transition:transform .2s ease,box-shadow .2s ease}
.pp-mini-news:hover,.pp-category-grid a:hover,.pp-approved-rail .rail-item:hover,.service-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(13,32,59,.14)!important}
.pp-mini-emoji{border-radius:12px!important;background:linear-gradient(135deg,#edf3fb,#dce8f6)!important}
.pp-category-grid a{background:#fff;gap:8px!important;min-height:114px}
.pp-community-banner{border-radius:18px!important;min-height:110px}
.pp-approved-rail .rail-item{padding:14px!important;overflow:visible}
.pp-approved-rail .rail-ad{padding:20px!important;background:linear-gradient(145deg,#fff7f9,#ffffff)!important}
.pp-ad-primary,.pp-side-ad,.pp-approved-rail .rail-city{border-radius:18px!important}
.pp-welcome{position:relative;overflow:hidden;isolation:isolate;display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;padding:27px 29px;margin-bottom:16px;border-radius:22px;background:radial-gradient(circle at 90% 2%,rgba(63,145,198,.32),transparent 33%),linear-gradient(135deg,#091a34 0%,#102c51 80%,#17385a);color:#fff;box-shadow:0 18px 45px rgba(5,22,48,.19)}
.pp-welcome::before{content:"";position:absolute;width:250px;height:250px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-80px;top:-110px;pointer-events:none}
.pp-welcome .pp-welcome-text{flex:1;min-width:230px;position:relative;z-index:1}
.pp-welcome small{display:block;color:#ffb5c2;font-size:11px;letter-spacing:.14em;font-weight:900;text-transform:uppercase;margin-bottom:9px}
.pp-welcome h2{color:#fff;font-size:clamp(23px,2.5vw,35px);font-weight:900;line-height:1.12;letter-spacing:-.045em;margin:0 0 11px}
.pp-welcome h2 span{color:#fb7185}
.pp-welcome p{color:#cbd9ea;font-size:13px;line-height:1.6;max-width:590px;margin:0}
.pp-welcome-actions{display:flex;gap:9px;flex-wrap:wrap;z-index:1}
.pp-welcome-actions a{text-decoration:none!important;border:1px solid rgba(255,255,255,.23);border-radius:12px;color:#fff!important;padding:12px 15px;font-weight:800;font-size:12px;background:rgba(255,255,255,.08);transition:transform .2s ease,background .2s ease}
.pp-welcome-actions a:first-child{background:#f43d5f;border-color:#f43d5f}
.pp-welcome-actions a:hover{transform:translateY(-2px);background:#d52f51}
.portal-footer,.resources-footer{background:#0b1b31!important;color:#d5e1ee!important}
.portal-footer .brand-text strong,.resources-footer .brand-text strong{color:#fff!important}
.portal-footer a,.resources-footer a{color:inherit}
.brand-icon{font-size:21px!important;letter-spacing:-.09em!important;background:linear-gradient(135deg,#f94f6c,#cf1d42)!important;color:#fff!important}
.pp-lang-switch{display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid rgba(173,199,228,.4);background:rgba(15,38,66,.65);border-radius:13px;flex-shrink:0;box-shadow:0 4px 16px rgba(0,0,0,.1)}
.pp-lang-switch button{font:800 11px/1.2 Inter,system-ui,sans-serif!important;border:0!important;background:transparent!important;color:#c8d7e7!important;padding:9px 10px!important;border-radius:9px!important;min-width:36px;box-shadow:none!important;transform:none!important}
.pp-lang-switch button[aria-pressed="true"]{background:#fff!important;color:#112b49!important;box-shadow:0 2px 9px rgba(0,0,0,.13)!important}
.site-header .pp-lang-switch,.pp-nav-bar .pp-lang-switch{background:#0b2747}
.pp-mobile-bottom{display:none}
#pp-chat-fab{background:linear-gradient(135deg,#f45270,#cc2147)!important;box-shadow:0 10px 28px rgba(175,27,69,.36)!important}
#pp-chat-box{border-radius:20px!important;box-shadow:0 24px 75px rgba(6,18,40,.32)!important}
#pp-chat-box header{background:linear-gradient(110deg,#091a33,#183b61)!important}
#pp-chat-body{background:#f3f6fc!important}
.pp-chat-bubble.mine{background:#dbe9ff!important}
.pp-chat-person:hover{background:#f0f5ff!important}
body:not(.portal) .resource-hero,body:not(.portal) .pp-social-head{background:radial-gradient(circle at 88% 8%,rgba(39,120,188,.32),transparent 30%),linear-gradient(135deg,#071a33,#1b4365)!important}
body:not(.portal) .resource-hero h1{color:#fff}
body:not(.portal) .site-header{background:#071c35!important}
body:not(.portal) .site-header a.brand{color:#fff!important}
body:not(.portal) .site-header .resource-nav-links a{color:#fff!important}
body:not(.portal) .resource-card,body:not(.portal) .pp-member,body:not(.portal) .pp-social-card{border-radius:17px!important}
@media(max-width:1100px){.pp-welcome{padding:24px}.pp-home{gap:12px!important}.pp-nav a{padding-inline:14px!important}}
@media(max-width:900px){
 body.portal .pp-home{display:flex!important;flex-direction:column!important;gap:13px!important}
 body.portal .pp-home>.pp-center{order:0!important;width:100%!important;min-width:0!important}
 body.portal .pp-home>.pp-left.pp-approved-rail{order:1!important;width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 body.portal .pp-home>.pp-right{order:2!important;width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .pp-home>.pp-left.pp-approved-rail>*{width:auto!important}
 .pp-home>.pp-left.pp-approved-rail .rail-ad{grid-column:1/-1}
 .pp-header-actions .pp-lang-switch{order:-1}
 .pp-masthead-inner{min-height:108px!important}
 .pp-motto{display:none}
}
@media(max-width:650px){
 body{padding-bottom:66px!important}
 body.portal .container{width:calc(100% - 24px)!important}
 .pp-masthead-inner{min-height:100px!important;padding-block:16px!important;gap:7px!important;position:relative}
 .pp-logo{gap:8px!important;max-width:52%}
 .pp-logo-mark{width:39px;height:39px;border-radius:12px;font-size:17px!important;display:grid!important}
 .pp-logo strong{font-size:clamp(16px,4.2vw,23px)!important;letter-spacing:-.7px!important;white-space:normal!important}
 .pp-logo small{font-size:9px!important;line-height:1.3}
 .pp-header-actions{gap:4px!important;justify-content:flex-end;max-width:55%}
 .pp-header-actions button{font-size:10px!important;padding:8px 7px!important}
 .pp-header-actions [data-action="register"]{display:inline-flex}
 .pp-header-actions .pp-lang-switch{position:absolute;right:0;top:-3px;padding:2px}
 .pp-header-actions .pp-lang-switch button{padding:6px 8px!important}
 .pp-header-actions>[data-action="login"],.pp-header-actions>[data-action="portal"]{margin-top:26px}
 .pp-welcome{padding:23px 20px;border-radius:19px;gap:18px}
 .pp-welcome h2{font-size:27px}
 .pp-welcome-actions{width:100%}
 .pp-welcome-actions a{flex:1;text-align:center;white-space:nowrap;font-size:11px}
 .pp-lead-image{min-height:300px!important}
 .pp-lead-copy{left:17px!important;right:17px!important;bottom:20px!important}
 .pp-lead-copy h1{font-size:27px!important}
 .pp-home>.pp-left.pp-approved-rail,.pp-home>.pp-right{grid-template-columns:1fr!important}
 .pp-home{margin-top:12px!important}
 .pp-mobile-bottom{display:flex;position:fixed;z-index:99990;bottom:0;left:0;right:0;min-height:62px;padding:6px max(12px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom));gap:4px;background:rgba(8,26,49,.97);border-top:1px solid rgba(255,255,255,.13);box-shadow:0 -9px 25px rgba(0,0,0,.12);backdrop-filter:blur(12px);justify-content:space-around}
 .pp-mobile-bottom a{color:#cad6e6!important;flex:1;text-align:center;text-decoration:none!important;font:700 10px/1.15 system-ui,sans-serif;padding:4px 2px;border-radius:9px;display:flex;flex-direction:column;justify-content:center;gap:4px}
 .pp-mobile-bottom a span{font-size:19px;line-height:1}
 .pp-mobile-bottom a[aria-current="page"]{color:#fff!important;background:rgba(255,255,255,.13)}
 #pp-chat-root{bottom:78px!important;right:11px!important}
 #pp-chat-box{height:min(68dvh,570px)!important;bottom:61px!important}
 .site-header .pp-lang-switch{margin-left:auto}
 .resource-nav{flex-wrap:wrap!important;gap:10px!important}
 .resource-nav-links{order:2;width:100%;overflow:auto;display:flex!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pp-mini-news,.service-card,.pp-category-grid a,.pp-header-actions button,.pp-welcome-actions a{transition:none!important;transform:none!important}}
