body { --ink:#102a43; --teal:#0d9488; --paper:#f7f9fc; --line:#cedbdc; background:#fff; color:var(--ink); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; font-size:17px; line-height:1.6; }
body h1,body h2,body h3 { color:var(--ink); line-height:1.1; text-wrap:balance; }
body h1,body h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; letter-spacing:-.035em; }
body .wp-block-post-content { overflow-wrap:break-word; }
body .wp-site-blocks>main { margin-block:clamp(2rem,5vw,4.2rem)!important; }
body .wp-block-navigation { font-size:.95rem; font-weight:550; }
body header.wp-block-template-part { border-bottom:1px solid var(--line); background:white; }
body header .alignwide { max-width:1200px!important; }
body .wp-block-site-title a { font-weight:750; letter-spacing:-.05em; }
body .wp-block-site-title a::before { content:""; display:inline-block; width:.7em; height:.85em; margin-right:.35em; background:#08796e; clip-path:polygon(58% 0,100% 0,65% 39%,98% 39%,20% 100%,40% 56%,0 56%); }
.wp-block-navigation .pph-nav-cta>a { background:var(--ink); color:white!important; border-radius:6px; padding:.55em .9em; }
body.home .wp-site-blocks>main { margin:0!important; padding:0!important; max-width:none!important; }
body.home main .wp-block-post-title { display:none; }
body.home main:has(.pph-hero) .wp-block-group:has(>.wp-block-post-title) { padding:0!important; margin:0!important; }
body.home .entry-content:has(.pph-hero) { max-width:none!important; margin:0!important; padding:0!important; }
.pph-band,body.home .entry-content>.pph-band { width:100%; max-width:none!important; margin:0!important; box-sizing:border-box; padding:clamp(2.4rem,5vw,4.8rem) max(5vw,calc((100% - 1200px)/2)); }
.pph-band h2,.pph-guides-title { font-size:clamp(2.1rem,4.6vw,3.5rem); margin:.45rem 0 1.5rem; }
.pph-kicker { color:#08665d; font:700 .73rem/1.4 system-ui; text-transform:uppercase; letter-spacing:.14em; margin:0 0 .85rem; }
.pph-hero { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(1.6rem,5vw,5rem); background:#edf4f1; border-bottom:1px solid var(--line); }
.pph-hero h1 { font-size:clamp(3rem,5.6vw,5.35rem); line-height:1.01; margin:.6rem 0 1rem; }
.pph-hero h1 em { color:#14695e; font-weight:normal; }
.pph-lede { max-width:50ch; line-height:1.55; font-size:clamp(1rem,1.5vw,1.15rem); color:#375063; }
.pph-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1rem 1.5rem; margin-top:1.5rem; }
.pph-button,.pph-link { display:inline-flex; align-items:center; min-height:44px; font-size:.95rem; font-weight:650; }
a.pph-button { padding:.4rem 1.1rem; border-radius:6px; background:#102a43; color:white; text-decoration:none; }
.pph-link { text-underline-offset:.3rem; }
.pph-photo { position:relative; margin:0 0 1rem; }
.pph-photo img { display:block; width:100%; height:auto; aspect-ratio:1.4; object-fit:cover; border-radius:10px; }
.pph-readout { position:relative; background:#102a43; color:#fff; padding:1rem 1.3rem; margin:-2.4rem 1rem 0; border-radius:8px; box-shadow:0 8px 20px #102a431a; }
.pph-readout small { display:block; color:#a5e3d4; font-size:.72rem; letter-spacing:.12em; }
.pph-readout strong { font-size:clamp(1rem,2vw,1.45rem); font-variant-numeric:tabular-nums; }
.pph-tiles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.pph-tile { display:grid; grid-template-columns:auto 1fr auto; gap:.9rem; align-items:center; padding:1.15rem; color:var(--ink); text-decoration:none; border:1px solid var(--line); border-radius:9px; background:white; min-height:75px; box-sizing:border-box; }
.pph-tile:hover { background:#edf7f5; border-color:#0d9488; }
.pph-tile svg { width:25px;height:25px; stroke:#11685f; fill:none; stroke-width:1.6; stroke-linecap:round;stroke-linejoin:round; }
.pph-tile span { color:#14766e; }
.pph-tool { background:var(--paper); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); align-items:start; gap:clamp(1rem,4vw,4rem); }
.pph-tool .hec { margin:0; width:100%; padding:clamp(1rem,2.6vw,2rem); }
.hec .hec__fields {grid-template-columns:repeat(2,minmax(0,1fr));}
.pph-tool .hec__intro {display:none;}
.pph-tool .hec__field {margin-top:0;}
.pph-listing { border-bottom:1px solid var(--line); }
.pph-listing .pph-empty-guides { background:transparent; border:0; padding:0; margin:0; color:#42596b; }
.pph-method { background:#e9f3f0; }
.pph-method p {max-width:66ch;}
.blog .wp-site-blocks main {max-width:1200px!important;width:90%;margin-inline:auto!important;}
.blog main>* {max-width:none!important;}
.blog .pph-card-grid {grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr));}
.pph-foot {background:#102a43;color:#e9f2f1;padding:2.4rem max(5vw,calc((100% - 1200px)/2));}
.pph-foot a {color:white;text-underline-offset:.25rem;}
.pph-foot strong {font-size:1.4rem;}
.pph-foot nav {display:flex;flex-wrap:wrap;gap:.7rem 1.2rem;}
.pph-foot small {display:block;margin-top:1.4rem;color:#c1d0d6;}
body a:focus-visible,body summary:focus-visible {outline:3px solid #b35a13;outline-offset:4px;}
body .wp-block-table {overflow-x:auto;}
@media(max-width:860px){.pph-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}.pph-tool{grid-template-columns:1fr;}.pph-tool .hec{max-width:none;}}
@media(max-width:650px){.pph-hero{grid-template-columns:1fr;}.pph-photo img{aspect-ratio:1.85;}.pph-tiles{grid-template-columns:1fr;}.hec .hec__fields{grid-template-columns:1fr;}.pph-band{padding-inline:5vw;}.pph-hero h1{max-width:14ch;}.blog .wp-block-post-template{grid-template-columns:1fr!important;}}
