:root {
            --pt-yellow: #ffc120;
            --pt-yellow-soft: #fff5d6;
            --pt-ink: #171717;
            --pt-text: #303744;
            --pt-muted: #667085;
            --pt-border: #e5e7eb;
            --pt-soft: #f8fafc;
            --pt-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
        }

        *,
        *::before,
        *::after {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            margin: 0;
            max-width: 100vw;
            overflow-x: hidden;
            background: #ffffff;
            color: var(--pt-text);
            font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            line-height: 1.5;
        }

        img,
        svg {
            max-width: 100%;
            height: auto;
        }

        a {
            color: inherit;
        }

        button,
        input,
        summary {
            font: inherit;
        }

        body > div.lg\:hidden {
            display: block;
            position: relative;
            z-index: 101;
            background: #1a1a1a;
            color: #ffffff;
            text-align: center;
            padding: 8px 16px;
        }

        body > div.lg\:hidden a {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            color: #ffffff;
            font-size: 0.88rem;
            font-weight: 700;
            text-decoration: none;
        }

        body > div.lg\:hidden span:first-child,
        body > div.lg\:hidden span:last-child {
            color: var(--pt-yellow);
            font-weight: 900;
            text-transform: uppercase;
        }

        nav.shadow-sm {
            position: relative;
            z-index: 80;
            min-height: 72px;
            padding: 12px 0;
            background: #ffffff;
            box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
        }

        nav.shadow-sm > div {
            width: 100%;
            height: 100%;
            max-width: 100%;
            margin: 0 auto;
            padding: 0 16px;
        }

        nav.shadow-sm > div > div {
            min-height: 48px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
        }

        nav.shadow-sm .flex.items-center {
            display: flex;
            align-items: center;
        }

        nav.shadow-sm img[alt="PTENOTE Logo"] {
            width: auto;
            height: 48px;
            max-width: none;
        }

        nav.shadow-sm .hidden.lg\:flex {
            display: none;
        }

        .nav-link {
            position: relative;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            color: #374151;
            font-size: 1.1vw;
            font-weight: 500;
            text-decoration: none;
            white-space: nowrap;
        }

        .nav-link::after {
            content: "";
            position: absolute;
            bottom: -8px;
            left: 0;
            width: 0;
            height: 3px;
            background: var(--pt-yellow);
            transition: width 160ms ease;
        }

        .nav-link:hover::after,
        .nav-link.active::after {
            width: 100%;
        }

        .nav-link img {
            width: 20px;
            height: 20px;
            object-fit: contain;
        }

        nav.shadow-sm a[href*="learn.ptenote.com"] {
            display: inline-flex;
            align-items: center;
            gap: 4px;
            border-radius: 8px;
            background: #2d2d2d;
            color: #ffffff;
            padding: 6px 12px;
            font-size: 0.75rem;
            font-weight: 500;
            text-decoration: none;
        }

        nav.shadow-sm a[href*="learn.ptenote.com"] svg {
            width: 12px;
            height: 12px;
            flex: 0 0 auto;
        }

        .blog-container {
            width: min(1320px, calc(100% - 32px));
            margin: 0 auto;
        }

        .listing-header {
            border-bottom: 1px solid var(--pt-border);
            background:
                linear-gradient(rgba(26, 26, 26, 0.035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(26, 26, 26, 0.035) 1px, transparent 1px),
                linear-gradient(180deg, #fffdf8 0%, #ffffff 100%);
            background-size: 42px 42px, 42px 42px, auto;
            padding: 44px 0 34px;
        }

        .listing-header h1 {
            max-width: 760px;
            margin: 0;
            color: var(--pt-ink);
            font-size: 3rem;
            line-height: 1.06;
            font-weight: 900;
        }

        .listing-header p {
            max-width: 720px;
            margin: 12px 0 0;
            color: var(--pt-muted);
            font-size: 1.05rem;
            font-weight: 600;
        }

        .listing-tools {
            display: grid;
            grid-template-columns: minmax(240px, 1fr) 220px;
            gap: 12px;
            margin-top: 22px;
            overflow: visible;
        }

        .listing-search-field {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 48px;
            gap: 8px;
            border: 1px solid #cfd6df;
            border-radius: 8px;
            background: #ffffff;
            padding: 8px;
            box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
        }

        .listing-tools input {
            width: 100%;
            min-width: 0;
            min-height: 44px;
            border: 0;
            background: transparent;
            color: #1f2937;
            padding: 0 12px;
            outline: none;
        }

        .listing-search-button {
            width: 44px;
            height: 44px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            background: #ffffff;
            color: #111827;
            padding: 0;
            cursor: pointer;
            transition: transform 160ms ease, box-shadow 160ms ease;
        }

        .listing-search-button:hover,
        .listing-search-button:focus-visible {
            transform: translateY(-1px);
            box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
        }

        .listing-search-button:focus-visible {
            outline: 3px solid rgba(255, 193, 32, 0.35);
            outline-offset: 2px;
        }


        .category-dropdown {
            position: relative;
            width: 100%;
        }

        .category-dropdown summary {
            min-height: 62px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            border: 1px solid #d9dee7;
            border-radius: 8px;
            background: #ffffff;
            color: #1f2937;
            padding: 0 14px;
            font-weight: 800;
            cursor: pointer;
            list-style: none;
            box-shadow: 0 8px 20px rgba(15, 23, 42, 0.04);
        }

        .category-dropdown summary::-webkit-details-marker {
            display: none;
        }

        .category-dropdown summary::after {
            content: "";
            width: 9px;
            height: 9px;
            border-right: 2px solid #1f2937;
            border-bottom: 2px solid #1f2937;
            transform: rotate(45deg) translateY(-2px);
            transition: transform 160ms ease;
        }

        .category-dropdown[open] summary {
            border-color: var(--pt-yellow);
            box-shadow: 0 10px 24px rgba(255, 193, 32, 0.2);
        }

        .category-dropdown[open] summary::after {
            transform: rotate(225deg) translateY(-2px);
        }

        .category-options {
            position: absolute;
            z-index: 50;
            top: calc(100% + 8px);
            left: 0;
            right: 0;
            display: grid;
            gap: 4px;
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            background: #ffffff;
            padding: 8px;
            box-shadow: 0 18px 42px rgba(15, 23, 42, 0.16);
        }

        .category-options a {
            display: block;
            border-radius: 6px;
            color: var(--pt-text);
            padding: 9px 10px;
            font-size: 0.9rem;
            font-weight: 700;
            text-decoration: none;
        }

        .category-options a:hover,
        .category-options a:focus-visible {
            background: var(--pt-yellow-soft);
            color: #1a1a1a;
        }

        .blog-main {
            display: grid;
            grid-template-columns: minmax(0, 1fr) 330px;
            gap: 34px;
            align-items: start;
            padding: 34px 0 62px;
        }

        .section-title {
            display: flex;
            align-items: center;
            gap: 8px;
            margin: 0 0 18px;
            color: var(--pt-ink);
            font-size: 1.42rem;
            line-height: 1.2;
            font-weight: 900;
        }

        .title-spark {
            color: var(--pt-yellow);
            font-weight: 900;
        }

        .latest-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 18px;
        }

        .mini-card {
            display: grid;
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            overflow: visible;
            background: #ffffff;
            color: var(--pt-text);
            text-decoration: none;
            box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
            transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
        }

        .mini-card:hover,
        .mini-card:focus-visible {
            transform: translateY(-2px);
            border-color: rgba(255, 193, 32, 0.8);
            box-shadow: var(--pt-shadow);
        }

        .mini-card__thumb {
            display: block;
            aspect-ratio: 1.91 / 1;
            overflow: visible;
            background: #f3f4f6;
        }

        .mini-card__thumb img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: cover;
            transition: transform 220ms ease;
        }

        .mini-card:hover .mini-card__thumb img,
        .mini-card:focus-visible .mini-card__thumb img {
            transform: scale(1.035);
        }

        .mini-card__copy {
            display: grid;
            gap: 8px;
            padding: 16px;
        }

        .mini-card h3 {
            margin: 0;
            color: var(--pt-ink);
            font-size: 1.04rem;
            line-height: 1.2;
            font-weight: 900;
        }

        .mini-card p {
            margin: 0;
            color: #536071;
            font-size: 0.9rem;
        }

        .mini-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            color: #667085;
            font-size: 0.78rem;
            font-weight: 700;
        }

        .read-link {
            color: #b45309;
            font-size: 0.78rem;
            font-weight: 900;
        }

        .blog-pagination {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            gap: 10px;
            margin: 28px 0 0;
        }

        .blog-pagination a,
        .blog-pagination span {
            min-width: 42px;
            min-height: 42px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            background: #ffffff;
            color: #1a1a1a;
            padding: 0 14px;
            font-size: 0.92rem;
            font-weight: 800;
            text-decoration: none;
        }

        .blog-pagination .is-current {
            border-color: var(--pt-yellow);
            background: var(--pt-yellow);
        }

        .blog-pagination a:hover,
        .blog-pagination a:focus-visible {
            border-color: var(--pt-yellow);
            box-shadow: 0 8px 20px rgba(255, 193, 32, 0.2);
        }

        .blog-sidebar {
            position: sticky;
            top: 18px;
            display: grid;
            gap: 18px;
        }

        .side-card {
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            background: #ffffff;
            box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
        }

        .help-card {
            display: grid;
            grid-template-columns: 35% 65%;
            gap: 0;
            align-items: stretch;
            height: 170px;
            padding: 0;
            overflow: hidden;
            border: 3px dashed var(--pt-yellow);
            background: rgba(255, 193, 32, 0.1);
        }

        .help-card .mini-owl {
            width: 100%;
            height: 100%;
            min-height: 0;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: start;
            overflow: visible;
            position: relative;
            right: 10px;
            padding: 0;
        }

        .help-card .mini-owl img {
            width: auto;
            height: 100%;
            max-width: 140px;
            max-height: 140px;
            object-fit: contain;
            object-position: center bottom;
        }

        .help-content {
            display: flex;
            flex-direction: column;
            justify-content: center;
            min-width: 0;
            padding: 20px 12px 20px 12px;
        }

        .help-card h2,
        .side-widget h2 {
            margin: 0 0 6px;
            color: var(--pt-ink);
            font-size: 1.12rem;
            line-height: 1.2;
            font-weight: 900;
        }

        .help-card p {
            margin: 0;
            color: #344054;
            font-size: 0.9rem;
            font-weight: 800;
        }

        .help-card a[href^="tel"]:not(.blog-button) {
            display: block;
            margin-top: 2px;
            color: #111827;
            font-size: 1.42rem;
            line-height: 1.1;
            font-weight: 900;
            text-decoration: none;
        }

        .blog-button {
            min-height: 48px;
            min-width: 210px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 12px;
            border: 1px solid var(--pt-yellow);
            border-radius: 8px;
            background: var(--pt-yellow);
            color: #1a1a1a;
            padding: 0 22px;
            font-weight: 900;
            text-decoration: none;
            transition: transform 160ms ease, box-shadow 160ms ease;
        }

        .blog-button:hover,
        .blog-button:focus-visible {
            transform: translateY(-1px);
            box-shadow: 0 10px 24px rgba(255, 193, 32, 0.32);
        }

        .blog-button--light {
            background: #ffffff;
            border-color: #ffffff;
        }

        .help-card .blog-button {
            min-width: 0;
            min-height: 40px;
            width: 100%;
            margin-top: 12px;
            padding: 0 18px;
            font-size: 0.95rem;
            line-height: 1;
        }

        .side-widget {
            padding: 18px;
        }

        .side-widget ul,
        .side-widget ol {
            display: grid;
            gap: 10px;
            margin: 12px 0 0;
            padding: 0;
            list-style: none;
        }

        .side-widget li {
            color: #4b5563;
            font-size: 0.86rem;
            font-weight: 400;
        }

        .side-widget a {
            color: inherit;
            text-decoration: none;
        }

        .side-widget a:hover,
        .side-widget a:focus-visible {
            color: #b45309;
            text-decoration: underline;
        }

        .download-list li {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .download-list img {
            width: 18px;
            height: 18px;
            flex: 0 0 18px;
            object-fit: contain;
        }

        .ranked-list {
            counter-reset: guide-rank;
        }

        .ranked-list li {
            counter-increment: guide-rank;
            display: grid;
            grid-template-columns: 24px minmax(0, 1fr);
            gap: 8px;
        }

        .ranked-list li::before {
            content: counter(guide-rank);
            width: 24px;
            height: 24px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 999px;
            background: var(--pt-yellow);
            color: #1a1a1a;
            font-size: 0.72rem;
            font-weight: 900;
        }

        .side-action {
            display: inline-flex;
            margin-top: 14px;
            color: #b45309 !important;
            font-weight: 900;
        }

        .path-section {
            padding: 10px 0 34px;
        }

        .path-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 14px;
        }

        .path-card {
            display: grid;
            grid-template-columns: 76px minmax(0, 1fr);
            gap: 14px;
            min-height: 160px;
            border: 1px solid var(--pt-border);
            border-radius: 8px;
            background: #ffffff;
            padding: 16px;
            color: var(--pt-text);
            text-decoration: none;
            box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
            transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
        }

        .path-card:hover,
        .path-card:focus-visible {
            transform: translateY(-2px);
            border-color: var(--pt-yellow);
            box-shadow: var(--pt-shadow);
        }

        .path-icon {
            width: 70px;
            height: 70px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border-radius: 8px;
            background: transparent;
        }

        .path-icon img {
            width: 100%;
            height: 100%;
            display: block;
            object-fit: contain;
        }

        .path-card strong {
            display: block;
            color: var(--pt-ink);
            font-size: 1rem;
            line-height: 1.2;
            font-weight: 900;
        }

        .path-card span span {
            display: block;
            margin-top: 6px;
            color: var(--pt-muted);
            font-size: 0.84rem;
        }

        .path-card em {
            display: inline-flex;
            margin-top: 10px;
            color: #b45309;
            font-size: 0.78rem;
            font-style: normal;
            font-weight: 900;
        }

        .booking-banner {
            position: relative;
            display: grid;
            grid-template-columns: minmax(0, 1fr) 310px 190px;
            gap: 30px;
            align-items: center;
            min-height: 216px;
            margin: 0 auto 28px;
            border-radius: 8px;
            background: #141414;
            color: #ffffff;
            padding: 26px 30px;
            overflow: visible;
            box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18);
        }

        .booking-banner h2 {
            max-width: 610px;
            margin: 0;
            color: #ffffff;
            font-size: 2.2rem;
            line-height: 1.1;
            font-weight: 900;
        }

        .booking-banner h2 span {
            color: var(--pt-yellow);
            text-decoration: underline;
        }

        .booking-banner p {
            max-width: 590px;
            margin: 10px 0 0;
            color: rgba(255, 255, 255, 0.78);
            font-weight: 600;
        }

        .booking-actions {
            display: grid;
            gap: 12px;
        }

        .booking-banner .mini-owl {
            position: absolute;
            right: 30px;
            bottom: -25px;
            transform: none;
            justify-self: end;
            align-self: end;
            width: 214px;
            height: 214px;
        }

        footer.footer-section {
            position: relative;
            overflow: hidden;
            background: #1a1a1a;
            color: #ffffff;
            padding: 32px 48px 96px;
        }

        footer.footer-section .copy-right,
        footer.footer-section > .footer-inner {
            position: relative;
            z-index: 1;
            width: min(1400px, calc(100% - 24px));
            margin: 0 auto;
        }

        footer.footer-section .phone-row {
            display: flex;
            flex-wrap: wrap;
            gap: 40px;
            align-items: center;
            color: #ffffff;
            font-size: 42px;
            line-height: 1;
            font-weight: 400;
        }

        footer.footer-section .phone-row > div {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            line-height: 1;
        }

        footer.footer-section picture img {
            width: 80px;
            max-width: 80px;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            gap: 28px;
            margin: 24px 0 28px;
        }

        footer.footer-section h4 {
            margin: 0 0 12px;
            color: #b45309;
            font-size: 1rem;
            font-weight: 900;
        }

        footer.footer-section ul {
            display: grid;
            gap: 8px;
            margin: 0;
            padding: 0;
            list-style: none;
        }

        footer.footer-section li.flex {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        footer.footer-section li.flex > img {
            width: 18px;
            height: 18px;
            max-width: 18px;
            flex: 0 0 18px;
            object-fit: contain;
        }

        footer.footer-section .footer-link {
            color: #aaaaaa;
            font-size: 13px;
            line-height: 1.3;
            text-decoration: none;
        }

        footer.footer-section .footer-link:hover,
        footer.footer-section .footer-link:focus-visible {
            text-decoration: underline;
        }

        .footer-bottom {
            border-top: 1px solid #444444;
            padding-top: 18px;
            text-align: center;
        }

        .footer-bottom > div {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px 12px;
            margin-bottom: 12px;
        }

        .footer-bottom a {
            color: #888888;
            font-size: 13px;
            text-decoration: underline;
        }

        .footer-bottom p {
            margin: 0;
            color: #666666;
            font-size: 12px;
        }

        .footer-bottom strong {
            color: #b45309;
        }

        body > nav.fixed.bottom-2 {
            position: fixed;
            left: 16px;
            right: 16px;
            bottom: 8px;
            z-index: 9999;
            display: flex;
            align-items: center;
            justify-content: space-around;
            gap: 2px;
            min-height: 74px;
            padding: 4px 12px;
            border: 1px solid rgba(255, 255, 255, 0.4);
            border-radius: 35px;
            background: rgba(255, 255, 255, 0.7);
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
            backdrop-filter: blur(12px);
        }

        body > nav.fixed.bottom-2 .mobile-nav-item {
            flex: 1 1 0;
            min-width: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 4px;
            color: #6b7280;
            font-size: 0.68rem;
            font-weight: 700;
            text-decoration: none;
            white-space: nowrap;
        }

        body > nav.fixed.bottom-2 img {
            width: 20px;
            height: 20px;
        }

        body > nav.fixed.bottom-2 a[id="mobileNavHome"] > div {
            width: 64px;
            height: 64px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-top: -18px;
            margin-bottom: 8px;
            border: 4px solid #ffffff;
            border-radius: 999px;
            background: var(--pt-yellow);
            box-shadow: 0 8px 20px rgba(255, 193, 32, 0.4);
        }

        @media (min-width: 1024px) {
            body > div.lg\:hidden {
                display: none;
            }

            nav.shadow-sm {
                height: 80px;
                padding: 0;
            }

            nav.shadow-sm > div {
                padding: 0 32px;
            }

            nav.shadow-sm > div > div {
                min-height: 80px;
            }

            nav.shadow-sm .hidden.lg\:flex {
                display: flex;
                align-items: center;
                gap: 32px;
            }

            nav.shadow-sm img[alt="PTENOTE Logo"] {
                height: max(4vw, 55px);
            }

            nav.shadow-sm a[href*="learn.ptenote.com"] {
                gap: 0.5vw;
                padding: 0.7vw 1.5vw;
                font-size: 0.85vw;
            }

            nav.shadow-sm a[href*="learn.ptenote.com"] svg {
                width: max(1vw, 14px);
                height: max(1vw, 14px);
            }

            body > nav.fixed.bottom-2 {
                display: none;
            }

            footer.footer-section {
                padding-bottom: 24px;
            }
        }

        @media (max-width: 1180px) {
            .blog-main,
            .booking-banner {
                grid-template-columns: 1fr;
            }

            .booking-banner .mini-owl {
                justify-self: center;
                right: 50%;
                bottom: -25px;
                transform: translateX(50%);
            }

            .blog-sidebar {
                position: static;
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .help-card {
                grid-column: 1 / -1;
                display: none;
            }

            .path-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .latest-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 900px) {
            .listing-header h1 {
                font-size: 2.4rem;
            }

            .blog-sidebar,
            .path-grid,
            .footer-grid {
                grid-template-columns: 1fr;
            }

            .listing-tools {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 700px) {
            body {
                padding-bottom: 92px;
            }

            .blog-container {
                width: min(100% - 24px, 1320px);
            }

            .latest-grid {
                grid-template-columns: 1fr;
            }

            .booking-banner {
                padding: 20px;
            }

            .booking-banner .mini-owl {
                width: 190px;
                height: 190px;
            }

            .booking-banner h2 {
                font-size: 1.7rem;
            }

            footer.footer-section .phone-row {
                gap: 18px;
            }
        }

        footer.footer-section {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            background: #1a1a1a;
            color: #ffffff;
            padding: 4vh 1rem calc(4vh + 70px);
        }

        footer.footer-section .footer-overlay {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            background: rgba(26, 26, 26, 0.3);
            z-index: 2;
            pointer-events: none;
        }

        footer.footer-section .copy-right {
            position: relative;
            z-index: 1;
            width: 100%;
            max-width: 1400px;
            margin: 0 auto;
        }

        footer.footer-section > .max-w-\[1400px\],
        footer.footer-section > .footer-inner {
            position: relative;
            z-index: 3;
            width: 100%;
            max-width: 1400px;
            margin: 0 auto;
        }

        footer.footer-section > .max-w-\[1400px\],
        footer.footer-section > .footer-inner {
            padding: 0 1rem;
        }

        footer.footer-section .copy-right .container,
        footer.footer-section .copy-right > .phone-row {
            padding: 1rem 0;
            margin-top: -2.5vmax !important;
        }

        footer.footer-section .row.text-white,
        footer.footer-section .phone-row {
            display: flex;
            flex-wrap: wrap;
            gap: 2.5rem;
            align-items: center;
            color: #ffffff;
            font-size: 2rem;
            line-height: 1;
            font-weight: 400;
        }

        footer.footer-section .row.text-white > .flex,
        footer.footer-section .phone-row > div {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0;
            color: #ffffff;
            font-size: 3vw;
            line-height: 1;
        }

        footer.footer-section picture img {
            display: block;
            width: 80px;
            max-width: 80px;
            height: auto;
        }

        footer.footer-section .footer-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 1.5rem;
            margin: 0 0 4vh;
        }

        footer.footer-section h4 {
            margin: 0 0 1.5vh;
            color: #b45309;
            font-size: 3.5vw;
            line-height: 1.2;
            font-weight: 700;
        }

        footer.footer-section ul {
            display: flex;
            flex-direction: column;
            gap: 0.8vh;
            margin: 0;
            padding: 0;
            list-style: none;
        }

        footer.footer-section li.flex {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        footer.footer-section li.flex > img {
            width: 14px;
            height: 14px;
            max-width: 14px;
            flex: 0 0 14px;
            object-fit: contain;
            opacity: 0.5;
        }

        footer.footer-section .footer-link {
            color: #aaaaaa;
            font-size: 3vw;
            line-height: 1.3;
            text-decoration: none;
            transition: color 300ms ease;
        }

        footer.footer-section li.flex .footer-link {
            font-size: 2.8vw;
        }

        footer.footer-section .footer-link:hover,
        footer.footer-section .footer-link:focus-visible {
            text-decoration: underline;
        }

        footer.footer-section .footer-bottom {
            border-top: 1px solid #444444;
            padding-top: 2vh;
            text-align: center;
        }

        footer.footer-section .footer-bottom > div {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 0.5rem;
            margin-bottom: 1.5vh;
        }

        footer.footer-section .footer-bottom span {
            display: none;
            color: #555555;
        }

        footer.footer-section .footer-bottom a {
            color: #888888;
            font-size: 2.8vw;
            text-decoration: underline;
            transition: color 300ms ease;
        }

        footer.footer-section .footer-bottom a:hover,
        footer.footer-section .footer-bottom a:focus-visible {
            color: #b45309;
        }

        footer.footer-section .footer-bottom p {
            margin: 0;
            color: #666666;
            font-size: 2.5vw;
        }

        footer.footer-section .footer-bottom p a {
            margin: 0;
        }

        footer.footer-section .footer-bottom strong {
            color: #b45309;
        }

        @media (min-width: 640px) {
            footer.footer-section {
                padding: 6vh 3rem calc(6vh + 70px);
            }

            footer.footer-section > .max-w-\[1400px\],
            footer.footer-section > .footer-inner {
                padding: 0 1.5rem;
            }

            footer.footer-section .footer-grid {
                gap: 2rem;
            }

            footer.footer-section h4 {
                font-size: 1.1vw;
            }

            footer.footer-section .footer-link,
            footer.footer-section .footer-bottom a {
                font-size: 0.9vw;
            }

            footer.footer-section li.flex .footer-link,
            footer.footer-section .footer-bottom p {
                font-size: 0.85vw;
            }

            footer.footer-section li.flex > img {
                width: 18px;
                height: 18px;
                max-width: 18px;
                flex-basis: 18px;
            }

            footer.footer-section .footer-bottom > div {
                gap: 0;
            }

            footer.footer-section .footer-bottom span {
                display: inline;
            }

            footer.footer-section .footer-bottom a {
                margin: 0 1rem;
            }
        }

        @media (min-width: 1024px) {
            footer.footer-section {
                padding-bottom: 2vh;
            }

            footer.footer-section > .max-w-\[1400px\],
            footer.footer-section > .footer-inner {
                padding: 0 2rem;
            }

            footer.footer-section .footer-grid {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }
        }

        @media (max-width: 1180px) {
            .blog-main,
            .booking-banner {
                grid-template-columns: minmax(0, 1fr);
            }

            .latest-grid,
            .path-grid,
            .blog-sidebar {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .booking-banner {
                padding-right: 240px;
            }
        }

        @media (max-width: 900px) {
            .blog-container {
                width: min(100% - 28px, 1320px);
            }

            .listing-header h1 {
                font-size: clamp(2.1rem, 8vw, 2.7rem);
            }

            .listing-tools,
            .latest-grid,
            .path-grid,
            .blog-sidebar {
                grid-template-columns: minmax(0, 1fr);
            }

            .category-options {
                position: static;
                margin-top: 8px;
            }

            .path-card {
                min-height: 0;
            }
        }

        @media (max-width: 700px) {
            nav.shadow-sm > div {
                padding: 0 14px;
            }

            nav.shadow-sm img[alt="PTENOTE Logo"] {
                height: 42px;
            }

            nav.shadow-sm a[href*="learn.ptenote.com"] {
                min-height: 34px;
                padding: 0 11px;
                font-size: 0.75rem;
            }

            .listing-header {
                padding: 34px 0 28px;
            }

            .listing-header p {
                font-size: 0.96rem;
            }

            .mini-card,
            .mini-card__copy {
                min-width: 0;
            }

            .blog-pagination {
                gap: 8px;
            }

            .blog-pagination a,
            .blog-pagination span {
                min-width: 38px;
                min-height: 38px;
                padding: 0 11px;
            }

            .path-card {
                grid-template-columns: 64px minmax(0, 1fr);
                gap: 12px;
                padding: 14px;
            }

            .path-icon {
                width: 60px;
                height: 60px;
            }

            .booking-banner {
                min-height: 0;
                grid-template-columns: minmax(0, 1fr);
                padding: 22px 20px 148px;
            }

            .booking-actions,
            .booking-actions .blog-button {
                width: 100%;
            }

            .booking-banner h2 {
                font-size: clamp(1.55rem, 8vw, 2rem);
            }

            .booking-banner .mini-owl {
                right: 50%;
                bottom: -22px;
                width: 176px;
                height: 176px;
                transform: translateX(50%);
            }

            footer.footer-section .row.text-white,
            footer.footer-section .phone-row {
                gap: 14px;
                font-size: clamp(1.35rem, 7vw, 2rem);
            }

            footer.footer-section .row.text-white > .flex,
            footer.footer-section .phone-row > div {
                font-size: inherit;
            }

            footer.footer-section picture img {
                width: 56px;
                max-width: 56px;
            }

            footer.footer-section .footer-grid {
                grid-template-columns: minmax(0, 1fr);
            }
        }

        @media (max-width: 420px) {
            .blog-container {
                width: min(100% - 20px, 1320px);
            }

            body > div.lg\:hidden a {
                flex-wrap: wrap;
                gap: 4px 8px;
                font-size: 0.76rem;
            }

            .mini-card__copy {
                padding: 14px;
            }

            .path-card {
                grid-template-columns: minmax(0, 1fr);
            }

            body > nav.fixed.bottom-2 {
                left: 6px;
                right: 6px;
                min-height: 68px;
                padding: 4px 6px;
            }

            body > nav.fixed.bottom-2 .mobile-nav-item {
                font-size: 0.56rem;
            }

            body > nav.fixed.bottom-2 a[id="mobileNavHome"] > div {
                width: 56px;
                height: 56px;
            }
        }

        .latest-grid {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }

        .latest-grid .mini-card {
            min-width: 0;
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            grid-template-rows: auto 1fr;
            overflow: hidden;
        }

        .latest-grid .mini-card__thumb {
            width: 100%;
            aspect-ratio: 1.92 / 1;
            overflow: hidden;
        }

        .latest-grid .mini-card__copy {
            min-width: 0;
            padding: clamp(14px, 3.6vw, 16px);
        }

        .latest-grid .mini-card h3,
        .latest-grid .mini-card p {
            overflow-wrap: anywhere;
        }

        @media (max-width: 980px) {
            .latest-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }

        @media (max-width: 620px) {
            .latest-grid {
                grid-template-columns: minmax(0, 1fr);
            }
        }

        @media (max-width: 700px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 126px;
                gap: 16px;
                align-items: end;
                padding: 22px 18px 18px;
            }

            .booking-banner > div:first-child {
                grid-column: 1 / -1;
            }

            .booking-banner .booking-actions {
                grid-column: 1;
                align-self: center;
            }

            .booking-banner .mini-owl {
                position: relative;
                grid-column: 2;
                right: auto;
                bottom: -18px;
                justify-self: end;
                align-self: end;
                width: 130px;
                height: 130px;
                transform: none;
            }

            .booking-banner .blog-button {
                min-width: 0;
                width: 100%;
                padding: 0 12px;
                font-size: 0.88rem;
            }
        }

        @media (max-width: 380px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 108px;
                gap: 12px;
                padding-inline: 14px;
            }

            .booking-banner .mini-owl {
                width: 112px;
                height: 112px;
            }

            .booking-banner .blog-button {
                min-height: 42px;
                font-size: 0.78rem;
            }
        }

        .booking-banner {
            grid-template-columns: minmax(0, 1fr) 290px 190px;
            overflow: visible;
        }

        .booking-banner .mini-owl {
            position: relative;
            right: auto;
            bottom: -25px;
            width: clamp(168px, 15vw, 214px);
            height: clamp(168px, 15vw, 214px);
            justify-self: end;
            align-self: end;
            transform: none;
        }

        @media (max-width: 1180px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 230px 168px;
                gap: 22px;
                min-height: 206px;
                padding: 24px 26px;
            }

            .booking-banner .mini-owl {
                width: 174px;
                height: 174px;
            }
        }

        @media (max-width: 860px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 188px 148px;
                gap: 18px;
                padding: 22px 20px;
            }

            .booking-banner h2 {
                font-size: clamp(1.65rem, 4vw, 2rem);
            }

            .booking-banner p {
                font-size: 0.94rem;
            }

            .booking-banner .mini-owl {
                width: 154px;
                height: 154px;
            }
        }

        @media (max-width: 700px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 132px;
                gap: 14px;
                min-height: 0;
                padding: 22px 18px 18px;
                align-items: end;
            }

            .booking-banner > div:first-child {
                grid-column: 1 / -1;
            }

            .booking-banner .booking-actions {
                grid-column: 1;
                align-self: center;
                width: 100%;
            }

            .booking-banner .mini-owl {
                grid-column: 2;
                width: 152px;
                height: 152px;
                bottom: -25px;
                justify-self: end;
            }
        }

        @media (max-width: 380px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 108px;
                gap: 12px;
                padding-inline: 14px;
            }

            .booking-banner .mini-owl {
                width: 114px;
                height: 114px;
            }
        }

        @media (max-width: 768px) {
            .booking-banner {
                grid-template-columns: minmax(0, 1fr) 132px;
                gap: 14px;
                padding: 24px 18px 18px;
                text-align: center;
                justify-items: stretch;
                align-items: end;
            }

            .booking-banner > div:first-child {
                grid-column: 1 / -1;
            }

            .booking-banner .booking-actions {
                grid-column: 1;
                width: 100%;
                align-self: center;
            }

            .booking-banner .mini-owl {
                grid-column: 2;
                width: 158px;
                height: 158px;
                bottom: -50px;
                justify-self: end;
            }
        }

        .booking-banner .mini-owl {
            bottom: -45px;
        }

        @media (min-width: 1201px) {
            .booking-banner .mini-owl {
                bottom: -50px;
            }
        }

        @media (max-width: 768px) {
            .booking-banner .mini-owl {
                bottom: -35px;
                right: -15px;
            }
        }
