/* Pricing extends the existing AgentBook visual roles. No global palette/type overrides. */
.pricing-page { color:var(--text); }
.pricing-page *, .pricing-page *::before, .pricing-page *::after { box-sizing:border-box; }
.pricing-page [hidden] { display:none!important; }
.pricing-page :is(h1,h2,p,li,a,button,th,td,.pricing-value,.pv-body,.p-question) { min-width:0; overflow-wrap:anywhere; }
.pricing-page :is(section[id],h2[id]) { scroll-margin-top:8rem; }
.pricing-page .auralis-page-hero .auralis-page-hero__content { width:min(88%,65rem); }
.pricing-page[data-pricing-page] .auralis-page-hero .auralis-page-hero__content h1 { max-width:23ch; }
.pricing-page .auralis-page-hero .auralis-page-hero__content > p { max-width:49rem; }
.pricing-page .auralis-page-hero .auralis-page-hero__background { width:64%; opacity:.3; }
.pricing-page .auralis-page-hero .auralis-page-hero__paper { --hero-veil:linear-gradient(90deg,rgb(255 255 255 / 88%),rgb(255 255 255 / 82%)); }
.pricing-page .breadcrumbs { color:var(--text-secondary); }
.pricing-page .p-jump-nav { display:flex; flex-wrap:wrap; gap:.5rem 1.7rem; }
.pricing-page .p-jump-nav a { display:flex; align-items:center; min-height:44px; padding-block:.35rem; border-bottom:1px solid var(--line-strong); color:var(--text); font-weight:550; transition:color 180ms,border-color 180ms; }
.pricing-page .p-jump-nav a:hover { color:var(--primary); border-color:var(--primary); }
.pricing-page .p-section-head { display:grid; grid-template-columns:minmax(0,31rem) minmax(0,1fr); align-items:start; gap:2rem clamp(3rem,10.3vw,10.3125rem); margin-bottom:clamp(2rem,4vw,3rem); }
.pricing-page .p-section-head h2 { max-width:19ch; margin:0; }
.pricing-page .p-section-head .pricing-value { max-width:43rem; }
.pricing-page .p-section-head--single { display:block; }
.pricing-page .p-section-head--single h2 { max-width:26ch; }
.pricing-page .pricing-value { min-width:0; }
.pricing-page .pricing-value :is(p,ul) { margin:0; color:var(--text-secondary); font-size:var(--support-copy-size); line-height:var(--support-copy-leading); }
.pricing-page .pricing-value p + p, .pricing-page .pricing-value p + ul, .pricing-page .pv-body > * + * { margin-top:1.1rem; }
.pricing-page .pricing-value strong { font-weight:600; color:var(--text); }
.pricing-page .p-editorial-link { color:var(--text); text-decoration:underline; text-decoration-color:var(--primary); text-underline-offset:.25em; text-decoration-thickness:1px; }
.pricing-page .p-editorial-link:hover { color:var(--primary); }
.pricing-page .p-icon { width:1.4rem; height:1.4rem; flex:none; }
.pricing-page .p-card-icon { align-self:start; color:var(--primary); }
.pricing-page .p-card-icon > svg { width:1.7rem; height:1.7rem; }
.pricing-page .p-web-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.pricing-page .p-web-card { display:grid; grid-template-rows:subgrid; grid-row:span 4; gap:1rem; padding:clamp(1.35rem,3vw,2.5rem); border:1px solid var(--line); border-radius:var(--radius-large); background:var(--surface); }
.pricing-page .p-web-card .pricing-value { display:grid; grid-template-rows:subgrid; grid-row:span 3; gap:1rem; }
.pricing-page .pricing-value .pv-object { margin:0; color:var(--text); font-size:var(--size-h3); line-height:var(--leading-h3); letter-spacing:-.035em; }
.pricing-page .pricing-value .pv-price { margin:0; color:var(--primary); font-size:var(--support-copy-size); }
.pricing-page .pv-price strong { color:var(--primary); }
.pricing-page .pv-body { align-content:start; }
.pricing-page .p-web-card--wide { grid-column:1 / -1; }
.pricing-page .p-web-card--wide .pv-body { max-width:65rem; }
.pricing-page .p-web { background:var(--bg-soft); border-block:1px solid var(--line); }
.pricing-page .p-marketing { background:var(--surface); }
.pricing-page .p-plan-comparison { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; align-items:start; }
.pricing-page [data-price-enhanced=true] { grid-template-columns:minmax(12rem,.55fr) minmax(0,1.75fr); }
.pricing-page .p-plan-tabs { display:grid; gap:.7rem; }
.pricing-page .p-plan-tabs button { display:flex; align-items:center; gap:.85rem; width:100%; min-height:5rem; padding:1.15rem; border:1px solid var(--line-strong); border-radius:var(--radius); background:var(--surface); color:var(--text); text-align:left; font-size:1rem; line-height:1.5; cursor:pointer; transition:background 180ms,color 180ms,border-color 180ms; touch-action:manipulation; }
.pricing-page .p-plan-tabs button > [data-content-slot] { flex:1; }
.pricing-page .p-tab-icon { color:var(--primary); }
.pricing-page .p-selection-mark { width:1rem; opacity:0; }
.pricing-page .p-selection-mark svg { width:1rem; height:1rem; }
.pricing-page .p-plan-tabs button[aria-selected=true] { background:var(--primary); border-color:var(--primary); color:var(--surface); }
.pricing-page .p-plan-tabs button[aria-selected=true] .p-tab-icon { color:var(--surface); }
.pricing-page .p-plan-tabs button[aria-selected=true] .p-selection-mark { opacity:1; }
.pricing-page .p-plan-tabs button:not([aria-selected=true]):hover { background:var(--bg-soft); border-color:var(--primary); }
.pricing-page .p-plan-tabs button:active { border-color:var(--text); }
.pricing-page .p-plan-panels { display:grid; min-width:0; gap:1.5rem; }
.pricing-page .p-plan-panel { min-width:0; padding:clamp(1.3rem,3vw,2.5rem); border:1px solid rgb(var(--primary-rgb) / 35%); border-radius:var(--radius-large); background:var(--surface); }
.pricing-page .p-plan-panel > .pricing-value { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem 2rem; }
.pricing-page .p-plan-panel .pv-object { grid-column:1; align-self:start; }
.pricing-page .p-plan-panel .pv-price { grid-column:2; grid-row:1; font-size:clamp(1.6rem,2.7vw,2.5rem); line-height:1.1; letter-spacing:-.045em; text-align:right; }
.pricing-page .p-plan-panel .pv-body { grid-column:1 / -1; }
.pricing-page .pv-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem 1.7rem; padding:1.5rem 0 0; border-top:1px solid var(--line); list-style:none; }
.pricing-page .pv-features > li { display:grid; grid-template-columns:1.35rem minmax(0,1fr); align-items:start; gap:.65rem; font-size:1rem; line-height:1.6; }
.pricing-page .pv-features > li > .p-icon { width:1.25rem; height:1.25rem; margin-top:.18rem; color:var(--primary); }
.pricing-page .p-unit-note { max-width:64rem; padding-block:1.75rem; }
.pricing-page .p-unit-note p { font-size:1rem; }
.pricing-page .p-content-offer { display:grid; grid-template-columns:2rem minmax(0,1fr); gap:1rem; padding:clamp(1.35rem,3vw,2.5rem); border:1px solid var(--line); border-radius:var(--radius-large); background:var(--bg-soft); }
.pricing-page .p-content-offer > .pricing-value { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem 2rem; }
.pricing-page .p-content-offer .pv-price { margin:0; font-size:clamp(1.5rem,2.6vw,2rem); text-align:right; line-height:1.15; }
.pricing-page .p-content-offer .pv-body { grid-column:1 / -1; max-width:66rem; }
.pricing-page .p-individual { max-width:64rem; padding-top:2rem; }
.pricing-page .p-individual .pv-object { font-size:var(--size-h3); }
.pricing-page .p-individual .pv-body { margin-top:1.1rem; }
.pricing-page .p-software { background:var(--bg-soft); border-block:1px solid var(--line); }
.pricing-page .p-software-panel { display:grid; grid-template-columns:minmax(6rem,.3fr) minmax(0,1fr); gap:2rem; padding:clamp(1.35rem,3vw,2.5rem); border:1px solid var(--line); border-radius:var(--radius-large); background:var(--surface); }
.pricing-page .p-code-mark { display:grid; place-items:start; color:var(--primary); }
.pricing-page .p-code-mark .p-icon { width:clamp(3rem,7vw,6rem); height:auto; }
.pricing-page .p-software-copy { display:grid; gap:1.25rem; max-width:54rem; }
.pricing-page .p-software-copy .pv-body { margin-top:1.2rem; }
.pricing-page .p-table-value { border:1px solid var(--line); border-radius:var(--radius-large); }
.pricing-page .p-cost-table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:1rem; }
.pricing-page .p-cost-table :is(th,td) { padding:1.3rem 1.15rem; border-bottom:1px solid var(--line); text-align:left; color:var(--text); vertical-align:top; }
.pricing-page .p-cost-table thead th { color:var(--text-secondary); background:var(--bg-soft); font-weight:500; }
.pricing-page .p-cost-table th:first-child { width:26%; }
.pricing-page .p-cost-table tbody td:nth-child(4) { color:var(--primary); font-weight:650; }
.pricing-page .p-cost-table tbody tr:last-child > * { border-bottom:0; }
.pricing-page .p-standalone { max-width:60rem; margin-top:1.5rem; }
.pricing-page .p-extra-list { border-top:1px solid var(--line); }
.pricing-page .p-extra-row { display:grid; grid-template-columns:2rem minmax(0,1fr); gap:1.5rem; align-items:start; padding-block:1.6rem; border-bottom:1px solid var(--line); }
.pricing-page .p-extra-icon { color:var(--primary); padding-top:.25rem; }
.pricing-page .p-faq { background:var(--bg-soft); border-block:1px solid var(--line); }
.pricing-page .p-faq-list { min-width:0; border-top:1px solid var(--line-strong); }
.pricing-page .p-faq-item { border-bottom:1px solid var(--line-strong); }
.pricing-page .p-faq-item summary { display:flex; justify-content:space-between; align-items:start; gap:1.5rem; min-height:44px; padding-block:1.45rem; color:var(--text); font-size:var(--support-copy-size); font-weight:550; line-height:1.55; cursor:pointer; list-style:none; }
.pricing-page .p-faq-item summary::-webkit-details-marker { display:none; }
.pricing-page .p-question { flex:1; }
.pricing-page .p-faq-mark { position:relative; width:1rem; height:1rem; margin-top:.4rem; flex:none; }
.pricing-page .p-faq-mark i { position:absolute; top:50%; left:0; width:100%; height:1px; background:var(--primary); }
.pricing-page .p-faq-mark i:last-child { transform:rotate(90deg); transition:transform 180ms; }
.pricing-page .p-faq-item[open] .p-faq-mark i:last-child { transform:rotate(0); }
.pricing-page .p-faq-item > .pricing-value { padding-bottom:1.5rem; }
.pricing-page .project-discussion__copy > .pricing-value p { margin:0; font-size:var(--support-copy-size); line-height:var(--support-copy-leading); }
.pricing-page .project-discussion a.button { max-width:100%; min-height:44px; border-color:var(--accent-cyan); background:var(--accent-cyan); color:var(--text); text-align:center; }
.pricing-page .project-discussion a.button:hover { border-color:var(--text); background:var(--surface); color:var(--text); }
.pricing-page :is(a,button,summary):focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
@media(max-width:1100px) {
  .pricing-page .p-section-head { grid-template-columns:minmax(0,1fr); gap:1.35rem; }
  .pricing-page .p-section-head h2 { max-width:26ch; }
}
@media(max-width:900px) {
  .pricing-page .p-cost-table, .pricing-page .p-cost-table tbody { display:block; }
  .pricing-page .p-cost-table thead { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .pricing-page .p-cost-table tbody { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
  .pricing-page .p-cost-table tbody tr { display:block; padding:1.3rem; border:1px solid var(--line); border-radius:var(--radius); }
  .pricing-page .p-cost-table tbody th { display:block; width:100%; padding:.3rem 0 1rem; border:0; font-weight:600; }
  .pricing-page .p-cost-table tbody td { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); }
  .pricing-page .p-cost-table tbody td:last-child { border:0; padding-bottom:0; }
  .pricing-page .p-cost-table tbody td::before { content:attr(data-label); color:var(--text-secondary); font-weight:400; }
  .pricing-page .p-table-value { border:0; }
  .pricing-page [data-price-enhanced=true] { grid-template-columns:minmax(0,1fr); }
  .pricing-page .p-plan-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .pricing-page .p-plan-tabs button { display:grid; gap:.65rem; align-content:start; padding:1rem; }
  .pricing-page .p-selection-mark { display:none; }
  .pricing-page .pv-features { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:680px) {
  .pricing-page .auralis-page-hero .auralis-page-hero__content { width:100%; }
  .pricing-page[data-pricing-page] .auralis-page-hero .auralis-page-hero__content h1 { max-width:100%; }
  .pricing-page .auralis-page-hero .auralis-page-hero__background { width:100%; }
  .pricing-page .auralis-page-hero .auralis-page-hero__shell { padding-block:6rem 3.5rem; }
  .pricing-page .p-web-grid { grid-template-columns:minmax(0,1fr); }
  .pricing-page .p-web-card { display:block; }
  .pricing-page .p-web-card .pricing-value { display:block; }
  .pricing-page .p-web-card .p-card-icon { margin-bottom:1.25rem; }
  .pricing-page .p-web-card .pv-price { margin-top:1rem; }
  .pricing-page .p-web-card .pv-body { margin-top:1.25rem; }
  .pricing-page .p-plan-panel > .pricing-value, .pricing-page .p-content-offer > .pricing-value { display:block; }
  .pricing-page .p-plan-panel .pv-price, .pricing-page .p-content-offer .pv-price { margin-top:1rem; text-align:left; }
  .pricing-page .p-plan-panel .pv-body, .pricing-page .p-content-offer .pv-body { margin-top:1.25rem; }
  .pricing-page .p-content-offer { grid-template-columns:minmax(0,1fr); }
  .pricing-page .p-software-panel { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
  .pricing-page .p-code-mark .p-icon { width:3rem; }
  .pricing-page .p-cost-table tbody { grid-template-columns:minmax(0,1fr); }
  .pricing-page .p-plan-tabs button { padding:.85rem .65rem; }
}
@media(prefers-reduced-motion:reduce) {
  .pricing-page *, .pricing-page *::before, .pricing-page *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
