/* phone layout from page stylesheet, loaded after nav.css */
@media (max-width: 760px) {
      .shell { padding: 0 20px; }
      .nav { left: -20px; right: -20px; padding-left: 20px; padding-right: 20px; }
      .logo img { height: 70px; width: auto; }
      .cg-hero { display: flex; flex-direction: column; gap: 0; padding: 8px 0 8px; }
      .cg-hero .cg-art { order: -1; width: 100%; height: 220px; margin: 0 0 24px; }
      .cg-hero > :first-child { padding-top: 0; }
      .cg-hero .crumb { margin: 0 0 16px; font-size: 12px; }
      .cg-hero h1 { font-size: 32px; line-height: 1.15; letter-spacing: -0.6px; }
      .cg-hero p { margin-top: 16px; max-width: none; font-size: 16px; line-height: 26px; }
      .cg-hero .btn { width: 100%; max-width: 100%; height: 56px; margin-top: 24px; justify-content: center; box-sizing: border-box; }
      .cg-art.reveal, .cg-art.reveal > * { opacity: 1; transform: none; filter: none; }
      .section { padding: 28px 20px; }
      .section h2 { font-size: 28px; line-height: 1.25; letter-spacing: -0.4px; }
      .role { padding-top: 40px !important; }
      .role .center-copy, .prac .center-copy { margin: 0 0 20px; text-align: left; }
      .center-copy p, .split-copy p { max-width: none; font-size: 16px; line-height: 26px; }
      .wellbeing { background: #ffffff; padding-top: 12px; }
      .split { display: flex; flex-direction: column; gap: 0; }
      .wellbeing .cg-art { order: 2; width: 100%; height: 240px; margin: 20px auto 0; }
      .cta-search { width: 100%; max-width: 100%; min-width: 0; height: 56px; margin-top: 24px; padding: 0 18px; box-sizing: border-box; justify-content: space-between; }
      .newsletter { padding-block: 48px; }
      .newsletter h2 { font-size: 28px; }
      .newsletter-form { flex-direction: column; align-items: stretch; gap: 12px; }
      .newsletter input, .newsletter .btn { width: 100%; }
      .footer { padding-top: 36px; }
      .footer-social { display: none; }
      .footer .logo img { display: none; }
      .footer .logo-word { display: block; margin: 0 0 16px; font: 300 32px/1.15 Poppins, sans-serif; color: #3a3a3f; }
      .footer .logo-word span { color: #E6B24A; }
      .footer-grid { grid-template-columns: 1fr; gap: 0; }
      .footer-grid > div:first-child { margin-bottom: 28px; }
      .footer-grid > div:first-child p { margin: 0; max-width: 340px; font: 400 16px/26px Inter, sans-serif; }
      .footer-acc-label { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0; padding: 18px 0; border-bottom: 1px solid #e6e6e0; cursor: pointer; pointer-events: auto; }
      .footer-acc-label h3 { margin: 0; font: 500 18px/1.2 Poppins, sans-serif; }
      .footer-acc-label::after { content: ''; width: 8px; height: 8px; border-right: 1.5px solid #3a3a3f; border-bottom: 1.5px solid #3a3a3f; transform: rotate(45deg) translateY(-3px); flex: 0 0 auto; }
      .footer-acc-input:checked + .footer-acc-label::after { transform: rotate(-135deg) translateY(-1px); }
      .footer-acc-panel { display: none; padding: 6px 0 8px; }
      .footer-acc-input:checked ~ .footer-acc-panel { display: block; }
      .footer-bottom { flex-direction: column; align-items: flex-start; gap: 14px; padding-top: 28px; }
    }

@media (max-width: 1100px) {
      .life, .prac {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
      }
      .life > .section-inner,
      .prac > .section-inner {
        position: static !important;
        display: block !important;
        height: auto !important;
        overflow: visible !important;
      }
      .life-grid, .prac-grid {
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
      }
      h1, h2, h3, p, li {
        overflow-wrap: normal !important;
        word-break: normal !important;
        word-spacing: normal !important;
      }
    }
    @media (max-width: 760px) {
      .wellbeing { background: #ffffff !important; }
      .prac { background: #F7F7F2 !important; }
      .wellbeing .cg-art {
        order: 2;
        width: 100% !important;
        max-width: none !important;
        height: 240px !important;
        min-height: 240px !important;
        margin: 20px auto 0 !important;
      }
      .role-stack, .prac { min-height: 0 !important; height: auto !important; overflow: visible !important; }
      .role-pin, .prac > .section-inner { position: static !important; min-height: 0 !important; height: auto !important; padding: 0 !important; display: block !important; }
      .role-stack .role-grid, #practical .prac-grid {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 12px !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-y: none;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
      }
      .role-stack .role-grid::-webkit-scrollbar, #practical .prac-grid::-webkit-scrollbar { display: none; }
      .role-stack .role-card, #practical .prac-card {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        filter: none !important;
        opacity: 1 !important;
        flex: 0 0 88% !important;
        width: 88% !important;
        max-width: 88% !important;
        align-self: stretch !important;
        height: auto !important;
        min-height: 100% !important;
        scroll-snap-align: start;
        scroll-snap-stop: always;
      }
      .role-card { display: flex !important; flex-direction: column !important; padding: 22px 20px 24px !important; border-radius: 16px !important; background: #3a3a3f !important; }
      .role-card img { width: 56px; height: 56px; margin: 0 0 16px; object-fit: contain; }
      .role-card h3 { font-size: 20px; }
      .role-card p { font-size: 15px; line-height: 24px; }
      .prac-card {
        display: flex !important;
        flex-direction: column !important;
        padding: 22px 20px 20px !important;
        border-radius: 16px !important;
        background: #e8eaee !important;
      }
      .prac-card h3 { min-height: 0; font-size: 20px; }
      .prac-card p { flex: 1 1 auto; margin-bottom: 20px; font-size: 15px; line-height: 24px; }
      .prac-card .btn { width: 100%; height: 48px; margin-top: auto; align-self: stretch; justify-content: center; }
      .role-dots, .prac-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin: 18px 0 0;
      }
      .role-dots button, .prac-dots button {
        width: 6px; height: 6px; padding: 0; border: 0; border-radius: 50%;
        background: #d0d0c8; cursor: pointer;
      }
      .role-dots button.is-active, .prac-dots button.is-active { width: 18px; border-radius: 4px; background: #E6B24A; }
    }
