/**
 * PROVIEW Mobile Final
 *
 * Site-wide mobile accessibility, readability and interaction refinements.
 * This file intentionally affects only screens at 920px and below.
 * It is loaded after the page-specific styles as the final protective layer.
 */

@media (max-width: 920px) {
    html {
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body {
        min-width: 0;
    }

    .site-wrapper,
    #site-content,
    #site-content > section {
        min-width: 0;
        max-width: 100%;
    }

    #site-content :where(img, picture, svg, video, canvas) {
        max-width: 100%;
        height: auto;
    }

    #site-content iframe {
        max-width: 100%;
    }

    #site-content :where(
        [class*="-grid"],
        [class*="-layout"],
        [class*="-inner"],
        [class*="-copy"],
        article,
        form
    ) {
        min-width: 0;
    }

    #site-content :where(
        h1,
        h2,
        h3,
        h4,
        p,
        li,
        a,
        strong,
        small,
        label
    ) {
        overflow-wrap: break-word;
    }

    .entry-content table,
    .woocommerce table.shop_table,
    .woocommerce-account .pv-account-table-wrap {
        display: block;
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /*
     * Header and fixed actions
     */
    .pv-main-header-inner {
        min-height: 0 !important;
        padding-top: 11px !important;
        padding-bottom: 11px !important;
        grid-template-columns: minmax(0, 1fr) 46px !important;
        column-gap: 13px !important;
    }

    .pv-logo-mark {
        width: 46px !important;
        height: 46px !important;
        flex-basis: 46px !important;
        border-radius: 11px !important;
        font-size: 22px !important;
    }

    .pv-logo-text strong {
        font-size: 21px !important;
    }

    .pv-logo-text small {
        margin-top: 6px !important;
        font-size: 8px !important;
        letter-spacing: 1.35px !important;
    }

    .pv-mobile-toggle {
        width: 46px !important;
        height: 46px !important;
        flex-basis: 46px !important;
        border-radius: 11px !important;
    }

    .pv-main-nav.is-open {
        max-height: calc(100vh - 100px) !important;
        max-height: calc(100dvh - 100px - env(safe-area-inset-bottom)) !important;
        -webkit-overflow-scrolling: touch;
    }

    .pv-main-nav .pv-menu > li > a {
        min-height: 52px !important;
        font-size: 15px !important;
    }

    .pv-main-nav .pv-menu > li > .sub-menu > li > a {
        min-height: 46px !important;
        display: flex !important;
        align-items: center !important;
        font-size: 14px !important;
    }

    .pv-mobile-action-bar-v2 a {
        min-height: 48px !important;
        font-size: 13px !important;
    }

    .pv-mobile-action-bar-v2 {
        transition: opacity .18s ease, transform .18s ease;
    }

    body.pv-mobile-menu-open .pv-mobile-action-bar-v2 {
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateY(120%) !important;
    }

    /*
     * Primary page actions
     */
    .pv-home21-btn,
    .pv-services-btn,
    .pv-products-btn,
    .pv-corporate-btn,
    .pv-blog-btn,
    .pv-contact-btn,
    .pv-contact-cta-actions a,
    .pv-home23-cta-actions a,
    .pv-services-cta-actions a,
    .pv-products-cta-actions a,
    .pv-corporate-cta-actions a,
    .pv-blog-cta-actions a {
        min-height: 46px !important;
        font-size: 13.5px !important;
    }

    /*
     * Compact hero panels: keep the premium layout while restoring
     * readable supporting copy on phones and tablets.
     */
    .pv-home21-panel-head b,
    .pv-services-hero-panel strong,
    .pv-products-panel-head b,
    .pv-corporate-panel-head strong {
        font-size: 12px !important;
        line-height: 1.3 !important;
    }

    .pv-home21-panel-head em,
    .pv-products-panel-head em,
    .pv-corporate-panel-head em {
        font-size: 10px !important;
    }

    .pv-products-panel-head small,
    .pv-corporate-panel-head small {
        font-size: 10.5px !important;
        line-height: 1.35 !important;
    }

    .pv-home21-panel-grid b,
    .pv-products-panel-grid b,
    .pv-corporate-panel-grid b {
        font-size: 11.5px !important;
        line-height: 1.25 !important;
    }

    .pv-home21-panel-grid small,
    .pv-services-hero-panel small,
    .pv-products-panel-grid small,
    .pv-corporate-panel-grid small {
        font-size: 10.5px !important;
        line-height: 1.35 !important;
    }

    .pv-home21-panel-foot,
    .pv-products-panel-foot,
    .pv-corporate-panel-foot {
        font-size: 10.5px !important;
        line-height: 1.35 !important;
    }

    /*
     * Blog discovery, filters and cards
     */
    .pv-blog-discovery-head small {
        font-size: 10.5px !important;
        line-height: 1.4 !important;
    }

    .pv-blog-search input {
        height: 46px !important;
        padding-right: 50px !important;
    }

    .pv-blog-search button {
        top: 1px !important;
        right: 1px !important;
        width: 44px !important;
        height: 44px !important;
    }

    .pv-blog-category-filter {
        scroll-snap-type: x proximity;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch;
    }

    .pv-blog-category-filter::-webkit-scrollbar {
        display: none;
    }

    .pv-blog-category-filter a {
        min-height: 44px !important;
        padding-right: 15px !important;
        padding-left: 15px !important;
        scroll-snap-align: start;
        font-size: 13px !important;
    }

    .pv-blog-post-meta {
        font-size: 11.5px !important;
    }

    .pv-blog-post-meta a {
        min-height: 44px !important;
        padding-right: 9px !important;
        padding-left: 9px !important;
        font-size: 11.5px !important;
    }

    .pv-blog-card h3 a {
        min-height: 44px !important;
        display: flex !important;
        align-items: center !important;
    }

    .pv-blog-card-body > p {
        font-size: 14.5px !important;
        line-height: 1.68 !important;
    }

    .pv-blog-card-bottom > span {
        font-size: 11.5px !important;
    }

    .pv-blog-card-bottom > a {
        min-height: 44px !important;
        font-size: 13px !important;
    }

    /*
     * Product category navigation and frequently used controls
     */
    .pv-products-category-list a,
    .pv-products-detail-btn,
    .pv-products-pagination a,
    .pv-blog-pagination a {
        min-height: 44px !important;
    }

    .pv-products-detail-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /*
     * Accordions and forms
     */
    .pv-home23-faq details > summary,
    .pv-services-faq details > summary,
    .pv-products-faq details > summary,
    .pv-corporate-faq details > summary,
    .pv-blog-faq details > summary,
    .pv-contact-faq details > summary {
        min-height: 52px !important;
        display: flex !important;
        align-items: center !important;
    }

    .pv-contact-field input,
    .pv-contact-field select {
        min-height: 44px !important;
        font-size: 16px !important;
    }

    .pv-contact-field textarea {
        font-size: 16px !important;
    }

    .pv-contact-field label {
        font-size: 13px !important;
        line-height: 1.4 !important;
    }

    .pv-contact-field-note,
    .pv-contact-consent,
    .pv-contact-submit-row > p {
        font-size: 12.5px !important;
        line-height: 1.55 !important;
    }

    /*
     * Keep card copy legible without enlarging decorative dashboard labels.
     */
    .pv-home21-service-card p,
    .pv-home22-benefit p,
    .pv-home22-process-card p,
    .pv-home22-product-card p,
    .pv-home23-sector-card p,
    .pv-home23-blog-card p,
    .pv-home23-faq-item p,
    .pv-products-card-body > p,
    .pv-products-process-grid article p,
    .pv-products-assurance-grid article p,
    .pv-corporate-principles article p,
    .pv-corporate-purpose-grid article p,
    .pv-corporate-values-grid article p,
    .pv-corporate-model-grid article p,
    .pv-blog-card-body > p,
    .pv-contact-step p,
    .pv-contact-faq-item p {
        font-size: 14.5px !important;
        line-height: 1.68 !important;
    }

    .pv-home21-service-card > a,
    .pv-home22-text-link,
    .pv-home23-blog-card > a,
    .pv-products-detail-btn,
    .pv-blog-card-bottom > a,
    .pv-contact-faq-copy > a {
        font-size: 13.5px !important;
    }

    /*
     * Prevent long dynamic content from causing narrow-screen overflow.
     */
    .pv-products-card,
    .pv-blog-card,
    .pv-contact-channel,
    .pv-site-footer.pv-footer-final {
        overflow-wrap: anywhere;
    }
}

