/* Three pricing studies share content, commercial boundaries and the clean palette. */
#pricing.pv{background:#faf8f3;padding:80px clamp(24px,5vw,64px);color:#25231c;font-family:Archivo,sans-serif}
#pricing.pv>.toda-page-shell{max-width:1240px;margin:auto}
#pricing.pv [hidden]{display:none!important}
#pricing.pv .pv-header{max-width:860px;margin-bottom:22px}
#pricing.pv .pv-header h2{font:500 clamp(32px,3.5vw,48px)/1.08 Archivo,sans-serif!important;letter-spacing:-.035em;margin:18px 0 16px;color:#25231c;text-wrap:balance}
#pricing.pv .pv-header p{font-size:17px;line-height:1.55;color:#55524b;max-width:710px;margin:0}
#pricing.pv .pv-route-links{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 28px}
#pricing.pv .pv-route-links a{font-size:14px;line-height:1.5;color:#1439a6;padding:6px 0;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b3c3e7}
#pricing.pv .pv-route-links a span{margin-left:6px}
#pricing.pv .toda-pricing-status{font-size:14px;line-height:1.5;color:#55524b;margin:0 0 20px}
#pricing.pv .toda-pricing-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
#pricing.pv .toda-pricing-option{display:flex;flex-direction:column;min-width:0;min-height:0;padding:24px;border:1px solid #dcd9d2;border-radius:16px;background:#fff;box-shadow:none}
#pricing.pv .toda-pricing-option h3{font:500 26px/1.15 Archivo,sans-serif;color:#25231c;margin:0}
#pricing.pv .toda-pricing-price{font:500 36px/1 Archivo,sans-serif;color:#25231c;min-height:44px;margin-top:18px}
#pricing.pv .toda-pricing-price small{font:500 14px/1.5 Archivo,sans-serif;color:#55524b}
#pricing.pv .toda-pricing-cta{font-size:15px;line-height:1.4;min-height:44px;margin-top:18px;padding:11px 9px;color:#254ebc;background:transparent;border:1px solid #ccd8ef}
#pricing.pv .toda-pricing-cta:hover{background:#edf1f9;border-color:#254ebc}
#pricing.pv .toda-pricing-list-label{font-size:13px;line-height:1.5;font-weight:500;color:#55524b;margin-top:16px;padding-top:14px}
#pricing.pv .toda-pricing-list{display:grid;gap:8px;list-style:none;margin-top:12px;padding:0}
#pricing.pv .toda-pricing-list li{font-size:15px;line-height:1.5;font-weight:400;display:flex;gap:8px;color:#25231c}
#pricing.pv .toda-pricing-check{color:#1439a6}
#pricing.pv .toda-pricing-enterprise-note{font-size:13px;line-height:1.5;margin-top:16px;padding-top:12px;color:#55524b}
#pricing.pv .toda-pricing-notes{display:grid;gap:10px;margin-top:22px;font-size:13px;line-height:1.6;color:#55524b}
#pricing.pv .pv-contacts{margin-top:30px;border-top:1px solid #dcd9d2}
#pricing.pv .pv-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #dcd9d2}
#pricing.pv .pv-contact>div{display:grid;grid-template-columns:170px minmax(0,1fr);align-items:baseline;gap:24px}
#pricing.pv .pv-contact h3{font:600 16px/1.5 Archivo,sans-serif;color:#25231c;margin:0}
#pricing.pv .pv-contact p{font-size:14px;line-height:1.55;color:#55524b;margin:0}
#pricing.pv .toda-pricing-lane-cta{font-size:14px;line-height:1.5;margin:0;padding:8px 0;min-height:40px;border:0;border-radius:0;background:none;white-space:nowrap;align-self:center}
#pricing.pv .toda-pricing-lane-cta:hover{text-decoration:underline;text-underline-offset:4px}
#pricing.pv .pv-boundary{font-size:12px;line-height:1.6;color:#656158;margin:14px 0 0;max-width:960px}
#pricing.pv a:focus-visible,#pricing.pv button:focus-visible,#pricing.pv [tabindex]:focus-visible{outline:2px solid #254ebc;outline-offset:4px}
#pricing.pv #standard-plans,#pricing.pv #client-deployments,#pricing.pv #custom-deployments{scroll-margin-top:110px}
/* 2: persistent deployment navigation with a focused result area. */
#pricing.pv-2 .pv-header{margin-bottom:32px}
#pricing.pv .pv-guided{display:grid;grid-template-columns:248px minmax(0,1fr);gap:40px;align-items:start}
#pricing.pv .pv-deployment-nav{display:flex;flex-direction:column;border-top:1px solid #dcd9d2;padding:0!important}
#pricing.pv .pv-deployment-nav a{display:flex;align-items:baseline;gap:12px;padding:22px 12px;border-bottom:1px solid #dcd9d2;color:#55524b;text-decoration:none}
#pricing.pv .pv-deployment-nav a[aria-current=true]{background:#edf1f9;color:#1439a6;box-shadow:inset 3px 0 #254ebc}
#pricing.pv .pv-step{font-size:11px;font-weight:600;letter-spacing:.03em}
#pricing.pv .pv-deployment-nav strong{display:block;font-size:16px;font-weight:600}
#pricing.pv .pv-deployment-nav small{display:block;margin-top:6px;font-size:13px;line-height:1.5;color:#55524b}
#pricing.pv .pv-route-intro{margin:0 0 20px}
#pricing.pv .pv-route-intro h3{font:500 26px/1.2 Archivo,sans-serif;letter-spacing:-.02em;margin:0 0 10px;color:#25231c}
#pricing.pv .pv-route-intro p{font-size:15px;line-height:1.5;color:#55524b;margin:0}
#pricing.pv .pv-contact-expanded{display:block;border:0;padding:24px 0 40px;border-top:1px solid #dcd9d2}
#pricing.pv .pv-contact-expanded>div{display:block;max-width:580px}
#pricing.pv .pv-contact-expanded h3{font:500 32px/1.2 Archivo,sans-serif;letter-spacing:-.025em;margin:0 0 18px}
#pricing.pv .pv-contact-expanded p{font-size:17px;line-height:1.6;max-width:580px}
#pricing.pv .pv-contact-expanded .toda-pricing-lane-cta{display:inline-flex;margin-top:24px;padding:12px 20px;border:1px solid #ccd8ef;border-radius:24px}
#pricing.pv .pv-contact-expanded .pv-boundary{font-size:13px;margin-top:32px;max-width:530px}
/* 3: exact specification text grouped into a comparison table. */
#pricing.pv .pv-table-scroll{overflow-x:auto;border:1px solid #dcd9d2;border-radius:14px;background:#fff}
#pricing.pv .pv-table{width:100%;min-width:990px;border-collapse:collapse;table-layout:fixed}
#pricing.pv .pv-table caption{text-align:left;padding:16px 20px;background:#f5f3ef;font-size:13px;color:#55524b}
#pricing.pv .pv-table th,#pricing.pv .pv-table td{text-align:left;vertical-align:top;padding:20px;border-right:1px solid #e5e2dc;border-bottom:1px solid #e5e2dc}
#pricing.pv .pv-table th:last-child,#pricing.pv .pv-table td:last-child{border-right:0}
#pricing.pv .pv-table tr:last-child>*{border-bottom:0}
#pricing.pv .pv-table th:first-child{width:150px;background:#f5f3ef;font-size:13px;line-height:1.5;font-weight:500;color:#55524b;position:sticky;left:0;z-index:1}
#pricing.pv .pv-table thead th{font-weight:400}
#pricing.pv .pv-table h3{font:500 24px/1.2 Archivo,sans-serif;color:#25231c;margin:0}
#pricing.pv .pv-table .toda-pricing-list{margin:0;gap:12px}
#pricing.pv .pv-table .toda-pricing-list li{font-size:14px}
#pricing.pv .pv-table .toda-pricing-list-label{border:0;padding:0;margin-top:14px}
#pricing.pv .pv-table .toda-pricing-price{font-size:30px;flex-wrap:wrap;min-height:0}
#pricing.pv .pv-table .toda-pricing-cta{margin:0;font-size:13px;white-space:normal}
#pricing.pv .pv-unlisted{font-size:14px;color:#656158}
#pricing.pv .pv-scroll-hint{display:none;font-size:12px;color:#55524b;margin:0 0 10px}
/* Fit four plans beside the deployment navigation on desktop. */
@media(min-width:1280px){
 #pricing.pv-2 .toda-pricing-option{padding:24px 16px}
 #pricing.pv-2 .toda-pricing-cta{font-size:14px}
}
@media(max-width:1279px){
 #pricing.pv .toda-pricing-options{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1100px){
 #pricing.pv .pv-contact>div{display:block}
 #pricing.pv .pv-contact h3{margin-bottom:6px}
 #pricing.pv .pv-guided{grid-template-columns:210px minmax(0,1fr);gap:24px}
 #pricing.pv .pv-scroll-hint{display:block}
 #pricing.pv .pv-table th:first-child{width:120px}
}
@media(max-width:900px){
 #pricing.pv .toda-pricing-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 #pricing.pv .pv-guided{grid-template-columns:minmax(0,1fr)}
 #pricing.pv .pv-deployment-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;gap:8px}
 #pricing.pv .pv-deployment-nav a{padding:16px 12px;border:1px solid #dcd9d2;border-radius:8px;gap:8px}
 #pricing.pv .pv-deployment-nav strong{font-size:14px}
}
@media(max-width:600px){
 #pricing.pv{padding:56px 22px}
 #pricing.pv .toda-pricing-options{--plan-peek:clamp(18px,6vw,24px);--plan-gap:12px;--plan-inset:calc(var(--plan-peek) + var(--plan-gap));position:relative;display:flex;gap:var(--plan-gap);width:calc(100% + 44px);margin-inline:-22px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:4px var(--plan-inset) 14px}
 #pricing.pv .toda-pricing-option{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always}
 #pricing.pv .pv-header p{font-size:16px}
 #pricing.pv .pv-contact{display:block;padding:20px 0}
 #pricing.pv .pv-contact .toda-pricing-lane-cta{margin-top:8px}
 #pricing.pv .pv-route-links{gap:18px;margin-bottom:24px}
 #pricing.pv .pv-deployment-nav{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid #dcd9d2}
 #pricing.pv .pv-deployment-nav a{border:0;border-bottom:1px solid #dcd9d2;border-radius:0;padding:14px 12px;gap:12px}
 #pricing.pv .pv-deployment-nav small{margin-top:3px}
 #pricing.pv .pv-table th:first-child{width:110px}
}

/* A centered, swipeable plan with neighboring edges visible on phones. Cards remain in
   normal document flow on desktop and readable without JavaScript. */
#pricing.pv .pv-route-results{min-width:0}
#pricing.pv .pricing-plan-tabs{display:none}
@media(max-width:600px){
 #pricing.pv .pricing-plan-tabs:not([hidden]){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0 0 12px;padding:4px;background:#eeece6;border-radius:12px}
 #pricing.pv .pricing-plan-tabs button{min-width:0;min-height:44px;padding:8px 4px;border:0;border-radius:8px;background:transparent;color:#55524b;font:500 13px/1.3 Archivo,sans-serif;cursor:pointer;touch-action:manipulation}
 #pricing.pv .pricing-plan-tabs button[aria-selected=true]{background:#254ebc;color:#fff}
 #pricing.pv .pricing-plan-tabs button:focus-visible{outline-offset:-2px;outline-color:#1439a6;background:#dce6ff;color:#1439a6}
 #pricing.pv .toda-pricing-option:focus-visible{outline-offset:-3px}
}
