.ph .ph-phero{background:linear-gradient(180deg,#F3EDE2 0,var(--paper) 100%);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.ph .ph-phero:before{content:"";position:absolute;right:-10%;top:-45%;width:52vw;height:52vw;max-width:720px;max-height:720px;border-radius:50%;background:radial-gradient(circle,rgba(171,77,28,.1),rgba(171,77,28,0) 65%);pointer-events:none}.ph .ph-phero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-gap:clamp(28px,4vw,64px);gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(36px,6vh,72px) clamp(44px,7vh,80px)}.ph .ph-phero-grid.solo{grid-template-columns:minmax(0,1fr)}.ph .ph-phero-grid.solo .ph-phero-copy{max-width:820px}.ph .ph-phero-grid.narrow .ph-phero-copy{max-width:760px}.ph .ph-phero h1{font-weight:800;font-size:clamp(34px,4.6vw,56px);line-height:1.04;margin-top:14px}.ph .ph-phero .ph-lede{font-size:clamp(17px,1.4vw,19px)}.ph .ph-phero .ph-actions{margin-top:28px}.ph .ph-phero-aside{display:grid;justify-items:center}.ph .ph-crumbs{display:flex;flex-wrap:wrap;gap:4px;font:500 13px/1.4 var(--body);color:var(--muted);margin-bottom:22px}.ph .ph-crumbs a{color:var(--muted);text-decoration:none}.ph .ph-crumbs a:hover{color:var(--copper)}.ph .ph-crumbs .sep{margin:0 6px;opacity:.6}.ph .ph-crumbs [aria-current]{color:var(--ink)}.ph .ph-sec-sm{padding-block:clamp(52px,8vh,88px)}.ph .ph-head{max-width:760px}.ph .ph-center h2,.ph .ph-head h2,.ph .ph-split h2{font-weight:800;font-size:clamp(28px,3.2vw,40px);line-height:1.1}.ph .ph-center h2,.ph .ph-head h2{margin-top:12px}.ph .ph-head .ph-lede{margin-top:14px}.ph .ph-cards{margin-top:32px}.ph .ph-cards.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.ph .ph-cards small{font:500 11px/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.ph .ph-sec.alt .ph-mods a{background:var(--paper)}.ph .ph-steps{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;counter-reset:s}.ph .ph-steps.n4{grid-template-columns:repeat(4,minmax(0,1fr))}.ph .ph-steps.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.ph .ph-steps li{background:var(--raised);border:1px solid var(--line);border-radius:18px;padding:22px;display:grid;grid-gap:8px;gap:8px;align-content:start;position:relative}.ph .ph-sec.alt .ph-steps li{background:var(--paper)}.ph .ph-steps-n{font:600 13px/1 var(--mono);color:var(--copper);letter-spacing:.06em;display:flex;align-items:center;gap:10px}.ph .ph-steps-n:after{content:"";flex:1 1;height:1px;background:var(--line)}.ph .ph-steps h3{font-size:18.5px;line-height:1.25;margin-top:4px}.ph .ph-steps p{color:var(--muted);font-size:15px;line-height:1.55}.ph .ph-feats{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0;gap:0;border-top:1px solid var(--line)}.ph .ph-feats>div{padding:22px 24px 24px 0;border-bottom:1px solid var(--line);display:grid;grid-gap:6px;gap:6px;align-content:start}.ph .ph-feats>div:not(:nth-child(3n+1)){padding-left:24px;border-left:1px solid var(--line)}.ph .ph-feats h3{font-size:17px;display:flex;gap:10px;align-items:baseline}.ph .ph-feats h3:before{content:"";width:8px;height:8px;background:var(--copper);flex:none;transform:translateY(-1px)}.ph .ph-feats p{color:var(--muted);font-size:15px;line-height:1.55}.ph .ph-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);grid-gap:clamp(28px,5vw,72px);gap:clamp(28px,5vw,72px);align-items:start}.ph .ph-split .ph-lede{max-width:62ch}.ph .ph-split p+p{margin-top:14px}.ph .ph-split .ph-body{color:var(--ink-2);font-size:17px;line-height:1.7;margin-top:16px}.ph .ph-panel2{background:var(--raised);border:1px solid var(--line);border-radius:22px;padding:clamp(20px,3vw,28px);box-shadow:0 30px 60px -40px rgba(18,28,38,.35);width:100%}.ph .ph-sec.alt .ph-panel2{background:var(--paper)}.ph .ph-panel2 h3{font-size:20px;margin-top:10px}.ph .ph-panel2 p{color:var(--muted);font-size:15.5px;margin-top:10px}.ph .ph-panel2 ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.ph .ph-panel2 li{position:relative;padding-left:20px;font-size:15.5px;line-height:1.5}.ph .ph-panel2 li:before{content:"";position:absolute;left:0;top:8px;width:8px;height:8px;background:var(--copper)}.ph .ph-panel2 li a{color:var(--ink);font-weight:600;-webkit-text-decoration-color:var(--copper);text-decoration-color:var(--copper);text-underline-offset:3px}.ph .ph-panel2 .ph-small{font-size:13.5px;color:var(--muted);margin-top:14px}.ph .ph-panel2 .ph-small a{color:var(--copper)}.ph .ph-panel2.dark,.ph .ph-sec.alt .ph-panel2.dark{background:var(--ink);border-color:var(--ink);color:#fff}.ph .ph-panel2.dark h3{color:#fff}.ph .ph-panel2.dark li,.ph .ph-panel2.dark p{color:#C9D1D9}.ph .ph-panel2.dark li a{color:#fff}.ph .ph-ticks{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-gap:12px;gap:12px}.ph .ph-ticks li{display:flex;gap:12px;align-items:baseline;font-size:17px}.ph .ph-ticks li:before{content:"✓";font:700 14px/1 var(--mono);color:var(--good);background:var(--good-soft);border-radius:999px;width:24px;height:24px;display:inline-grid;place-items:center;flex:none;transform:translateY(4px)}.ph .ph-table-wrap{margin-top:32px;background:var(--raised);border:1px solid var(--line);border-radius:18px;overflow-x:auto}.ph .ph-table{width:100%;border-collapse:collapse;font-size:15px}.ph .ph-table td,.ph .ph-table th{text-align:left;vertical-align:top;padding:14px 18px;border-bottom:1px solid var(--line)}.ph .ph-table tr:last-child td,.ph .ph-table tr:last-child th{border-bottom:0}.ph .ph-table thead th{font:600 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--paper)}.ph .ph-table thead th.us{color:var(--copper)}.ph .ph-table tbody th{font:700 15px/1.35 var(--display);width:28%}.ph .ph-table td.us{background:rgba(171,77,28,.04);font-weight:600}.ph .ph-src{margin-top:14px;font-size:13.5px;color:var(--muted)}.ph .ph-src a{color:var(--copper)}.ph .ph-two{margin-top:32px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.ph .ph-tiers{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.ph .ph-tiers>div{border-radius:18px;padding:22px;background:var(--paper);border:1px solid var(--line);display:grid;grid-gap:6px;gap:6px}.ph .ph-tiers b{font:800 30px/1 var(--display);letter-spacing:-.02em}.ph .ph-tiers>div:last-child{background:var(--ink);color:#fff;border-color:var(--ink)}.ph .ph-tiers>div:last-child span{color:#C9D1D9}.ph .ph-tiers span{color:var(--muted);font-size:15px}.ph .ph-prose{max-width:720px;font-size:18px;line-height:1.75;color:var(--ink-2)}.ph .ph-prose>*+*{margin-top:18px}.ph .ph-prose h2{font-weight:800;font-size:clamp(24px,2.6vw,30px);line-height:1.2;margin-top:48px;color:var(--ink)}.ph .ph-prose h2:first-child{margin-top:0}.ph .ph-prose h3{font-size:20px;margin-top:32px;color:var(--ink)}.ph .ph-prose ol,.ph .ph-prose ul{padding-left:0;list-style:none;display:grid;grid-gap:10px;gap:10px}.ph .ph-prose ul li{position:relative;padding-left:22px}.ph .ph-prose ul li:before{content:"";position:absolute;left:0;top:12px;width:8px;height:8px;background:var(--copper)}.ph .ph-prose ol{counter-reset:n}.ph .ph-prose ol li{counter-increment:n;position:relative;padding-left:34px}.ph .ph-prose ol li:before{content:counter(n,decimal-leading-zero);position:absolute;left:0;top:2px;font:600 13px/1.8 var(--mono);color:var(--copper)}.ph .ph-prose a{color:var(--copper);text-underline-offset:3px}.ph .ph-prose strong{color:var(--ink)}.ph .ph-prose .ph-meta{font:500 13px/1.4 var(--mono);color:var(--muted);letter-spacing:.04em}.ph .ph-post{display:grid;grid-template-columns:minmax(0,720px) minmax(0,300px);grid-gap:clamp(32px,6vw,80px);gap:clamp(32px,6vw,80px);align-items:start}.ph .ph-post aside{position:-webkit-sticky;position:sticky;top:calc(var(--hdr) + 24px);display:grid;grid-gap:12px;gap:12px}.ph .ph-addr{font-style:normal;font-size:14px;line-height:1.6;margin:14px 0 16px;color:#B9C2CA}.ph .ph-foot-grid{grid-template-columns:1.3fr 1fr 1fr 1fr}.ph .ph-appvars{--surface:#F5F2EC;--surface-raised:#FFFFFF;--night:#121C26;--line:#DDD5C8;--ink:#121C26;--ink-muted:#5A6671;--copper:#AB4D1C;--copper-soft:#F8EAE0;--on-copper:#FFFFFF;--flare:#E3A13B;--sandstone:#D8CCB8;--success:#2F6B3A;--danger:#B3261E;--info:#1F5F99;--brand-primary:#AB4D1C;--brand-on-primary:#FFFFFF;--brand-accent:#E3A13B;color-scheme:light;color:var(--ink)}@media (max-width:900px){.ph .ph-phero-grid,.ph .ph-post,.ph .ph-split{grid-template-columns:minmax(0,1fr)}.ph .ph-feats,.ph .ph-steps,.ph .ph-steps.n4{grid-template-columns:repeat(2,minmax(0,1fr))}.ph .ph-feats>div:not(:nth-child(3n+1)){padding-left:0;border-left:0}.ph .ph-feats>div:nth-child(2n){padding-left:20px;border-left:1px solid var(--line)}.ph .ph-post aside{position:static}.ph .ph-foot-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.ph .ph-cards.c2,.ph .ph-feats,.ph .ph-steps,.ph .ph-steps.n2,.ph .ph-steps.n4,.ph .ph-tiers,.ph .ph-two{grid-template-columns:minmax(0,1fr)}.ph .ph-feats>div:nth-child(2n){padding-left:0;border-left:0}.ph .ph-feats>div{padding-right:0}.ph .ph-prose{font-size:17px}.ph .ph-table td,.ph .ph-table th{padding:12px 14px}.ph .ph-foot-grid{grid-template-columns:minmax(0,1fr)}}.ph .ph-demo{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:clamp(28px,5vw,64px);gap:clamp(28px,5vw,64px);align-items:start;padding-block:clamp(32px,5vh,64px) clamp(56px,8vh,96px)}.ph .ph-demo h1{font-weight:800;font-size:clamp(34px,4.4vw,54px);line-height:1.04;margin-top:14px}.ph .ph-demo-steps{grid-template-columns:minmax(0,1fr)!important;margin-top:28px}.ph .ph-demo-steps li{padding:16px 18px;background:rgba(255,255,255,.6)}.ph .ph-demo-copy .ph-src a{color:var(--copper)}.ph .ph-demo-card{font:400 15px/1.45 var(--body)}.ph .ph-demo-card p{margin:0 0 var(--space-4)}.ph .ph-demo-card h2{font-size:clamp(22px,2.4vw,28px);margin:0 0 18px}.ph .ph-demo-card legend{font:600 13px/18px var(--body);margin-bottom:8px;padding:0}.ph .ph-demo-card fieldset{border:0;padding:0;margin:0 0 var(--space-4);min-width:0}.ph .ph-demo-card .btn-primary{width:100%;justify-content:center;border-radius:999px}@media (max-width:900px){.ph .ph-demo{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.ph .ph-demo-card .check-grid,.ph .ph-demo-card .field-row{grid-template-columns:minmax(0,1fr)}}