@media (max-width: 767px) {
    .pv-home21,
    .pv-services-page,
    .pv-products-page,
    .pv-corporate-page,
    .pv-blog-page,
    .pv-contact-page,
    .pv-esign-page,
    .pv-web-page,
    .pv-software-page,
    .pv-mobile-app-page,
    .pv-ecommerce-page,
    .pv-virtual-office-page,
    .pv-hosting-page,
    .pv-seo-page {
        font-size: 15px;
        -webkit-font-smoothing: antialiased;
        text-rendering: optimizeLegibility;
    }

    :is(
        .pv-home21,
        .pv-products-page,
        .pv-corporate-page,
        .pv-blog-page,
        .pv-contact-page
    ) p {
        font-size: 14.5px !important;
        line-height: 1.68 !important;
    }

    :is(
        .pv-home21,
        .pv-services-page,
        .pv-products-page,
        .pv-corporate-page,
        .pv-blog-page,
        .pv-contact-page,
        .pv-esign-page,
        .pv-web-page,
        .pv-software-page,
        .pv-mobile-app-page,
        .pv-ecommerce-page,
        .pv-virtual-office-page,
        .pv-hosting-page,
        .pv-seo-page
    ) h1 {
        max-width: 100%;
        font-size: clamp(30px, 8.7vw, 35px) !important;
        line-height: 1.14 !important;
        letter-spacing: -.75px !important;
    }

    :is(
        .pv-home21,
        .pv-services-page,
        .pv-products-page,
        .pv-corporate-page,
        .pv-blog-page,
        .pv-contact-page,
        .pv-esign-page,
        .pv-web-page,
        .pv-software-page,
        .pv-mobile-app-page,
        .pv-ecommerce-page,
        .pv-virtual-office-page,
        .pv-hosting-page,
        .pv-seo-page
    ) h2 {
        max-width: 100%;
        font-size: clamp(25px, 7.5vw, 30px) !important;
        line-height: 1.2 !important;
        letter-spacing: -.5px !important;
    }

    :is(
        .pv-home21,
        .pv-services-page,
        .pv-products-page,
        .pv-corporate-page,
        .pv-blog-page,
        .pv-contact-page,
        .pv-esign-page,
        .pv-web-page,
        .pv-software-page,
        .pv-mobile-app-page,
        .pv-ecommerce-page,
        .pv-virtual-office-page,
        .pv-hosting-page,
        .pv-seo-page
    ) :is(summary, .pv-home23-faq-item summary) {
        min-height: 54px !important;
        font-size: 14.5px !important;
        line-height: 1.45 !important;
    }

    :is(
        .pv-products-kicker,
        .pv-corporate-kicker,
        .pv-blog-kicker,
        .pv-contact-kicker,
        .pv-contact-section-label,
        .pv-services-kicker,
        .pv-esign-kicker,
        .pv-web-kicker,
        .pv-software-kicker,
        .pv-mobile-app-kicker,
        .pv-ecommerce-kicker,
        .pv-virtual-office-kicker,
        .pv-hosting-kicker,
        .pv-seo-kicker
    ) {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }

    .pv-blog-category-filter {
        width: 100%;
        max-width: 100%;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto;
        white-space: nowrap;
    }
}

