/* Pricing composition only. Shared hero, FAQ, typography and controls are reused. */
.pricing-page .price-options,.pricing-page .price-included,.pricing-page .price-faq{padding:38px 0}
.pricing-page .rich-text{margin-top:20px}
.pricing-page .service-hero-copy .button,.pricing-page .price-included .button,.pricing-page .price-faq .button{margin-top:24px}
.pricing-page .price-intro{text-align:center;max-width:1000px;margin-inline:auto}
.pricing-page .price-intro .rich-text{max-width:900px;margin-inline:auto;margin-top:16px}
.pricing-page .price-notice{font-size:var(--font-size-hint);color:var(--text-accent-on-light);margin-top:12px}
.pricing-page .price-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:28px}
.pricing-page .price-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#fffdf9;transition:border-color .18s}
.pricing-page .price-card:hover{border-color:#b88a55}
.pricing-page .price-card-photo{aspect-ratio:2/1;overflow:hidden}
.pricing-page .price-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .22s}
@media(hover:hover){.pricing-page .price-card:hover img{transform:scale(1.02)}}
.pricing-page .price-card-content{display:flex;flex-direction:column;align-items:stretch;flex:1;min-width:0;padding:24px}
.pricing-page .price-card-size{font-size:var(--font-size-question);font-weight:var(--weight-semibold);margin-top:3px}
.pricing-page .price-value{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;color:var(--gold);font-family:var(--heading);font-size:var(--font-size-secondary);font-weight:var(--weight-semibold);line-height:var(--line-heading);margin-top:18px;overflow-wrap:anywhere}
.pricing-page .price-value strong{font-size:var(--font-size-h2);font-weight:var(--weight-display)}
.pricing-page .price-value .price-unit{font-size:var(--font-size-h3)}
.pricing-page .price-example{font-size:var(--font-size-hint);color:var(--text-accent-on-light);margin-top:8px}
.pricing-page .price-features{padding:0;margin:22px 0 24px;list-style:none;display:grid;gap:12px;font-size:var(--font-size-secondary)}
.pricing-page .price-features li{display:flex;align-items:flex-start;gap:12px;overflow-wrap:anywhere}
.pricing-page .price-card-content>.button{width:100%;margin-top:auto;gap:12px;padding-inline:16px}
.pricing-page .price-quote{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px;border:1px solid #e7e1d8;border-radius:4px;background:#fff;margin-top:24px}
.pricing-page .price-quote .icon-circle{width:76px;height:76px;border:0;background:#f6eedf;color:var(--gold)}
.pricing-page .price-quote .rich-text{font-size:var(--font-size-secondary);margin-top:6px}
.pricing-page .price-included-grid{display:grid;grid-template-columns:43% 52%;gap:5%;align-items:center}
.pricing-page .price-included-grid>div{min-width:0}
.pricing-page .price-included-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 22px;list-style:none;margin:0;padding:0}
.pricing-page .price-included-list li{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;align-items:start}
.pricing-page .price-included-list .icon-circle{width:56px;height:56px}
.pricing-page .price-included-list .icon{width:30px;height:30px}
.pricing-page .price-included-list p{font-size:var(--font-size-secondary);line-height:var(--line-secondary);color:var(--text-muted-light);margin-top:8px;overflow-wrap:anywhere}
.pricing-page .price-empty{margin-top:24px}
@media(max-width:1023px){
 .pricing-page .price-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .pricing-page .price-card-content{padding:20px}
 .pricing-page .price-quote{grid-template-columns:60px minmax(0,1fr);gap:20px}
 .pricing-page .price-quote .icon-circle{width:60px;height:60px}
 .pricing-page .price-quote>.button{grid-column:2;justify-self:start}
 .pricing-page .price-included-grid{grid-template-columns:minmax(0,1fr);gap:30px}
}
@media(max-width:767px){
 .pricing-page .price-options,.pricing-page .price-included,.pricing-page .price-faq{padding:36px 0}
 .pricing-page .price-intro{text-align:left}
 .pricing-page .price-included-list{gap:24px 20px}
}
@media(max-width:639px){
 .pricing-page .price-card-grid{grid-template-columns:minmax(0,1fr)}
 .pricing-page .price-quote{padding:20px;grid-template-columns:50px minmax(0,1fr);gap:16px}
 .pricing-page .price-quote .icon-circle{width:50px;height:50px}
 .pricing-page .price-quote .icon{width:30px;height:30px}
 .pricing-page .price-quote>.button{grid-column:1/-1;width:100%}
 .pricing-page .price-included-list{grid-template-columns:minmax(0,1fr)}
 .pricing-page .price-faq .button{max-width:100%}
}
@media(prefers-reduced-motion:reduce){.pricing-page *, .pricing-page *::after{animation:none!important;transition:none!important}}
