/* Pricing: one product, equal account choices, a useful monthly estimate. */
body.marketing-pricing-page { --pricing-ink:#173d43; --pricing-copy:#536e6d; --pricing-paper:#fbfaf6; }
body.marketing-pricing-page main { background:var(--pricing-paper); }
body.marketing-pricing-page .pricing-boundary,body.marketing-pricing-page main > .marketing-page-section { width:min(calc(100% - clamp(40px,10vw,150px)),1210px); margin-inline:auto; }
body.marketing-pricing-page main h2 { font-size:clamp(36px,3.8vw,52px); line-height:1.1; font-weight:400; letter-spacing:-.04em; color:var(--pricing-ink); }
body.marketing-pricing-page main p { line-height:1.6; }
body.marketing-pricing-page main .marketing-eyebrow { font-size:12px; letter-spacing:.13em; color:#527976; }
body.marketing-pricing-page main .marketing-button { min-height:50px; padding:14px 24px; border-radius:7px; font-size:15px; }
body.marketing-pricing-page main .marketing-text-link { display:inline-flex; align-items:center; min-height:44px; color:#245e5d; font-size:15px; }
body.marketing-pricing-page .pricing-opening { position:relative; padding:37px 0 35px; overflow:hidden; }
body.marketing-pricing-page .pricing-river { position:absolute; inset:0 0 auto; width:100%; height:480px; object-fit:cover; object-position:center 53%; }
body.marketing-pricing-page .pricing-opening::before { content:""; position:absolute; inset:0 0 auto; height:480px; background:#072d38a6; z-index:1; }
body.marketing-pricing-page .pricing-opening > .pricing-boundary { position:relative; z-index:2; }
body.marketing-pricing-page .pricing-heading { text-align:center; margin-bottom:27px; }
body.marketing-pricing-page .pricing-heading .marketing-eyebrow { margin:0 0 13px; color:#cee0d8; }
body.marketing-pricing-page .pricing-heading h1 { margin:0; color:#fffdf1; font-size:clamp(42px,4.6vw,65px); line-height:1.05; letter-spacing:-.045em; font-weight:400; }
body.marketing-pricing-page .pricing-heading h1 em { font-style:normal; }
body.marketing-pricing-page .pricing-heading > p:last-child { margin:15px 0 0; color:#e0e8df; font-size:15px; line-height:1.5; }
body.marketing-pricing-page .pricing-heading > p:last-child br { display:none; }
body.marketing-pricing-page .pricing-price-plane { max-width:1080px; margin:auto; padding:22px 40px 26px; border-radius:10px 10px 0 0; background:var(--pricing-paper); }
body.marketing-pricing-page .pricing-shared-promise { margin:0 0 20px; color:#496966; text-align:center; font-size:13px; }
body.marketing-pricing-page .pricing-plan-spread { display:grid; grid-template-columns:1fr 1fr; }
body.marketing-pricing-page .pricing-plan-spread article { display:grid; grid-template-rows:auto auto 43px 1fr auto; align-items:start; justify-items:center; padding:0 35px; text-align:center; }
body.marketing-pricing-page .pricing-plan-spread article + article { border-left:1px solid #d5ddd7; }
body.marketing-pricing-page .pricing-plan-spread article header h2 { margin:0; color:#21474a; font-family:Inter,system-ui,sans-serif; font-size:17px; font-weight:600; letter-spacing:.01em; }
body.marketing-pricing-page .pricing-plan-spread article header p { margin:6px 0 0; color:#5b7370; font-size:13px; }
body.marketing-pricing-page .pricing-amount { margin:12px 0 8px; color:#163d42; font-family:Inter,system-ui,sans-serif; font-size:87px; font-weight:400; letter-spacing:-.065em; line-height:1!important; }
body.marketing-pricing-page .pricing-amount > span { font-size:42px; vertical-align:top; line-height:1.4; letter-spacing:-.04em; }
body.marketing-pricing-page .pricing-amount small { display:block; margin-top:5px; color:#4f6a68; font-size:14px; letter-spacing:0; line-height:1.4; }
body.marketing-pricing-page .pricing-user-count { margin:0; color:#315754; font-size:13px; line-height:1.5; }
body.marketing-pricing-page .pricing-plan-fit { margin:12px 0 18px; color:#58706a; font-size:14px; }
body.marketing-pricing-page .pricing-plan-spread .marketing-button { min-width:220px; }
body.marketing-pricing-page .pricing-estimator { width:100%; max-width:290px; margin:7px 0 16px; text-align:left; }
body.marketing-pricing-page .pricing-estimator label { display:block; margin-bottom:5px; color:#4f6d65; font-size:12px; }
body.marketing-pricing-page .pricing-estimator > div { display:flex; gap:14px; align-items:center; }
body.marketing-pricing-page .pricing-estimator input { width:72px; min-height:44px; padding:8px 10px; border:1px solid #b4c6bd; border-radius:5px; background:#fffefa; color:#254a44; font-size:17px; }
body.marketing-pricing-page .pricing-estimator > div p { display:flex; gap:8px; align-items:baseline; margin:0; }
body.marketing-pricing-page .pricing-estimator strong { color:#234e48; font-size:21px; font-weight:550; font-variant-numeric:tabular-nums; }
body.marketing-pricing-page .pricing-estimator > div span { color:#5d756e; font-size:12px; }
body.marketing-pricing-page .pricing-estimate-hint { margin:5px 0 0; color:#5b746b; font-size:12px; }
body.marketing-pricing-page .pricing-team a[aria-disabled=true] { opacity:.65; cursor:not-allowed; }
body.marketing-pricing-page .pricing-opening-terms { margin:9px 0 0; color:#4d6c67; text-align:center; font-size:13px; line-height:1.6; }
body.marketing-pricing-page .pricing-product-value { padding:65px 0; }
body.marketing-pricing-page .pricing-value-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:90px; }
body.marketing-pricing-page .pricing-value-grid h2 { margin:18px 0 24px; }
body.marketing-pricing-page .pricing-value-grid > div:first-child > p:not(.marketing-eyebrow) { color:var(--pricing-copy); font-size:16px; }
body.marketing-pricing-page .pricing-project-specimen { padding:30px; border:1px solid #d9e1d9; background:#fffef8; border-radius:10px; box-shadow:0 20px 50px #163d4310; }
body.marketing-pricing-page .pricing-project-specimen > p { margin:0; color:#60786d; font-size:13px; }
body.marketing-pricing-page .pricing-project-specimen h3 { margin:16px 0 22px; color:#254e47; font-family:Inter,system-ui,sans-serif; font-size:26px; font-weight:500; letter-spacing:-.035em; line-height:1.2; }
body.marketing-pricing-page .pricing-project-specimen dl { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:0 0 18px; }
body.marketing-pricing-page .pricing-project-specimen dt { color:#61796e; font-size:12px; }
body.marketing-pricing-page .pricing-project-specimen dd { margin:6px 0 0; color:#32594c; font-size:15px; }
body.marketing-pricing-page .marketing-pricing-inclusions { padding:20px 0 65px; }
body.marketing-pricing-page .marketing-pricing-inclusions .marketing-page-section-heading { max-width:780px; margin-bottom:30px; }
body.marketing-pricing-page .marketing-pricing-inclusions .marketing-page-section-heading p:last-child { color:var(--pricing-copy); font-size:16px; }
body.marketing-pricing-page .marketing-feature-ledger { display:grid; grid-template-columns:repeat(3,1fr); gap:20px 40px; border:0; }
body.marketing-pricing-page .marketing-feature-ledger article { display:block; min-height:0; padding:0; border:0; background:transparent; }
body.marketing-pricing-page .marketing-feature-ledger summary { min-height:44px; cursor:pointer; color:#365b50; font-size:16px; }
body.marketing-pricing-page .marketing-feature-ledger p { color:#557268; font-size:14px; }
body.marketing-pricing-page .pricing-trial { padding:55px 0; border:0; border-top:1px solid #d7dfd7; background:transparent; }
body.marketing-pricing-page .pricing-trial header { max-width:790px; }
body.marketing-pricing-page .pricing-trial ol { display:grid; grid-template-columns:repeat(3,1fr); gap:50px; list-style:none; padding:0; margin:40px 0 25px; }
body.marketing-pricing-page .pricing-trial li { color:#526f64; }
body.marketing-pricing-page .pricing-trial li > span { font-size:13px; }
body.marketing-pricing-page .pricing-trial li > strong { display:block; margin:15px 0; color:#2a5247; font-size:32px; font-weight:500; letter-spacing:-.03em; }
body.marketing-pricing-page .pricing-trial li p,body.marketing-pricing-page .pricing-payment-detail { color:#526f64; font-size:14px; line-height:1.7; }
body.marketing-pricing-page .pricing-payment-detail { max-width:900px; margin-top:30px; }
body.marketing-pricing-page .marketing-faq-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; padding:65px 0; }
body.marketing-pricing-page .marketing-faq-ledger { display:block; }
body.marketing-pricing-page .marketing-faq-ledger details { border-bottom:1px solid #dbe2d9; padding:14px 0; }
body.marketing-pricing-page .marketing-faq-ledger summary { display:flex; justify-content:space-between; gap:20px; align-items:center; min-height:44px; color:#31584c; font-size:16px; font-weight:500; cursor:pointer; }
body.marketing-pricing-page .marketing-faq-ledger summary::after { content:"+"; }
body.marketing-pricing-page .marketing-faq-ledger details[open] summary::after { content:"−"; }
body.marketing-pricing-page .marketing-faq-ledger p { color:#536f63; font-size:15px; }
body.marketing-pricing-page .pricing-closing { padding:65px 0; background:#113e43; text-align:center; }
body.marketing-pricing-page .pricing-closing h2 { margin:15px 0 20px; color:#fcf8e8; }
body.marketing-pricing-page .pricing-closing .marketing-eyebrow { color:#bcd3c5; }
body.marketing-pricing-page .pricing-closing p { color:#c5d8ce; font-size:15px; }
body.marketing-pricing-page .pricing-closing nav { display:flex; justify-content:center; align-items:center; gap:25px; margin:25px 0; }
body.marketing-pricing-page .pricing-closing .marketing-button { color:#193f42; background:#faf8e9; border-color:#faf8e9; }
body.marketing-pricing-page .pricing-closing .marketing-text-link { color:#e7edde; }
body.marketing-pricing-page .pricing-closing .pricing-closing-terms { font-size:13px; }
body.marketing-pricing-page .marketing-footer-waterline { display:none; }
@media(max-width:1050px) {
 body.marketing-pricing-page .pricing-price-plane { padding-inline:20px; }
 body.marketing-pricing-page .pricing-plan-spread article { padding-inline:20px; }
 body.marketing-pricing-page .pricing-value-grid,body.marketing-pricing-page .marketing-faq-section { gap:40px; }
 body.marketing-pricing-page .pricing-trial ol { gap:25px; }
}
@media(max-width:760px) {
 body.marketing-pricing-page .pricing-heading h1 { font-size:43px; }
 body.marketing-pricing-page .pricing-price-plane { padding:24px; }
 body.marketing-pricing-page .pricing-plan-spread { grid-template-columns:1fr; }
 body.marketing-pricing-page .pricing-plan-spread article { display:block; padding:10px 0 25px; }
 body.marketing-pricing-page .pricing-plan-spread article + article { border-left:0; border-top:1px solid #d5ddd7; padding-top:25px; padding-bottom:0; }
 body.marketing-pricing-page .pricing-amount { font-size:76px; }
 body.marketing-pricing-page .pricing-plan-fit { margin-block:12px; }
 body.marketing-pricing-page .pricing-estimator { margin:18px auto; }
 body.marketing-pricing-page .pricing-user-count { margin-bottom:10px; }
 body.marketing-pricing-page .pricing-value-grid,body.marketing-pricing-page .marketing-faq-section { grid-template-columns:1fr; gap:30px; }
 body.marketing-pricing-page .pricing-product-value { padding:45px 0; }
 body.marketing-pricing-page .marketing-feature-ledger { grid-template-columns:1fr 1fr; gap:15px 20px; }
 body.marketing-pricing-page .pricing-trial ol { grid-template-columns:1fr; gap:25px; margin-top:30px; }
 body.marketing-pricing-page .pricing-trial li > strong { margin:7px 0 10px; }
 body.marketing-pricing-page .marketing-faq-section { padding:45px 0; }
}
@media(max-width:480px) {
 body.marketing-pricing-page .pricing-heading h1 { font-size:35px; }
 body.marketing-pricing-page .pricing-heading > p:last-child { font-size:14px; }
 body.marketing-pricing-page .pricing-opening { padding-top:28px; }
 body.marketing-pricing-page .pricing-price-plane { padding:20px 18px; }
 body.marketing-pricing-page .pricing-plan-spread .marketing-button { min-width:0; width:100%; }
 body.marketing-pricing-page .pricing-estimator > div p { display:block; }
 body.marketing-pricing-page .pricing-estimator > div span { display:block; }
 body.marketing-pricing-page .pricing-project-specimen { padding:24px; }
 body.marketing-pricing-page .pricing-project-specimen dl { grid-template-columns:1fr; gap:14px; }
 body.marketing-pricing-page .marketing-feature-ledger { grid-template-columns:1fr; }
 body.marketing-pricing-page .pricing-closing nav { flex-direction:column; gap:12px; }
}
body.marketing-pricing-page .pricing-opening { padding-top:26px; }
body.marketing-pricing-page .pricing-heading { margin-bottom:22px; }
body.marketing-pricing-page .pricing-heading h1 { font-size:clamp(42px,4.25vw,58px); }
body.marketing-pricing-page .pricing-heading > p:last-child { margin-top:12px; }
body.marketing-pricing-page .pricing-shared-promise { margin-bottom:17px; font-size:13px; }
body.marketing-pricing-page .pricing-price-plane { padding-top:20px; padding-bottom:23px; }
body.marketing-pricing-page .pricing-amount { margin-top:10px; font-size:96px; }
body.marketing-pricing-page .pricing-estimator { margin-top:4px; margin-bottom:13px; }
body.marketing-pricing-page .pricing-plan-fit { margin-top:8px; }
@media(max-width:760px) { body.marketing-pricing-page .pricing-amount { font-size:76px; } body.marketing-pricing-page .pricing-estimator { margin:15px auto; } }
@media(max-width:480px) { body.marketing-pricing-page .pricing-heading h1 { font-size:35px; } }
body.marketing-pricing-page .pricing-record-change { margin:22px 0 0; padding-top:18px; border-top:1px solid #dce3d9; }
body.marketing-pricing-page .pricing-record-change > span { color:#557467; font-size:12px; line-height:1.5; }
body.marketing-pricing-page .pricing-record-change > strong { display:block; margin-top:9px; color:#2d5447; font-size:16px; font-weight:500; }
body.marketing-pricing-page .pricing-record-source { margin:20px -30px 8px; padding:20px 30px 12px; background:#edf0e7; }
body.marketing-pricing-page .pricing-record-source > span,body.marketing-pricing-page .pricing-record-source small { display:block; color:#5e776a; font-size:12px; line-height:1.5; }
body.marketing-pricing-page .pricing-record-source > strong { display:block; margin:8px 0; color:#315449; font-size:14px; font-weight:550; line-height:1.5; }
body.marketing-pricing-page .pricing-project-specimen dl > div:first-child dd { display:inline-block; padding:4px 8px; border-radius:4px; background:#e7eee1; }
@media(max-width:480px) { body.marketing-pricing-page .pricing-record-source { margin-inline:-24px; padding-inline:24px; } }
body.marketing-pricing-page .pricing-trial.marketing-trial-disclosure { display:block; }
body.marketing-pricing-page .pricing-trial header { max-width:100%; }
body.marketing-pricing-page .pricing-trial ol { position:relative; padding-top:25px; border-top:1px solid #b8cac0; }
body.marketing-pricing-page .pricing-trial li > strong { font-family:Inter,ui-sans-serif,system-ui,sans-serif; font-size:36px; }
body.marketing-pricing-page .pricing-trial .pricing-payment-detail { display:block; max-width:950px; width:100%; margin-top:24px; }
body.marketing-pricing-page .pricing-shared-promise { color:#345952; font-size:14px; }
body.marketing-pricing-page .pricing-user-count,body.marketing-pricing-page .pricing-plan-fit { color:#385a50; font-size:15px; }
body.marketing-pricing-page .pricing-plan-spread article { grid-template-rows:auto auto 48px 1fr auto; }
body.marketing-pricing-page .pricing-opening-terms { color:#385b52; font-size:14px; }
body.marketing-pricing-page .marketing-feature-ledger summary { display:flex; justify-content:space-between; align-items:center; gap:16px; min-height:44px; font-size:16px; font-weight:550; list-style:none; }
body.marketing-pricing-page .marketing-feature-ledger summary::-webkit-details-marker { display:none; }
body.marketing-pricing-page .marketing-feature-ledger summary::after { content:"+"; flex:none; font-weight:400; }
body.marketing-pricing-page .marketing-feature-ledger details[open] summary::after { content:"−"; }