@media (max-width: 430px) {
    .pv-main-header-inner {
        min-height: 0 !important;
        padding: 10px 14px !important;
        grid-template-columns: minmax(0, 1fr) 44px !important;
        column-gap: 10px !important;
    }

    .pv-logo {
        gap: 9px !important;
    }

    .pv-logo-mark {
        width: 43px !important;
        height: 43px !important;
        flex-basis: 43px !important;
        font-size: 21px !important;
    }

    .pv-logo-text strong {
        font-size: 20px !important;
    }

    .pv-logo-text small {
        font-size: 7.5px !important;
        letter-spacing: 1.05px !important;
    }

    .pv-mobile-toggle {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }

    .pv-mobile-action-bar-v2 {
        gap: 7px !important;
        padding-right: 8px !important;
        padding-left: 8px !important;
    }

    .pv-mobile-action-bar-v2 a {
        padding-right: 8px !important;
        padding-left: 8px !important;
        font-size: 12.5px !important;
    }
}

@media (max-width: 360px) {
    .pv-home21-panel-grid small,
    .pv-services-hero-panel small,
    .pv-products-panel-grid small,
    .pv-corporate-panel-grid small {
        font-size: 10.5px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .pv-blog-category-filter,
    .pv-mobile-action-bar-v2 {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* Provion başvuru ve ödeme: mobil alan okunabilirliği. */
@media (max-width: 800px) {
 .pvbs-apply input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .pvbs-apply select, .pvbs-apply textarea, .pv-payment-only input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), .pv-payment-only select, .pv-payment-only textarea { font-size:16px !important; min-height:48px; max-width:100%; box-sizing:border-box; }
 .pvbs-fields > *, .pvbs-office-card > *, .pv-payment-only article, .pv-payment-only form, .pv-payment-only .pv-garanti-card, .pv-payment-only .pv-garanti-card-row > * { min-width:0; }
 .pvbs-disclosure, .pvbs-office-card, .pv-payment-only .payment_box { overflow-wrap:anywhere; }
 .pvbs-apply .pvbs-office-card { flex-wrap:wrap; }
 .pvbs-apply .pvbs-step-actions { gap:12px; }
 .pvbs-apply .pvbs-apply-button { min-height:44px; }
}

/* Provion müşteri paneli: mobil filtre ve yenileme erişimi. */
@media (max-width: 600px) {
 .woocommerce-account .pvbs-portal select { font-size:16px !important; min-height:48px !important; max-width:100%; }
 .woocommerce-account .pvbs-portal button, .woocommerce-account .pvbs-portal-head > a { min-height:44px; }
 .woocommerce-account .pvbs-portal-head > a { display:inline-flex; align-items:center; justify-content:center; }
 .woocommerce-account .pvbs-portal-filter select { flex:1 1 180px; min-width:0; }
 .woocommerce-account .pvbs-portal-card dl > div, .woocommerce-account .pvbs-portal-card footer > *, .woocommerce-account .pvbs-portal-meta > * { min-width:0; max-width:100%; overflow-wrap:anywhere; }
 .woocommerce-account .pvbs-portal-card footer form { gap:10px; }
}
