/* v1.29: compact mobile cards; shared plans for both audiences. */
.mobile-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.mobile-plan{min-width:0;background:#fff;border:1px solid #d9d9d1;border-radius:5px;padding:20px;display:flex;flex-direction:column}
.mobile-plan:focus-within,.mobile-plan:hover{border-color:#8b8b80}
.mobile-plan-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;min-height:30px}
/* Show the original Orizon artwork at x268,y6 (245x60) in the official
   547x74 composite. The source bitmap and brand colours remain unchanged. */
.orizon-logo{position:relative;display:block;overflow:hidden;width:116px;aspect-ratio:245 / 60;flex:none}
.orizon-logo img{position:absolute;left:-109.387755%;top:-10%;width:223.265306%;height:123.333333%;max-width:none;object-fit:fill;filter:none}
.mobile-plan-badge{border:1px solid #d8e4f3;border-radius:3px;color:#275783;background:#f4f8fc;padding:3px 6px;font-size:.7rem}
.mobile-plan h3{font-size:.8125rem;line-height:1.6;font-weight:500;margin:0 0 14px}
.mobile-plan-offer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding-bottom:16px;border-bottom:1px solid #e2e2da}
.mobile-plan-data{font-size:2rem;font-weight:550;letter-spacing:-.045em;line-height:1.3;color:#191919}
.mobile-plan-data.unlimited{font-size:1.18rem;line-height:2.2;letter-spacing:-.035em}
.mobile-plan-data span{display:block;font-size:.6875rem;font-weight:400;letter-spacing:0;line-height:1.6;color:#5d5d54;margin-top:3px}
.mobile-plan-price{text-align:right}
.mobile-plan-price strong{display:block;font-size:2rem;line-height:1.3;font-weight:550;letter-spacing:-.035em;white-space:nowrap}
.mobile-plan-price>span{display:block;font-size:.6875rem;line-height:1.6;color:#59594f;margin-top:3px}
.mobile-plan-benefits{font-size:.8125rem;line-height:1.7;margin-top:13px;font-weight:500}
.mobile-plan-benefits span{display:block;font-size:.6875rem;font-weight:400;color:#66665d}
.mobile-plan-duration{font-size:.75rem;line-height:1.7;color:#55554d;margin-top:7px}
.mobile-plan-note{font-size:.75rem;line-height:1.7;margin-top:10px;color:#55554d}
.mobile-plan-details{margin:10px 0 8px;border:0}
.mobile-plan-details summary{cursor:pointer;font-size:.75rem;padding:11px 0;min-height:44px;line-height:1.6}
.mobile-plan-details ul{font-size:.75rem;line-height:1.8;padding-left:18px;color:#55554d;margin:8px 0 14px}
.mobile-plan-details li+li{margin-top:9px}
.mobile-plan>.btn{font-size:.8125rem;min-height:44px;padding:10px;width:100%;margin-top:auto}
.mobile-pricing-note{font-size:.75rem;line-height:1.9;color:#626259;max-width:920px;margin-top:22px}
.mobile-combo-note{font-size:.875rem;line-height:1.9;border-top:1px solid #dcdcd3;padding-top:20px;margin-top:20px}
.mobile-combo-note a{text-decoration:underline;text-underline-offset:4px}
.mobile-catalogue :focus-visible{outline:2px solid #222;outline-offset:4px}
@media(max-width:1180px){.mobile-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.mobile-plan{padding:21px}.mobile-plan-data.unlimited{font-size:1.5rem;line-height:1.73}}
@media(max-width:640px){.mobile-plan-grid{grid-template-columns:1fr;gap:16px}.mobile-plan{padding:20px}.mobile-plan-benefits,.mobile-plan-details summary,.mobile-plan>.btn{font-size:.875rem}.mobile-plan-details ul,.mobile-plan-note,.mobile-pricing-note,.mobile-plan-duration{font-size:.8125rem}.mobile-plan-benefits span,.mobile-plan-data span,.mobile-plan-price>span{font-size:.75rem}.mobile-combo-note{font-size:.8125rem}}
