/* =========================================================================
   THE PAID HOUR — stylesheet, fixed & updated 20 Aug 2026
   ========================================================================= */

/* ---- 1. TOKENS --------------------------------------------------------- */
:root {
  color-scheme: light;
  --coral:   #E07A3A;
  --coral-d: #B85E1F;
  --yellow:  #F5B731;
  --yellow-d:#A9790F;
  --sky:     #0E3B43;
  --sky-d:   #092429;
  --bg:      #FFFFFF;
  --surface: #FFFFFF;
  --raised:  #F6F6F7;
  --text:    #3C3F47;
  --head:    #121317;
  --soft:    #6B6F79;
  --rule:    #E6E7EA;
  --navtext: #121317;
  --shadow:  0 10px 34px rgba(18,19,23,.07);
  --shadow-3d: 0 1px 2px rgba(18,19,23,.06), 0 8px 18px rgba(18,19,23,.09), 0 22px 44px rgba(18,19,23,.11);
  --shadow-btn: 0 1px 2px rgba(18,19,23,.10), 0 6px 14px rgba(18,19,23,.10);
  --sans:  "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI Variable Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif: "Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
html[data-theme="dark"] {
  color-scheme: dark; --bg: #0E0F13; --surface: #16181D; --raised: #1D2027; --text: #D4D6DC; --head: #FFFFFF; --soft: #9AA0A8; --rule: #2A2E36; --navtext: #D4D6DC;
  --shadow: 0 10px 34px rgba(0,0,0,.45);
  --shadow-3d: 0 1px 2px rgba(0,0,0,.5), 0 10px 22px rgba(0,0,0,.5), 0 26px 56px rgba(0,0,0,.55);
  --shadow-btn: 0 2px 4px rgba(0,0,0,.5), 0 8px 16px rgba(0,0,0,.45);
}

html:root { background: var(--bg); }

& body { background: var(--bg); color: var(--text); font-family: var(--sans); font-size: 17px; line-height: 1.7; -webkit-font-smoothing: antialiased; }

& .site, & .site-content, & .grid-container, & .inside-header, & .separate-containers .site-content { background: transparent; }

& h1, & h2, & h3, & .entry-title { font-family: var(--sans); color: var(--head); letter-spacing: -0.028em; line-height: 1.14; font-weight: 600; }

& h2 { font-size: 2rem; margin-top: 2.4em; }

& h3 { font-size: 1.22rem; font-weight: 600; }

& a { color: var(--coral-d); }

html:root[data-theme="dark"] a { color: var(--yellow); }

& .site-header { border: 0px; position: fixed; top: 0px; left: 0px; right: 0px; width: 100%; z-index: 100; transition: background 0.3s, box-shadow 0.3s, padding 0.25s; }

& body:not(.home) .site-header { background: var(--surface); box-shadow: 0 1px 0 var(--rule); }

& body.home .site-header { background: transparent; box-shadow: none; }

& body.home.tph-scrolled .site-header { background: var(--surface); box-shadow: 0 1px 0 var(--rule); }

& body:not(.home) { padding-top: 101px; }

& body.tph-scrolled .site-header .inside-header { padding-top: 6px; padding-bottom: 6px; }

& .site-logo img { transition: height 0.25s, width 0.25s; }

& body.tph-scrolled .site-logo img { height: 28px; width: auto; }

& .main-navigation, & .main-navigation .inside-navigation { background: transparent; }

& .main-navigation .main-nav ul li a, & .site-header .main-navigation a, & .main-navigation .menu-toggle, & body.home .main-navigation .main-nav ul li a, & body.home .main-navigation .menu-toggle, & body.home .site-header a { font-weight: 500; font-size: 0.95rem; color: var(--navtext) !important; }

& .main-navigation .main-nav ul li a:hover { color: var(--coral-d); }

& body.home .site-logo img { filter: none !important; }

html:root[data-theme="dark"] .site-logo img, html:root[data-theme="dark"] body.home .site-logo img { filter: brightness(0) invert(1) !important; }

& .site-header { border-bottom: 1px solid transparent; }

& .site-branding .main-title, & .site-branding .site-title { display: none; }

& .nav-search-enabled .main-navigation .search-item, & .site-header .search-modal, & .site-header .search-field, & .navigation-search, & .main-navigation .search-item { display: none; }

& .main-navigation .main-nav ul li a { padding-left: 16px; padding-right: 16px; }

& .inside-header { align-items: center; }

& .tph-hero { position: relative; overflow: hidden; isolation: isolate; width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding: 72px max(24px, -560px + 50vw) 56px; background: transparent; color: var(--text); text-align: center; }

html:root[data-theme="dark"] .tph-hero { background: var(--bg) !important; }

& .tph-hero h1 { color: var(--head); font-size: clamp(2.15rem, 1.1rem + 3.6vw, 3.25rem); font-weight: 600; letter-spacing: -0.042em; line-height: 1.06; max-width: 19ch; margin-left: auto; margin-right: auto; }

html:root[data-theme="dark"] .tph-hero h1 { color: rgb(255, 255, 255); }

& .tph-hero h1 em { font-style: normal; color: var(--coral-d); }

html:root[data-theme="dark"] .tph-hero h1 em { color: var(--coral); }

& .tph-hero p { color: var(--soft); font-size: 1.05rem; max-width: 34rem; margin-left: auto; margin-right: auto; }

& .tph-kicker { letter-spacing: 0.02em; text-transform: none; font-size: 0.95rem; font-weight: 500; color: var(--soft) !important; }

& .tph-stage { display: block; position: fixed; inset: 0px; overflow: hidden; pointer-events: none; z-index: -1; }

& body.home .inside-article, & body.home .entry-content, & body.home article { background: transparent; border: 0px; box-shadow: none; }

& body.home .entry-header, & body.home .entry-title { display: none; }

& body.home .site-content { padding-top: 0px !important; margin-top: 0px !important; }

& body.home.separate-containers .site-content { padding-top: 0px; }

& body.home .site-content, & body.home .site-content .content-area, & body.home .entry-content { padding: 0px; margin: 0px; }

& .tph-theme { position: static; margin-left: 16px; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; cursor: pointer; border: 1px solid var(--rule); background: var(--raised); color: var(--head); box-shadow: var(--shadow-btn); display: flex; align-items: center; justify-content: center; backdrop-filter: blur(6px); transition: transform 0.2s, background 0.2s; }

@media (max-width: 1100px) {
  & .tph-theme { margin-left: 8px; }
}

& .tph-theme:hover { transform: translateY(-2px); }

& .tph-theme svg { width: 15px; height: 15px; fill: currentcolor; }

& .tph-theme .tph-sun { display: none; }

html:root[data-theme="dark"] .tph-theme .tph-sun { display: block; }

html:root[data-theme="dark"] .tph-theme .tph-moon { display: none; }

& .tph-find { margin: 46px auto 0px; max-width: 660px; }

& .tph-find form, & .tph-find .wp-block-search__inside-wrapper { display: flex; gap: 0px; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; padding: 6px; }

& .tph-find input, & .tph-find .wp-block-search__input { flex: 1 1 0%; font-size: 1.12rem; padding: 16px 24px; outline: none; border: 0px !important; background: transparent !important; color: var(--head) !important; }

& .tph-find input::placeholder { color: var(--soft); }

& .tph-find button, & .tph-find .wp-block-search__button { border: 0px; border-radius: 999px; background: var(--head); color: rgb(255, 255, 255); font-weight: 700; font-size: 1rem; padding: 16px 30px; cursor: pointer; transition: transform 0.2s, filter 0.2s; }

& .tph-find button:hover { transform: translateY(-1px); filter: brightness(1.1); }

html:root[data-theme="dark"] .tph-find form { background: var(--raised); border-color: var(--rule); }

html:root[data-theme="dark"] .tph-find button { background: rgb(255, 255, 255); color: rgb(18, 19, 23); }

& .tph-trust { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 2.6em 0px 0px; padding: 0px; }

& .tph-trust li { display: inline-flex; align-items: center; gap: 6px; margin: 0px; border: 1px solid var(--rule); border-radius: 999px; padding: 5px 12px; font-size: 0.76rem; color: var(--soft); background: transparent; }

& .tph-trust li svg { color: var(--coral-d); width: 12px; height: 12px; flex: 0 0 auto; }

html:root[data-theme="dark"] .tph-trust li svg { color: var(--yellow); }

& .tph-hero .wp-block-button__link, & .wp-block-button__link { background: var(--head) !important; color: rgb(255, 255, 255) !important; border: 0px !important; border-radius: 999px !important; padding: 0.85em 1.7em !important; font-weight: 500 !important; font-size: 0.98rem !important; box-shadow: none !important; }

& .tph-hero .is-style-outline .wp-block-button__link { background: transparent !important; color: var(--head) !important; box-shadow: inset 0 0 0 1px var(--rule) !important; }

html:root[data-theme="dark"] .wp-block-button__link { background: rgb(255, 255, 255) !important; color: rgb(18, 19, 23) !important; }

& .tph-hero .wp-block-buttons { justify-content: center; }

& .tph-cta { display: inline-flex; align-items: center; gap: 0.55em; font-weight: 700; font-size: 0.95rem; padding: 0.95em 1.6em; border-radius: 999px; transition: transform 0.22s, filter 0.22s; background: var(--head) !important; color: rgb(255, 255, 255) !important; text-decoration: none !important; }

& .tph-cta::after { content: "→"; }

& .tph-cta { box-shadow: var(--shadow-btn); }

html:root[data-theme="dark"] .tph-cta { background: var(--raised) !important; }

& .tph-cta:hover { transform: translateY(-2px); filter: brightness(1.06); }

& .tph-band { padding: 68px max(24px, -560px + 50vw); border-top: 1px solid var(--rule); width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }

& .tph-band > h2:first-child { margin-top: 0px; }

& .tph-sub { color: var(--soft); max-width: 46rem; margin-bottom: 2em; }

& .tph-card { background: var(--surface); border: 1px solid var(--rule); border-radius: 16px; padding: 28px; box-shadow: var(--shadow-3d); transition: transform 0.25s, box-shadow 0.25s; }

& .tph-card:hover { transform: translateY(-8px); box-shadow: var(--shadow); }

& .tph-card h3 { margin: 0px 0px 0.4em; }

& .tph-icon { width: 40px; height: 40px; border-radius: 10px; margin-bottom: 15px; background: var(--head); box-shadow: var(--shadow-btn); }

& .tph-band-paper { background: transparent; }

& .tph-band-white { background: transparent; }

& .tph-band-dark { background: var(--head); color: rgb(255, 255, 255); }

& .tph-band-dark h2, & .tph-band-dark .tph-sub { color: rgb(255, 255, 255); }

html:root[data-theme="dark"] .tph-band-paper, html:root[data-theme="dark"] .tph-band-white { background: transparent; }

& body.blog .site-main { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0px 34px; border-top: 1px solid var(--rule); }

& body.blog .site-main > :not(article) { grid-column: 1 / -1; }

& body.blog .site-main > article { margin: 0px; border-bottom: 1px solid var(--rule); }

& body.blog .inside-article { background: transparent; border: 0px; box-shadow: none; padding: 26px 0px 30px; display: flex; flex-direction: column; height: 100%; }

& body.blog .post-image { order: -1; margin: 0px 0px 18px; }

& body.blog .post-image img { aspect-ratio: 1200 / 630; object-fit: contain; height: auto; border-radius: 16px; border: 1px solid var(--rule); background: var(--raised); }

& body.blog .entry-header { order: 1; display: flex; flex-direction: column; }

& body.blog .entry-header .entry-meta { order: -1; margin: 0px 0px 0.5em; font-size: 0.71rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--coral-d); }

html:root[data-theme="dark"] body.blog .entry-header .entry-meta { color: var(--yellow); }

& body.blog .entry-header .byline { display: none; }

& body.blog .entry-title { font-size: 1.16rem; line-height: 1.3; margin: 0px 0px 0.5em; }

& body.blog .entry-title a { color: var(--head); }

& body.blog .entry-summary { order: 2; flex: 1 1 auto; margin: 0px; }

& body.blog .entry-summary p { font-size: 0.93rem; line-height: 1.5; color: var(--soft); margin: 0px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

& body.blog footer.entry-meta { order: 3; margin-top: 16px; font-size: 0.72rem; letter-spacing: 0.07em; text-transform: uppercase; font-weight: 700; color: var(--soft); }

& body.blog .site-main > article:first-of-type { grid-column: 1 / -1; }

& body.blog .site-main > article:first-of-type .inside-article { display: grid; grid-template-columns: minmax(0px, 1.05fr) minmax(0px, 1fr); gap: 40px; align-content: start; padding: 40px 0px 44px; }

& body.blog .site-main > article:first-of-type .post-image { grid-row: 1 / 4; margin: 0px; }

& body.blog .site-main > article:first-of-type .entry-title { font-size: 2rem; }

& body.blog .site-main > article:first-of-type .entry-summary p { font-size: 1.04rem; -webkit-line-clamp: 4; }

& .entry-content figure.wp-block-image { margin: 2.4em auto; max-width: 640px; }

& .entry-content figure.wp-block-image img, & body.single .post-image img, & body.single .featured-image img { width: 100%; height: auto; display: block; border-radius: 16px; border: 1px solid var(--rule); background: var(--raised); box-shadow: var(--shadow); cursor: zoom-in; }

& .entry-content figcaption, & .wp-element-caption { color: var(--soft); font-size: 0.88rem; text-align: center; margin-top: 0.9em; }

& body.single .featured-image, & body.single .post-image { max-width: 640px; margin: 0px auto 2.2em; }

& body.single .inside-article, & body.page:not(.home) .inside-article { background: var(--surface); color: var(--text); border: 1px solid var(--rule); border-radius: 20px; padding: 56px 60px; box-shadow: none; }

& body.single .entry-title { font-size: 2.7rem; font-weight: 600; letter-spacing: -0.035em; max-width: 22ch; }

& .entry-content p { margin-bottom: 1.3em; }

& .entry-content a:not(.tph-cta):not(.wp-block-button__link) { color: var(--coral-d); text-decoration: underline; text-underline-offset: 2px; }

html:root[data-theme="dark"] .entry-content a:not(.tph-cta):not(.wp-block-button__link) { color: var(--yellow); }

& .tph-note { background: var(--raised); border-left: 4px solid var(--coral); border-radius: 0px 16px 16px 0px; padding: 26px 30px; margin: 2em 0px; color: var(--text); }

& .tph-author { background: var(--raised); border: 1px solid var(--rule); border-radius: 18px; padding: 26px 30px; margin-top: 3em; color: var(--text); }

& .tph-author h3 { margin-top: 0px; }

& .wp-block-table table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }

& .wp-block-table th, & .wp-block-table td { border: 1px solid var(--rule); padding: 12px 14px; color: var(--text); }

& .wp-block-table thead th { background: var(--raised); color: var(--head); font-weight: 700; }

& .tph-aff { border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 16px 0px; margin: 2.4em 0px; display: flex; gap: 14px; align-items: flex-start; font-size: 0.9rem; line-height: 1.55; color: var(--soft); }

& .tph-aff::before { content: "AD"; flex: 0 0 auto; font-size: 0.62rem; font-weight: 800; letter-spacing: 0.13em; color: var(--coral-d); border: 1px solid var(--coral); border-radius: 4px; padding: 4px 6px; }

& .tph-aff strong { color: var(--text); }

& .tph-picks { display: grid; grid-template-columns: repeat(auto-fit, minmax(238px, 1fr)); gap: 24px; margin: 2.6em 0px; }

& .tph-pick { background: var(--surface); border: 1px solid var(--rule); border-radius: 18px; padding: 26px; display: flex; flex-direction: column; box-shadow: var(--shadow); }

& .tph-pick-tag { display: block; font-size: 0.67rem; font-weight: 800; letter-spacing: 0.11em; text-transform: uppercase; color: var(--coral-d); margin-bottom: 0.85em; line-height: 1.35; min-height: 2.7em; }

html:root[data-theme="dark"] .tph-pick-tag { color: var(--yellow); }

& .tph-pick h3 { margin: 0px 0px 0.4em; font-size: 1.22rem; }

& .tph-pick-line { font-size: 0.94rem; color: var(--soft); margin: 0px 0px 1.3em; flex: 1 1 0%; }

& .tph-pick .tph-cta { margin-top: auto; font-size: 0.86rem; padding: 0.8em 1.3em; }

& .tph-grid ul.wp-block-latest-posts__list { list-style: none; margin: 0px; padding: 0px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 0px; border-top: 1px solid var(--rule); }

& .tph-grid li { grid-column: span 2; border-bottom: 1px solid var(--rule); padding: 30px 28px 32px 0px; margin: 0px; }

& .tph-grid li:first-child { grid-column: span 6; display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; padding: 40px 0px; }

& .tph-grid li:first-child .wp-block-latest-posts__featured-image { grid-row: span 3; }

& .tph-grid img { width: 100%; height: auto; border-radius: 14px; border: 1px solid var(--rule); background: var(--raised); }

& .tph-grid li:first-child .wp-block-latest-posts__post-title { font-size: 2.1rem; letter-spacing: -0.03em; }

& .tph-grid li:not(:first-child) .wp-block-latest-posts__post-title { font-size: 1.14rem; line-height: 1.3; display: block; padding-top: 14px; }

& .wp-block-latest-posts__post-date { font-size: 0.72rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--coral-d); display: block; margin-top: 0.5em; }

html:root[data-theme="dark"] .wp-block-latest-posts__post-date { color: var(--yellow); }

& .wp-block-latest-posts__post-excerpt { font-size: 0.94rem; color: var(--soft); margin-top: 0.5em; }

& .tph-seeall { display: inline-flex; align-items: center; gap: 0.5em; margin-top: 26px; font-weight: 700; color: var(--head); text-decoration: none; }

& .tph-seeall::after { content: "→"; }

& .tph-dates { display: grid; gap: 0px; border-top: 1px solid var(--rule); margin-top: 1em; }

& .tph-dates .wp-block-column { border-bottom: 1px solid var(--rule); padding: 24px 26px 24px 0px; }

& .tph-l { display: block; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; color: var(--soft); }

& .tph-d { display: block; font-family: var(--serif); font-size: 1.5rem; color: var(--head); margin-top: 0.3em; }

& .tph-next { position: relative; }

& .tph-next::before { content: "NEXT"; position: absolute; top: 0px; left: 0px; font-size: 0.62rem; font-weight: 800; letter-spacing: 0.12em; color: var(--coral-d); }

& .tph-feed ul.wp-block-rss { list-style: none; margin: 0px; padding: 0px; border-top: 1px solid var(--rule); }

& .tph-feed .wp-block-rss__item { border-bottom: 1px solid var(--rule); padding: 20px 0px; margin: 0px; }

& .tph-feed .wp-block-rss__item-title a { font-size: 1.14rem; color: var(--head); text-decoration: none; }

& .tph-feed .wp-block-rss__item-title a:hover { color: var(--coral-d); }

html:root[data-theme="dark"] .tph-feed .wp-block-rss__item-title a:hover { color: var(--yellow); }

& .tph-feed .wp-block-rss__item-publish-date { font-size: 0.74rem; color: var(--soft); text-transform: uppercase; letter-spacing: 0.08em; }

& .tph-trust svg, & .tph-card svg, & .tph-feed svg, & .tph-dates svg, & .tph-theme svg, & .tph-seeall svg { width: 15px; height: 15px; flex: 0 0 auto; fill: none; stroke: currentcolor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

& .tph-progress { position: fixed; top: 0px; left: 0px; height: 3px; width: 0px; z-index: 9998; background: linear-gradient(90deg,var(--coral),var(--yellow)); transition: width 0.1s linear; }

& .tph-reveal { opacity: 0; transform: translateY(10px); transition: opacity 0.35s, transform 0.35s cubic-bezier(0.2, 0.7, 0.3, 1); }

& .tph-reveal.tph-in { opacity: 1; transform: none; }

& .tph-tilt { transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.3, 1); }

& .tph-motion { position: relative; }

& .tph-legal { font-size: 0.82rem; color: var(--soft); }

& .tph-type { display: inline-block; white-space: pre-wrap; clip-path: inset(0px 100% 0px 0px); animation: 1.6s steps(28) 0.3s 1 normal forwards running tphType; }

& .tph-type::after { content: ""; display: inline-block; width: 2px; height: 0.85em; background: var(--head); margin-left: 4px; vertical-align: -0.08em; animation: 0.9s step-end 0s infinite normal none running tphCaret; }

& .tph-lb { position: fixed; inset: 0px; z-index: 99999; display: flex; align-items: center; justify-content: center; background: rgba(10, 11, 14, 0.92); padding: 4vh 4vw; cursor: zoom-out; opacity: 0; transition: opacity 0.22s; backdrop-filter: blur(4px); }

& .tph-lb.tph-lb-on { opacity: 1; }

& .tph-lb img { max-width: 100%; max-height: 92vh; width: auto; height: auto; border-radius: 10px; box-shadow: rgba(0, 0, 0, 0.55) 0px 30px 90px; transform: scale(0.97); transition: transform 0.22s; }

& .tph-lb.tph-lb-on img { transform: scale(1); }

& .tph-lb-close { position: absolute; top: 18px; right: 22px; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, 0.3); background: rgba(255, 255, 255, 0.1); color: rgb(255, 255, 255); font-size: 22px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; }

& body.tph-lb-open { overflow: hidden; }

& .site-footer, & .site-footer .footer-widgets, & .site-info { background: transparent; border-top: 1px solid var(--rule); }

& .site-info, & .site-info a, & .copyright { color: var(--soft); }

& a:focus-visible, & button:focus-visible, & input:focus-visible { outline: 3px solid var(--coral-d); outline-offset: 2px; }

@media (max-width: 900px) {
  & .tph-hero h1 { font-size: 2.5rem; }
  & body.single .entry-title { font-size: 2rem; }
  & body.blog .site-main { grid-template-columns: repeat(2, 1fr); gap: 0px 24px; }
  & body.blog .site-main > article:first-of-type .inside-article { grid-template-columns: 1fr; gap: 18px; }
  & body.blog .site-main > article:first-of-type .post-image { grid-row: auto; }
  & .tph-band { padding: 64px 22px; }
  & .tph-grid ul.wp-block-latest-posts__list { grid-template-columns: repeat(2, 1fr); }
  & .tph-grid li { grid-column: span 1; }
  & .tph-grid li:first-child { grid-column: span 2; grid-template-columns: 1fr; gap: 18px; }
  & .tph-grid li:first-child .wp-block-latest-posts__post-title { font-size: 1.6rem; }
}

@media (max-width: 600px) {
  & body { font-size: 16px; }
  & .tph-hero h1 { font-size: 2.05rem; }
  & body.blog .site-main { grid-template-columns: 1fr; }
  & body.single .inside-article, & body.page:not(.home) .inside-article { padding: 26px 20px; border-radius: 16px; }
  & .tph-band { padding: 52px 20px; }
  & .tph-find input[type="search"] { font-size: 1rem; padding: 14px 18px; }
  & .tph-find button { padding: 14px 20px; }
  & .tph-trust li { font-size: 0.72rem; padding: 4px 10px; }
  & .tph-grid ul.wp-block-latest-posts__list { grid-template-columns: 1fr; }
  & .tph-grid li, & .tph-grid li:first-child { grid-column: span 1; }
}

@media (prefers-reduced-motion: reduce) {
  & .tph-reveal { opacity: 1; transform: none; transition: none; }
  & .tph-card, & .tph-cta { transition: none; }
  & .tph-type { clip-path: none; animation: auto ease 0s 1 normal none running none; }
  & .tph-type::after { display: none; }
  & .tph-progress { transition: none; }
}

html:root[data-theme="dark"] .tph-band-dark { background: var(--raised); }

html:root[data-theme="dark"] .tph-icon { background: var(--raised); color: var(--yellow); }

& .tph-orb { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; z-index: 0; transition: transform 0.35s ease-out; will-change: transform; }

& .tph-o1 { width: 420px; height: 420px; top: -120px; left: 8%; background: radial-gradient(circle, rgba(245, 183, 49, 0.16), transparent 70%); }

& .tph-o2 { width: 360px; height: 360px; bottom: -140px; right: 6%; background: radial-gradient(circle, rgba(184, 94, 31, 0.14), transparent 70%); }

html:root[data-theme="dark"] .tph-o1 { background: radial-gradient(circle, rgba(245, 183, 49, 0.11), transparent 70%); }

html:root[data-theme="dark"] .tph-o2 { background: radial-gradient(circle, rgba(14, 59, 67, 0.28), transparent 70%); }

& .tph-hero > :not(.tph-orb) { position: relative; z-index: 1; }

@media (max-width: 782px) {
  & .tph-orb { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  & .tph-orb { transition: none; }
}

& .tph-o3 { width: 260px; height: 260px; top: 20%; right: 22%; background: radial-gradient(circle, rgba(14, 59, 67, 0.11), transparent 70%); }

& .tph-o4 { width: 220px; height: 220px; bottom: 8%; left: 20%; background: radial-gradient(circle, rgba(245, 183, 49, 0.1), transparent 70%); }

& .tph-o5 { width: 180px; height: 180px; top: 40%; left: 2%; background: radial-gradient(circle, rgba(184, 94, 31, 0.09), transparent 70%); }

& .tph-o6 { width: 200px; height: 200px; bottom: 20%; right: 2%; background: radial-gradient(circle, rgba(14, 59, 67, 0.1), transparent 70%); }

& .tph-hsearch { display: flex; align-items: center; max-width: 0px; overflow: hidden; opacity: 0; margin-left: 0px; flex: 0 0 auto; transition: max-width 0.35s, opacity 0.25s, margin-left 0.35s; }

& body.tph-scrolled .tph-hsearch, & body:not(.home) .tph-hsearch { max-width: 260px; opacity: 1; margin-left: 14px; }

& .tph-hsearch form { display: flex; align-items: center; width: 100%; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; padding: 5px 5px 5px 14px; box-shadow: var(--shadow-btn); }

& .tph-hsearch input { border: 0px; background: transparent; outline: 0px; font-size: 0.82rem; color: var(--text); width: 100%; min-width: 0px; }

& .tph-hsearch input::placeholder { color: var(--soft); }

& .tph-hsearch button { border: 0px; background: var(--head); color: var(--bg); border-radius: 50%; width: 26px; height: 26px; min-width: 26px; padding: 0px; display: flex; align-items: center; justify-content: center; cursor: pointer; flex: 0 0 auto; transition: transform 0.15s; }

& .tph-hsearch button:hover { transform: scale(1.06); }

@media (max-width: 900px) {
  & .tph-hsearch { display: none; }
}

html:root[data-theme="dark"] .page-header { background: transparent; }

& .tph-header-cta { margin-left: 16px; white-space: nowrap; flex: 0 0 auto; padding: 0.5em 1.2em !important; font-size: 0.82rem !important; }

@media (max-width: 1100px) {
  & .tph-header-cta { display: none; }
}

& .main-navigation { display: flex; align-items: center; }

& body.home .site-header a.tph-header-cta, & .tph-header-cta { color: rgb(255, 255, 255) !important; }

& .tph-entries { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; max-width: 660px; margin: 14px auto 0px; }

& .tph-entry { display: flex; align-items: center; gap: 10px; padding: 13px 15px; border-radius: 12px; background: transparent; box-shadow: none; text-decoration: none; border: 1px solid var(--rule); transition: border-color 0.2s, background 0.2s, transform 0.2s; min-width: 0px; }

& .tph-entry:hover { border-color: var(--soft); background: var(--surface); transform: translateY(-2px); }

& .tph-entry-title { position: relative; padding-left: 13px; }

& .tph-entry-title::before { content: ""; position: absolute; left: 0px; top: 0.42em; width: 6px; height: 6px; border-radius: 50%; background: var(--rule); }

& .tph-entry-1 .tph-entry-title::before { background: var(--coral); }

& .tph-entry-2 .tph-entry-title::before { background: var(--yellow); }

& .tph-entry-3 .tph-entry-title::before { background: var(--sky); }

& .tph-entry-text { display: flex; flex-direction: column; gap: 3px; min-width: 0px; }

& .tph-entry-title { font-size: 0.95rem; font-weight: 600; color: var(--head); font-style: normal; line-height: 1.3; white-space: normal; word-break: break-word; }

& .tph-entry-sub { font-size: 0.74rem; font-style: normal; color: var(--soft); font-weight: 500; }

& .tph-entry-arrow { margin-left: auto; color: var(--soft); font-size: 1rem; transition: transform 0.2s; flex: 0 0 auto; }

& .tph-entry:hover .tph-entry-arrow { transform: translateX(4px); color: var(--head); }

html:root[data-theme="dark"] .tph-entry:hover { background: var(--raised); }

@media (max-width: 700px) {
  & .tph-entries { grid-template-columns: 1fr; }
  & .tph-entry-title { white-space: normal; }
}

html:root[data-theme="dark"] .tph-entry-3 .tph-entry-title::before { background: rgb(74, 143, 163); }

& .tph-cat-rows { display: flex; flex-direction: column; gap: 40px; margin-top: 24px; }

& .tph-cat-row-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 16px; flex-wrap: wrap; }

& .tph-cat-row-head h3 { margin: 0px; font-size: 1.15rem; color: var(--head); }

& .tph-cat-more { font-size: 0.85rem; font-weight: 600; color: var(--coral-d); text-decoration: none; white-space: nowrap; }

& .tph-cat-more:hover { text-decoration: underline; }

& .tph-cat-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 20px; }

& .tph-guide-card { display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--rule); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-3d); transition: transform 0.25s, box-shadow 0.25s; text-decoration: none; color: inherit; }

& .tph-guide-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }

& .tph-guide-card img { width: 100%; height: 135px; object-fit: cover; display: block; background: var(--raised); }

& .tph-guide-card-body { padding: 16px 18px 18px; display: flex; flex-direction: column; gap: 6px; flex: 1 1 0%; }

& .tph-guide-cat { font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; color: var(--coral-d); }

& .tph-guide-card h4 { margin: 0px; font-size: 0.93rem; line-height: 1.35; color: var(--head); font-weight: 700; }

& .tph-guide-excerpt { font-size: 0.8rem; color: var(--soft); line-height: 1.45; margin: 0px; flex: 1 1 0%; }

& .tph-guide-date { font-size: 0.7rem; color: var(--soft); margin-top: 4px; }

html:root[data-theme="dark"] .tph-guide-card { background: var(--raised); }

html:root[data-theme="dark"] .tph-guide-card img { background: var(--surface); }

@media (max-width: 640px) {
  & .tph-cat-cards { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 420px) {
  & .tph-cat-cards { grid-template-columns: 1fr; }
}

& body.blog .site-main, & body.archive .site-main { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 24px; margin-top: 8px; }

& body:not(.blog):not(.archive) .site-main { display: block !important; }

& article.type-post { display: flex; flex-direction: column; background: var(--surface); border: 1px solid var(--rule); border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-3d); transition: transform 0.25s, box-shadow 0.25s; }

& article.type-post:hover { transform: translateY(-6px); box-shadow: var(--shadow); }

& article.type-post .post-image { order: -2; margin: 0px; }

& article.type-post .post-image img { width: 100%; height: 150px; object-fit: cover; display: block; }

& article.type-post footer.entry-meta { order: -1; padding: 14px 18px 0px; font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.04em; font-weight: 700; }

& article.type-post footer.entry-meta .cat-links a { color: var(--coral-d); text-decoration: none; }

& article.type-post footer.entry-meta .gp-icon { display: none; }

& article.type-post .entry-header { padding: 6px 18px 0px; order: 0; }

& article.type-post .entry-title { font-size: 0.95rem; line-height: 1.35; margin: 0px 0px 4px; }

& article.type-post .entry-title a { color: var(--head); text-decoration: none; }

& article.type-post .entry-header .entry-meta { font-size: 0.7rem; color: var(--soft); margin: 0px; }

& article.type-post .entry-header .byline { display: none; }

& article.type-post .entry-header .entry-date.published { display: none; }

& article.type-post .entry-header time.updated::before { content: "Updated "; }

& article.type-post .tph-readtime { margin-left: 6px; }

& article.type-post .tph-readtime::before { content: " ·"; }

& article.type-post .entry-summary { order: 1; padding: 6px 18px 16px; font-size: 0.8rem; color: var(--soft); line-height: 1.45; flex: 1 1 0%; }

& article.type-post .entry-summary p { margin: 0px; }

html:root[data-theme="dark"] article.type-post { background: var(--raised); }

@media (max-width: 640px) {
  & .site-main { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
  & .site-main { grid-template-columns: 1fr; }
}

& body.blog .site-main > article.type-post:first-of-type { grid-column: auto !important; }

& article.type-post .post-image a { display: block; }

& .site-main article.type-post .entry-title { font-size: 0.95rem !important; line-height: 1.35 !important; margin: 0px 0px 4px !important; }

& .site-main article.type-post .entry-header { padding: 6px 18px 0px !important; }

& .site-main article.type-post .entry-summary { font-size: 0.8rem !important; }

& article.type-post > .inside-article { display: contents; }

& .site-main article.type-post .post-image { width: 100%; }

& .site-main article.type-post .post-image a { display: block; width: 100%; }

& .site-main article.type-post .inside-article { display: contents !important; }

& .site-main article.type-post { background: var(--surface) !important; }

html:root[data-theme="dark"] .site-main article.type-post { background: var(--raised) !important; }

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

html:root, & body { max-width: 100%; overflow-x: hidden; }

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

& body.home .site-main, & body.page .site-main, & body.single .site-main, & body.search .site-main, & body.error404 .site-main { width: 100%; max-width: none; margin-top: 0px; padding-top: 0px; display: block !important; grid-template-columns: none !important; gap: 0px !important; }

& body.blog .site-main, & body.archive .site-main { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 28px 30px; width: 100%; margin-top: 12px; border-top: 1px solid var(--rule); display: grid !important; }

& body.blog .site-main > article.type-post, & body.archive .site-main > article.type-post { min-width: 0px; margin: 0px; }

& body.blog .site-main > :not(article), & body.archive .site-main > :not(article) { grid-column: 1 / -1; }

& body.blog article.type-post, & body.archive article.type-post { flex-direction: column; min-width: 0px; overflow: hidden; background: var(--surface); border: 1px solid var(--rule); border-radius: 16px; box-shadow: var(--shadow-3d); transition: transform 0.22s, box-shadow 0.22s; display: flex !important; }

& body.blog article.type-post:hover, & body.archive article.type-post:hover { transform: translateY(-5px); box-shadow: var(--shadow); }

& body.blog article.type-post > .inside-article, & body.archive article.type-post > .inside-article { flex-direction: column; height: 100%; background: transparent; border: 0px; box-shadow: none; display: flex !important; padding: 0px 0px 24px !important; }

& body.blog article.type-post .post-image, & body.archive article.type-post .post-image { order: 0; width: 100%; margin: 0px 0px 18px; padding: 0px; }

& body.blog article.type-post .post-image img, & body.archive article.type-post .post-image img { display: block; width: 100%; height: 175px; object-fit: cover; border: 0px; border-radius: 0px; }

& body.blog article.type-post .entry-header, & body.archive article.type-post .entry-header { order: 1; margin: 0px; padding: 0px 20px !important; }

& body.blog article.type-post .entry-title, & body.archive article.type-post .entry-title { margin: 0px 0px 8px !important; font-size: 1.05rem !important; line-height: 1.32 !important; }

& body.blog article.type-post .entry-title a, & body.archive article.type-post .entry-title a { color: var(--head); text-decoration: none; }

& body.blog article.type-post .entry-summary, & body.archive article.type-post .entry-summary { order: 2; flex: 1 1 auto; margin: 0px; padding: 0px 20px 18px; color: var(--soft); line-height: 1.55; font-size: 0.86rem !important; }

& body.blog article.type-post .entry-summary p, & body.archive article.type-post .entry-summary p { margin: 0px; }

& body.blog article.type-post footer.entry-meta, & body.archive article.type-post footer.entry-meta { order: 3; margin: 0px; padding: 0px 20px; color: var(--soft); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }

& body.blog article.type-post .entry-header .byline, & body.archive article.type-post .entry-header .byline, & body.blog article.type-post .entry-header .entry-date.published, & body.archive article.type-post .entry-header .entry-date.published { display: none; }

& body.blog .site-main > article.type-post:first-of-type, & body.archive .site-main > article.type-post:first-of-type { grid-column: 1 / -1 !important; }

& body.blog .site-main > article.type-post:first-of-type > .inside-article, & body.archive .site-main > article.type-post:first-of-type > .inside-article { grid-template-columns: minmax(0px, 1.05fr) minmax(0px, 1fr); grid-template-rows: auto 1fr auto; gap: 14px 40px; display: grid !important; padding: 34px !important; }

& body.blog .site-main > article.type-post:first-of-type .post-image, & body.archive .site-main > article.type-post:first-of-type .post-image { grid-area: 1 / 1 / 4; margin: 0px; }

& body.blog .site-main > article.type-post:first-of-type .post-image img, & body.archive .site-main > article.type-post:first-of-type .post-image img { height: 100%; min-height: 280px; object-fit: cover; border-radius: 12px; }

& body.blog .site-main > article.type-post:first-of-type .entry-header, & body.archive .site-main > article.type-post:first-of-type .entry-header, & body.blog .site-main > article.type-post:first-of-type .entry-summary, & body.archive .site-main > article.type-post:first-of-type .entry-summary, & body.blog .site-main > article.type-post:first-of-type footer.entry-meta, & body.archive .site-main > article.type-post:first-of-type footer.entry-meta { grid-column: 2; padding-left: 0px !important; padding-right: 0px !important; }

& body.blog .site-main > article.type-post:first-of-type .entry-header, & body.archive .site-main > article.type-post:first-of-type .entry-header { grid-row: 1; }

& body.blog .site-main > article.type-post:first-of-type .entry-summary, & body.archive .site-main > article.type-post:first-of-type .entry-summary { grid-row: 2; }

& body.blog .site-main > article.type-post:first-of-type footer.entry-meta, & body.archive .site-main > article.type-post:first-of-type footer.entry-meta { grid-row: 3; }

& body.blog .site-main > article.type-post:first-of-type .entry-title, & body.archive .site-main > article.type-post:first-of-type .entry-title { font-size: clamp(1.6rem, 3vw, 2.35rem) !important; line-height: 1.14 !important; }

& body.blog .site-main > article.type-post:first-of-type .entry-summary, & body.archive .site-main > article.type-post:first-of-type .entry-summary { font-size: 1rem !important; line-height: 1.65; }

& body.single .site-main article.type-post { min-width: 0px; overflow: visible; border: 0px; border-radius: 0px; box-shadow: none; transform: none; display: block !important; background: transparent !important; }

& body.single .site-main article.type-post > .inside-article { height: auto; background: var(--surface); border: 1px solid var(--rule); border-radius: 20px; box-shadow: none; display: block !important; padding: 52px 60px !important; }

& body.single .site-main article.type-post .entry-header, & body.single .site-main article.type-post .entry-summary, & body.single .site-main article.type-post footer.entry-meta { padding: 0px !important; }

& body.single .site-main article.type-post .entry-title { margin: 0px 0px 18px !important; font-size: clamp(2rem, 5vw, 3.2rem) !important; line-height: 1.12 !important; }

& body.single .site-main article.type-post .post-image, & body.single .site-main article.type-post .featured-image { width: 100%; margin: 0px 0px 30px; }

& body.single .site-main article.type-post .post-image img, & body.single .site-main article.type-post .featured-image img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; border-radius: 14px; }

& body.home .site-header a.tph-header-cta { color: rgb(255, 255, 255) !important; }

& body:not(.home) .site-header a.tph-header-cta { color: var(--head) !important; }

html:root[data-theme="dark"] body.blog article.type-post, html:root[data-theme="dark"] body.archive article.type-post, html:root[data-theme="dark"] body.single .site-main article.type-post > .inside-article { background: var(--raised) !important; }

@media (max-width: 900px) {
  & body.blog .site-main, & body.archive .site-main { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 24px; }
  & body.blog .site-main > article.type-post:first-of-type > .inside-article, & body.archive .site-main > article.type-post:first-of-type > .inside-article { grid-template-columns: 1fr; grid-template-rows: auto; gap: 18px; padding: 24px !important; }
  & body.blog .site-main > article.type-post:first-of-type .post-image, & body.archive .site-main > article.type-post:first-of-type .post-image, & body.blog .site-main > article.type-post:first-of-type .entry-header, & body.archive .site-main > article.type-post:first-of-type .entry-header, & body.blog .site-main > article.type-post:first-of-type .entry-summary, & body.archive .site-main > article.type-post:first-of-type .entry-summary, & body.blog .site-main > article.type-post:first-of-type footer.entry-meta, & body.archive .site-main > article.type-post:first-of-type footer.entry-meta { grid-area: auto / 1; }
  & body.blog .site-main > article.type-post:first-of-type .post-image img, & body.archive .site-main > article.type-post:first-of-type .post-image img { min-height: 0px; height: auto; }
  & body.single .site-main article.type-post > .inside-article { padding: 38px 30px !important; }
}

@media (max-width: 600px) {
  & body.blog .site-main, & body.archive .site-main { grid-template-columns: 1fr; gap: 20px; }
  & body.blog article.type-post .post-image img, & body.archive article.type-post .post-image img { height: 190px; }
  & body.blog .site-main > article.type-post:first-of-type > .inside-article, & body.archive .site-main > article.type-post:first-of-type > .inside-article { padding: 18px !important; }
  & body.single .site-main article.type-post > .inside-article { border-radius: 14px; padding: 26px 18px !important; }
  & body.single .site-main article.type-post .entry-title { font-size: 2rem !important; }
}

& body.admin-bar .site-header { top: 32px; }

@media screen and (max-width: 782px) {
  & body.admin-bar .site-header { top: 46px; }
}

& body.admin-bar .site-header { top: 32px; }

@media screen and (max-width: 782px) {
  & body.admin-bar .site-header { top: 46px; }
}

& body.tph-scrolled .site-header, & body.home.tph-scrolled .site-header { background-color: var(--surface) !important; }

& .tph-hsearch.tph-flip-hide { max-width: 0px !important; opacity: 0 !important; margin-left: 0px !important; }

& .tph-flip-clone { position: fixed; z-index: 9999; display: flex; align-items: center; justify-content: center; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; box-shadow: var(--shadow-btn); pointer-events: none; will-change: transform, width, height; transition: width 0.55s cubic-bezier(0.22, 0.61, 0.36, 1), height 0.55s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.55s cubic-bezier(0.22, 0.61, 0.36, 1); }

& .tph-flip-clone svg { color: var(--head); flex: 0 0 auto; }

html:root[data-theme="dark"] .tph-flip-clone { background: var(--raised); border-color: var(--rule); }

@media (max-width: 900px) {
  & .tph-flip-clone { display: none; }
}

& .tph-hsearch input, & .tph-find input[type="search"] { appearance: none; box-shadow: none; }

& .tph-hsearch input::-webkit-search-decoration, & .tph-hsearch input::-webkit-search-cancel-button, & .tph-hsearch input::-webkit-search-results-button, & .tph-hsearch input::-webkit-search-results-decoration, & .tph-find input[type="search"]::-webkit-search-decoration, & .tph-find input[type="search"]::-webkit-search-cancel-button, & .tph-find input[type="search"]::-webkit-search-results-button, & .tph-find input[type="search"]::-webkit-search-results-decoration { display: none; }

& .tph-hsearch input::-webkit-textfield-decoration-container, & .tph-find input[type="search"]::-webkit-textfield-decoration-container { background: transparent !important; }

& .main-navigation .sub-menu { min-width: 280px; max-width: 320px; background: var(--surface); border: 1px solid var(--rule); border-radius: 12px; box-shadow: var(--shadow-btn); padding: 8px; }

& .main-navigation .sub-menu .tph-nav-post-link > a, & .main-navigation .sub-menu .tph-nav-seeall > a { display: block; padding: 10px 12px; border-radius: 8px; font-size: 0.9rem; line-height: 1.4; color: var(--text); white-space: normal; transition: background 0.15s; }

& .main-navigation .sub-menu .tph-nav-post-link > a:hover, & .main-navigation .sub-menu .tph-nav-post-link > a:focus { background: var(--raised); color: var(--head); }

& .main-navigation .sub-menu .tph-nav-seeall { border-top: 1px solid var(--rule); margin-top: 4px; padding-top: 4px; }

& .main-navigation .sub-menu .tph-nav-seeall > a { font-weight: 600 !important; color: rgb(184, 94, 31) !important; }

& .main-navigation .sub-menu .tph-nav-seeall > a:hover { background: var(--raised); }

& body.home .main-navigation .sub-menu .tph-nav-seeall > a { color: rgb(184, 94, 31) !important; }

& body.tph-scrolled .tph-hsearch, & body:not(.home) .tph-hsearch { max-width: 150px !important; }

@media (max-width: 1100px) {
  & body.tph-scrolled .tph-hsearch, & body:not(.home) .tph-hsearch { max-width: 0px !important; opacity: 0 !important; pointer-events: none !important; }
}

& body.tph-scrolled .main-navigation .main-nav > ul.menu > li > a, & body:not(.home) .main-navigation .main-nav > ul.menu > li > a { padding-left: 8px !important; }

& body.tph-scrolled .main-navigation .main-nav > ul.menu > li > a > .dropdown-menu-toggle, & body:not(.home) .main-navigation .main-nav > ul.menu > li > a > .dropdown-menu-toggle { padding-left: 6px !important; padding-right: 10px !important; }

& .tph-hero { padding: 36px max(24px, -560px + 50vw) 28px; }

@media (max-width: 640px) {
  & .tph-hero { padding: 26px 20px 20px; }
}

& .tph-kicker { margin-bottom: 10px; }

& .tph-hero p:not(.tph-kicker) { margin-bottom: 14px; }

& .tph-hero .tph-find { margin-top: 18px; }

& .tph-hero .tph-trust { margin-top: 16px; }

& .tph-band { padding: 44px max(24px, -560px + 50vw); }

& .tph-band .wp-block-columns { gap: 24px; }

& .tph-cat-rows { gap: 28px; }

& .tph-cat-row-head { margin-bottom: 12px; }

& .tph-cat-cards { gap: 16px; }

& .tph-guide-card-body { padding: 14px 16px 16px; }

& .tph-guide-excerpt { margin-bottom: 8px; }

& .tph-card { padding: 20px; }

& body.home .inside-article { padding: 24px 0px; }

& .tph-icon svg { color: rgb(255, 255, 255); }

& .site-header:has(.main-navigation.toggled) { background: var(--surface); box-shadow: 0 1px 0 var(--rule); }

& .main-navigation.toggled, & .main-navigation.toggled .inside-navigation { background: var(--surface); }

:root { --hh: 76px; --hh-sm: 62px; --hgap: 18px; }

& .site-header { position: fixed; top: 0px; left: 0px; right: 0px; width: 100%; z-index: 1000; border-bottom: 1px solid transparent; transition: background-color 0.25s, box-shadow 0.25s, border-color 0.25s; }

& .site-header .inside-header { gap: var(--hgap); min-height: var(--hh); transition: min-height 0.25s; display: flex !important; align-items: center !important; flex-wrap: nowrap !important; padding-top: 0px !important; padding-bottom: 0px !important; }

& body.tph-scrolled .site-header .inside-header, & body:not(.home) .site-header .inside-header { min-height: var(--hh-sm); }

& body:not(.home) { padding-top: var(--hh-sm) !important; }

& body.home { padding-top: 0px !important; }

& .site-header .site-branding-container { display: flex; align-items: center; flex: 0 0 auto; margin: 0px; padding: 0px; }

& .site-header .site-logo { display: flex; align-items: center; margin: 0px; }

& .site-header .site-logo img { display: block; height: 30px; width: auto; transition: height 0.25s; }

& body.tph-scrolled .site-header .site-logo img { height: 26px; }

& .site-header .tph-hsearch { order: 2; flex: 0 1 260px; width: auto; min-width: 0px; display: flex; align-items: center; overflow: hidden; pointer-events: none; transform: translateX(-12px); transition: max-width 0.38s cubic-bezier(0.2, 0.7, 0.3, 1), opacity 0.26s, transform 0.38s cubic-bezier(0.2, 0.7, 0.3, 1), margin-left 0.38s cubic-bezier(0.2, 0.7, 0.3, 1); max-width: 0px !important; opacity: 0 !important; margin-left: 0px !important; }

& body.tph-scrolled .site-header .tph-hsearch, & body:not(.home) .site-header .tph-hsearch, & body.tph-scrolled .site-header .tph-hsearch.tph-flip-hide, & body:not(.home) .site-header .tph-hsearch.tph-flip-hide { transform: translateX(0px); pointer-events: auto; max-width: 260px !important; opacity: 1 !important; margin-left: 2px !important; }

& .site-header .tph-hsearch form { display: flex; align-items: center; width: 100%; height: 38px; padding: 0px 4px 0px 14px; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; transition: border-color 0.2s, box-shadow 0.2s; }

& .site-header .tph-hsearch form:focus-within { border-color: var(--coral); box-shadow: rgba(224, 122, 58, 0.16) 0px 0px 0px 3px; }

& .site-header .tph-hsearch input { flex: 1 1 auto; min-width: 0px; padding: 0px; font-size: 0.9rem; appearance: none; border: 0px !important; background: transparent !important; outline: none !important; box-shadow: none !important; color: var(--head) !important; }

& .site-header .tph-hsearch input::placeholder { color: var(--soft); }

& .site-header .tph-hsearch button { flex: 0 0 auto; width: 30px; height: 30px; padding: 0px; display: flex; align-items: center; justify-content: center; border: 0px; border-radius: 50%; cursor: pointer; background: var(--head); color: var(--surface); }

& .site-header .tph-hsearch button svg { width: 15px; height: 15px; }

& .tph-flip-clone { display: none !important; }

& .tph-hsearch.tph-flip-hide { max-width: 0px !important; opacity: 0 !important; }

& .site-header #site-navigation { order: 3; flex: 0 0 auto; min-width: auto; margin: 0px 0px 0px auto; display: flex; align-items: center; justify-content: flex-end; background: transparent; padding: 0px; }

& .site-header #site-navigation .inside-navigation { display: flex; align-items: center; justify-content: flex-end; width: 100%; max-width: none; padding: 0px; margin: 0px; }

& .site-header #site-navigation .main-nav { display: flex; align-items: center; }

& .site-header #menu-primary { display: flex; align-items: center; flex-wrap: nowrap; margin: 0px; padding: 0px; list-style: none; }

& .site-header #menu-primary > li { display: flex; align-items: center; }

& .site-header #menu-primary > li > a { display: flex; align-items: center; gap: 4px; padding: 0px 13px; line-height: 1.2; font-size: 0.92rem; font-weight: 500; white-space: nowrap; }

& .site-header #menu-primary > li:last-child > a { padding-right: 0px; }

& .site-header #menu-primary > li > a > .dropdown-menu-toggle { display: none; }

& .site-header .tph-theme { order: 4; flex: 0 0 auto; align-self: center; width: 34px; height: 34px; padding: 0px; display: flex; align-items: center; justify-content: center; border-radius: 50%; cursor: pointer; border: 1px solid var(--rule); background: var(--raised); color: var(--head); position: static !important; margin: 0 0 0 var(--hgap) !important; }

& .site-header .tph-theme svg { width: 16px; height: 16px; }

@media (max-width: 1200px) {
  :root { --hgap: 12px; }
  & .site-header #menu-primary > li > a { padding: 0px 10px; font-size: 0.88rem; }
  & body.tph-scrolled .site-header .tph-hsearch, & body:not(.home) .site-header .tph-hsearch { max-width: 210px !important; }
}

@media (max-width: 1060px) {
  & .site-header #menu-primary > li > a { padding: 0px 8px; font-size: 0.85rem; }
  & body.tph-scrolled .site-header .tph-hsearch, & body:not(.home) .site-header .tph-hsearch { max-width: 170px !important; }
}

& .site-header.tph-compact .inside-header { min-height: 60px; position: relative; flex-wrap: nowrap; gap: 10px; }

& .site-header.tph-compact .tph-hsearch, & .site-header.tph-compact .tph-hsearch.tph-flip-hide { display: none !important; }

& .site-header.tph-compact #mobile-menu-control-wrapper { order: 3; flex: 1 1 auto; align-items: center; justify-content: flex-end; background: transparent; margin: 0px; padding: 0px; display: flex !important; }

& .site-header.tph-compact #mobile-menu-control-wrapper .menu-toggle { align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0px; margin: 0px; background: transparent; display: flex !important; }

& .site-header.tph-compact #mobile-menu-control-wrapper .menu-bar-items { display: none; }

& .site-header.tph-compact #site-navigation { order: 5; position: absolute; top: 100%; left: 0px; right: 0px; flex: 0 0 auto; display: block; width: 100%; margin: 0px; z-index: 2; background: var(--surface); border-top: 1px solid var(--rule); box-shadow: rgba(0, 0, 0, 0.1) 0px 14px 28px; max-height: 0px; overflow: hidden; opacity: 0; transition: max-height 0.3s, opacity 0.2s; }

& .site-header.tph-compact #site-navigation.toggled { max-height: 80vh; overflow-y: auto; opacity: 1; }

& .site-header.tph-compact #site-navigation .inside-navigation { display: block; padding: 4px 0px 8px; }

& .site-header.tph-compact #site-navigation > .menu-toggle, & .site-header.tph-compact #site-navigation .inside-navigation > .menu-toggle, & .site-header.tph-compact #site-navigation .navigation-search { display: none !important; }

& .site-header.tph-compact #menu-primary { display: block; width: 100%; }

& .site-header.tph-compact #menu-primary > li { display: block; width: 100%; }

& .site-header.tph-compact #menu-primary > li > a { padding: 14px 22px; font-size: 1rem; border-bottom: 1px solid var(--rule); }

& .site-header.tph-compact #menu-primary > li:last-child > a { border-bottom: 0px; padding-right: 22px; }

& .site-header.tph-compact .tph-theme { order: 4; margin: 0px 0px 0px 4px !important; }

@media (max-width: 900px) {
  & .site-header .inside-header { min-height: 60px; position: relative; flex-wrap: nowrap; gap: 10px; }
  & .site-header .tph-hsearch, & .site-header .tph-hsearch.tph-flip-hide { display: none !important; }
  & .site-header #mobile-menu-control-wrapper { order: 3; flex: 1 1 auto; align-items: center; justify-content: flex-end; background: transparent; margin: 0px; padding: 0px; display: flex !important; }
  & .site-header #mobile-menu-control-wrapper .menu-toggle { align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0px; margin: 0px; background: transparent; display: flex !important; }
  & .site-header #mobile-menu-control-wrapper .menu-bar-items { display: none; }
  & .site-header #site-navigation { order: 5; position: absolute; top: 100%; left: 0px; right: 0px; flex: 0 0 auto; display: block; width: 100%; margin: 0px; z-index: 2; background: var(--surface); border-top: 1px solid var(--rule); box-shadow: rgba(0, 0, 0, 0.1) 0px 14px 28px; max-height: 0px; overflow: hidden; opacity: 0; transition: max-height 0.3s, opacity 0.2s; }
  & .site-header #site-navigation.toggled { max-height: 80vh; overflow-y: auto; opacity: 1; }
  & .site-header #site-navigation .inside-navigation { display: block; padding: 4px 0px 8px; }
  & .site-header #site-navigation > .menu-toggle, & .site-header #site-navigation .inside-navigation > .menu-toggle, & .site-header #site-navigation .navigation-search { display: none !important; }
  & .site-header #menu-primary { display: block; width: 100%; }
  & .site-header #menu-primary > li { display: block; width: 100%; }
  & .site-header #menu-primary > li > a { padding: 14px 22px; font-size: 1rem; border-bottom: 1px solid var(--rule); }
  & .site-header #menu-primary > li:last-child > a { border-bottom: 0px; padding-right: 22px; }
  & .site-header .tph-theme { order: 4; margin: 0px 0px 0px 4px !important; }
}

& body.admin-bar .site-header { top: 32px; }

@media screen and (max-width: 782px) {
  & body.admin-bar .site-header { top: 46px; }
}

html:root[data-theme="dark"] .tph-find button, html:root[data-theme="dark"] .tph-find .wp-block-search__button { background: var(--coral) !important; color: rgb(255, 255, 255) !important; }

html:root[data-theme="dark"] .site-header .tph-hsearch button { background: var(--coral); color: rgb(255, 255, 255); }

html:root[data-theme="dark"] .site-header #site-navigation { background: var(--surface); }

& .tph-card a, & .tph-card p, & .tph-card span, & .tph-card small, & .tph-guide-card-body a, & .tph-guide-excerpt, & .tph-card .tph-card-meta, & .tph-card .tph-card-sub { text-decoration: none !important; }

& .tph-card h3, & .tph-card h3 a, & .tph-guide-card-body h3, & .tph-guide-card-body h3 a { text-underline-offset: 3px; text-decoration: underline !important; }

& a.tph-guide-card, & a.tph-entry { text-decoration: none !important; }

& a.tph-guide-card h3, & a.tph-guide-card h4, & a.tph-guide-card .tph-guide-title { text-decoration-line: underline; text-decoration-style: initial; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: var(--rule); transition: text-decoration-color 0.18s; }

& a.tph-guide-card:hover h3, & a.tph-guide-card:hover h4, & a.tph-guide-card:hover .tph-guide-title { text-decoration-color: var(--coral); }

& a.tph-entry .tph-entry-title { text-decoration-line: underline; text-decoration-style: initial; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: var(--rule); transition: text-decoration-color 0.18s; }

& a.tph-entry:hover .tph-entry-title { text-decoration-color: var(--coral); }

& a.tph-guide-card .tph-guide-cat, & a.tph-guide-card .tph-guide-excerpt, & a.tph-guide-card .tph-guide-date, & a.tph-entry .tph-entry-sub { text-decoration: none !important; }

& .site-header #menu-primary > li > a { padding: 0px 13px !important; }

@media (max-width: 1200px) {
  & .site-header #menu-primary > li > a { padding: 0px 10px !important; }
}

@media (max-width: 1060px) {
  & .site-header #menu-primary > li > a { padding: 0px 8px !important; }
}

& .site-header.tph-compact #menu-primary > li > a { padding: 14px 22px !important; }

& .site-header.tph-compact #menu-primary > li:last-child > a { padding-right: 22px !important; }

@media (max-width: 900px) {
  & .site-header #menu-primary > li > a { padding: 14px 22px !important; }
  & .site-header #menu-primary > li:last-child > a { padding-right: 22px !important; }
}

& .site-header.tph-compact #mobile-menu-control-wrapper .menu-toggle { flex: 0 0 auto !important; width: 44px !important; }

@media (max-width: 900px) {
  & .site-header #mobile-menu-control-wrapper .menu-toggle { flex: 0 0 auto !important; width: 44px !important; }
}

& a.tph-guide-card h3, & a.tph-guide-card h4, & a.tph-guide-card .tph-guide-title, & a.tph-entry .tph-entry-title { text-decoration-color: var(--soft); }

& .tph-band .wp-block-group__inner-container > :first-child { margin-top: 0px !important; }

& body.home .inside-article { padding-bottom: 0px !important; }

& body.home .site-main { margin-bottom: 0px !important; }

& .wp-block-rss { margin-left: 0px !important; padding-left: 0px !important; }

& .wp-block-column > .tph-card { height: 100% !important; }

html:root[data-theme="dark"] .tph-guide-cat { color: var(--yellow) !important; }

& .tph-hero h1 .tph-type { position: relative; }

& .tph-hero h1 .tph-type::after { left: 100%; top: 0px; position: absolute !important; }

& .tph-cat-more { padding: 11px 0px !important; margin-top: -11px !important; margin-bottom: -11px !important; }

& .single .tph-breadcrumbs, & .single .entry-header, & .single .entry-content > *, & .single .entry-meta { max-width: 40rem !important; margin-left: auto !important; margin-right: auto !important; }

& .single .featured-image, & .single .entry-content > figure, & .single .entry-content > .wp-block-image, & .single .entry-content > .wp-block-table, & .single .entry-content > .tph-picks, & .single .entry-content > .tph-aff { max-width: 52rem !important; }

& .single .featured-image { margin-left: auto !important; margin-right: auto !important; }

& .single .featured-image img { width: 100%; }

& .single .entry-content p, & .single .entry-content li { line-height: 1.75; }

& .tph-picks { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }

& .tph-picks:has(> .tph-pick:nth-child(4)) { grid-template-columns: repeat(2, 1fr); }

@media (max-width: 700px) {
  & .tph-picks { grid-template-columns: 1fr !important; }
}

& .single .entry-meta { margin-top: 3em; padding-top: 18px; border-top: 1px solid var(--rule); font-size: 0.8125rem; color: var(--soft); }

& .single .entry-meta .cat-links { display: inline !important; font-size: inherit !important; letter-spacing: normal !important; text-transform: none !important; }

& .single .entry-meta .tph-readtime { display: inline !important; font-size: inherit !important; }

& .single .entry-meta .post-navigation { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--rule); }

& .single .entry-meta .nav-next { text-align: right; }

& .single .entry-meta .post-navigation a { font-weight: 600; line-height: 1.4; color: var(--head); font-size: 0.95rem !important; text-transform: none !important; letter-spacing: normal !important; }

& .single .entry-meta .nav-previous::before { content: "Previous"; display: block; font-size: 0.66rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--soft); margin-bottom: 6px; }

& .single .entry-meta .nav-next::before { content: "Next"; display: block; font-size: 0.66rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--soft); margin-bottom: 6px; }

@media (max-width: 600px) {
  & .single .entry-meta .post-navigation { grid-template-columns: 1fr; }
  & .single .entry-meta .nav-next { text-align: left; }
}

& .single div.entry-meta { border-top: 0px !important; padding-top: 0px !important; margin-top: 0px !important; }

& .single footer.entry-meta { grid-template-columns: auto 1fr; grid-template-areas: "cat read" "nav nav"; align-items: baseline; column-gap: 6px; display: grid !important; font-size: 0.8125rem !important; color: var(--soft) !important; padding-top: 18px !important; margin-top: 3em !important; }

& .single footer.entry-meta .cat-links { grid-area: cat; font-size: 0.8125rem !important; letter-spacing: normal !important; text-transform: none !important; }

& .single footer.entry-meta .cat-links a { font-size: 0.8125rem !important; font-weight: 600; }

& .single footer.entry-meta .tph-readtime { grid-area: read; justify-self: start; font-size: 0.8125rem !important; letter-spacing: normal !important; text-transform: none !important; margin-left: 0px !important; }

& .single footer.entry-meta .post-navigation { grid-area: nav; }

& .single .tph-breadcrumbs { max-width: 52rem !important; }

html:root[data-theme="dark"] .tph-cta { background: rgb(242, 243, 245) !important; color: rgb(18, 19, 23) !important; }

& .single footer.entry-meta .tph-readtime::before { content: "· "; }

& .tph-dockfly { position: fixed; z-index: 1200; box-sizing: border-box; display: block; overflow: hidden; pointer-events: none; background: var(--raised); border: 1px solid var(--rule); color: var(--head); box-shadow: var(--shadow-btn,0 2px 10px rgba(16,18,22,.10)); transition: none; }

& .tph-dockfly-face { position: absolute; left: 0px; top: 0px; box-sizing: border-box; display: flex; align-items: center; padding: 6px; transform-origin: left top; pointer-events: none; }

& .tph-dockfly-face input { flex: 1 1 auto; min-width: 0px; border: 0px; background: transparent; outline: none; font-size: 1rem; padding: 14px 18px; color: var(--head); appearance: none; }

& .tph-dockfly-face input::placeholder { color: var(--soft); }

& .tph-dockfly-face button { flex: 0 0 auto; border: 0px; border-radius: 999px; padding: 14px 20px; font-weight: 700; font-size: 1rem; background: var(--head); color: rgb(255, 255, 255); cursor: default; }

html:root[data-theme="dark"] .tph-dockfly-face button { background: var(--coral); color: rgb(255, 255, 255); }

& .tph-dockfly-icon { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: flex; align-items: center; justify-content: center; opacity: 0; color: var(--head); pointer-events: none; }

& .tph-dockfly-icon svg { width: 16px; height: 16px; display: block; }

html:root.tph-dock-on body.tph-search-docking .tph-find, html:root.tph-dock-on body.tph-search-docked .tph-find { height: calc(var(--tph-find-h,73px) * (1 - var(--tph-flip-t,0))); min-height: 0px; opacity: 0; overflow: hidden; pointer-events: none; }

html:root.tph-dock-on body.tph-search-docking .tph-hero > .wp-block-group__inner-container, html:root.tph-dock-on body.tph-search-docked .tph-hero > .wp-block-group__inner-container { min-height: var(--tph-hero-h,auto); }

html:root.tph-dock-on body.tph-search-docking .tph-hero > .wp-block-group__inner-container > :not(.tph-stage), html:root.tph-dock-on body.tph-search-docked .tph-hero > .wp-block-group__inner-container > :not(.tph-stage) { transform: translateY(calc(var(--tph-find-h,73px) * var(--tph-flip-t,0) / 2)); }

& body.home:not(.tph-scrolled) .site-header:not(.tph-compact) .tph-hsearch { position: relative; order: 2; flex: 0 0 38px; width: 38px; min-width: 38px; height: 38px; overflow: visible; max-width: 38px !important; margin-left: 2px !important; opacity: 0 !important; pointer-events: none !important; transform: none !important; transition: opacity 0.22s, max-width 0.38s cubic-bezier(0.2, 0.7, 0.3, 1) !important; }

html:root.tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch { opacity: 1 !important; pointer-events: auto !important; }

html:root.tph-dock-on body.home .site-header:not(.tph-compact) .tph-hsearch form { position: absolute; left: 0px; top: 50%; margin-top: -19px; width: 38px; height: 38px; padding: 0px; justify-content: center; overflow: hidden; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; box-shadow: none; transition: width 0.28s cubic-bezier(0.2, 0.7, 0.3, 1), left 0.28s cubic-bezier(0.2, 0.7, 0.3, 1), padding 0.28s cubic-bezier(0.2, 0.7, 0.3, 1), box-shadow 0.28s, border-color 0.2s; }

html:root.tph-dock-on body.home .site-header:not(.tph-compact) .tph-hsearch input { flex: 0 0 0px; width: 0px; min-width: 0px; padding: 0px; opacity: 0; transition: opacity 0.18s; }

html:root.tph-dock-on body.home .site-header:not(.tph-compact) .tph-hsearch button { width: 30px; height: 30px; min-width: 30px; transition: background 0.2s, color 0.2s, transform 0.15s; background: transparent !important; color: var(--head) !important; }

html:root.tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch.is-expanded { z-index: 30; }

html:root.tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch.is-expanded form { width: var(--tph-hs-exp-w,266px); left: var(--tph-hs-exp-x,0px); padding: 0px 4px 0px 14px; justify-content: flex-start; border-color: var(--coral); box-shadow: rgba(16, 18, 22, 0.18) 0px 10px 26px; }

html:root.tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch.is-expanded input { flex: 1 1 auto; width: auto; opacity: 1; }

html:root.tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch.is-expanded button { background: var(--head) !important; color: var(--surface) !important; }

html:root[data-theme="dark"].tph-dock-on body.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch.is-expanded button { background: var(--coral) !important; color: rgb(255, 255, 255) !important; }

html:root:not(.tph-dock-on) body.home.tph-scrolled .site-header:not(.tph-compact) .tph-hsearch { flex: 0 1 170px; min-width: 0px; max-width: 170px !important; opacity: 1 !important; pointer-events: auto !important; }

@media (prefers-reduced-motion: reduce) {
  & .tph-dockfly { display: none !important; }
}

& body.error404 .inside-article { max-width: 660px; margin: 0px auto; padding: clamp(3rem, 9vw, 6rem) 1.25rem clamp(3.5rem, 10vw, 6.5rem); border: 0px; }

& body.error404 .entry-header { margin: 0px 0px 1.15rem; padding: 0px; border: 0px; }

& body.error404 .entry-header::before { content: "Error 404"; display: block; font-size: 0.75rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700; color: var(--coral-d); margin: 0px 0px 0.9rem; }

& body.error404 .entry-title { font-size: clamp(1.9rem, 4.6vw, 2.85rem); line-height: 1.15; letter-spacing: -0.02em; margin: 0px; color: var(--head); }

& body.error404 .entry-content { margin-top: 0px; }

& body.error404 .entry-content > p { font-size: 1.0625rem; line-height: 1.7; color: var(--soft); margin: 0px 0px 1.75rem; padding-bottom: 1.75rem; border-bottom: 1px solid var(--rule); }

& body.error404 .search-form { display: flex; gap: 0.5rem; max-width: 470px; align-items: stretch; }

& body.error404 .search-form label { flex: 1 1 auto; margin: 0px; }

& body.error404 .search-field { width: 100%; padding: 0.8rem 1rem; font-size: 1rem; line-height: 1.35; color: var(--head); background: var(--surface); border: 1px solid var(--rule); border-radius: 8px; transition: border-color 0.15s, box-shadow 0.15s; }

& body.error404 .search-field:focus { outline: none; border-color: var(--coral-d); box-shadow: rgba(224, 122, 58, 0.2) 0px 0px 0px 3px; }

& body.error404 .search-submit { flex: 0 0 auto; padding: 0px 1.2rem; border: 0px; border-radius: 8px; background: var(--coral-d); color: rgb(255, 255, 255); cursor: pointer; transition: background 0.15s; }

& body.error404 .search-submit:hover, & body.error404 .search-submit:focus { background: var(--head); }

html:root[data-theme="dark"] body.error404 .entry-header::before { color: var(--coral); }

html:root[data-theme="dark"] body.error404 .search-field { background: var(--raised); }

& #tph-q::placeholder, & .tph-hsearch-input::placeholder { text-align: center; }

& .tph-o1, html:root[data-theme="dark"] .tph-o1 { background: radial-gradient(circle, var(--tph-o1c), transparent 70%); }

& .tph-o2, html:root[data-theme="dark"] .tph-o2 { background: radial-gradient(circle, var(--tph-o2c), transparent 70%); }

& .tph-o3, html:root[data-theme="dark"] .tph-o3 { background: radial-gradient(circle, var(--tph-o3c), transparent 70%); }

& .tph-o4, html:root[data-theme="dark"] .tph-o4 { background: radial-gradient(circle, var(--tph-o4c), transparent 70%); }

& .tph-o5, html:root[data-theme="dark"] .tph-o5 { background: radial-gradient(circle, var(--tph-o5c), transparent 70%); }

& .tph-o6, html:root[data-theme="dark"] .tph-o6 { background: radial-gradient(circle, var(--tph-o6c), transparent 70%); }

& .tph-o1 { animation: 12s ease-in-out 0s infinite normal none running tphOrbCyc1; }

& .tph-o2 { animation: 12s ease-in-out -2s infinite normal none running tphOrbCyc2; }

& .tph-o3 { animation: 12s ease-in-out -4s infinite normal none running tphOrbCyc3, 16s ease-in-out 0s infinite normal none running tphOrbDrift; }

& .tph-o4 { animation: 12s ease-in-out -6s infinite normal none running tphOrbCyc4, 15s ease-in-out -3s infinite normal none running tphOrbDrift; }

& .tph-o5 { animation: 12s ease-in-out -8s infinite normal none running tphOrbCyc5, 12s ease-in-out -6s infinite normal none running tphOrbDrift; }

& .tph-o6 { animation: 12s ease-in-out -10s infinite normal none running tphOrbCyc6, 14s ease-in-out -9s infinite normal none running tphOrbDrift; }

@media (prefers-reduced-motion: reduce) {
  & .tph-o1, & .tph-o2, & .tph-o3, & .tph-o4, & .tph-o5, & .tph-o6 { animation: auto ease 0s 1 normal none running none; }
}

:root { --coral-x: #A85416; --coral-l: #F3924F; --coral-xh: #8F4512; --step-1: .5rem; --step-2: 1rem; --step-3: 1.5rem; --step-4: 2.25rem; }

& .tph-find form, & .tph-find .wp-block-search__inside-wrapper { max-width: 100%; }

& .tph-find input, & .tph-find .wp-block-search__input { min-width: 0px; }

& .tph-hsearch form, & .tph-hsearch input { min-width: 0px; }

@media (max-width: 700px) {
  & .tph-band > .wp-block-group__inner-container { padding-left: 0px !important; padding-right: 0px !important; }
  & .tph-band { padding-left: 18px !important; padding-right: 18px !important; }
  & .tph-band .wp-block-group__inner-container .wp-block-group__inner-container { padding-left: 0px !important; padding-right: 0px !important; }
}

& .tph-dates > .wp-block-group__inner-container { padding-left: 0px !important; padding-right: 0px !important; }

& .tph-guide-card img { height: 118px; }

& .tph-guide-card-body { padding: 13px 15px 14px; gap: 4px; }

& .tph-guide-card h4 { font-size: 0.9rem; line-height: 1.32; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

& .tph-guide-excerpt { font-size: 0.785rem; line-height: 1.42; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

& .tph-guide-date { margin-top: 6px; }

& .tph-cat-rows { gap: 34px; margin-top: 20px; }

& .tph-cat-row-head { margin-bottom: 13px; }

@media (min-width: 701px) {
  & .tph-cat-cards:not(:has(> :nth-child(3))) { grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
  & .tph-cat-cards:not(:has(> :nth-child(3))) .tph-guide-card { flex-direction: row; align-items: stretch; }
  & .tph-cat-cards:not(:has(> :nth-child(3))) .tph-guide-card img { width: 186px; height: auto; min-height: 130px; flex: 0 0 186px; }
  & .tph-cat-cards:not(:has(> :nth-child(3))) .tph-guide-excerpt { -webkit-line-clamp: 3; }
}

@media (max-width: 700px) {
  & .tph-cat-cards { grid-template-columns: 1fr; gap: 12px; }
  & .tph-guide-card { flex-direction: row; align-items: stretch; border-radius: 12px; }
  & .tph-guide-card img { width: 104px; flex: 0 0 104px; height: auto; min-height: 104px; align-self: stretch; }
  & .tph-guide-card-body { padding: 11px 13px; gap: 3px; }
  & .tph-guide-card h4 { font-size: 0.88rem; -webkit-line-clamp: 3; }
  & .tph-guide-excerpt { display: none; }
  & .tph-guide-date { margin-top: auto; font-size: 0.66rem; }
  & .tph-cat-rows { gap: 26px; }
}

& .tph-dates > * { padding-top: 24px !important; padding-bottom: 24px !important; }

@media (max-width: 700px) {
  & .tph-dates { margin-top: 8px; }
  & .tph-dates .wp-block-columns { grid-template-columns: 1fr 1fr; display: grid !important; gap: 0px 16px !important; margin-bottom: 0px !important; }
  & .tph-dates .wp-block-column { padding-block: 12px; flex-basis: auto !important; }
  & .tph-dates .wp-block-column > * { margin-block: 2px; }
}

@media (max-width: 700px) {
  & .tph-hero { padding-top: 18px; padding-bottom: 14px; }
  & .tph-find { margin-top: 26px; }
  & .tph-find input[type="search"] { padding: 12px 14px; font-size: 0.95rem; }
  & .tph-find button { padding: 12px 16px; font-size: 0.92rem; }
}

@media (min-width: 701px) {
  & .tph-hero { padding-top: 28px; padding-bottom: 22px; }
  & .tph-find { margin-top: 34px; }
}

& .site-footer a, & .tph-band .wp-block-columns .tph-card h3 a, & .tph-band .wp-block-columns .tph-card h3 { text-decoration: none !important; }

& .site-footer a:hover, & .tph-band .wp-block-columns .tph-card:hover h3, & .tph-band .wp-block-columns .tph-card:hover h3 a { text-underline-offset: 2px; text-decoration: underline !important; }

& .tph-cat-more { text-decoration: none !important; }

& .tph-cat-more:hover { text-decoration: underline !important; }

& .tph-cta { background: var(--coral-x) !important; color: rgb(255, 255, 255) !important; }

& .tph-cta:hover { background: var(--coral-xh) !important; }

& .tph-cat-more, & .tph-guide-cat, & .tph-pick-tag { color: var(--coral-x); }

html:root[data-theme="dark"] a { color: var(--coral-l); }

html:root[data-theme="dark"] .entry-content a:not(.tph-cta):not(.wp-block-button__link) { color: var(--coral-l); }

html:root[data-theme="dark"] .tph-guide-cat { color: var(--coral-l) !important; }

html:root[data-theme="dark"] .tph-pick-tag, html:root[data-theme="dark"] .tph-cat-more, html:root[data-theme="dark"] .wp-block-latest-posts__post-date { color: var(--coral-l); }

html:root[data-theme="dark"] .tph-trust li svg { color: var(--coral-l); }

html:root[data-theme="dark"] .tph-guide-card img { filter: brightness(0.93) contrast(0.97); border-bottom: 1px solid var(--rule); }

@media (max-width: 700px) {
  html:root[data-theme="dark"] .tph-guide-card img { border-bottom: 0px; border-right: 1px solid var(--rule); }
}

& .tph-band .wp-block-columns .tph-card { padding: 18px 20px 20px; }

& .tph-band .wp-block-columns .tph-card .wp-block-group__inner-container > * { margin-top: 0px; margin-bottom: 0px; }

& .tph-band .wp-block-columns .tph-card .wp-block-group__inner-container { display: flex; flex-direction: column; gap: 8px; }

& .tph-band .wp-block-columns .tph-card .tph-icon { margin-bottom: 2px; }

& .tph-band .wp-block-columns .tph-card p { font-size: 0.86rem; line-height: 1.5; }

& .tph-band > .wp-block-group__inner-container > :last-child { margin-bottom: 0px; }

& .tph-band .wp-block-columns:last-child { margin-bottom: 0px; }

& .wp-block-rss__item { padding-block: 10px; }

& .wp-block-rss__item-excerpt { font-size: 0.86rem; line-height: 1.5; margin-top: 2px; }

& .wp-block-rss__item-publish-date { font-size: 0.68rem; letter-spacing: 0.04em; }

@media (max-width: 700px) {
  & .tph-band .wp-block-columns:has(.tph-card) { grid-template-columns: 1fr 1fr; display: grid !important; gap: 12px !important; margin-bottom: 0px !important; }
  & .tph-band .wp-block-columns:has(.tph-card) .wp-block-column { flex-basis: auto !important; margin: 0px !important; }
  & .tph-band .wp-block-columns .tph-card { padding: 14px; }
  & .tph-band .wp-block-columns .tph-card h3 { font-size: 0.92rem; }
  & .tph-band .wp-block-columns .tph-card p { font-size: 0.78rem; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  & .tph-band .wp-block-columns .tph-card .tph-icon { transform: scale(0.85); transform-origin: left top; }
}

& body.single .entry-content h2 { margin-top: 48px !important; margin-bottom: 14px !important; }

& body.single .entry-content h3 { margin-top: 30px !important; margin-bottom: 10px !important; }

& body.single .entry-content > p:first-of-type { margin-top: 14px; }

& body.single .entry-content ul, & body.single .entry-content ol { margin-block: 14px; }

& body.single .entry-content li { margin-bottom: 5px; }

& #rank-math-toc { background: var(--raised); border: 1px solid var(--rule); border-radius: 12px; padding: 18px 20px 16px; margin-block: 26px; }

& #rank-math-toc h2 { text-transform: uppercase; letter-spacing: 0.07em; color: var(--soft); margin: 0px 0px 10px !important; font-size: 0.78rem !important; }

& #rank-math-toc nav > ul { margin: 0px; padding: 0px; list-style: none; columns: 2; column-gap: 28px; }

& #rank-math-toc li { list-style: none; margin: 0px; break-inside: avoid; }

& #rank-math-toc li a { display: block; padding: 5px 0px; font-size: 0.88rem; line-height: 1.35; text-decoration: none; border-bottom: 1px solid transparent; }

& #rank-math-toc li a:hover { text-decoration: underline; text-underline-offset: 2px; }

& #rank-math-toc ul ul { margin: 0px; padding-left: 14px; }

@media (max-width: 700px) {
  & #rank-math-toc nav > ul { columns: 1; }
  & #rank-math-toc { padding: 15px 16px 13px; }
}

& body.single .tph-author { padding: 20px 22px !important; margin-block: 28px !important; }

& body.single .tph-author p { margin-bottom: 10px; font-size: 0.92rem; line-height: 1.6; }

& body.single .tph-author p:last-child { margin-bottom: 0px; }

& .tph-icon { display: flex; align-items: center; justify-content: center; }

& .tph-icon svg { width: 20px; height: 20px; }

html:root[data-theme="dark"] .tph-icon { color: var(--coral-l); }

@media (min-width: 701px) {
  & .tph-band .wp-block-columns:has(.tph-card) { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); display: grid !important; gap: 20px !important; margin-bottom: 20px !important; }
  & .tph-band .wp-block-columns:has(.tph-card) > .wp-block-column { flex-basis: auto !important; margin: 0px !important; }
  & .tph-band .wp-block-columns:has(.tph-card) > .wp-block-column:not(:has(.tph-card)) { display: none; }
}

@media (max-width: 700px) {
  & .tph-band .wp-block-columns:has(.tph-card) > .wp-block-column:not(:has(.tph-card)) { display: none; }
}

@media (min-width: 701px) and (max-width: 900px) {
  & .tph-dates .wp-block-columns { grid-template-columns: 1fr 1fr; display: grid !important; gap: 0px 22px !important; margin-bottom: 0px !important; }
  & .tph-dates .wp-block-column { padding-block: 14px; flex-basis: auto !important; margin: 0px !important; }
}

& .tph-searchpage { max-width: 52rem; margin-inline: auto; }

& .tph-search-lede { font-size: 1.05rem; line-height: 1.65; color: var(--soft); margin: 0px 0px 22px; max-width: 40rem; }

& .tph-sform { display: flex; gap: 0px; background: var(--raised); border: 1px solid var(--rule); border-radius: 999px; padding: 6px; max-width: 44rem; }

& .tph-sform input { flex: 1 1 0%; min-width: 0px; font-size: 1.08rem; padding: 15px 22px; outline: none; border: 0px !important; background: transparent !important; color: var(--head) !important; }

& .tph-sform input::placeholder { color: var(--soft); }

& .tph-sform input:focus-visible { outline: none; }

& .tph-sform:focus-within { border-color: var(--coral-x); box-shadow: rgba(224, 122, 58, 0.16) 0px 0px 0px 3px; }

& .tph-sform button { border: 0px; border-radius: 999px; background: var(--head); color: rgb(255, 255, 255); font-weight: 700; font-size: 0.98rem; padding: 15px 28px; cursor: pointer; transition: filter 0.2s, transform 0.2s; }

& .tph-sform button:hover { filter: brightness(1.12); transform: translateY(-1px); }

html:root[data-theme="dark"] .tph-sform button { background: rgb(242, 243, 245); color: rgb(18, 19, 23); }

& .tph-sfilters { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0px 6px; }

& .tph-sfilters button { font-style: inherit; font-variant: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 0.83rem; font-weight: 600; cursor: pointer; padding: 7px 14px; border-radius: 999px; border: 1px solid var(--rule); background: var(--surface); color: var(--soft); transition: 0.18s; }

& .tph-sfilters button:hover { color: var(--head); border-color: var(--soft); }

& .tph-sfilters button.is-on { background: var(--head); border-color: var(--head); color: rgb(255, 255, 255); }

html:root[data-theme="dark"] .tph-sfilters button { background: var(--raised); }

html:root[data-theme="dark"] .tph-sfilters button.is-on { background: rgb(242, 243, 245); color: rgb(18, 19, 23); border-color: rgb(242, 243, 245); }

& .tph-scount { font-size: 0.86rem; color: var(--soft); margin: 16px 0px 6px; padding-bottom: 12px; border-bottom: 1px solid var(--rule); }

& .tph-sresults { display: flex; flex-direction: column; }

& .tph-sresult { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "cat date" "title title" "exc exc"; gap: 2px 16px; padding: 16px 0px; border-bottom: 1px solid var(--rule); color: inherit; text-decoration: none !important; }

& .tph-sresult:hover { background: var(--raised); }

& .tph-sresult:focus-visible { outline: 2px solid var(--coral-x); outline-offset: 2px; }

& .tph-scat { grid-area: cat; font-size: 0.68rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--coral-x); }

& .tph-sdate { grid-area: date; font-size: 0.7rem; color: var(--soft); white-space: nowrap; }

& .tph-stitle { grid-area: title; font-size: 1.06rem; line-height: 1.35; font-weight: 700; color: var(--head); margin-top: 3px; }

& .tph-sresult:hover .tph-stitle { text-decoration: underline; text-underline-offset: 2px; }

& .tph-sexc { grid-area: exc; font-size: 0.87rem; line-height: 1.55; color: var(--soft); margin-top: 4px; }

& .tph-sresult mark { background: rgba(224, 122, 58, 0.2); color: inherit; border-radius: 2px; padding: 0px 1px; font-weight: inherit; }

html:root[data-theme="dark"] .tph-sresult mark { background: rgba(243, 146, 79, 0.26); color: rgb(255, 255, 255); }

html:root[data-theme="dark"] .tph-sresult:hover { background: rgba(255, 255, 255, 0.04); }

& .tph-sempty { font-size: 0.95rem; line-height: 1.65; color: var(--soft); padding: 22px 0px; }

& .tph-sempty em { color: var(--head); font-style: normal; font-weight: 600; }

& .tph-sempty .tph-sclear { font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; color: var(--coral-x); font-weight: 600; background: none; border: 0px; padding: 0px; cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }

html:root[data-theme="dark"] .tph-sempty .tph-sclear { color: var(--coral-l); }

& .tph-ssuggest { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--rule); }

& .tph-ssuggest[hidden] { display: none; }

& .tph-ssuggest span { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--soft); margin-right: 4px; }

& .tph-ssuggest button { font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 0.85rem; cursor: pointer; padding: 6px 13px; border-radius: 999px; border: 1px solid var(--rule); background: var(--surface); color: var(--head); transition: 0.18s; }

& .tph-ssuggest button:hover { border-color: var(--coral-x); color: var(--coral-x); }

html:root[data-theme="dark"] .tph-ssuggest button { background: var(--raised); }

html:root[data-theme="dark"] .tph-ssuggest button:hover { border-color: var(--coral-l); color: var(--coral-l); }

& .tph-snojs { font-size: 0.9rem; color: var(--soft); padding-top: 18px; }

@media (max-width: 700px) {
  & .tph-sform input { font-size: 1rem; padding: 13px 16px; }
  & .tph-sform button { padding: 13px 18px; font-size: 0.92rem; }
  & .tph-search-lede { font-size: 0.98rem; }
  & .tph-sfilters { gap: 6px; }
  & .tph-sfilters button { font-size: 0.78rem; padding: 6px 11px; }
  & .tph-stitle { font-size: 1rem; }
  & .tph-sresult { grid-template-columns: 1fr; grid-template-areas: "cat" "title" "exc" "date"; gap: 1px; }
  & .tph-sdate { margin-top: 6px; }
}

& .tph-ac { position: fixed; z-index: 99999; background: var(--surface); border: 1px solid var(--rule); border-radius: 14px; box-shadow: var(--shadow); overflow: hidden auto; max-height: min(70vh, 460px); animation: 0.13s ease-out 0s 1 normal none running tph-ac-in; }

@media (prefers-reduced-motion: reduce) {
  & .tph-ac { animation: auto ease 0s 1 normal none running none; }
}

& .tph-ac-item { display: block; padding: 10px 16px; color: inherit; border-bottom: 1px solid var(--rule); text-decoration: none !important; }

& .tph-ac-item:last-of-type { border-bottom: 0px; }

& .tph-ac-item:hover, & .tph-ac-item.is-on { background: var(--raised); }

& .tph-ac-cat { display: block; font-size: 0.63rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--coral-x); margin-bottom: 2px; }

& .tph-ac-t { display: block; font-size: 0.9rem; line-height: 1.35; font-weight: 600; color: var(--head); }

& .tph-ac mark { background: rgba(224, 122, 58, 0.22); color: inherit; border-radius: 2px; padding: 0px 1px; }

& .tph-ac-none { margin: 0px; padding: 14px 16px; font-size: 0.87rem; color: var(--soft); }

& .tph-ac-all { display: block; padding: 11px 16px; font-size: 0.8rem; font-weight: 600; color: var(--head); background: var(--raised); border-top: 1px solid var(--rule); text-decoration: none !important; }

& .tph-ac-all:hover, & .tph-ac-all.is-on { color: var(--coral-x); background: var(--raised); }

html:root[data-theme="dark"] .tph-ac { background: var(--raised); border-color: var(--rule); }

html:root[data-theme="dark"] .tph-ac-item:hover, html:root[data-theme="dark"] .tph-ac-item.is-on { background: rgba(255, 255, 255, 0.06); }

html:root[data-theme="dark"] .tph-ac-cat { color: var(--coral-l); }

html:root[data-theme="dark"] .tph-ac mark { background: rgba(243, 146, 79, 0.28); color: rgb(255, 255, 255); }

html:root[data-theme="dark"] .tph-ac-all { background: rgba(255, 255, 255, 0.04); }

html:root[data-theme="dark"] .tph-ac-all:hover, html:root[data-theme="dark"] .tph-ac-all.is-on { color: var(--coral-l); }

@media (max-width: 700px) {
  & .tph-ac { border-radius: 12px; max-height: 56vh; }
  & .tph-ac-item { padding: 11px 14px; }
  & .tph-ac-t { font-size: 0.88rem; }
}

html:root[data-theme="dark"] .tph-find button, html:root[data-theme="dark"] .tph-find .wp-block-search__button { color: rgb(18, 19, 23) !important; }

@media (max-width: 700px) {
  & .tph-hero { padding-left: 18px !important; padding-right: 18px !important; }
  & .tph-hero > .wp-block-group__inner-container { padding-left: 0px !important; padding-right: 0px !important; }
  & .tph-hero .wp-block-group__inner-container .wp-block-group__inner-container { padding-left: 0px !important; padding-right: 0px !important; }
}

& .tph-cat-cards .tph-guide-card > img { display: none !important; }

& .tph-cat-cards .tph-guide-card { border-radius: 12px !important; box-shadow: none !important; border: 1px solid var(--rule) !important; transition: border-color 0.18s, transform 0.18s, box-shadow 0.18s !important; }

& .tph-cat-cards .tph-guide-card:hover { transform: translateY(-3px) !important; border-color: var(--coral) !important; box-shadow: var(--shadow) !important; }

& .tph-cat-cards .tph-guide-card-body { padding: 15px 17px 13px !important; gap: 0px !important; }

& .tph-cat-cards .tph-guide-cat { font-size: 0.655rem; letter-spacing: 0.075em; line-height: 1.2; margin-bottom: 8px; display: block; }

& .tph-cat-cards .tph-guide-card h4 { font-family: var(--serif); font-weight: 600; letter-spacing: -0.005em; font-size: 1.02rem !important; line-height: 1.27 !important; -webkit-line-clamp: 3 !important; margin: 0px 0px 7px !important; }

& .tph-cat-cards .tph-guide-excerpt { font-size: 0.78rem !important; line-height: 1.48 !important; -webkit-line-clamp: 2 !important; display: -webkit-box !important; margin: 0px !important; }

& .tph-cat-cards .tph-guide-date { padding-top: 9px; border-top: 1px solid var(--rule); letter-spacing: 0.02em; margin-top: 11px !important; font-size: 0.665rem !important; }

html:root[data-theme="dark"] .tph-cat-cards .tph-guide-card { filter: none !important; border-bottom: 1px solid var(--rule) !important; }

@media (min-width: 901px) {
  & .tph-cat-rows .tph-cat-row:first-child .tph-cat-cards { grid-template-rows: repeat(3, auto); align-items: stretch; grid-template-columns: 1.55fr 1fr !important; gap: 18px 26px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child { grid-area: 1 / 1 / 4; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child > img { border-bottom: 1px solid var(--rule); display: block !important; height: 206px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child .tph-guide-card-body { padding: 18px 22px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child h4 { font-size: 1.5rem !important; line-height: 1.15 !important; -webkit-line-clamp: 2 !important; margin-bottom: 9px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child .tph-guide-excerpt { font-size: 0.875rem !important; -webkit-line-clamp: 2 !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child .tph-guide-cat { font-size: 0.7rem; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:not(:first-child) .tph-guide-excerpt { display: none !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:not(:first-child) h4 { font-size: 1.02rem !important; -webkit-line-clamp: 3 !important; }
}

@media (max-width: 700px) {
  & .tph-cat-cards { gap: 0px !important; }
  & .tph-cat-cards .tph-guide-card { flex-direction: column !important; border-top: 0px !important; border-right: 0px !important; border-left: 0px !important; border-image: none !important; border-radius: 0px !important; border-bottom: 1px solid var(--rule) !important; background: transparent !important; }
  & .tph-cat-cards .tph-guide-card:last-child { border-bottom: 0px !important; }
  & .tph-cat-cards .tph-guide-card:hover { transform: none !important; box-shadow: none !important; }
  & .tph-cat-cards .tph-guide-excerpt { display: none !important; }
  & .tph-cat-cards .tph-guide-card h4 { font-size: 1rem !important; -webkit-line-clamp: 3 !important; margin-bottom: 6px !important; }
  & .tph-cat-cards .tph-guide-card-body { padding: 12px 2px !important; }
  & .tph-cat-cards .tph-guide-cat { margin-bottom: 5px; font-size: 0.63rem; }
  & .tph-cat-cards .tph-guide-date { margin-top: 0px !important; padding-top: 0px !important; border-top: 0px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child > img { border-radius: 10px; border: 1px solid var(--rule); margin-bottom: 2px; display: block !important; height: 172px !important; }
  & .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child h4 { font-size: 1.24rem !important; line-height: 1.2 !important; }
}

& body.blog .site-main > article.type-post:not(:first-of-type) .post-image, & body.archive .site-main > article.type-post:not(:first-of-type) .post-image, & body.search .site-main > article.type-post .post-image { display: none !important; }

& body.blog .site-main, & body.archive .site-main { gap: 22px 24px !important; }

& body.blog article.type-post, & body.archive article.type-post { border-radius: 12px !important; box-shadow: none !important; transition: border-color 0.18s, transform 0.18s, box-shadow 0.18s !important; }

& body.blog article.type-post:hover, & body.archive article.type-post:hover { transform: translateY(-3px) !important; border-color: var(--coral) !important; box-shadow: var(--shadow) !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) > .inside-article, & body.archive .site-main > article.type-post:not(:first-of-type) > .inside-article { padding: 15px 0px 13px !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-header, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-header { padding: 0px 17px !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-title, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-title { font-family: var(--serif); font-weight: 600; letter-spacing: -0.005em; font-size: 1.02rem !important; line-height: 1.27 !important; margin: 0px 0px 7px !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-title a, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-title a { text-decoration-line: underline; text-decoration-style: initial; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: var(--rule); transition: text-decoration-color 0.18s; }

& body.blog article.type-post:hover .entry-title a, & body.archive article.type-post:hover .entry-title a { text-decoration-color: var(--coral); }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-header .entry-meta, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-header .entry-meta { font-size: 0.655rem !important; letter-spacing: 0.075em !important; margin: 0px 0px 8px !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-summary, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-summary { padding: 0px 17px !important; font-size: 0.78rem !important; line-height: 1.48 !important; }

& body.blog .site-main > article.type-post:not(:first-of-type) .entry-summary p, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-summary p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

& body.blog .site-main > article.type-post:not(:first-of-type) footer.entry-meta, & body.archive .site-main > article.type-post:not(:first-of-type) footer.entry-meta { border-top: 1px solid var(--rule); margin: 11px 17px 0px !important; padding: 9px 0px 0px !important; font-size: 0.665rem !important; font-weight: 600 !important; letter-spacing: 0.02em !important; text-transform: none !important; }

@media (min-width: 1250px) {
  & body.blog .site-main, & body.archive .site-main { grid-template-columns: repeat(4, minmax(0px, 1fr)) !important; }
}

& body.blog .site-main > article.type-post:first-of-type .post-image img, & body.archive .site-main > article.type-post:first-of-type .post-image img { min-height: 236px !important; }

& body.blog .site-main > article.type-post:first-of-type > .inside-article, & body.archive .site-main > article.type-post:first-of-type > .inside-article { padding: 28px !important; }

& body.blog .site-main > article.type-post:first-of-type .entry-title, & body.archive .site-main > article.type-post:first-of-type .entry-title { font-family: var(--serif); font-size: clamp(1.5rem, 2.5vw, 2.05rem) !important; }

@media (max-width: 700px) {
  & body.blog .site-main, & body.archive .site-main { gap: 0px !important; }
  & body.blog article.type-post, & body.archive article.type-post { border-top: 0px !important; border-right: 0px !important; border-left: 0px !important; border-image: none !important; border-radius: 0px !important; border-bottom: 1px solid var(--rule) !important; background: transparent !important; }
  & body.blog article.type-post:hover, & body.archive article.type-post:hover { transform: none !important; box-shadow: none !important; }
  & body.blog .site-main > article.type-post:not(:first-of-type) .entry-summary, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-summary { display: none !important; }
  & body.blog .site-main > article.type-post:not(:first-of-type) .entry-header, & body.archive .site-main > article.type-post:not(:first-of-type) .entry-header { padding: 0px 2px !important; }
  & body.blog .site-main > article.type-post:not(:first-of-type) footer.entry-meta, & body.archive .site-main > article.type-post:not(:first-of-type) footer.entry-meta { margin: 0px 2px !important; padding: 0px !important; border-top: 0px !important; }
  & body.blog .site-main > article.type-post:not(:first-of-type) > .inside-article, & body.archive .site-main > article.type-post:not(:first-of-type) > .inside-article { padding: 13px 0px !important; }
  & body.blog .site-main > article.type-post:first-of-type > .inside-article, & body.archive .site-main > article.type-post:first-of-type > .inside-article { padding: 0px 0px 20px !important; }
  & body.blog .site-main > article.type-post:first-of-type .post-image img, & body.archive .site-main > article.type-post:first-of-type .post-image img { min-height: 0px !important; }
}

& body.blog .site-main > article.type-post:not(:first-of-type) footer.entry-meta, & body.archive .site-main > article.type-post:not(:first-of-type) footer.entry-meta { order: 3 !important; margin: 11px 17px 0px !important; padding: 9px 0px 0px !important; border-top: 1px solid var(--rule) !important; font-size: 0.665rem !important; font-weight: 600 !important; letter-spacing: 0.02em !important; text-transform: none !important; color: var(--soft) !important; }

& body.blog article.type-post footer.entry-meta .gp-icon, & body.archive article.type-post footer.entry-meta .gp-icon { display: none !important; }

& body.blog article.type-post footer.entry-meta a, & body.archive article.type-post footer.entry-meta a { font-weight: 700; color: var(--coral-x) !important; text-decoration: none !important; }

html:root[data-theme="dark"] body.blog article.type-post footer.entry-meta a, html:root[data-theme="dark"] body.archive article.type-post footer.entry-meta a { color: var(--coral-l) !important; }

@media (max-width: 700px) {
  & body.blog .site-main > article.type-post:not(:first-of-type) footer.entry-meta, & body.archive .site-main > article.type-post:not(:first-of-type) footer.entry-meta { margin: 6px 2px 0px !important; padding: 0px !important; border-top: 0px !important; }
}

& .paging-navigation, & nav.paging-navigation { grid-column: 1 / -1; background: transparent !important; border: 0px !important; box-shadow: none !important; padding: 0px !important; margin: 0px !important; }

& .paging-navigation .nav-links, & .site-main .nav-links { flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 22px; border-top: 1px solid var(--rule); grid-column: 1 / -1; display: flex !important; margin: 34px 0px 8px !important; }

& .nav-links .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding: 0px 13px; border: 1px solid var(--rule); border-radius: 9px; background: var(--surface); color: var(--head); font-size: 0.85rem; font-weight: 600; transition: border-color 0.16s, background 0.16s, color 0.16s; text-decoration: none !important; }

& .nav-links .page-numbers:hover { border-color: var(--coral); color: var(--coral-x); }

& .nav-links .page-numbers.current { background: var(--head); border-color: var(--head); color: var(--surface); }

& .nav-links .page-numbers.dots { border: 0px; background: none; min-width: 20px; padding: 0px 2px; color: var(--soft); }

& .nav-links .page-numbers.next, & .nav-links .page-numbers.prev { font-weight: 600; letter-spacing: 0.01em; }

html:root[data-theme="dark"] .nav-links .page-numbers { background: var(--raised); }

html:root[data-theme="dark"] .nav-links .page-numbers.current { background: var(--coral-l); border-color: var(--coral-l); color: rgb(21, 22, 26); }

& body.blog article.type-post footer.entry-meta, & body.archive article.type-post footer.entry-meta { display: block !important; }

& body.blog article.type-post footer.entry-meta > *, & body.archive article.type-post footer.entry-meta > * { display: inline !important; }

& body.blog article.type-post footer.entry-meta .gp-icon, & body.archive article.type-post footer.entry-meta .gp-icon, & body.blog article.type-post footer.entry-meta .screen-reader-text, & body.archive article.type-post footer.entry-meta .screen-reader-text { display: none !important; }

& body.blog .site-main > article.type-post:first-of-type footer.entry-meta, & body.archive .site-main > article.type-post:first-of-type footer.entry-meta { text-transform: none !important; letter-spacing: 0.02em !important; font-size: 0.7rem !important; font-weight: 600 !important; color: var(--soft) !important; margin-top: 14px !important; }

& .tph-side { display: none; }

@media (min-width: 1180px) {
  & body.single .site-main article.type-post .inside-article { grid-template-columns: minmax(0px, 1fr) 272px; gap: 0px 36px; align-items: start; display: grid !important; }
  & body.single .site-main article.type-post .inside-article > * { grid-column: 1; min-width: 0px; }
  & body.single .site-main article.type-post .inside-article > .tph-breadcrumbs { order: 1 !important; }
  & body.single .site-main article.type-post .inside-article > .featured-image { order: 2 !important; }
  & body.single .site-main article.type-post .inside-article > .entry-header { order: 3 !important; }
  & body.single .site-main article.type-post .inside-article > .entry-content { order: 4 !important; }
  & body.single .site-main article.type-post .inside-article > footer.entry-meta { order: 5 !important; }
  & body.single .site-main article.type-post .inside-article > .tph-side { display: block; grid-area: 1 / 2 / span 60; align-self: stretch; }
  & body.single .tph-side-in { position: sticky; top: 96px; }
}

& .tph-side-ad { margin: 0px 0px 26px; }

& .tph-side-ad:empty { display: none; }

& .tph-side-h { padding-bottom: 9px; border-bottom: 1px solid var(--rule); font-family: var(--sans); font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--soft); margin: 0px 0px 12px !important; font-size: 0.68rem !important; }

& .tph-side-list { list-style: none; margin: 0px; padding: 0px; }

& .tph-side-list li { margin: 0px; padding: 0px; border-bottom: 1px solid var(--rule); }

& .tph-side-list li:last-child { border-bottom: 0px; }

& .tph-side-list a { display: block; padding: 13px 0px; transition: opacity 0.16s; text-decoration: none !important; }

& .tph-side-cat { display: block; margin-bottom: 5px; font-size: 0.62rem; font-weight: 700; letter-spacing: 0.075em; text-transform: uppercase; color: var(--coral-x); }

& .tph-side-t { display: block; font-family: var(--serif); font-size: 0.92rem; line-height: 1.3; font-weight: 600; color: var(--head); text-decoration-line: underline; text-decoration-style: initial; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: var(--rule); transition: text-decoration-color 0.16s; }

& .tph-side-list a:hover .tph-side-t { text-decoration-color: var(--coral); }

& .tph-side-m { display: block; margin-top: 5px; font-size: 0.66rem; color: var(--soft); }

& .tph-side-more { display: inline-block; margin-top: 14px; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.02em; color: var(--coral-x); text-decoration: none !important; }

& .tph-side-more:hover { color: var(--coral-xh); text-decoration: underline !important; }

html:root[data-theme="dark"] .tph-side-cat, html:root[data-theme="dark"] .tph-side-more { color: var(--coral-l); }

@media (max-width: 1179px) {
  & body.single .tph-side { display: block; margin: 38px 0px 0px; padding-top: 26px; border-top: 1px solid var(--rule); }
  & body.single .tph-side-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0px 26px; }
  & body.single .tph-side-list li { border-bottom: 0px; }
  & body.single .tph-side-list a { padding: 0px; }
}

@media (max-width: 700px) {
  & body.single .tph-side-list { grid-template-columns: 1fr; gap: 0px; }
  & body.single .tph-side-list li { border-bottom: 1px solid var(--rule); }
  & body.single .tph-side-list li:last-child { border-bottom: 0px; }
  & body.single .tph-side-list a { padding: 12px 0px; }
}

& .rank-math-breadcrumb .separator { font-size: 0px !important; }

& .rank-math-breadcrumb .separator::after { content: "›"; font-size: 0.85rem; line-height: 1; color: var(--soft); margin: 0px 0.5em; }

@media (min-width: 783px) {
  & .wp-block-columns:has(> .wp-block-column > .tph-card .tph-icon) { grid-template-columns: repeat(3, minmax(0px, 1fr)) !important; }
}

& body.search .site-main { grid-template-columns: repeat(3, minmax(0px, 1fr)); gap: 22px 24px; margin-top: 12px; display: grid !important; }

& body.search .site-main > :not(article) { grid-column: 1 / -1; }

& body.search article.type-post { flex-direction: column; min-width: 0px; overflow: hidden; background: var(--surface); border: 1px solid var(--rule); border-radius: 12px; display: flex !important; }

& body.search article.type-post .post-image { display: none !important; }

& body.search article.type-post > .inside-article { flex-direction: column; height: 100%; background: transparent; border: 0px; box-shadow: none; display: flex !important; padding: 15px 17px 13px !important; }

& body.search article.type-post .entry-title { font-family: var(--serif); font-size: 1.02rem !important; line-height: 1.27 !important; margin: 0px 0px 7px !important; }

& body.search article.type-post .entry-title a { color: var(--head); }

& body.search article.type-post .entry-header .entry-meta, & body.search article.type-post .byline { display: none !important; }

& body.search article.type-post .entry-summary { color: var(--soft); margin: 0px; padding: 0px; font-size: 0.78rem !important; line-height: 1.48 !important; }

& body.search article.type-post .entry-summary p { margin: 0px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

& body.search article.type-post footer.entry-meta { border-top: 1px solid var(--rule); display: block !important; margin: 11px 0px 0px !important; padding: 9px 0px 0px !important; font-size: 0.665rem !important; text-transform: none !important; letter-spacing: 0.02em !important; color: var(--soft) !important; }

& body.search article.type-post footer.entry-meta .gp-icon, & body.search article.type-post footer.entry-meta .screen-reader-text { display: none !important; }

& body.search article.type-post footer.entry-meta a { font-weight: 700; color: var(--coral-x) !important; text-decoration: none !important; }

html:root[data-theme="dark"] body.search article.type-post { background: var(--raised); }

html:root[data-theme="dark"] body.search article.type-post footer.entry-meta a { color: var(--coral-l) !important; }

@media (max-width: 900px) {
  & body.search .site-main { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}

@media (max-width: 600px) {
  & body.search .site-main { grid-template-columns: 1fr; }
}

& a:focus-visible, & button:focus-visible, & input:focus-visible, & select:focus-visible, & textarea:focus-visible, & [tabindex]:focus-visible { border-radius: 3px; outline: 2px solid var(--coral-x) !important; outline-offset: 2px !important; }

html:root[data-theme="dark"] a:focus-visible, html:root[data-theme="dark"] button:focus-visible, html:root[data-theme="dark"] input:focus-visible { outline-color: var(--coral-l) !important; }

@media (prefers-reduced-motion: reduce) {
  & .tph-cat-cards .tph-guide-card:hover, & body.blog article.type-post:hover, & body.archive article.type-post:hover { transform: none !important; }
}

& .tph-card h3 a, & .tph-card h3 { color: var(--coral-x) !important; }

html:root[data-theme="dark"] .tph-card h3 a, html:root[data-theme="dark"] .tph-card h3 { color: var(--coral-l) !important; }

@media (max-width: 700px) {
  & ul.wp-block-rss > li:nth-child(n+4) { display: none !important; }
}

:root { --coral-h: #8E4410; --coral-l: #F0A06B; }

& .entry-content a:not(.tph-cta):not(.wp-block-button__link), & .entry-content a:not(.tph-cta):not(.wp-block-button__link):visited { color: var(--coral-x); }

& .entry-content a:not(.tph-cta):not(.wp-block-button__link):hover, & .entry-content a:not(.tph-cta):not(.wp-block-button__link):focus-visible { color: var(--coral-h); }

& .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link), & .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link):visited { color: var(--coral); }

& .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link):hover, & .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link):focus-visible { color: var(--coral-l); }

html:root[data-theme="dark"] article.type-post footer.entry-meta .cat-links a { color: var(--coral); }

html:root[data-theme="dark"] article.type-post footer.entry-meta .cat-links a:hover, html:root[data-theme="dark"] article.type-post footer.entry-meta .cat-links a:focus-visible { color: var(--coral-l); }

html:root[data-theme="dark"] body.error404 .inside-article, html:root[data-theme="dark"] body.search .inside-article, html:root[data-theme="dark"] body.search-no-results .inside-article { background: var(--raised); }

html:root[data-theme="dark"] body.search .search-field:not(.jetpack-instant-search__box-input) { background: var(--surface); color: var(--head); border-color: var(--rule); }

html:root[data-theme="dark"] .cmplz-manage-consent { background: var(--raised); color: var(--head); border: 1px solid var(--rule); }

html:root[data-theme="dark"] #cmplz-manage-consent .cmplz-manage-consent { background: var(--raised); color: var(--head); border: 1px solid var(--rule); }

& .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link), & .entry-content .tph-band-dark a:not(.tph-cta):not(.wp-block-button__link):visited { color: var(--coral-l); }

html:root[data-theme="dark"] article.type-post footer.entry-meta .cat-links a { color: var(--coral-l); }

& body.woocommerce ul.products, & body.woocommerce-page ul.products { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 28px; margin: 32px 0px; }

& body.woocommerce ul.products li.product, & body.woocommerce-page ul.products li.product { background: var(--surface); border: 1px solid var(--rule); border-radius: 14px; padding: 18px; box-shadow: var(--shadow-3d); transition: transform 0.18s, box-shadow 0.18s; float: none; width: auto; }

& body.woocommerce ul.products li.product:hover { transform: translateY(-4px); box-shadow: var(--shadow-btn); }

& body.woocommerce ul.products li.product img { border-radius: 10px; aspect-ratio: 4 / 3; object-fit: cover; margin-bottom: 12px; }

& body.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: var(--head); font-size: 1.05rem; font-weight: 700; color: var(--text); margin: 8px 0px 4px; }

& body.woocommerce ul.products li.product .price, & body.woocommerce span.price { font-family: var(--sans); color: var(--coral); font-weight: 700; font-size: 1.1rem; }

& body.woocommerce a.button, & body.woocommerce .single_add_to_cart_button, & body.woocommerce button.button { background: var(--coral); color: rgb(255, 255, 255); border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 10px; padding: 12px 22px; font-family: var(--sans); font-weight: 600; box-shadow: var(--shadow-btn); transition: filter 0.15s; }

& body.woocommerce a.button:hover, & body.woocommerce .single_add_to_cart_button:hover, & body.woocommerce button.button:hover { filter: brightness(0.92); color: rgb(255, 255, 255); }

& body.woocommerce.post-type-archive-product .entry-content > p:first-child { font-family: var(--sans); font-size: 1.15rem; color: var(--text); max-width: 640px; margin: 0px auto 28px; text-align: center; line-height: 1.5; }

& body.single-product .woocommerce-product-gallery img { border-radius: 14px; box-shadow: var(--shadow-3d); }

& body.single-product .product_title { font-family: var(--head); color: var(--text); }

& body.single-product .product_meta { font-family: var(--sans); color: var(--text); opacity: 0.75; font-size: 0.9rem; }

html:root[data-theme="dark"] body.woocommerce ul.products li.product { background: var(--surface); border-color: var(--rule); }


/* ===== TPH OWN-SERVICES CTA BOX — appended 30 Aug 2026 ===== */
.tph-cta-box {
  background: var(--surface);
  border: 1px solid var(--rule);
  border-radius: 14px;
  padding: 24px 28px;
  margin: 32px 0;
  box-shadow: var(--shadow-3d);
}
.tph-cta-box h3 {
  margin: 0 0 8px;
  font-family: var(--head);
  color: var(--text);
}
.tph-cta-box p {
  margin: 0 0 14px;
  color: var(--text);
}
.tph-cta-box a.tph-cta {
  display: inline-block;
}
/* ===== END TPH OWN-SERVICES CTA BOX ===== */

/* ===== TPH CTA BOX BUTTON FIX — appended 30 Aug 2026 ===== */
.tph-cta-box a.tph-cta {
  background: var(--coral);
  color: #fff;
  border-radius: 10px;
  padding: 12px 24px;
  font-weight: 600;
  box-shadow: var(--shadow-btn);
  text-decoration: none;
}
.tph-cta-box a.tph-cta:hover {
  filter: brightness(0.92);
  color: #fff;
}
/* ===== END TPH CTA BOX BUTTON FIX ===== */

/* ===== TPH CTA BOX BUTTON FIX v2 (important, own-context bg/color) ===== */
.tph-cta-box a.tph-cta {
  background-color: var(--coral) !important;
  color: #fff !important;
}
/* ===== END TPH CTA BOX BUTTON FIX v2 ===== */
/* 19. page CTA */
body.page .tph-cta{display:inline-flex;align-items:center;gap:.5em;background:#0E3B43;color:#fff !important;padding:.85em 1.6em;border-radius:999px;font-weight:600;text-decoration:none;box-shadow:0 6px 18px rgba(14,59,67,.25)}
body.page .tph-cta:hover{background:#E8A33D;color:#0E3B43 !important}

/* 19b. page CTA force */
body.page a.tph-cta{background:#0E3B43 !important;color:#fff !important;display:inline-flex;align-items:center;gap:.5em;padding:.85em 1.6em;border-radius:999px;font-weight:600;text-decoration:none;box-shadow:0 6px 18px rgba(14,59,67,.25)}
body.page a.tph-cta:hover{background:#E8A33D !important;color:#0E3B43 !important}


/* 20. shop rail (tph-side-shop) */
.tph-side-shop{margin-top:22px;border-top:1px solid #E5E1D7;padding-top:14px}
.tph-side-shop-list{list-style:none;margin:0;padding:0}
.tph-side-shop-item{margin:0 0 10px}
.tph-side-shop-item a{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:start;text-decoration:none;background:#FFF;border:1px solid #E5E1D7;border-radius:10px;padding:10px;transition:border-color .2s ease}
.tph-side-shop-item a:hover{border-color:#E8A33D}
.tph-side-shop-item img{grid-row:1/4;width:64px;height:64px;object-fit:cover;object-position:top;border-radius:6px;display:block}
.tph-side-shop-name{font-weight:600;color:#26333B;font-size:.82rem;line-height:1.3}
.tph-side-shop-price{color:#A96F17;font-weight:700;font-size:.85rem;margin-top:3px}
.tph-side-shop-price del{color:#5F7178;font-weight:400;margin-right:6px}
.tph-side-shop-buy{color:#0E3B43;font-weight:600;font-size:.78rem;margin-top:2px}
.tph-side-shop-item a:hover .tph-side-shop-buy{color:#A96F17}
[data-theme="dark"] .tph-side-shop{border-top-color:rgba(255,255,255,.12)}
[data-theme="dark"] .tph-side-shop-item a{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
[data-theme="dark"] .tph-side-shop-name{color:#E8EDEF}
[data-theme="dark"] .tph-side-shop-buy{color:#E8A33D}

/* 21. dark-mode buttons (wp-block-button + woocommerce) */
html[data-theme="dark"] .wp-block-button__link{background:#E8A33D !important;color:#092429 !important}
html[data-theme="dark"] .wp-block-button__link:hover{background:#f0b65c !important;color:#092429 !important}
html[data-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link{background:transparent !important;color:#E8A33D !important;box-shadow:inset 0 0 0 1px rgba(232,163,61,.6) !important}
html[data-theme="dark"] .wp-block-button.is-style-outline .wp-block-button__link:hover{background:rgba(232,163,61,.14) !important}
html[data-theme="dark"] .woocommerce a.button,
html[data-theme="dark"] .woocommerce button.button,
html[data-theme="dark"] .woocommerce input.button{background:#E8A33D;color:#092429}
html[data-theme="dark"] .woocommerce a.button:hover,
html[data-theme="dark"] .woocommerce button.button:hover{background:#f0b65c;color:#092429}
html[data-theme="dark"] .woocommerce ul.products li.product .woocommerce-loop-product__title,
html[data-theme="dark"] .woocommerce ul.products li.product .price{color:#E8EDEF}

/* 22. dark-mode header, nav + hero search */
html[data-theme="dark"] .main-navigation .main-nav ul li a,
html[data-theme="dark"] .main-navigation a{color:#E8EDEF !important}
html[data-theme="dark"] .main-navigation .main-nav ul li a:hover,
html[data-theme="dark"] .main-navigation .main-nav ul li a:focus-visible,
html[data-theme="dark"] .main-navigation .main-nav ul li.current-menu-item > a{color:#E8A33D !important}
html[data-theme="dark"] .menu-toggle,
html[data-theme="dark"] .menu-toggle:hover{color:#E8EDEF !important}
html[data-theme="dark"] img.header-image.is-logo-image{content:url("https://thepaidhour.com/wp-content/uploads/2026/08/the-paid-hour-wordmark-light.png")}
html[data-theme="dark"] .tph-find form button{background:#E8A33D !important;color:#092429 !important}
html[data-theme="dark"] .tph-find form button:hover{background:#f0b65c !important;color:#092429 !important}
html[data-theme="dark"] .tph-find form input{background:rgba(255,255,255,.06);color:#E8EDEF;border-color:rgba(255,255,255,.15)}
html[data-theme="dark"] .tph-find form input::placeholder{color:#9AA6AC}

/* 23. restore missing hero typing keyframes (tphType / tphCaret) */
@keyframes tphType{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -3% 0 0)}}
@keyframes tphCaret{0%,49%{opacity:1}50%,100%{opacity:0}}

/* 24. woo product cards (shop grid, shortcode grids) */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{background:#FFF;border:1px solid #E5E1D7;border-radius:12px;padding:14px 14px 16px;display:flex;flex-direction:column;transition:border-color .2s ease,box-shadow .2s ease}
.woocommerce ul.products li.product:hover{border-color:#E8A33D;box-shadow:0 6px 18px rgba(14,59,67,.08)}
.woocommerce ul.products li.product a img{border-radius:8px;margin-bottom:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.95rem;line-height:1.35;color:#26333B;padding-top:0}
.woocommerce ul.products li.product .price{color:#A96F17;font-weight:700;margin:6px 0 12px}
.woocommerce ul.products li.product .price del{color:#5F7178;font-weight:400;opacity:1}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1}
.woocommerce ul.products li.product .woocommerce-loop-product__title{flex:0}
.woocommerce ul.products li.product .button{margin-top:auto;align-self:flex-start}
.woocommerce ul.products li.product .onsale{background:#E8A33D;color:#092429;font-weight:700}
[data-theme="dark"] .woocommerce ul.products li.product{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
[data-theme="dark"] .woocommerce ul.products li.product:hover{border-color:#E8A33D;box-shadow:none}
[data-theme="dark"] .woocommerce ul.products li.product .woocommerce-loop-product__title{color:#E8EDEF}

/* 24b. woo grid layout (kill float grid, use css grid) */
.woocommerce ul.products,
.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products.columns-2{grid-template-columns:repeat(2,1fr)}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{width:auto !important;margin:0 !important;float:none !important;clear:none !important}
.woocommerce ul.products::before,
.woocommerce ul.products::after{display:none}
@media (max-width: 900px){.woocommerce ul.products,.woocommerce ul.products.columns-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 520px){.woocommerce ul.products,.woocommerce ul.products.columns-3,.woocommerce ul.products.columns-2{grid-template-columns:1fr}}

/* 25. single product page */
.single-product div.product .woocommerce-product-gallery{width:44% !important}
.single-product div.product .entry-summary{width:52% !important}
.single-product .woocommerce-product-gallery img{border:1px solid #E5E1D7;border-radius:12px}
.single-product .product_title{font-size:1.7rem;line-height:1.25}
.single-product .entry-summary .price{font-size:1.35rem;color:#A96F17;font-weight:700}
.single-product form.cart{margin:18px 0 22px}
.single-product form.cart .qty{border:1px solid #E5E1D7;border-radius:8px;padding:.55em .4em;background:#FFF}
.woocommerce div.product form.cart .button.single_add_to_cart_button{background:#E8A33D !important;color:#092429 !important;font-weight:600;border-radius:999px;padding:.85em 1.9em}
.woocommerce div.product form.cart .button.single_add_to_cart_button:hover{background:#c98a2e !important;color:#092429 !important}
.single-product .zoomImg{display:none !important}
.woocommerce-tabs ul.wc-tabs:has(li:only-child){display:none}
.woocommerce-tabs{border-top:1px solid #E5E1D7;margin-top:8px;padding-top:8px}
.woocommerce-tabs .woocommerce-Tabs-panel h2:first-of-type{font-size:1.35rem}
.single-product .related.products{border-top:1px solid #E5E1D7;margin-top:32px;padding-top:24px}
.single-product .related.products > h2{font-size:1.35rem;margin-bottom:18px}
.single-product .woocommerce-breadcrumb{font-size:.8rem;color:#5F7178}
[data-theme="dark"] .single-product .woocommerce-product-gallery img{border-color:rgba(255,255,255,.12)}
[data-theme="dark"] .single-product .entry-summary .price{color:#E8A33D}
[data-theme="dark"] .single-product form.cart .qty{background:rgba(255,255,255,.06);color:#E8EDEF;border-color:rgba(255,255,255,.15)}
[data-theme="dark"] .woocommerce-tabs,[data-theme="dark"] .single-product .related.products{border-top-color:rgba(255,255,255,.12)}

/* 26. nav dropdown (Shop sub-menu) */
.main-navigation ul ul{background:#FFF;border:1px solid #E5E1D7;border-radius:12px;box-shadow:0 12px 28px rgba(14,59,67,.14);padding:6px;min-width:190px;width:auto;transform:translateY(8px);transition:opacity .18s ease,transform .18s ease}
.main-navigation li:hover > ul,
.main-navigation li:focus-within > ul,
.main-navigation li.sfHover > ul{transform:translateY(2px)}
.main-navigation ul ul li{width:100%}
.main-navigation ul ul li a{padding:9px 14px;border-radius:8px;color:#26333B;font-size:.92rem;line-height:1.3;background:transparent}
.main-navigation ul ul li a:hover,
.main-navigation ul ul li a:focus-visible{background:#FBF9F4;color:#A96F17}
.main-navigation .main-nav ul li.menu-item-has-children > a .gp-icon svg{width:.55em;height:.55em;opacity:.7}
@media (prefers-reduced-motion: reduce){.main-navigation ul ul{transition:none;transform:none}}
html[data-theme="dark"] .main-navigation ul ul{background:#14161B;border-color:rgba(255,255,255,.14);box-shadow:0 12px 28px rgba(0,0,0,.5)}
html[data-theme="dark"] .main-navigation ul ul li a{color:#E8EDEF !important}
html[data-theme="dark"] .main-navigation ul ul li a:hover,
html[data-theme="dark"] .main-navigation ul ul li a:focus-visible{background:rgba(255,255,255,.06);color:#E8A33D !important}

/* 26b. dropdown arrow on parent item */
.main-navigation .main-nav > ul > li.menu-item-has-children > a::after{content:"\25BE";font-size:.7em;margin-left:5px;opacity:.65;display:inline-block;transition:transform .18s ease}
.main-navigation .main-nav > ul > li.menu-item-has-children:hover > a::after{transform:translateY(1px);opacity:1}

/* 26c. dropdown anchor below nav item */
.main-navigation .main-nav > ul > li{position:relative}
.main-navigation .main-nav > ul > li > ul.sub-menu{top:100% !important;bottom:auto !important;right:0;left:auto !important;margin-top:10px}
.main-navigation .main-nav > ul > li:not(:hover):not(.sfHover):not(:focus-within) > ul.sub-menu{left:-99999px !important;opacity:0}

/* 27. header search reveal on scroll (home) */
html.tph-dock-on body.home.tph-scrolled .site-header:not(.tph-compact) .tph-hsearch,
html body.home.tph-scrolled .site-header .tph-hsearch.tph-hsearch{max-width:260px !important;opacity:1 !important;margin-left:14px !important}
html body.home.tph-scrolled .site-header .tph-hsearch input{opacity:1 !important}

/* 28. hero cta */
.tph-hero .tph-hero-cta{text-align:center;margin:22px 0 4px}
.tph-hero-cta .tph-cta-lg{display:inline-block;background:#E8A33D;color:#092429;font-weight:700;font-size:1.02rem;padding:.9em 2.1em;border-radius:999px;text-decoration:none;box-shadow:0 6px 18px rgba(232,163,61,.35);transition:transform .18s ease,background .18s ease}
.tph-hero-cta .tph-cta-lg:hover{background:#f0b65c;color:#092429;transform:translateY(-1px)}
html[data-theme="dark"] .tph-hero-cta .tph-cta-lg{box-shadow:0 6px 22px rgba(232,163,61,.25)}
.entry-content .tph-hero-cta a.tph-cta-lg,
.entry-content .tph-hero-cta a.tph-cta-lg:visited,
.entry-content .tph-hero-cta a.tph-cta-lg:hover{text-decoration:none !important;color:#092429 !important}

/* 29. shop tabs */
.tph-shop-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.tph-shop-tabs a{display:inline-block;padding:7px 16px;border-radius:999px;border:1px solid #E5E1D7;background:#FFF;color:#26333B;font-size:.85rem;font-weight:600;text-decoration:none !important;transition:border-color .18s ease,color .18s ease}
.tph-shop-tabs a:hover{border-color:#E8A33D;color:#A96F17}
.tph-shop-tabs a.is-active{background:#0E3B43;border-color:#0E3B43;color:#FFF}
html[data-theme="dark"] .tph-shop-tabs a{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:#E8EDEF}
html[data-theme="dark"] .tph-shop-tabs a:hover{border-color:#E8A33D;color:#E8A33D}
html[data-theme="dark"] .tph-shop-tabs a.is-active{background:#E8A33D;border-color:#E8A33D;color:#092429}

/* 31. quick view modal + checkout modal */
body.tph-modal-open{overflow:hidden}
#tph-qv,#tph-co{position:fixed;inset:0;z-index:100000}
.tph-qv-overlay{position:absolute;inset:0;background:rgba(9,36,41,.55);backdrop-filter:blur(2px)}
.tph-qv-card,.tph-co-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#FFF;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.3);width:min(760px,calc(100vw - 32px));max-height:min(86vh,720px);overflow:auto;animation:tphQvIn .22s ease}
.tph-co-card{width:min(920px,calc(100vw - 32px));height:min(88vh,780px);max-height:none;overflow:hidden;display:flex;flex-direction:column}
.tph-co-card iframe{border:0;width:100%;flex:1;min-height:0}
@keyframes tphQvIn{from{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
@media (prefers-reduced-motion: reduce){.tph-qv-card,.tph-co-card{animation:none}}
.tph-qv-x{position:absolute;top:10px;right:10px;z-index:2;width:36px;height:36px;border:0;border-radius:50%;background:#F1EEE6;color:#26333B;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.tph-qv-x:hover{background:#E8A33D;color:#092429}
.tph-qv-body{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:24px;padding:24px}
.tph-qv-loading{grid-column:1/-1;padding:60px 0;text-align:center;color:#5F7178}
.tph-qv-media img{width:100%;height:auto;border:1px solid #E5E1D7;border-radius:12px;display:block}
.tph-qv-title{font-size:1.35rem;line-height:1.3;margin:4px 0 8px}
.tph-qv-price{color:#A96F17;font-weight:700;font-size:1.25rem;margin-bottom:10px}
.tph-qv-price del{color:#5F7178;font-weight:400;margin-right:8px}
.tph-qv-desc{font-size:.93rem;line-height:1.55;color:#26333B}
.tph-qv-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 10px}
.tph-qv-add,.tph-qv-buy{border:0;border-radius:999px;padding:.8em 1.6em;font-weight:700;font-size:.95rem;cursor:pointer;transition:background .18s ease}
.tph-qv-buy{background:#E8A33D;color:#092429}
.tph-qv-buy:hover{background:#f0b65c}
.tph-qv-add{background:#0E3B43;color:#FFF}
.tph-qv-add:hover{background:#155560}
.tph-qv-add:disabled,.tph-qv-buy:disabled{opacity:.7;cursor:wait}
.tph-qv-full{font-size:.85rem;color:#A96F17;text-decoration:underline}
.tph-qv-msg{margin-top:10px;font-size:.88rem;color:#26333B}
@media (max-width:640px){.tph-qv-body{grid-template-columns:1fr;gap:14px;padding:16px}.tph-qv-media img{max-height:38vh;object-fit:contain}.tph-qv-card{max-height:92vh}.tph-co-card{height:92vh;width:calc(100vw - 16px)}}
html[data-theme="dark"] .tph-qv-card,html[data-theme="dark"] .tph-co-card{background:#14161B}
html[data-theme="dark"] .tph-qv-x{background:rgba(255,255,255,.1);color:#E8EDEF}
html[data-theme="dark"] .tph-qv-title,html[data-theme="dark"] .tph-qv-desc,html[data-theme="dark"] .tph-qv-msg{color:#E8EDEF}
html[data-theme="dark"] .tph-qv-price{color:#E8A33D}
html[data-theme="dark"] .tph-qv-media img{border-color:rgba(255,255,255,.12)}
html[data-theme="dark"] .tph-qv-full{color:#E8A33D}

/* 32. shop sections (blog-style layout) */
body.post-type-archive-product .entry-content > ul.products,
body.post-type-archive-product .entry-content > .woocommerce-result-count,
body.post-type-archive-product .entry-content > .woocommerce-ordering,
body.post-type-archive-product .entry-content > p.woocommerce-result-count,
body.post-type-archive-product .entry-content > form.woocommerce-ordering{display:none !important}
.tph-shop-sec{font-family:Georgia,'Times New Roman',serif;font-size:1rem;letter-spacing:.16em;text-transform:uppercase;color:#0E3B43;margin:34px 0 16px;padding-bottom:10px;border-bottom:1px solid #E5E1D7;display:flex;align-items:center;gap:10px}
.tph-shop-sec::before{content:"";display:inline-block;width:22px;height:3px;border-radius:2px;background:#E8A33D}
.page-description .tph-shop-sec:first-of-type{margin-top:26px}
html[data-theme="dark"] .tph-shop-sec{color:#E8EDEF;border-bottom-color:rgba(255,255,255,.12)}

/* 33. shop redesign to match live design system — 31 Aug 2026 */
:root{--amber:#E8A33D;--amber-ink:#092429}

/* 33a. shop header */
.woocommerce-products-header__title.page-title{font-size:clamp(2rem,4.2vw,2.6rem);font-weight:700;letter-spacing:-.02em;line-height:1.12;color:var(--head);margin-bottom:14px}
.woocommerce-products-header__title.page-title::after{content:none !important}
.page-description > p{color:var(--text);font-size:1.05rem;line-height:1.65;max-width:46rem}

/* 33b. shop tabs — ink pill active */
.tph-shop-tabs{gap:10px;margin:22px 0 8px}
.tph-shop-tabs a{padding:8px 18px;border-radius:999px;border:1px solid var(--rule);background:var(--surface);color:var(--text);font-size:.9rem;font-weight:600}
.tph-shop-tabs a:hover{border-color:var(--head);color:var(--head)}
.tph-shop-tabs a.is-active{background:var(--head);border-color:var(--head);color:var(--surface)}
html[data-theme="dark"] .tph-shop-tabs a{background:var(--raised);border-color:rgba(255,255,255,.14);color:var(--text)}
html[data-theme="dark"] .tph-shop-tabs a:hover{border-color:var(--head);color:var(--head)}
html[data-theme="dark"] .tph-shop-tabs a.is-active{background:var(--head);border-color:var(--head);color:var(--surface)}

/* 33c. section headings — Inter, no amber dash */
.tph-shop-sec{font-family:inherit;font-size:1.45rem;font-weight:600;letter-spacing:-.01em;text-transform:none;color:var(--head);margin:46px 0 18px;padding-bottom:12px;border-bottom:1px solid var(--rule)}
.tph-shop-sec::before{content:none}
html[data-theme="dark"] .tph-shop-sec{color:var(--head);border-bottom-color:rgba(255,255,255,.12)}

/* 33d. product cards — hairline, flex column, kicker labels */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px;box-shadow:none;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease}
.woocommerce ul.products li.product:hover{transform:translateY(-2px);box-shadow:var(--shadow-3d)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;text-decoration:none}
.woocommerce ul.products li.product img{width:100%;border-radius:8px;border:1px solid var(--rule);aspect-ratio:4/3;object-fit:cover;object-position:top;background:#fff;margin:0 0 14px}
.woocommerce ul.products li.product img.woocommerce-placeholder{display:none}
.woocommerce ul.products li.product span.onsale{display:none}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:inherit;font-size:1.02rem;font-weight:600;line-height:1.4;color:var(--head);margin:0 0 10px;padding:0}
.woocommerce ul.products li.product .woocommerce-loop-product__title::before{display:block;content:"Template";font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
.woocommerce ul.products li.product.product_cat-invoice-templates .woocommerce-loop-product__title::before{content:"Invoice template"}
.woocommerce ul.products li.product.product_cat-toolkits-guides .woocommerce-loop-product__title::before{content:"Toolkit"}
.woocommerce ul.products li.product.product_cat-courses-cat .woocommerce-loop-product__title::before{content:"Course"}
.woocommerce ul.products li.product.product_cat-bundle-deals .woocommerce-loop-product__title::before{content:"Bundle"}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link:hover .woocommerce-loop-product__title{text-decoration:underline;text-underline-offset:3px}
.woocommerce ul.products li.product .price{color:var(--head);font-size:1.05rem;font-weight:700;margin:2px 0 14px;margin-top:auto;padding-top:10px}
.woocommerce ul.products li.product .price del{color:var(--soft);font-weight:500;opacity:1;margin-right:6px}
.woocommerce ul.products li.product .price ins{text-decoration:none;font-weight:700}
.woocommerce ul.products li.product a.button{background:var(--amber);color:var(--amber-ink);border:0;border-radius:999px;font-weight:700;font-size:.9rem;padding:.72em 1.5em;width:fit-content;box-shadow:0 4px 12px rgba(232,163,61,.3);transition:transform .18s ease,filter .18s ease;margin:0}
.woocommerce ul.products li.product a.button:hover{background:var(--amber);color:var(--amber-ink);transform:translateY(-1px);filter:brightness(1.05)}
.woocommerce ul.products li.product a.button:focus-visible{outline:2px solid var(--head);outline-offset:2px}
.woocommerce ul.products li.product a.added_to_cart{margin-top:10px;color:var(--text);font-weight:600;font-size:.88rem;text-decoration:underline;text-underline-offset:3px}
html[data-theme="dark"] .woocommerce ul.products li.product{background:var(--surface);border-color:rgba(255,255,255,.12)}
html[data-theme="dark"] .woocommerce ul.products li.product:hover{border-color:rgba(255,255,255,.24);box-shadow:none}
html[data-theme="dark"] .woocommerce ul.products li.product .woocommerce-loop-product__title{color:var(--head)}

/* 33e. shop + category grids: 3 across, 2 tablet, 1 phone */
body.post-type-archive-product ul.products, body.tax-product_cat ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
@media (max-width:900px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (max-width:560px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:1fr}.woocommerce ul.products li.product{padding:16px}}

/* 33f. shop long-form copy */
body.post-type-archive-product .tph-shop-long{max-width:42rem;margin-top:56px}
body.post-type-archive-product .tph-shop-long h2{font-size:1.45rem;font-weight:600;letter-spacing:-.01em;color:var(--head);margin:40px 0 12px}
body.post-type-archive-product .tph-shop-long p{color:var(--text);font-size:1.02rem;line-height:1.7}
body.post-type-archive-product .tph-shop-long a{color:var(--head);text-decoration:underline;text-underline-offset:3px}
body.post-type-archive-product .tph-shop-long em{color:var(--soft)}
/* end 33 */

/* 33g. specificity fixes: price colour + kicker cascade — 31 Aug 2026 */
body.woocommerce ul.products li.product .price, body.woocommerce ul.products li.product span.price{color:var(--head);font-size:1.05rem;font-weight:700}
body.woocommerce ul.products li.product .price ins{color:var(--head);text-decoration:none}
body.woocommerce ul.products li.product .price del{color:var(--soft);font-weight:500}
/* end 33g */

/* 33h. dark mode: woo pages inside-article was white; card elevation — 31 Aug 2026 */
html[data-theme="dark"] body.woocommerce .inside-article, html[data-theme="dark"] body.woocommerce-page .inside-article{background:var(--surface)}
html[data-theme="dark"] .woocommerce ul.products li.product{background:var(--raised)}
/* end 33h */

/* 33i. dark mode: kill the light gradient on woocommerce-products-header — 31 Aug 2026 */
html[data-theme="dark"] .woocommerce-products-header{background:var(--surface) none}
/* end 33i */

/* 33j. 44px touch targets on shop buttons and tabs — 31 Aug 2026 */
.woocommerce ul.products li.product a.button{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box}
.tph-shop-tabs a{display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box}
/* end 33j */

/* 34. shop category bar + 5-across shop grid — 31 Aug 2026 */
.tph-catbar{background:var(--surface);border-bottom:1px solid var(--rule)}
.tph-catbar-in{max-width:1340px;margin:0 auto;padding:0 30px;display:flex;align-items:center;gap:18px;min-height:56px}
.tph-catbar-links{display:flex;align-items:center;gap:6px;overflow-x:auto;flex:1;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.tph-catbar-links::-webkit-scrollbar{display:none}
a.tph-catbar-link{flex:0 0 auto;display:inline-flex;align-items:center;min-height:44px;padding:4px 14px;border-radius:999px;font-size:.86rem;font-weight:600;letter-spacing:.02em;color:var(--text);text-decoration:none;transition:color .15s ease,background .15s ease}
a.tph-catbar-link:hover{color:var(--head);background:var(--raised)}
a.tph-catbar-link.is-active{background:var(--head);color:var(--surface)}
a.tph-catbar-cta{flex:0 0 auto;display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:.55em 1.3em;border-radius:999px;background:var(--amber);color:var(--amber-ink) !important;font-weight:700;font-size:.88rem;text-decoration:none !important;box-shadow:0 4px 12px rgba(232,163,61,.3);transition:transform .18s ease,filter .18s ease}
a.tph-catbar-cta:hover{transform:translateY(-1px);filter:brightness(1.05)}
a.tph-catbar-cta:focus-visible, a.tph-catbar-link:focus-visible{outline:2px solid var(--head);outline-offset:2px}
.tph-live-dot{width:8px;height:8px;border-radius:50%;background:var(--amber-ink)}
@media (prefers-reduced-motion:no-preference){.tph-live-dot{animation:tphLivePulse 1.6s ease-in-out infinite}}
@keyframes tphLivePulse{0%,100%{opacity:1}50%{opacity:.3}}
html[data-theme="dark"] .tph-catbar{border-bottom-color:rgba(255,255,255,.12)}
@media (max-width:700px){.tph-catbar-in{padding:0 16px;gap:10px}a.tph-catbar-cta{font-size:.8rem;padding:.5em 1em}}

/* 34b. the in-page pill tabs are replaced by the bar */
.tph-shop-tabs{display:none}

/* 34c. wider container + five across on shop and category archives */
body.post-type-archive-product .site.grid-container, body.tax-product_cat .site.grid-container{max-width:1340px}
body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
@media (min-width:1025px){
 body.post-type-archive-product ul.products li.product, body.tax-product_cat ul.products li.product{padding:16px}
 body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title, body.tax-product_cat ul.products li.product .woocommerce-loop-product__title{font-size:.95rem}
 body.post-type-archive-product ul.products li.product .price, body.tax-product_cat ul.products li.product .price{font-size:1rem}
 body.post-type-archive-product ul.products li.product a.button, body.tax-product_cat ul.products li.product a.button{font-size:.85rem;padding:.6em 1.25em}
}
@media (max-width:1280px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1024px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (max-width:560px){body.post-type-archive-product ul.products, body.tax-product_cat ul.products{grid-template-columns:1fr}}
/* end 34 */

/* 34d. clear the fixed header: bar starts below it (39px desktop, 43px under 1025) — 31 Aug 2026 */
.tph-catbar{margin-top:39px}
@media (max-width:1024.9px){.tph-catbar{margin-top:43px}}
/* end 34d */


/* 35. launch offer bar — 31 Aug 2026 */
#tph-offer-bar{background:#0E3B43;color:#FBF9F4;text-align:center;padding:8px 14px;font-size:.85rem;position:relative;z-index:999}
#tph-offer-bar strong{color:#E8A33D}
#tph-offer-bar a{color:#E8A33D;text-decoration:underline}
html[data-theme="dark"] #tph-offer-bar{background:#092429}

/* 35b. offer bar fixed to bottom — was colliding with fixed header */
#tph-offer-bar{position:fixed;bottom:0;left:0;right:0;top:auto;z-index:99998;box-shadow:0 -2px 12px rgba(0,0,0,.25);padding:10px 44px 10px 14px}
#tph-offer-x{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:0;color:#FBF9F4;font-size:20px;cursor:pointer;line-height:1;padding:4px}
#tph-offer-x:hover{color:#E8A33D}

/* 36. audit round (31 Aug 2026): overflow guard + shop intro dark contrast */
body{overflow-x:clip}
html[data-theme="dark"] .post-type-archive-product .entry-content > p{color:#9FB0B5}


/* 37. free sample links (Sep 2026) */
.tph-sample{margin:0 0 1.4em}
.tph-sample p{margin:0}
.tph-sample a{font-weight:600}
.tph-pick .tph-sample-link{margin:6px 0 0;font-size:.86rem;line-height:1.4}
.tph-pick .tph-sample-link a{color:#A96F17;text-decoration:none;border-bottom:1px solid rgba(232,163,61,.45);padding-bottom:1px}
.tph-pick .tph-sample-link a:hover{border-bottom-color:#E8A33D}
html[data-theme="dark"] .tph-pick .tph-sample-link a{color:#E8A33D}

/* 37b. free sample line in short description */
.tph-sample-line{margin:.9em 0 1em;font-size:.95rem}
.tph-sample-line a{display:inline-block;color:#0E3B43;background:rgba(232,163,61,.16);border:1px solid rgba(232,163,61,.55);border-radius:999px;padding:7px 15px;text-decoration:none;font-weight:600}
.tph-sample-line a:hover{background:#E8A33D;color:#0E3B43}
html[data-theme="dark"] .tph-sample-line a{color:#F4E9D8;border-color:rgba(232,163,61,.6)}
html[data-theme="dark"] .tph-sample-line a:hover{background:#E8A33D;color:#0E3B43}

/* 37c. sample line polish */
.tph-sample-line a{text-decoration:none!important;box-shadow:none!important;border-bottom:1px solid rgba(232,163,61,.55)!important;white-space:nowrap}
.tph-sample-line a:hover{border-color:#E8A33D!important}

/* 37d. sample pill colour lock */
.tph-sample-line a,.woocommerce div.product .tph-sample-line a{color:#0E3B43!important;background:rgba(232,163,61,.18)!important}
.tph-sample-line a:hover,.woocommerce div.product .tph-sample-line a:hover{background:#E8A33D!important;color:#0E3B43!important}
html[data-theme="dark"] .tph-sample-line a,html[data-theme="dark"] .woocommerce div.product .tph-sample-line a{color:#F6E7CE!important;background:rgba(232,163,61,.14)!important}
html[data-theme="dark"] .tph-sample-line a:hover{background:#E8A33D!important;color:#0E3B43!important}


/* 20. Square product cards — WooCommerce generates 1:1 thumbnails (300x300),
   so the card must be 1:1 or every product image loses its top and bottom. */
body.woocommerce ul.products li.product img,
body.woocommerce-page ul.products li.product img,
body .woocommerce ul.products li.product img{
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center center !important;
}


/* 21. Quick view - larger card, larger product image */
#tph-qv .tph-qv-card{ width: min(1040px, calc(100vw - 40px)) !important; max-width: none !important; }
#tph-qv .tph-qv-body{ grid-template-columns: minmax(0,0.92fr) minmax(0,1fr) !important; gap: 34px !important; padding: 34px !important; align-items: start !important; }
#tph-qv .tph-qv-media{ width: 100% !important; }
#tph-qv .tph-qv-media img{ width: 100% !important; height: auto !important; aspect-ratio: 1 / 1 !important; object-fit: cover !important; border-radius: 12px !important; }
@media (max-width: 860px){
  #tph-qv .tph-qv-card{ width: min(560px, calc(100vw - 24px)) !important; }
  #tph-qv .tph-qv-body{ grid-template-columns: 1fr !important; gap: 18px !important; padding: 20px !important; }
  #tph-qv .tph-qv-media img{ max-width: 320px; margin: 0 auto; }
}

/* 22. Shop grid - compact, even-height cards */
body.woocommerce ul.products{ gap: 14px !important; }
body.woocommerce ul.products li.product{ padding: 12px !important; display: flex !important; flex-direction: column !important; }
body.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{ display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; }
body.woocommerce ul.products li.product img{ margin: 0 0 10px !important; }
body.woocommerce ul.products li.product .woocommerce-loop-product__title{ font-size: 14.5px !important; line-height: 1.33 !important; margin: 0 0 6px !important; display: -webkit-box !important; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.66em; }
body.woocommerce ul.products li.product .price{ margin: 0 0 10px !important; font-size: 15px !important; line-height: 1.25 !important; }
body.woocommerce ul.products li.product a.button{ margin-top: auto !important; padding: 9px 16px !important; font-size: 13px !important; align-self: flex-start; }
@media (max-width: 900px){ body.woocommerce ul.products{ gap: 12px !important; } body.woocommerce ul.products li.product{ padding: 10px !important; } }

/* 22b. Card title - the kicker is a ::before on the same box, so the clamp
   must allow the kicker line plus two lines of the title. */
body.woocommerce ul.products li.product .woocommerce-loop-product__title{
  -webkit-line-clamp: 3 !important;
  min-height: calc(14.5px + 6px + (2 * 1.33 * 14.5px)) !important;
}

/* 23. Courses hub - even card grid whatever the group size */
body.page-id-95202 .tph-picks{
  grid-template-columns: repeat(auto-fit, minmax(216px, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
body.page-id-95202 .tph-pick{ display: flex !important; flex-direction: column !important; }
body.page-id-95202 .tph-pick h3{ font-size: 18px !important; line-height: 1.28 !important; }
body.page-id-95202 .tph-pick .tph-cta{ margin-top: auto !important; align-self: flex-start; }
body.page-id-95202 h2{ margin-top: 42px !important; }
@media (max-width: 780px){ body.page-id-95202 .tph-picks{ grid-template-columns: repeat(auto-fit, minmax(180px,1fr)) !important; gap: 14px !important; } }


/* 38. footer bottom bar — stack disclaimer over credit line */
.site-info .inside-site-info{ flex-direction: column !important; align-items: center !important; gap: 0 !important; padding: 26px 40px 30px !important; }
.site-info .footer-bar{ order: 1 !important; width: 100% !important; max-width: 780px !important; margin: 0 auto !important; text-align: center !important; }
.site-info .footer-bar p{ margin: 0 !important; font-size: 13.5px !important; line-height: 1.65 !important; }
.site-info .copyright-bar{ order: 2 !important; width: 100% !important; max-width: 780px !important; margin: 18px auto 0 !important; padding-top: 16px !important; border-top: 1px solid rgba(128,128,128,.22) !important; text-align: center !important; font-size: 13.5px !important; }
.site-info .copyright-bar .tph-fsep{ opacity: .4; margin: 0 .5em; }
.site-info .copyright-bar a{ color: inherit; text-decoration: none; border-bottom: 1px solid rgba(128,128,128,.35); padding-bottom: 1px; }
.site-info .copyright-bar a:hover{ border-bottom-color: currentColor; }
@media (max-width: 600px){ .site-info .inside-site-info{ padding: 22px 20px 26px !important; } .site-info .copyright-bar .tph-fsep{ margin: 0 .35em; } }


/* 38b. offer-bar clearance + footer widget heading rhythm */
body.tph-has-offer-bar{ padding-bottom: 52px; }
body:has(#tph-offer-bar){ padding-bottom: 52px; }
.footer-widgets .widget_block h3.wp-block-heading:not(:first-child){ margin-top: 30px !important; }


/* 37. responsive repair — header + tables (1 Sep 2026) */
body{overflow-x:clip}
.inside-header .site-branding-container{flex-shrink:1;min-width:0}
.inside-header .site-logo{min-width:0}
.inside-header .site-logo img{max-width:100%;height:auto}
@media (max-width:1024px){
.inside-header{flex-wrap:wrap}
.inside-header .site-branding{display:none}
}
@media (max-width:768px){
.inside-header .site-logo img{width:170px}
}
@media (max-width:400px){
.inside-header .site-logo img{width:150px}
}
.entry-content figure.wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:700px){
.entry-content figure.wp-block-table>table{min-width:560px}
}
html{overflow-x:clip}


/* 38. polish (1 Sep 2026) */
.tph-entry .tph-entry-title{text-align:left}


/* 39. logo size lock (1 Sep 2026) - fixed px, no % so the flex box cannot collapse it */
.inside-header .site-logo img,.site-header .header-image{width:180px;max-width:180px;height:auto;flex:0 0 auto}
@media (max-width:1024px){.inside-header .site-logo img,.site-header .header-image{width:165px;max-width:165px}}
@media (max-width:768px){.inside-header .site-logo img,.site-header .header-image{width:150px;max-width:150px}}
@media (max-width:400px){.inside-header .site-logo img,.site-header .header-image{width:132px;max-width:132px}}

/* 39b. logo box must not clip the wordmark */
.inside-header .site-branding-container,.inside-header .site-logo{flex:0 0 auto;min-width:auto;overflow:visible}
.inside-header .site-logo a{display:block;line-height:0}

/* 40. header search dock (1 Sep 2026) - the form inside is position:absolute, so its host must be positioned and have a height, otherwise overflow:hidden clips it to nothing */
.site-header .tph-hsearch{position:relative;height:38px}

/* 41. docked search opens by itself (1 Sep 2026) - was icon-only until clicked */
@media (min-width:1101px){
html:root.tph-dock-on body.home.tph-scrolled.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch{max-width:260px!important;opacity:1!important;pointer-events:auto!important}
html:root.tph-dock-on body.home.tph-scrolled.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch form{width:100%!important;position:absolute!important;left:0!important;padding-left:4px!important;padding-right:4px!important}
html:root.tph-dock-on body.home.tph-scrolled.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch input{width:auto!important;flex:1 1 auto!important;opacity:1!important;padding-left:10px!important;padding-right:6px!important}
html:root.tph-dock-on body.home.tph-scrolled.tph-search-docked .site-header:not(.tph-compact) .tph-hsearch button{flex:0 0 auto!important}
}

/* 42. header nav state must not depend on load-time JS (1 Sep 2026) */
@media (min-width:1025px){
.site-header .main-navigation.mobile-menu-control-wrap,.site-header .menu-toggle{display:none!important}
.site-header .main-navigation.has-menu-bar-items{height:auto!important;overflow:visible!important;visibility:visible!important;opacity:1!important}
.site-header .main-navigation.has-menu-bar-items .main-nav>ul{display:flex!important;flex-wrap:nowrap!important}
}


/* 43. Header search pill — square corners around the rounded pill.
   .tph-hsearch is overflow:hidden (needed for the max-width collapse) and is
   exactly the size of the form, so the form's 0 6px 14px drop-shadow was being
   clipped to the host's square box: a soft grey square showed at the corners.
   Round the clip and drop the shadow in the header; the 1px border + tinted
   fill already carry the depth. */
.site-header .tph-hsearch{border-radius:999px}
.site-header .tph-hsearch form{box-shadow:none !important}


/* 44. Floating basket (mini-cart). The shop grid adds to the cart over AJAX but
   there was no way to reach the basket from there — this is the persistent
   bottom-right handle: it appears the moment the cart has something in it and
   stays until checkout. Colours come from the theme tokens so it follows the
   dark-mode toggle. */
#tph-cart{position:fixed;right:20px;bottom:var(--tph-cart-bottom,20px);z-index:99990;display:none;font-family:var(--sans)}
#tph-cart.is-on{display:block}
#tph-cart *{box-sizing:border-box}

.tph-cart-fab{display:flex;align-items:center;gap:10px;height:52px;padding:0 8px 0 18px;border:0;border-radius:999px;
  background:var(--sky);color:#FBF9F4;cursor:pointer;font:600 15px/1 var(--sans);letter-spacing:.01em;
  box-shadow:0 10px 30px rgba(9,36,41,.32),0 2px 6px rgba(9,36,41,.22);
  transition:transform .18s ease,box-shadow .18s ease}
.tph-cart-fab:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(9,36,41,.36),0 3px 8px rgba(9,36,41,.24)}
.tph-cart-fab:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.tph-cart-fab svg{width:19px;height:19px;flex:0 0 19px}
.tph-cart-total{font-variant-numeric:tabular-nums;opacity:.92}
.tph-cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:36px;padding:0 11px;
  border-radius:999px;background:var(--amber);color:var(--amber-ink);font:700 14px/1 var(--sans);font-variant-numeric:tabular-nums}

@keyframes tphCartIn{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
@keyframes tphCartBump{0%{transform:none}35%{transform:scale(1.07)}100%{transform:none}}
@media (prefers-reduced-motion: no-preference){
  #tph-cart.is-on .tph-cart-fab{animation:tphCartIn .32s cubic-bezier(.2,.8,.3,1) both}
  #tph-cart.is-bump .tph-cart-fab{animation:tphCartBump .42s ease}
}

.tph-cart-panel{position:absolute;right:0;bottom:64px;width:min(340px,calc(100vw - 28px));
  background:var(--surface,#fff);color:var(--text);border:1px solid var(--rule,#E5E1D7);border-radius:18px;overflow:hidden;
  box-shadow:var(--shadow,0 18px 44px rgba(9,36,41,.18));transform-origin:100% 100%}
.tph-cart-panel[hidden]{display:none}
@media (prefers-reduced-motion: no-preference){
  .tph-cart-panel{animation:tphCartIn .2s cubic-bezier(.2,.8,.3,1) both}
}
.tph-cart-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 14px;border-bottom:1px solid var(--rule,#E5E1D7)}
#tph-cart .tph-cart-head strong{font:700 14px/1.2 var(--sans);color:var(--head);letter-spacing:.01em}
.tph-cart-x{border:0;background:none;padding:4px;line-height:0;cursor:pointer;color:var(--soft,#5F7178);border-radius:8px}
.tph-cart-x:hover{color:var(--head);background:var(--raised,#F6F6F7)}
.tph-cart-x svg{width:15px;height:15px}

.tph-cart-list{list-style:none;margin:0;padding:6px;max-height:min(46vh,320px);overflow:auto}
.tph-cart-li{display:flex;gap:11px;align-items:flex-start;padding:8px;border-radius:12px}
.tph-cart-li+.tph-cart-li{border-top:1px solid var(--rule,#E5E1D7)}
.tph-cart-li img{width:46px;height:46px;flex:0 0 46px;border-radius:9px;object-fit:cover;background:var(--raised,#F1F1F2)}
.tph-cart-li .b{flex:1 1 auto;min-width:0}
#tph-cart .tph-cart-li a.t{display:block;font:600 13px/1.35 var(--sans);color:var(--head);text-decoration:none;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#tph-cart .tph-cart-li a.t:hover{color:var(--amber)}
.tph-cart-li .m{margin-top:3px;font:500 12px/1 var(--sans);color:var(--soft,#5F7178);font-variant-numeric:tabular-nums}
.tph-cart-rm{border:0;background:none;padding:3px;margin:-3px -3px 0 0;line-height:0;cursor:pointer;color:var(--soft,#5F7178);border-radius:7px}
.tph-cart-rm:hover{color:#B4232A;background:var(--raised,#F6F6F7)}
.tph-cart-rm svg{width:13px;height:13px}

.tph-cart-foot{padding:12px 14px 14px;border-top:1px solid var(--rule,#E5E1D7);background:var(--raised,#FBF9F4)}
#tph-cart .tph-cart-sub{display:flex;align-items:baseline;justify-content:space-between;margin:0 0 10px;
  font:600 13px/1 var(--sans);color:var(--head)}
.tph-cart-sub span:last-child{font:700 16px/1 var(--serif);font-variant-numeric:tabular-nums}
.tph-cart-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#tph-cart .tph-cart-acts a{display:flex;align-items:center;justify-content:center;height:40px;border-radius:999px;
  font:700 13px/1 var(--sans);text-decoration:none;letter-spacing:.01em;transition:transform .15s ease,filter .15s ease}
#tph-cart .tph-cart-acts a:hover{transform:translateY(-1px)}
#tph-cart a.tph-cart-view{border:1px solid var(--rule,#E5E1D7);color:var(--head);background:var(--surface,#fff)}
#tph-cart a.tph-cart-go{background:var(--amber);color:var(--amber-ink);box-shadow:0 4px 12px rgba(232,163,61,.35)}
#tph-cart a.tph-cart-go:hover{filter:brightness(1.04)}
.tph-cart-note{margin:9px 0 0;font:500 11px/1.4 var(--sans);color:var(--soft,#5F7178);text-align:center}

@media (max-width:600px){
  #tph-cart{right:14px;bottom:calc(var(--tph-cart-bottom,20px) - 4px)}
  .tph-cart-fab{height:48px;padding:0 7px 0 15px;font-size:14px}
  .tph-cart-count{min-width:32px;height:34px}
}


/* 45. Tax calculator CTA (hero + ghost button)
--------------------------------------------------------- */
.tph-hero-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.tph-cta-lg.tph-cta-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55);box-shadow:none;display:inline-flex;align-items:center;gap:.5em}
.tph-cta-lg.tph-cta-ghost:hover,.tph-cta-lg.tph-cta-ghost:focus-visible{background:rgba(255,255,255,.12);border-color:#F5B731;color:#fff;transform:translateY(-2px)}
.tph-cta-ghost .tph-cta-ic{display:inline-flex;align-items:center;justify-content:center;width:1.55em;height:1.55em;border-radius:50%;background:#F5B731;color:#092429;font-weight:800;font-size:.86em;line-height:1}
@media (max-width:520px){.tph-hero-cta{flex-direction:column;gap:10px}.tph-hero-cta .tph-cta-lg{width:100%;max-width:320px;text-align:center;justify-content:center}}


/* 45b. Ghost CTA on light hero
--------------------------------------------------------- */
.tph-cta-lg.tph-cta-ghost{background:var(--surface);color:var(--head);border:1.5px solid var(--rule);box-shadow:var(--shadow-btn)}
.tph-cta-lg.tph-cta-ghost:hover,.tph-cta-lg.tph-cta-ghost:focus-visible{background:var(--surface);border-color:#E07A3A;color:#B85E1F;transform:translateY(-2px);box-shadow:0 8px 20px rgba(224,122,58,.22)}
html[data-theme="dark"] .tph-cta-lg.tph-cta-ghost{background:var(--raised);color:#fff;border-color:#2A2E36}
html[data-theme="dark"] .tph-cta-lg.tph-cta-ghost:hover{border-color:#F3924F;color:#fff}


/* 46. Tax calculator page — editorial header, calculator, split bar, offer band
--------------------------------------------------------- */
.tph-tcp{--cc:#E07A3A;--ccd:#B85E1F;--sky:#0E3B43;--skyd:#092429;--yl:#F5B731}
.tph-tcp *{box-sizing:border-box}

/* editorial header */
.tph-tc-lede{max-width:44rem;margin:0 0 26px}
.tph-tc-lede .k{display:inline-flex;align-items:center;gap:.55em;font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ccd)}
.tph-tc-lede .k:before{content:"";width:26px;height:2px;background:var(--cc);border-radius:2px}
.tph-tc-lede p.stand{font-size:19px;line-height:1.65;color:var(--text);margin:10px 0 0}
.tph-tc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:18px 0 0;padding:14px 0 0;border-top:1px solid var(--rule);font-size:13.5px;color:var(--soft)}
.tph-tc-meta strong{color:var(--head);font-weight:700}
.tph-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.tph-chip{display:inline-flex;align-items:center;gap:.5em;font-size:13px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--rule);border-radius:999px;padding:7px 13px;line-height:1}
.tph-chip b{color:var(--ccd);font-weight:800}

/* calculator shell */
.tph-calc{margin:0 0 34px;border:1px solid var(--rule);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-3d);overflow:hidden}
.tph-calc-top{background:linear-gradient(135deg,#0E3B43 0%,#092429 72%);color:#fff;padding:20px 26px 18px;position:relative;overflow:hidden;display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.tph-calc-top:after{content:"";position:absolute;right:-80px;top:-110px;width:290px;height:290px;border-radius:50%;background:radial-gradient(circle,rgba(224,122,58,.42),transparent 66%);pointer-events:none}
.tph-calc-top .tt{position:relative;flex:1 1 260px;min-width:0}
.tph-calc-top h2{color:#fff!important;margin:0 0 3px;font-size:clamp(18px,2.2vw,22px);line-height:1.25;letter-spacing:-.01em}
.tph-calc-top p{margin:0;color:#A9C4C8;font-size:13.5px;line-height:1.5}
.tph-calc-badge{position:relative;display:inline-flex;align-items:center;gap:.45em;font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#092429;background:var(--yl);padding:6px 12px;border-radius:999px;white-space:nowrap}
.tph-calc-body{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
.tph-calc-in{padding:24px 26px 26px;border-right:1px solid var(--rule)}
.tph-calc-out{padding:24px 26px 26px;background:var(--raised)}
.tph-calc-lg{font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--soft);margin:0 0 14px}

/* fields */
.tph-fg{margin:0 0 15px}
.tph-fg > label{display:block;font-size:13.5px;font-weight:700;color:var(--head);margin:0 0 6px;letter-spacing:-.005em}
.tph-fg .hint{display:block;font-size:12.5px;color:var(--soft);margin-top:5px;line-height:1.5}
.tph-inw{position:relative;display:flex;align-items:center}
.tph-inw span{position:absolute;left:15px;font-size:16px;font-weight:600;color:var(--soft);pointer-events:none}
.tph-calc input[type=number]{width:100%;padding:13px 14px 13px 33px;font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--head);background:var(--surface);border:1.5px solid var(--rule);border-radius:12px;outline:none;-moz-appearance:textfield;transition:border-color .15s,box-shadow .15s}
.tph-calc input[type=number]::-webkit-outer-spin-button,.tph-calc input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tph-calc input[type=number]:focus{border-color:var(--cc);box-shadow:0 0 0 3px rgba(224,122,58,.16)}
.tph-quick{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tph-quick button{font:inherit;font-size:12.5px;font-weight:700;color:var(--soft);background:transparent;border:1px solid var(--rule);border-radius:999px;padding:5px 11px;cursor:pointer;transition:.15s}
.tph-quick button:hover{border-color:var(--cc);color:var(--ccd);background:rgba(224,122,58,.07)}
.tph-seg{display:flex;gap:8px;flex-wrap:wrap}
.tph-seg input{position:absolute;opacity:0;pointer-events:none}
.tph-seg label{flex:1 1 0;min-width:130px;margin:0;font-size:14px;font-weight:600;color:var(--text);text-align:center;padding:11px 8px;border:1.5px solid var(--rule);border-radius:12px;cursor:pointer;transition:.15s;background:var(--surface)}
.tph-seg label:hover{border-color:var(--cc)}
.tph-seg input:checked + label{border-color:var(--cc);background:rgba(224,122,58,.1);color:var(--ccd);font-weight:700;box-shadow:0 0 0 3px rgba(224,122,58,.1)}

/* results */
.tph-res-hero{padding:2px 0 16px;border-bottom:1px solid var(--rule);margin-bottom:16px}
.tph-res-hero .lbl{font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--soft)}
.tph-res-hero .big{font-size:clamp(38px,6.2vw,52px);font-weight:800;letter-spacing:-.03em;line-height:1.02;color:var(--head);margin:5px 0 4px;font-variant-numeric:tabular-nums}
.tph-res-hero .sub{font-size:13.5px;color:var(--soft);line-height:1.55}
.tph-split{margin:0 0 16px}
.tph-split-bar{display:flex;height:13px;border-radius:999px;overflow:hidden;background:var(--rule)}
.tph-split-bar i{display:block;height:100%;transition:width .35s cubic-bezier(.4,0,.2,1)}
.tph-split-bar i.a{background:linear-gradient(90deg,#0E3B43,#14525d)}
.tph-split-bar i.b{background:var(--cc)}
.tph-split-bar i.c{background:var(--yl)}
.tph-split-key{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:12.5px;color:var(--soft)}
.tph-split-key span{display:inline-flex;align-items:center;gap:.45em}
.tph-split-key s{width:9px;height:9px;border-radius:3px;display:inline-block}
.tph-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.tph-kpi{background:var(--surface);border:1px solid var(--rule);border-radius:13px;padding:12px 13px}
.tph-kpi b{display:block;font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--head);font-variant-numeric:tabular-nums;line-height:1.15}
.tph-kpi i{display:block;font-style:normal;font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--soft);margin-top:3px}
.tph-kpi.acc{border-color:rgba(224,122,58,.45);background:rgba(224,122,58,.07)}
.tph-kpi.acc b{color:var(--ccd)}
.tph-setaside{background:linear-gradient(135deg,#0E3B43,#092429);color:#fff;border-radius:15px;padding:16px 18px;margin:0 0 14px;position:relative;overflow:hidden}
.tph-setaside:after{content:"";position:absolute;right:-40px;bottom:-60px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(245,183,49,.3),transparent 65%)}
.tph-setaside .lbl{position:relative;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--yl);font-weight:800}
.tph-setaside .big{position:relative;font-size:30px;font-weight:800;letter-spacing:-.025em;line-height:1.12;margin:3px 0 3px;font-variant-numeric:tabular-nums}
.tph-setaside .sub{position:relative;font-size:13px;color:#A9C4C8;line-height:1.5}
.tph-flag{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.55;padding:12px 14px;border-radius:12px;margin:0 0 10px;background:rgba(245,183,49,.13);border:1px solid rgba(245,183,49,.45);color:var(--text)}
.tph-flag.warn{background:rgba(224,122,58,.11);border-color:rgba(224,122,58,.45)}
.tph-flag em{font-style:normal;font-size:15px;line-height:1.2}
.tph-flag b{color:var(--head)}
.tph-brk{width:100%;border-collapse:collapse;font-size:14px;margin:14px 0 0}
.tph-brk caption{caption-side:top;text-align:left;font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--soft);padding:0 0 8px}
.tph-brk td{padding:8px 0;border-bottom:1px solid var(--rule);color:var(--text);font-variant-numeric:tabular-nums}
.tph-brk td:last-child{text-align:right;font-weight:600;color:var(--head)}
.tph-brk tr.tot td{font-weight:800;color:var(--head);border-bottom:none;padding-top:11px}
.tph-calc-foot{padding:15px 26px 18px;border-top:1px solid var(--rule);font-size:12.5px;color:var(--soft);line-height:1.65}
.tph-calc-foot a{color:var(--ccd)}
@media(max-width:880px){.tph-calc-body{grid-template-columns:1fr}.tph-calc-in{border-right:none;border-bottom:1px solid var(--rule)}}
@media(max-width:430px){.tph-kpis{grid-template-columns:1fr}.tph-calc-in,.tph-calc-out{padding:20px 17px 22px}.tph-calc-top{padding:18px 17px}.tph-calc-foot{padding:14px 17px 16px}}

/* offer band */
.tph-offer{background:linear-gradient(140deg,#0E3B43 0%,#092429 68%);border-radius:20px;padding:30px 30px 26px;margin:36px 0;color:#fff;position:relative;overflow:hidden}
.tph-offer:after{content:"";position:absolute;left:-90px;bottom:-140px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(224,122,58,.34),transparent 68%);pointer-events:none}
.tph-offer-head{position:relative;max-width:40rem;margin:0 0 22px}
.tph-offer-head .tag{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#092429;background:var(--yl);padding:5px 11px;border-radius:999px;margin:0 0 12px}
.tph-offer-head h2{color:#fff!important;margin:0 0 8px;font-size:clamp(22px,3vw,30px);line-height:1.2;letter-spacing:-.02em}
.tph-offer-head p{margin:0;color:#B7CDD1;font-size:16px;line-height:1.65}
.tph-offer-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.tph-oc{display:flex;flex-direction:column;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);border-radius:15px;padding:18px 18px 17px;transition:.18s}
.tph-oc:hover{background:rgba(255,255,255,.09);border-color:rgba(245,183,49,.5);transform:translateY(-3px)}
.tph-oc .pill{display:inline-block;align-self:flex-start;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--yl);border:1px solid rgba(245,183,49,.45);border-radius:999px;padding:4px 9px;margin:0 0 11px}
.tph-oc h3{color:#fff!important;font-size:17px;line-height:1.3;margin:0 0 7px;letter-spacing:-.01em;min-height:2.6em}
.tph-oc p{flex:1;margin:0 0 14px;font-size:13.5px;line-height:1.6;color:#A9C4C8}
.tph-oc .pr{font-size:13px;color:#fff;font-weight:700;margin:0 0 12px}
.tph-oc .pr s{color:#7E979C;font-weight:500;margin-left:.4em}
.tph-oc a.b{margin-top:auto;display:block;text-align:center;background:var(--yl);color:#092429;font-weight:800;font-size:14.5px;padding:11px 14px;border-radius:999px;text-decoration:none;transition:.16s}
.tph-oc a.b:hover{background:#fff;color:#092429;transform:translateY(-1px)}
.tph-oc.ghost a.b{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.tph-oc.ghost a.b:hover{background:rgba(255,255,255,.14);color:#fff;border-color:var(--yl)}
.tph-offer-foot{position:relative;margin:18px 0 0;font-size:13px;color:#8FA9AE}
.tph-offer-foot a{color:var(--yl);text-decoration:underline}
@media(max-width:820px){.tph-offer-grid{grid-template-columns:1fr}.tph-oc h3{min-height:0}.tph-offer{padding:24px 20px 22px}}

/* steps + author */
.tph-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0 8px;padding:0;list-style:none}
.tph-steps li{position:relative;padding:18px 18px 16px;background:var(--surface);border:1px solid var(--rule);border-radius:15px}
.tph-steps li b{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--sky);color:#fff;font-size:13px;font-weight:800;margin:0 0 10px}
.tph-steps li strong{display:block;font-size:15.5px;color:var(--head);margin:0 0 5px;letter-spacing:-.01em}
.tph-steps li span{font-size:13.5px;color:var(--soft);line-height:1.6}
@media(max-width:760px){.tph-steps{grid-template-columns:1fr}}
html[data-theme="dark"] .tph-res-hero .big,html[data-theme="dark"] .tph-kpi b{color:#fff}
html[data-theme="dark"] .tph-kpi.acc b{color:#F3924F}
html[data-theme="dark"] .tph-chip{background:var(--raised)}


/* 46b. Offer band + steps — literal colours, link overrides
--------------------------------------------------------- */
.tph-offer .tph-offer-head .tag{background:#F5B731;color:#092429;box-shadow:0 2px 10px rgba(245,183,49,.28)}
.tph-offer .tph-oc .pill{color:#F5B731;border-color:rgba(245,183,49,.45)}
.entry-content .tph-offer .tph-oc a.b,.tph-offer .tph-oc a.b{background:#F5B731;color:#092429;text-decoration:none;box-shadow:0 4px 14px rgba(0,0,0,.28);border:1.5px solid #F5B731;font-weight:800}
.entry-content .tph-offer .tph-oc a.b:hover,.tph-offer .tph-oc a.b:hover{background:#FFFFFF;color:#092429;border-color:#FFFFFF;text-decoration:none}
.entry-content .tph-offer .tph-oc.ghost a.b,.tph-offer .tph-oc.ghost a.b{background:transparent;color:#FFFFFF;border:1.5px solid rgba(255,255,255,.42);box-shadow:none}
.entry-content .tph-offer .tph-oc.ghost a.b:hover,.tph-offer .tph-oc.ghost a.b:hover{background:rgba(255,255,255,.14);color:#FFFFFF;border-color:#F5B731}
.entry-content .tph-offer .tph-offer-foot a,.tph-offer .tph-offer-foot a{color:#F5B731}
.tph-steps li b{background:#0E3B43;color:#fff}
html[data-theme="dark"] .tph-steps li b{background:#F3924F;color:#0E0F13}
.tph-tc-lede .k{color:#B85E1F}
.tph-tc-lede .k:before{background:#E07A3A}
.tph-chip b{color:#B85E1F}
html[data-theme="dark"] .tph-tc-lede .k,html[data-theme="dark"] .tph-chip b{color:#F3924F}
html[data-theme="dark"] .tph-tc-lede .k:before{background:#F3924F}


/* 47. Four-item nav — keep the last dropdown on screen
--------------------------------------------------------- */
.site-header #menu-primary > li:last-child > ul.sub-menu{left:auto;right:0}
.site-header #menu-primary > li:last-child > ul.sub-menu ul.sub-menu{left:auto;right:100%}


/* 48. Nav caret removed + hero rebuilt for hierarchy
--------------------------------------------------------- */
.site-header #menu-primary > li > a:after{content:none!important}

body.home .tph-hero > .wp-block-group__inner-container{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:960px;margin-left:auto;margin-right:auto;padding-top:clamp(34px,5vw,64px);padding-bottom:clamp(30px,4vw,52px)}
body.home .tph-hero .tph-stage{order:0}
body.home .tph-hero .tph-kicker{order:1;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin:0 0 20px}
body.home .tph-hero h1{order:2;font-size:clamp(36px,5vw,62px);line-height:1.05;letter-spacing:-.035em;max-width:17ch;margin:0 0 20px}
body.home .tph-hero > .wp-block-group__inner-container > p:not(.tph-kicker){order:3;font-size:17.5px;line-height:1.68;color:var(--soft);max-width:37rem;margin:0 0 30px}
body.home .tph-hero .tph-hero-cta{order:4;margin:0 0 22px}
body.home .tph-hero .tph-trust{order:5;margin:0 0 34px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 26px;list-style:none}
body.home .tph-hero .tph-trust li{border:none!important;background:none!important;padding:0!important;margin:0!important;font-size:13px;color:var(--soft);display:inline-flex;align-items:center;gap:.5em}
body.home .tph-hero .tph-find{order:6;width:100%;max-width:560px;margin:0 0 34px}
body.home .tph-hero .tph-entries{order:7;width:100%;max-width:820px;gap:10px;margin:0;padding-top:26px;border-top:1px solid var(--rule)}
body.home .tph-hero .tph-entry{padding:13px 15px;border-radius:13px;box-shadow:none;background:var(--surface)}
body.home .tph-hero .tph-entry-title{text-decoration:none!important;font-size:15px;font-weight:700;letter-spacing:-.01em}
body.home .tph-hero .tph-entry p,body.home .tph-hero .tph-entry .tph-entry-sub{font-size:13px;color:var(--soft)}
@media(max-width:700px){body.home .tph-hero .tph-entries{grid-template-columns:1fr}body.home .tph-hero h1{max-width:none}}


/* 48b. Hero line-length tuning
--------------------------------------------------------- */
body.home .tph-hero h1{max-width:22ch;font-size:clamp(36px,4.6vw,58px)}
body.home .tph-hero > .wp-block-group__inner-container > p:not(.tph-kicker){max-width:33rem;font-size:17px;margin-bottom:32px}
body.home .tph-hero .tph-entry{padding:14px 16px}
@media(max-width:700px){body.home .tph-hero h1{max-width:none;font-size:clamp(31px,8vw,40px)}body.home .tph-hero .tph-trust{gap:7px 18px;font-size:12.5px}}


/* 49. Data figures
--------------------------------------------------------- */
.tph-figure{margin:34px 0}
.tph-figure img{width:100%;height:auto;border:1px solid var(--rule);border-radius:16px;box-shadow:var(--shadow)}
.tph-figure figcaption{margin-top:12px;font-size:13.5px;line-height:1.6;color:var(--soft);text-align:left}


/* 49b. Figure fills the content column
--------------------------------------------------------- */
figure.tph-figure{display:block!important;width:100%!important;max-width:100%!important}
figure.tph-figure img{display:block;width:100%!important;max-width:100%!important;height:auto}


/* 50. Header definition + real nav affordance
--------------------------------------------------------- */
.site-header{background:var(--surface);border-bottom:1px solid var(--rule)}
.site-header .inside-header{align-items:center}

/* nav links read as controls */
.site-header #menu-primary > li > a{display:inline-flex!important;align-items:center;gap:.45em;padding:9px 14px!important;margin:0 1px;border-radius:10px;font-weight:600;line-height:1.2;transition:background .16s,color .16s}
.site-header #menu-primary > li > a:hover,.site-header #menu-primary > li:hover > a,.site-header #menu-primary > li.sfHover > a,.site-header #menu-primary > li > a:focus-visible{background:rgba(224,122,58,.10);color:#B85E1F}
.site-header #menu-primary > li.current-menu-item > a,.site-header #menu-primary > li.current-menu-ancestor > a,.site-header #menu-primary > li.current-menu-parent > a{color:#B85E1F;background:rgba(224,122,58,.07)}

/* a real chevron, not a dot */
.site-header #menu-primary > li.menu-item-has-children > a:after{content:""!important;display:inline-block;width:6px;height:6px;margin:-3px 0 0 .15em;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(45deg);opacity:.5;transition:transform .18s ease,opacity .18s ease;flex:0 0 auto}
.site-header #menu-primary > li.menu-item-has-children:hover > a:after,.site-header #menu-primary > li.menu-item-has-children.sfHover > a:after{transform:rotate(-135deg);margin-top:2px;opacity:1}

/* dropdown as a card */
.site-header #menu-primary ul.sub-menu{background:var(--surface);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow-3d);padding:7px;margin-top:6px;overflow:hidden}
.site-header #menu-primary ul.sub-menu li{width:auto}
.site-header #menu-primary ul.sub-menu li a{border-radius:9px;padding:10px 13px!important;font-size:14.5px;font-weight:600;line-height:1.3;background:transparent}
.site-header #menu-primary ul.sub-menu li a:hover,.site-header #menu-primary ul.sub-menu li.sfHover > a{background:rgba(224,122,58,.10);color:#B85E1F}

html[data-theme="dark"] .site-header{background:var(--surface);border-bottom-color:var(--rule)}
html[data-theme="dark"] .site-header #menu-primary > li > a:hover,html[data-theme="dark"] .site-header #menu-primary > li:hover > a,html[data-theme="dark"] .site-header #menu-primary ul.sub-menu li a:hover{background:rgba(243,146,79,.16);color:#F3924F}
html[data-theme="dark"] .site-header #menu-primary > li.current-menu-item > a,html[data-theme="dark"] .site-header #menu-primary > li.current-menu-ancestor > a{color:#F3924F;background:rgba(243,146,79,.12)}


/* 50b. No header divider — the bar sits flush with the page
--------------------------------------------------------- */
.site-header,html[data-theme="dark"] .site-header{border-bottom:0!important}


/* 51. Dates that matter — one grid, even rhythm (1 Sep 2026)
   Two wp-block-columns rows were spacing themselves apart and the
   rules never lined up. display:contents flattens both into one grid.
--------------------------------------------------------------------- */
.tph-dates > .wp-block-group__inner-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:34px;row-gap:0;padding-top:6px!important;padding-bottom:0!important}
.tph-dates .wp-block-columns{display:contents!important;margin:0!important}
.tph-dates .wp-block-column{display:flex;flex-direction:column;justify-content:flex-start;padding:22px 0!important;margin:0!important;border-bottom:1px solid var(--rule)}
.tph-dates .wp-block-column > *{margin:0}
.tph-dates .tph-d{margin-top:0}
.tph-dates .tph-l{margin-top:8px}
.tph-dates .tph-next{padding-top:38px!important}
.tph-dates .tph-next::before{top:16px}
@media(max-width:860px){.tph-dates > .wp-block-group__inner-container{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}}
@media(max-width:540px){.tph-dates > .wp-block-group__inner-container{grid-template-columns:1fr}.tph-dates .wp-block-column{padding:16px 0!important}}


/* 52. Mobile touch targets (1 Sep 2026)
   Footer link lists and the HMRC news feed were 20-26px tall on a phone.
   WCAG asks for 44px; padding gets there without moving anything visually.
--------------------------------------------------------------------- */
@media(max-width:782px){
  .site-footer .wp-block-list li a,
  .site-footer .wp-block-navigation-item__content,
  .tph-feed .wp-block-rss__item-title a{display:block;padding-block:9px;line-height:1.35}
  .site-footer .wp-block-list{margin-block:0}
  .copyright-bar a{display:inline-block;padding-block:8px}
}


/* ---------------------------------------------------------------------
   34. footer redesign — dark ink, 4 columns — 1 Sep 2026
   --------------------------------------------------------------------- */
.site-footer #footer-widgets{
  background:#0E3B43;
  background-image:radial-gradient(720px 340px at 10% 0%, rgba(232,163,61,.14), transparent 62%);
  border-top:1px solid rgba(255,255,255,.06);
  padding:66px 0 54px;
  color:rgba(255,255,255,.78);
}
.site-footer #footer-widgets .inside-footer-widgets{
  display:grid;
  grid-template-columns:1.9fr 1fr 1fr 1.2fr;
  gap:44px 40px;
  align-items:start;
  margin:0;
}
.site-footer #footer-widgets .inside-footer-widgets > div{
  width:auto !important; float:none !important; padding:0 !important; margin:0 !important;
}
.site-footer #footer-widgets .widget{ padding:0 !important; margin:0 !important; background:none; border:0; }

.site-footer .tphf-h{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:11.5px; font-weight:700; letter-spacing:.12em; text-transform:uppercase;
  color:rgba(255,255,255,.46); margin:0 0 16px; padding:0; line-height:1;
}
.site-footer .tphf-h.tphf-h-2{ margin-top:30px; }

.site-footer .tphf-list{ list-style:none; margin:0; padding:0; }
.site-footer .tphf-list li{ margin:0; padding:0; }
.site-footer .tphf-list li + li{ margin-top:11px; }
.site-footer .tphf-list a{
  color:rgba(255,255,255,.80); text-decoration:none; font-size:14.5px; line-height:1.45;
  transition:color .18s ease;
}
.site-footer .tphf-list a:hover,
.site-footer .tphf-list a:focus-visible{ color:#E8A33D; }

.site-footer .tphf-logo{ display:inline-flex; align-items:center; gap:11px; text-decoration:none; }
.site-footer .tphf-logo span{
  font-family:Lora,Georgia,"Times New Roman",serif; font-size:21px; font-weight:600;
  letter-spacing:-.01em; color:#fff;
}
.site-footer .tphf-desc{
  margin:18px 0 0; max-width:36ch; font-size:14.5px; line-height:1.68;
  color:rgba(255,255,255,.60);
}
.site-footer .tphf-by{ margin:14px 0 0; font-size:13px; color:rgba(255,255,255,.45); }
.site-footer .tphf-by a{
  color:rgba(255,255,255,.80); text-decoration:none;
  border-bottom:1px solid rgba(232,163,61,.55); padding-bottom:1px;
}
.site-footer .tphf-by a:hover{ color:#E8A33D; border-color:#E8A33D; }

.site-footer .tphf-social{ display:flex; gap:9px; margin-top:20px; }
.site-footer .tphf-social a{
  width:36px; height:36px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.72);
  text-decoration:none; transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.site-footer .tphf-social a:hover{ border-color:#E8A33D; color:#0E3B43; background:#E8A33D; }

.site-footer .tphf-cta{
  display:inline-flex; align-items:center; margin-top:24px;
  background:#E8A33D; color:#0E3B43 !important; font-weight:650; font-size:14px;
  padding:11px 20px; border-radius:999px; text-decoration:none;
  box-shadow:0 6px 18px rgba(232,163,61,.20);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.site-footer .tphf-cta:hover{ background:#F2B158; transform:translateY(-1px); box-shadow:0 10px 24px rgba(232,163,61,.28); }

.site-footer .site-info{ background:#092429; border-top:1px solid rgba(255,255,255,.07); }
.site-footer .footer-bar .tph-legal{ color:rgba(255,255,255,.42); font-size:12.5px; line-height:1.6; margin:0; }
.site-footer .footer-bar .tph-legal a{ color:rgba(255,255,255,.62); }
.site-footer .copyright-bar{ color:rgba(255,255,255,.50); font-size:13px; }
.site-footer .copyright-bar a{ color:rgba(255,255,255,.70); text-decoration:none; }
.site-footer .copyright-bar a:hover{ color:#E8A33D; }
.site-footer .tph-fsep{ color:rgba(255,255,255,.24); }

[data-theme="dark"] .site-footer #footer-widgets{ background:#0B2E35; }
[data-theme="dark"] .site-footer .site-info{ background:#071F24; }

@media(max-width:1024px){
  .site-footer #footer-widgets .inside-footer-widgets{ grid-template-columns:repeat(3,1fr); gap:38px 28px; }
  .site-footer #footer-widgets .inside-footer-widgets > .footer-widget-1{ grid-column:1 / -1; }
  .site-footer .tphf-desc{ max-width:54ch; }
}
@media(max-width:640px){
  .site-footer #footer-widgets{ padding:48px 0 40px; }
  .site-footer #footer-widgets .inside-footer-widgets{ grid-template-columns:1fr; gap:30px; }
  .site-footer .tphf-list li + li{ margin-top:4px; }
  .site-footer .tphf-list a{ display:inline-block; padding-block:7px; }
}


/* ---------------------------------------------------------------------
   34b. footer dark-mode lock + polish — 1 Sep 2026
   The dark-mode link rules were repainting every footer link amber.
   --------------------------------------------------------------------- */
[data-theme="dark"] .site-footer .tphf-list a,
[data-theme="dark"] .site-footer .tphf-list a:visited{ color:rgba(255,255,255,.80); }
[data-theme="dark"] .site-footer .tphf-list a:hover,
[data-theme="dark"] .site-footer .tphf-list a:focus-visible{ color:#E8A33D; }
[data-theme="dark"] .site-footer .tphf-logo span{ color:#fff; }
[data-theme="dark"] .site-footer .tphf-desc{ color:rgba(255,255,255,.60); }
[data-theme="dark"] .site-footer .tphf-by{ color:rgba(255,255,255,.45); }
[data-theme="dark"] .site-footer .tphf-by a,
[data-theme="dark"] .site-footer .tphf-by a:visited{ color:rgba(255,255,255,.80); }
[data-theme="dark"] .site-footer .tphf-by a:hover{ color:#E8A33D; }
[data-theme="dark"] .site-footer .tphf-h{ color:rgba(255,255,255,.46); }
[data-theme="dark"] .site-footer .tphf-social a{ color:rgba(255,255,255,.72); border-color:rgba(255,255,255,.18); }
[data-theme="dark"] .site-footer .tphf-social a:hover{ color:#0B2E35; background:#E8A33D; border-color:#E8A33D; }
[data-theme="dark"] .site-footer .tphf-cta,
[data-theme="dark"] .site-footer .tphf-cta:visited{ background:#E8A33D; color:#0B2E35 !important; }
[data-theme="dark"] .site-footer .tphf-cta:hover{ background:#F2B158; }
[data-theme="dark"] .site-footer .copyright-bar,
[data-theme="dark"] .site-footer .footer-bar .tph-legal{ color:rgba(255,255,255,.50); }
[data-theme="dark"] .site-footer .copyright-bar a,
[data-theme="dark"] .site-footer .copyright-bar a:visited,
[data-theme="dark"] .site-footer .footer-bar .tph-legal a{ color:rgba(255,255,255,.70); }
[data-theme="dark"] .site-footer .copyright-bar a:hover,
[data-theme="dark"] .site-footer .footer-bar .tph-legal a:hover{ color:#E8A33D; }

/* polish */
.site-footer #footer-widgets{ padding:62px 0 48px; border-top:1px solid rgba(255,255,255,.10); }
.site-footer .tphf-list a:focus-visible,
.site-footer .tphf-social a:focus-visible,
.site-footer .tphf-cta:focus-visible,
.site-footer .tphf-by a:focus-visible{ outline:2px solid #E8A33D; outline-offset:3px; border-radius:3px; }


/* 53. Tax calculator page — full restructure (2 September 2026)
   Removes the duplicated 599px header image, compacts the lede so the tool is
   near the fold, balances the calculator card, brands the tables, folds the
   rate tables into tabs and the FAQ into an accordion, adds a sticky TOC.
--------------------------------------------------------- */
body.page-id-95832{--tphS:#fff;--tphS2:#FBF9F4;--tphL:#E6E1D6;--tphL2:#EFEBE1;--tphInk:#0E3B43;--tphAm:#E8A33D;--tphAmD:#A96F17}
html[data-theme="dark"] body.page-id-95832{--tphS:#16181D;--tphS2:#1B1E24;--tphL:#2A2E36;--tphL2:#242830;--tphInk:#9FD0D4;--tphAmD:#E8A33D}

/* 53.1 the page-header image was the same chart as the one in the body */
body.page-id-95832 .featured-image.page-header-image{display:none!important}

/* 53.2 lede — get the calculator near the fold */
body.page-id-95832 .entry-header{margin-bottom:2px}
body.page-id-95832 .entry-title{font-size:clamp(29px,3.4vw,42px);line-height:1.08;letter-spacing:-.022em;margin:0}
.tph-tcp .tph-tc-lede{max-width:47rem;margin:0 0 20px}
.tph-tcp .tph-tc-lede p.stand{font-size:17px;line-height:1.55;margin:9px 0 0}
.tph-tcp .tph-tc-meta{margin:13px 0 0;padding:12px 0 0;font-size:13px;gap:6px 16px}
.tph-tcp .tph-chips{margin:10px 0 0;gap:6px}
.tph-tcp .tph-chip{font-size:11.5px;padding:4px 9px}

/* 53.3 calculator card — no dead space under the inputs */
.tph-tcp .tph-calc{border-radius:18px;box-shadow:0 1px 2px rgba(14,59,67,.05),0 26px 52px -32px rgba(14,59,67,.5)}
@media(min-width:861px){
 .tph-tcp .tph-calc-body{grid-template-columns:minmax(330px,.86fr) 1.14fr}
 .tph-tcp .tph-calc-in{display:flex;flex-direction:column}
}
.tph-calc-note{margin-top:auto;padding:14px 15px;border:1px solid var(--rule);border-left:3px solid var(--tphAm);border-radius:10px;background:var(--tphS2)}
html[data-theme="dark"] .tph-calc-note{background:rgba(232,163,61,.06)}
.tph-calc-note .t{display:block;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--tphAmD);margin:0 0 7px}
.tph-calc-note ul{margin:0;padding:0;list-style:none;font-size:13px;line-height:1.5;color:var(--soft)}
.tph-calc-note li{position:relative;padding:0 0 0 15px;margin:0 0 5px}
.tph-calc-note li:last-child{margin:0}
.tph-calc-note li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--tphAm)}

/* line-by-line folds away — it was 194px of table inside the results panel */
details.tph-brkd{margin:16px 0 0;border:1px solid var(--rule);border-radius:11px;background:var(--tphS);overflow:hidden}
details.tph-brkd>summary{list-style:none;cursor:pointer;padding:11px 40px 11px 14px;position:relative;font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--soft)}
details.tph-brkd>summary::-webkit-details-marker{display:none}
details.tph-brkd>summary:hover{color:var(--head)}
details.tph-brkd>summary:after{content:"";position:absolute;right:16px;top:50%;margin-top:-6px;width:8px;height:8px;border-right:2px solid var(--tphAm);border-bottom:2px solid var(--tphAm);transform:rotate(45deg);transition:transform .2s}
details.tph-brkd[open]>summary:after{transform:rotate(-135deg);margin-top:-2px}
details.tph-brkd>table.tph-brk{margin:0}
details.tph-brkd>table.tph-brk caption{display:none}

/* 53.4 offer band — slimmer, reads as a shelf rather than an ad slot */
.tph-offer{padding:26px 26px 22px;border-radius:18px;margin:36px 0 46px}
.tph-offer .tph-offer-head h2{font-size:25px;line-height:1.2;margin:8px 0 8px}
.tph-offer .tph-offer-head p{font-size:15px;line-height:1.55;max-width:56rem;margin:0}
.tph-offer .tph-offer-grid{gap:14px;margin:18px 0 0}
.tph-offer .tph-oc{padding:16px 16px 15px}
.tph-offer .tph-oc h3{font-size:17px;margin:10px 0 8px}
.tph-offer .tph-oc>p{font-size:13.5px;line-height:1.5}
.tph-offer .tph-oc a.b{padding:11px 16px;font-size:14.5px}
.tph-offer .tph-offer-foot{font-size:13px;margin:14px 0 0}

/* 53.5 section rhythm — smaller headings, an amber tick, real breathing room */
body.page-id-95832 .entry-content>h2{font-size:clamp(23px,2.1vw,28px);line-height:1.22;letter-spacing:-.012em;margin:52px 0 14px;padding:0 0 0 15px;position:relative;scroll-margin-top:132px}
body.page-id-95832 .entry-content>h2:before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:3px;border-radius:3px;background:var(--tphAm)}
body.page-id-95832 .entry-content>h3{font-size:18px;margin:26px 0 10px}
body.page-id-95832 .entry-content>p{font-size:16.5px;line-height:1.68;max-width:44rem}
body.page-id-95832 .entry-content>ul li{font-size:16px;line-height:1.6;margin-bottom:8px}

body.page-id-95832 .entry-content>figure.wp-block-image{max-width:740px;margin:26px auto 8px}
body.page-id-95832 .entry-content>figure.wp-block-image img{border:1px solid var(--tphL);border-radius:14px}
body.page-id-95832 .entry-content>figure.wp-block-image figcaption{font-size:13.5px;color:var(--soft);text-align:center;margin-top:10px}

/* 53.6 branded tables — the default grey-bar table was the cheapest thing here */
body.page-id-95832 .entry-content figure.wp-block-table{border:1px solid var(--tphL);border-radius:14px;overflow:hidden;background:var(--tphS);margin:0 0 10px}
body.page-id-95832 .entry-content figure.wp-block-table table{border:0;margin:0;width:100%;border-collapse:collapse;font-size:14.5px}
body.page-id-95832 .entry-content figure.wp-block-table thead th{background:var(--tphInk);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:11px 16px;border:0}
html[data-theme="dark"] body.page-id-95832 .entry-content figure.wp-block-table thead th{background:#0E3B43;color:#fff}
body.page-id-95832 .entry-content figure.wp-block-table tbody td{padding:11px 16px;border:0;border-top:1px solid var(--tphL2);color:var(--text)}
body.page-id-95832 .entry-content figure.wp-block-table tbody tr:first-child td{border-top:0}
body.page-id-95832 .entry-content figure.wp-block-table tbody tr:nth-child(even) td{background:var(--tphS2)}
body.page-id-95832 .entry-content figure.wp-block-table tbody td:first-child{font-weight:600;color:var(--head)}
body.page-id-95832 .entry-content figure.wp-block-table figcaption{font-size:13px;color:var(--soft);padding:10px 16px;border-top:1px solid var(--tphL2);text-align:left}
.tph-tabpane figure.wp-block-table td:last-child,.tph-tabpane figure.wp-block-table th:last-child{text-align:right;font-variant-numeric:tabular-nums}

/* 53.7 rate tables as tabs — three stacked tables were ~1,500px */
.tph-tabs{margin:6px 0 10px}
.tph-tabbar{display:flex;gap:5px;padding:5px;background:var(--tphS2);border:1px solid var(--tphL);border-radius:13px;margin:0 0 18px;flex-wrap:wrap}
.tph-tabbtn{flex:1 1 auto;appearance:none;border:0;background:transparent;font:inherit;font-size:14px;font-weight:600;color:var(--soft);padding:10px 14px;border-radius:9px;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}
.tph-tabbtn:hover{color:var(--head)}
.tph-tabbtn.on{background:var(--tphS);color:var(--head);box-shadow:0 1px 2px rgba(14,59,67,.14)}
html[data-theme="dark"] .tph-tabbtn.on{background:#22262E}
.tph-tabpane{display:none}
.tph-tabpane.on{display:block;animation:tphfade .22s ease}
.tph-tabpane>h3:first-child{margin:0 0 12px;font-size:17px}
.tph-tabpane>p{font-size:14.5px;line-height:1.6;color:var(--soft);margin:10px 0 0;text-align:left;max-width:44rem}
@keyframes tphfade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* 53.8 FAQ accordion */
.tph-faq{border:1px solid var(--tphL);border-radius:14px;overflow:hidden;background:var(--tphS);margin:4px 0 8px}
.tph-fq{border-top:1px solid var(--tphL2)}
.tph-fq:first-child{border-top:0}
.tph-fq>summary{list-style:none;cursor:pointer;padding:15px 54px 15px 18px;position:relative}
.tph-fq>summary::-webkit-details-marker{display:none}
.tph-fq>summary h3{margin:0;font-size:16.5px;line-height:1.4;font-weight:600;color:var(--head)}
.tph-fq>summary:hover h3{color:var(--tphAmD)}
.tph-fq>summary:after{content:"";position:absolute;right:21px;top:50%;margin-top:-7px;width:9px;height:9px;border-right:2px solid var(--tphAm);border-bottom:2px solid var(--tphAm);transform:rotate(45deg);transition:transform .2s}
.tph-fq[open]>summary:after{transform:rotate(-135deg);margin-top:-2px}
.tph-fq[open]>summary{background:var(--tphS2)}
.tph-fq>p{margin:0;padding:2px 18px 17px;font-size:15.5px;line-height:1.65;color:var(--text);max-width:none}

/* 53.9 sticky section nav — an 8,400px page had nothing to steer with */
.tph-toc{position:fixed;left:0;right:0;top:62px;z-index:90;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--tphL);transform:translateY(-115%);transition:transform .28s cubic-bezier(.4,0,.2,1);pointer-events:none}
html[data-theme="dark"] .tph-toc{background:rgba(14,15,19,.9)}
body.admin-bar .tph-toc{top:94px}
.tph-toc.on{transform:none;pointer-events:auto}
.tph-toc-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:4px;padding:0 20px;height:52px;overflow-x:auto;scrollbar-width:none}
.tph-toc-in::-webkit-scrollbar{display:none}
.tph-toc-lab{font-weight:700;color:var(--head);font-size:13.5px;white-space:nowrap;margin-right:12px}
.tph-toc a{font-size:13.5px;color:var(--soft);text-decoration:none;padding:7px 11px;border-radius:8px;white-space:nowrap;transition:background .15s,color .15s}
.tph-toc a:hover{background:var(--tphS2);color:var(--head);text-decoration:none}
.tph-toc a.tph-toc-top{margin-left:auto;background:var(--tphInk);color:#fff;font-weight:600}
html[data-theme="dark"] .tph-toc a.tph-toc-top{background:#0E3B43}
.tph-toc a.tph-toc-top:hover{background:#092429;color:#fff}
@media(max-width:760px){.tph-toc-lab{display:none}.tph-toc a.tph-toc-top{margin-left:0}}
@media(max-width:860px){
 .tph-calc-note{margin-top:18px}
 body.page-id-95832 .entry-content>h2{margin-top:40px}
 .tph-offer{padding:22px 18px 20px;margin:28px 0 36px}
}


/* 53b. Calculator page — contrast and figure width fixes */
body.page-id-95832 .entry-content>figure.wp-block-image{max-width:760px!important;margin-left:auto!important;margin-right:auto!important}
.tph-tabbar{background:#F1EEE6}
html[data-theme="dark"] .tph-tabbar{background:#14161B;border-color:#2A2E36}
.tph-tabpane>h3:first-child{font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--soft);margin:0 0 10px}


/* 53c. Calculator page — tables must scroll, not clip, on narrow screens */
body.page-id-95832 .entry-content figure.wp-block-table{overflow:auto;-webkit-overflow-scrolling:touch}
body.page-id-95832 .entry-content figure.wp-block-table table{min-width:420px}
@media(max-width:600px){
 body.page-id-95832 .entry-content figure.wp-block-table table{font-size:13.5px}
 body.page-id-95832 .entry-content figure.wp-block-table thead th,body.page-id-95832 .entry-content figure.wp-block-table tbody td{padding:10px 12px}
 .tph-tabbtn{flex:1 1 100%;text-align:left}
}


/* 54. Calculator page — two-column work area: vertical calculator + sell rail
   The calculator stacks (inputs above results) in the left column; the rail on
   the right carries the argument for the courses. Single column under 981px.
--------------------------------------------------------- */
@media(min-width:981px){
 .tph-tcp{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(330px,.84fr);gap:24px;align-items:start}
 .tph-tcp>.tph-tc-lede{grid-column:1/-1;max-width:52rem;margin:0 0 4px}
 .tph-tcp>.tph-calc{grid-column:1;margin:0}
 .tph-tcp>.tph-sell{grid-column:2;margin:0}
}
/* the calculator itself is now vertical at every width */
.tph-tcp .tph-calc-body{display:block!important;grid-template-columns:1fr!important}
.tph-tcp .tph-calc-in{display:flex;flex-direction:column;border-right:0!important;border-bottom:1px solid var(--rule);position:static!important}
.tph-tcp .tph-calc-out{border-left:0!important}
.tph-tcp .tph-calc-note{margin-top:16px}

/* the rail */
.tph-sell{display:flex;flex-direction:column;gap:14px;margin:26px 0 0}
@media(min-width:981px){.tph-sell{margin:0}}

.tph-sell-hook{position:relative;overflow:hidden;border-radius:16px;padding:22px 20px;background:linear-gradient(150deg,#0E3B43 0%,#092429 72%)}
.tph-sell-hook:after{content:"";position:absolute;right:-46px;top:-46px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(232,163,61,.30),rgba(232,163,61,0) 68%);pointer-events:none}
.tph-sell-hook .k{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.55em;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#E8A33D}
.tph-sell-hook .k:before{content:"";width:20px;height:2px;border-radius:2px;background:#E8A33D}
.tph-sell-hook h2{position:relative;z-index:1;font-size:20.5px;line-height:1.28;letter-spacing:-.01em;color:#fff;margin:12px 0 10px;padding:0;border:0}
.tph-sell-hook h2:before{display:none}
.tph-sell-hook h2 em{font-style:normal;color:#E8A33D}
.tph-sell-hook p{position:relative;z-index:1;font-size:14.5px;line-height:1.6;color:rgba(255,255,255,.82);margin:0;max-width:none}
.tph-sell-hook b.mir{color:#fff;font-weight:800;white-space:nowrap;background:rgba(232,163,61,.2);border-radius:6px;padding:1px 6px}

.tph-sell-gaps{list-style:none;margin:2px 0 0;padding:0;counter-reset:tphg}
.tph-sell-gaps li{counter-increment:tphg;position:relative;padding:1px 0 0 34px;margin:0 0 12px;font-size:14.5px;line-height:1.55;color:var(--text)}
.tph-sell-gaps li:last-child{margin:0}
.tph-sell-gaps li:before{content:counter(tphg);position:absolute;left:0;top:0;width:23px;height:23px;border-radius:50%;background:#0E3B43;color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
html[data-theme="dark"] .tph-sell-gaps li:before{background:#E8A33D;color:#092429}
.tph-sell-gaps li b{color:var(--head);font-weight:700}

.tph-sell-lead{font-size:13.5px;line-height:1.55;color:var(--soft);margin:6px 0 0;max-width:none}
.tph-sell-cards{display:flex;flex-direction:column;gap:12px}

.tph-sc{display:flex;flex-direction:column;border:1px solid var(--tphL);border-radius:14px;background:var(--tphS);padding:16px 16px 15px}
.tph-sc .pill{align-self:flex-start;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#A96F17;background:rgba(232,163,61,.14);border:1px solid rgba(232,163,61,.34);border-radius:999px;padding:4px 9px}
html[data-theme="dark"] .tph-sc .pill{color:#E8A33D}
.tph-sc h3{font-size:16.5px;line-height:1.3;margin:11px 0 7px;color:var(--head)}
.tph-sc>p{font-size:13.5px;line-height:1.55;color:var(--soft);margin:0 0 12px;max-width:none;flex:1}
.tph-sc .pr{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;font-size:12.5px;color:var(--soft);margin:0 0 12px;flex:none}
.tph-sc .pr b{font-size:20px;font-weight:800;color:var(--head);letter-spacing:-.01em}
.tph-sc .pr s{opacity:.7}
.entry-content .tph-sc a.b{display:block;margin-top:auto;text-align:center;background:#E8A33D;color:#0E3B43;font-weight:700;font-size:14.5px;line-height:1.2;padding:12px 14px;border-radius:999px;text-decoration:none;border:1.5px solid #E8A33D;transition:background .15s,transform .15s,box-shadow .15s}
.entry-content .tph-sc a.b:hover{background:#F2B75E;border-color:#F2B75E;color:#0E3B43;transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(232,163,61,.75)}

.tph-sc.feat{background:linear-gradient(150deg,#0E3B43 0%,#0B2E35 75%);border-color:#0E3B43}
.tph-sc.feat h3{color:#fff}
.tph-sc.feat>p{color:rgba(255,255,255,.76)}
.tph-sc.feat .pr{color:rgba(255,255,255,.7)}
.tph-sc.feat .pr b{color:#fff}
.tph-sc.feat .pill{color:#092429;background:#E8A33D;border-color:#E8A33D}
.entry-content .tph-sc.feat a.b{background:transparent;color:#fff;border-color:rgba(255,255,255,.42)}
.entry-content .tph-sc.feat a.b:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.7);box-shadow:none}

.tph-sell-free{font-size:13px;line-height:1.55;color:var(--soft);margin:4px 0 0;max-width:none}
.tph-sell-trust{font-size:12px;line-height:1.5;color:var(--soft);margin:0;padding:12px 0 0;border-top:1px solid var(--rule);max-width:none}


/* 54b. Vertical calculator — pair the short fields so the form is not a column
   of full-width boxes. Turnover and expenses share a row; salary, region and
   the assumptions panel run full width. */
@media(min-width:1000px){
 .tph-tcp .tph-calc-in{display:grid!important;grid-template-columns:1fr 1fr;gap:0 20px;align-content:start}
 .tph-tcp .tph-calc-in>*:nth-child(1),
 .tph-tcp .tph-calc-in>*:nth-child(4),
 .tph-tcp .tph-calc-in>*:nth-child(5),
 .tph-tcp .tph-calc-in>*:nth-child(6){grid-column:1/-1}
 .tph-tcp .tph-calc-note{margin-top:6px}
}
.entry-content .tph-sc a.b{padding:11px 14px;font-size:14px}
.tph-sell-hook h2{font-size:19.5px}


/* 55. Email opt-in after posts */
.tph-optin{margin:46px 0 10px;padding:26px 26px 24px;background:#0E3B43;border-radius:14px}
.tph-optin .tph-optin-kicker{margin:0 0 7px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#E8A33D}
.tph-optin h3{margin:0 0 9px;color:#fff;font-size:1.3rem;line-height:1.28}
.tph-optin p{margin:0 0 15px;color:#C3D3D6;font-size:.95rem;line-height:1.55}
.tph-optin form{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.tph-optin p#subscribe-email,.tph-optin p#subscribe-submit{margin:0}
.tph-optin p#subscribe-email{flex:1 1 250px;min-width:0}
.tph-optin p#subscribe-submit{flex:0 0 auto}
.tph-optin input[type=email]{width:100%;padding:12px 14px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.07);color:#fff;font-size:1rem;line-height:1.3}
.tph-optin input[type=email]::placeholder{color:#93A8AC}
.tph-optin input[type=email]:focus{outline:2px solid #E8A33D;outline-offset:1px;border-color:transparent}
.tph-optin button[type=submit],.tph-optin input[type=submit]{padding:12px 22px;border:0;border-radius:8px;background:#E8A33D;color:#0E3B43;font-weight:700;font-size:1rem;line-height:1.3;cursor:pointer}
.tph-optin button[type=submit]:hover,.tph-optin input[type=submit]:hover{background:#F2B860}
.tph-optin .wp-block-jetpack-subscriptions__form-elements{display:flex;flex-wrap:wrap;gap:10px;width:100%}
.tph-optin #subscribe-text,.tph-optin h2{display:none}
.tph-optin a{color:#E8A33D}
@media (max-width:600px){.tph-optin{padding:22px 18px}.tph-optin p#subscribe-submit,.tph-optin button[type=submit],.tph-optin input[type=submit]{width:100%}}


/* 56. Calculator page — Read next internal-link cards */
.tph-next{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 8px}
@media(max-width:860px){.tph-next{grid-template-columns:1fr}}
.entry-content a.tph-nx{display:flex;flex-direction:column;border:1px solid var(--tphL);border-radius:14px;background:var(--tphS);padding:15px 16px 16px;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s}
.entry-content a.tph-nx:hover{border-color:#E8A33D;transform:translateY(-2px);box-shadow:0 12px 26px -18px rgba(14,59,67,.6);text-decoration:none}
.entry-content a.tph-nx .k{display:block;font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#A96F17;margin:0 0 8px}
html[data-theme="dark"] .entry-content a.tph-nx .k{color:#E8A33D}
.entry-content a.tph-nx .t{display:block;font-size:15px;line-height:1.35;font-weight:700;color:var(--head);margin:0 0 7px}
.entry-content a.tph-nx .d{display:block;font-size:13px;line-height:1.5;color:var(--soft);margin-top:auto}


/* 57. Calculator page — Read next cards (renamed off .tph-next, which the
   theme already uses for post navigation and decorates with a NEXT label) */
.tph-readnext{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:4px 0 8px}
@media(max-width:860px){.tph-readnext{grid-template-columns:1fr}}
.entry-content .tph-readnext a.tph-nx,.entry-content .tph-readnext a.tph-nx:hover{text-decoration:none!important;background-image:none!important;box-shadow:none}
.entry-content .tph-readnext a.tph-nx:hover{border-color:#E8A33D;box-shadow:0 12px 26px -18px rgba(14,59,67,.6)}

/* 58. course CTA v2 + mid-article bridge - appended 2 Sep 2026 */
.tph-cta-box.tph-v2{padding:26px 28px 24px;border-left:5px solid var(--coral);position:relative}
.tph-cta-box.tph-v2 .tph-cta-kicker{display:inline-block;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--soft);margin-bottom:8px}
.tph-cta-box.tph-v2 h3{font-size:1.35rem;line-height:1.25;margin:0 0 10px}
.tph-cta-box.tph-v2 .tph-cta-lead{margin:0 0 12px;line-height:1.55}
.tph-cta-box.tph-v2 ul.tph-cta-inside{list-style:none;margin:0 0 14px;padding:0}
.tph-cta-box.tph-v2 ul.tph-cta-inside li{position:relative;padding-left:1.4em;margin:0 0 .45em;line-height:1.5;color:var(--text)}
.tph-cta-box.tph-v2 ul.tph-cta-inside li::before{content:'\2713';position:absolute;left:0;top:0;color:var(--coral);font-weight:700}
.tph-cta-box.tph-v2 .tph-cta-stake{margin:0 0 16px;padding:12px 14px;background:var(--raised);border-radius:10px;font-size:.95rem;line-height:1.5;color:var(--text)}
.tph-cta-box.tph-v2 .tph-cta-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 12px}
.tph-cta-box.tph-v2 .tph-cta-row a.tph-cta{margin:0}
.tph-cta-box.tph-v2 .tph-cta-price{font-size:.88rem;color:var(--soft);line-height:1.4;max-width:34ch}
.tph-cta-box.tph-v2 .tph-cta-price s{color:var(--soft);margin-right:.25em}
.tph-cta-box.tph-v2 .tph-cta-alt{margin:0;font-size:.88rem;color:var(--soft);border-top:1px solid var(--rule);padding-top:10px}
.tph-cta-box.tph-v2 .tph-cta-alt a{color:var(--head);font-weight:600}
@media (max-width:600px){.tph-cta-box.tph-v2{padding:20px 18px 18px}.tph-cta-box.tph-v2 h3{font-size:1.18rem}.tph-cta-box.tph-v2 .tph-cta-row a.tph-cta{width:100%;justify-content:center}}
.tph-bridge{margin:28px 0;padding:14px 18px;border:1px dashed var(--rule);border-radius:12px;background:var(--surface);font-size:.95rem;line-height:1.55}
.tph-bridge p{margin:0}
.tph-bridge a{color:var(--head);font-weight:700;text-decoration:underline;text-decoration-color:var(--coral);text-underline-offset:3px}
html:root[data-theme='dark'] .tph-bridge{background:var(--raised)}
/* end 58 */

/* 59. faq accordion on course pages - appended 2 Sep 2026 */
.tph-faq-list{margin:8px 0 28px}
.tph-faq{border:1px solid var(--rule);border-radius:12px;background:var(--surface);margin:0 0 10px;padding:0;overflow:hidden}
.tph-faq summary{cursor:pointer;padding:14px 44px 14px 18px;font-weight:700;color:var(--head);list-style:none;position:relative;line-height:1.4}
.tph-faq summary::-webkit-details-marker{display:none}
.tph-faq summary::after{content:'+';position:absolute;right:16px;top:9px;font-size:1.5rem;color:var(--coral);font-weight:400;line-height:1}
.tph-faq[open] summary::after{content:'\2013'}
.tph-faq p{margin:0;padding:0 18px 16px;line-height:1.6;color:var(--text)}
html:root[data-theme='dark'] .tph-faq{background:var(--raised)}
/* end 59 */


/* 60. Calculator line-by-line table — stop the two columns forcing the table
   wider than a small phone. table-layout:fixed makes width:100% binding so the
   label wraps instead of pushing the amount out of the clipped .tph-brkd box.
   appended 4 Sep 2026 */
@media (max-width:560px){
  details.tph-brkd>table.tph-brk{table-layout:fixed;width:100%;font-size:13px}
  .tph-brk td:first-child{overflow-wrap:anywhere;hyphens:auto;padding-right:10px}
  .tph-brk td:last-child{white-space:nowrap;width:34%}
  details.tph-brkd>summary{font-size:11px}
}
/* end 60 */

/* 61. CTA contrast in light mode. The stylesheet already defines an accessible
   --coral-x (#A85416, 5.3:1 against white) for .tph-cta, but a later rule was
   painting the button with the lighter base --coral (#E07A3A) at 2.99:1 —
   under the 4.5:1 WCAG AA needs at 15px/600. This restores the intended token.
   Dark mode already passes at 16.7:1 and is deliberately untouched.
   appended 4 Sep 2026 */
html:root:not([data-theme="dark"]) a.tph-cta,
html:root:not([data-theme="dark"]) .tph-cta{
  background:var(--coral-x)!important;
  color:#fff!important;
}
html:root:not([data-theme="dark"]) a.tph-cta:hover,
html:root:not([data-theme="dark"]) a.tph-cta:focus-visible,
html:root:not([data-theme="dark"]) .tph-cta:hover,
html:root:not([data-theme="dark"]) .tph-cta:focus-visible{
  background:var(--coral-xh)!important;
  color:#fff!important;
}
/* end 61 */

/* 62. Product price labels, light mode. #A96F17 on white is 4.22:1 at
   13.6px/700, just under the 4.5:1 WCAG AA needs. #9C6511 is 4.90:1 and
   visually all but identical. Dark mode untouched. appended 4 Sep 2026 */
html:root:not([data-theme="dark"]) .tph-side-shop-price,
html:root:not([data-theme="dark"]) .woocommerce-Price-amount,
html:root:not([data-theme="dark"]) .woocommerce-Price-currencySymbol{
  color:#9C6511;
}
/* end 62 */

/* 63. Shop category bar, dark mode. The active chip inverts to a near-white
   background (var(--head)), but its text was picking up the dark-mode link
   orange instead of var(--surface) — light orange on white, 2.11:1 and close
   to unreadable. Forces the dark ink the inverted chip was designed for.
   appended 4 Sep 2026 */
html[data-theme="dark"] .tph-catbar-link.is-active{
  color:#12131A!important;
}
html[data-theme="dark"] .tph-catbar-link.is-active:hover,
html[data-theme="dark"] .tph-catbar-link.is-active:focus-visible{
  color:#12131A!important;
}
/* end 63 */

/* 61. sitemap page */
.page-id-96647 .entry-content h2{margin-top:2.2em;padding-bottom:.35em;border-bottom:1px solid #E5E1D7}
.page-id-96647 ul.tph-sitemap{list-style:none;margin:0 0 1.5em;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35em 2em}
.page-id-96647 ul.tph-sitemap li{margin:0;padding:.3em 0;border-bottom:1px solid #F0EDE4;font-size:.95em;line-height:1.4}
.page-id-96647 ul.tph-sitemap a{text-decoration:none;color:#0E3B43}
.page-id-96647 ul.tph-sitemap a:hover{color:#A96F17;text-decoration:underline}
@media(max-width:700px){.page-id-96647 ul.tph-sitemap{grid-template-columns:1fr}}

/* 61b. sitemap page fixes */
body.page-id-96647 .entry-content h2.wp-block-heading{opacity:1!important;transform:none!important;font-size:1.5rem}
body.page-id-96647 .entry-content ul.tph-sitemap a:not(.tph-cta):not(.wp-block-button__link),body.page-id-96647 .entry-content ul.tph-sitemap a:not(.tph-cta):not(.wp-block-button__link):visited{color:#0E3B43;text-decoration:none}
body.page-id-96647 .entry-content ul.tph-sitemap a:not(.tph-cta):not(.wp-block-button__link):hover{color:#A96F17;text-decoration:underline}

/* 64. YouTube trust surfaces — author follow row, About embed, calculator CTA */
.tph-author-follow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;padding-top:12px;border-top:1px solid #E5E1D7;font-size:13.5px}
.tph-author-follow span{color:#5F7178;font-weight:600;letter-spacing:.02em;margin-right:2px}
.tph-author-follow a{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid #E5E1D7;border-radius:999px;background:#fff;color:#0E3B43;text-decoration:none;font-weight:600;transition:border-color .15s,color .15s,background .15s}
.tph-author-follow a::before{content:"";width:6px;height:6px;border-radius:50%;background:#E8A33D}
.tph-author-follow a:hover{border-color:#E8A33D;background:#FFF8EA;color:#092429}
[data-theme="dark"] .tph-author-follow{border-top-color:rgba(255,255,255,.12)}
[data-theme="dark"] .tph-author-follow span{color:rgba(255,255,255,.6)}
[data-theme="dark"] .tph-author-follow a{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.16);color:#fff}
[data-theme="dark"] .tph-author-follow a:hover{background:rgba(232,163,61,.12);border-color:#E8A33D;color:#fff}
.tph-video{margin:28px 0 36px}
.tph-video-frame{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#092429;box-shadow:0 12px 32px rgba(14,59,67,.18)}
.tph-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.tph-video-cap{margin:12px 2px 0;font-size:14.5px;color:#5F7178}
.tph-video-cap a{color:#0E3B43;font-weight:600;text-decoration:underline;text-decoration-color:#E8A33D;text-underline-offset:3px}
[data-theme="dark"] .tph-video-cap{color:rgba(255,255,255,.7)}
[data-theme="dark"] .tph-video-cap a{color:#fff}
.tph-ytcta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 36px;padding:16px 18px;border:1px solid #E5E1D7;border-left:4px solid #E8A33D;border-radius:12px;background:#fff;font-size:15px;line-height:1.5}
.tph-ytcta-ic{flex:0 0 36px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#0E3B43;color:#E8A33D;font-size:13px}
.tph-ytcta>span:not(.tph-ytcta-ic){flex:1 1 320px;color:#26333B}
.tph-ytcta a{display:inline-block;padding:9px 16px;border-radius:999px;background:#E8A33D;color:#092429!important;font-weight:700;text-decoration:none;white-space:nowrap;transition:background .15s}
.tph-ytcta a:hover{background:#d9932f}
[data-theme="dark"] .tph-ytcta{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12);border-left-color:#E8A33D}
[data-theme="dark"] .tph-ytcta>span:not(.tph-ytcta-ic){color:rgba(255,255,255,.85)}
[data-theme="dark"] .tph-ytcta-ic{background:#E8A33D;color:#092429}
@media (max-width:640px){.tph-ytcta{padding:14px}.tph-ytcta a{width:100%;text-align:center}}

/* 64b. YouTube CTA width + no underline */
.entry-content p.tph-ytcta{max-width:none;width:100%;box-sizing:border-box}
.tph-ytcta a,.tph-ytcta a:hover{text-decoration:none!important;box-shadow:none!important;border-bottom:0!important}
.tph-author-follow a,.tph-author-follow a:hover{text-decoration:none!important;box-shadow:none!important;border-bottom-width:1px}


/* 65. nav dropdown hover bridge. The card sits 6-10px below the link (margin-top) and the closed state jumped to left:-99999px instantly, so the mouse crossing that gap lost :hover and the dropdown vanished before it could be reached. Bridge the gap with an invisible strip on the parent li while it is open, and keep the closed card in place (visibility, delayed) instead of throwing it off-screen. */
.site-header #menu-primary > li.menu-item-has-children{position:relative}
.site-header #menu-primary > li.menu-item-has-children::before{content:"";position:absolute;left:-8px;right:-8px;top:100%;height:18px;display:none;z-index:1}
.site-header #menu-primary > li.menu-item-has-children:hover::before,
.site-header #menu-primary > li.menu-item-has-children.sfHover::before,
.site-header #menu-primary > li.menu-item-has-children:focus-within::before{display:block}
.main-navigation .main-nav > ul > li:not(:hover):not(.sfHover):not(:focus-within) > ul.sub-menu{left:auto !important;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .22s}
.main-navigation .main-nav > ul > li:hover > ul.sub-menu,
.main-navigation .main-nav > ul > li.sfHover > ul.sub-menu,
.main-navigation .main-nav > ul > li:focus-within > ul.sub-menu{visibility:visible;pointer-events:auto;transition-delay:0s}


/* 66. hero ghost CTA, dark mode. The "Free Tax Calculator" pill took --head (deep ink) as its label colour on a near-black --surface, so the label was invisible in dark mode. White label, soft border, amber on hover. */
/* .entry-content .tph-hero-cta a.tph-cta-lg forces color:#092429 !important on both hero pills, so this needs matching specificity and !important. */
html[data-theme="dark"] .entry-content .tph-hero-cta a.tph-cta-lg.tph-cta-ghost,
html[data-theme="dark"] .tph-cta-lg.tph-cta-ghost{color:#FFFFFF !important;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.24);box-shadow:none}
html[data-theme="dark"] .entry-content .tph-hero-cta a.tph-cta-lg.tph-cta-ghost:hover,
html[data-theme="dark"] .entry-content .tph-hero-cta a.tph-cta-lg.tph-cta-ghost:focus-visible,
html[data-theme="dark"] .tph-cta-lg.tph-cta-ghost:hover,
html[data-theme="dark"] .tph-cta-lg.tph-cta-ghost:focus-visible{color:#F5B731 !important;background:rgba(255,255,255,.1);border-color:#F5B731;box-shadow:0 8px 24px rgba(245,183,49,.18)}


/* 67. home shop, dark mode + rhythm. (a) "Add to basket" label: html:root[data-theme=dark] .entry-content a:not(.tph-cta):not(.wp-block-button__link) (0,5,2) outranked .woocommerce ul.products li.product a.button and painted --coral-l on the amber pill — amber on amber, unreadable. (b) The "See all" pill sat flush against the next section heading. */
html[data-theme="dark"] .woocommerce ul.products li.product a.button,
html[data-theme="dark"] .woocommerce ul.products li.product a.button:visited,
html[data-theme="dark"] .entry-content ul.products li.product a.add_to_cart_button{color:#092429 !important}
html[data-theme="dark"] .woocommerce ul.products li.product a.button:hover,
html[data-theme="dark"] .woocommerce ul.products li.product a.button:focus-visible{color:#092429 !important;filter:brightness(1.06)}
.tph-home-shop .tph-seeall{margin-bottom:64px}
.tph-home-shop .tph-seeall:last-child{margin-bottom:0}
@media (max-width:768px){.tph-home-shop .tph-seeall{margin-bottom:44px}}


/* 68. Cart block, mobile. GeneratePress gives .alignwide a -30px side pull, so on a 390px
   phone the WooCommerce cart block measured 404px inside a 386px viewport and clipped
   ~9px off each edge (empty-cart notice, cross-sell row). Full width below 600px. */
@media (max-width: 600px) {
  .wp-block-woocommerce-cart.alignwide,
  .wp-block-woocommerce-checkout.alignwide {
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
  }
}


/* 69. Two mobile fixes, 6 Sep 2026.
   (a) Homepage "Dates that matter": the NEXT badge sat on top of the date on phones.
       .tph-dates .tph-next{padding-top:38px!important} and
       @media(max-width:540px){.tph-dates .wp-block-column{padding:16px 0!important}}
       have the same specificity and the media rule comes later, so below 540px the
       padding dropped to 16px while ::before stayed at top:16px -> exact overlap.
       Re-stating it with .wp-block-column.tph-next raises specificity so it wins.
   (b) Fixed header left a 46px see-through gap on phones while logged in: at <=600px
       WordPress switches #wpadminbar to position:absolute so it scrolls away, but
       body.admin-bar .site-header{top:46px} kept the offset. Logged-out visitors
       never saw this one. */
@media (max-width: 540px){
  .tph-dates .wp-block-column.tph-next{padding-top:38px!important}
}
@media (max-width: 600px){
  html body.admin-bar .site-header{top:0!important}
}


/* 61. About page author card */
.tph-about-me{display:flex;align-items:center;gap:18px;margin:22px 0 26px;padding:16px 18px;background:#fff;border:1px solid #E5E1D7;border-radius:14px}
.tph-about-me img{width:96px;height:96px;border-radius:50%;object-fit:cover;flex:0 0 96px;border:2px solid #E8A33D;background:#FBF9F4;margin:0}
.tph-about-me-t{display:flex;flex-direction:column;gap:4px;min-width:0}
.tph-about-me-t strong{font-family:Georgia,'Times New Roman',serif;font-size:1.15rem;color:#0E3B43;line-height:1.2}
.tph-about-me-t span{color:#5F7178;font-size:.95rem;line-height:1.45}
@media(max-width:480px){.tph-about-me{flex-direction:column;text-align:center;gap:12px}.tph-about-me-t{align-items:center}}


/* 61b. About card, dark mode */
html:root[data-theme="dark"] .tph-about-me{background:#1A1C22;border-color:#2A2D35}
html:root[data-theme="dark"] .tph-about-me-t strong{color:#F2F3F5}
html:root[data-theme="dark"] .tph-about-me-t span{color:#9AA1AC}


/* 70. PayPal Pay Later message — dark mode legibility (7 Sep 2026).
   The PayPal message is a third-party iframe with a hard white background, so in
   dark mode it read as a broken white strip breaking out of the order summary.
   Give it a deliberate paper-coloured card instead of hiding it. */
:root[data-theme="dark"] .ppcp-messages,
:root[data-theme="dark"] div[id^="ppcp-"][id$="-paylater-messages"]{
	background:#FBF9F4;
	border:1px solid #E5E1D7;
	border-radius:10px;
	padding:2px 10px;
	margin-top:12px;
	overflow:hidden;
}


/* 63. engagement fixes — 14 Sep 2026: solid header once scrolled, catbar wrap on phones, post top on phones, collapsible ToC */
body.home.tph-solid .site-header{background:var(--surface) !important;box-shadow:0 1px 0 var(--rule)}
@media (max-width:640px){
  .tph-catbar-in{flex-wrap:wrap;gap:8px 12px;padding:8px 16px}
  .tph-catbar-links{flex:1 1 100%}
  a.tph-catbar-cta{flex:0 0 auto;margin-left:auto;min-height:38px;padding:.4em 1em;font-size:.88em}
  body.single-post .featured-image.page-header-image-single{display:none}
  body.single-post .entry-content > .tph-note:first-of-type{font-size:.95em;padding:14px 16px}
}
.wp-block-rank-math-toc-block{position:relative}
.wp-block-rank-math-toc-block > h2,.wp-block-rank-math-toc-block > h3,.wp-block-rank-math-toc-block > h4{cursor:pointer;margin:0;padding-right:28px;font-size:1em;line-height:1.3}
.wp-block-rank-math-toc-block > h2::after,.wp-block-rank-math-toc-block > h3::after,.wp-block-rank-math-toc-block > h4::after{content:"";position:absolute;right:18px;top:18px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s ease,top .2s ease}
.wp-block-rank-math-toc-block.is-open > h2::after,.wp-block-rank-math-toc-block.is-open > h3::after,.wp-block-rank-math-toc-block.is-open > h4::after{transform:rotate(225deg);top:22px}
.wp-block-rank-math-toc-block > nav{display:none;margin-top:12px}
.wp-block-rank-math-toc-block.is-open > nav{display:block}
.tph-course-facts{display:flex;flex-wrap:wrap;gap:8px 10px;margin:18px 0 22px;padding:0;list-style:none}
.tph-course-facts li{display:inline-flex;align-items:center;gap:.4em;background:#FBF9F4;border:1px solid #E5E1D7;border-radius:999px;padding:6px 12px;font-size:.9em;color:#26333B;line-height:1.3}
.tph-course-facts li strong{color:#0E3B43;font-weight:700}
.tph-course-facts li a{color:#A96F17;text-decoration:underline;text-underline-offset:2px}
.tph-course-facts li.tph-cf-price{background:#0E3B43;border-color:#0E3B43;color:#fff}
.tph-course-facts li.tph-cf-price strong{color:#E8A33D}
.tph-course-facts li.tph-cf-price s{opacity:.7;margin-right:.35em}
.tph-wallet-note{margin:10px 0 0;font-size:.85em;color:#5F7178}


/* 64. compact + bug fixes (16 Sep 2026) — append-only */
/* 64a. full-bleed bands: real viewport width (minus scrollbar) so hero/band content is centred with the header */
html{overflow-y:scroll}
.tph-hero,.tph-band{width:var(--tph-vw,100vw)!important;margin-left:calc(50% - var(--tph-vw,100vw) / 2)!important;margin-right:calc(50% - var(--tph-vw,100vw) / 2)!important}
/* 64b. single product page: reading-width rule must not squeeze the product */
body.single-product .entry-content>*{max-width:none!important}
body.single-product div.product{max-width:none!important;width:100%!important}
body.single-product .related.products ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){body.single-product .related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 64c. tighter vertical rhythm: the GP inner container added 40px top+bottom inside every band on top of the band padding */
.tph-band>.wp-block-group__inner-container,.tph-home-shop>.wp-block-group__inner-container{padding-top:0!important;padding-bottom:0!important}
.tph-band{padding-top:56px!important;padding-bottom:56px!important}
.tph-seeall:has(.is-style-outline)::after{content:none!important}
.tph-band>.wp-block-group__inner-container>h2.wp-block-heading{margin-bottom:6px!important}
.tph-band .tph-sub{margin-bottom:22px!important}
.tph-cat-rows .tph-cat-row{margin-bottom:26px!important}
.tph-cat-rows .tph-cat-row:last-child{margin-bottom:0!important}
.tph-cat-row-head{margin-bottom:12px!important}
.tph-home-shop h3.wp-block-heading{margin:22px 0 10px!important;font-size:1.05rem!important}
.tph-home-shop ul.products{margin:0 0 6px!important}
.tph-home-shop .tph-seeall{margin-top:22px!important}
.tph-band-dark{padding-top:44px!important;padding-bottom:44px!important}
.site-footer #footer-widgets{padding:48px 0 38px!important}
@media (max-width:700px){
  .tph-band{padding-top:36px!important;padding-bottom:36px!important}
  .tph-band .tph-sub{margin-bottom:16px!important}
  .tph-cat-rows .tph-cat-row{margin-bottom:22px!important}
  .site-footer #footer-widgets{padding:36px 0 28px!important}
}
/* 64d. key dates: 2-up on phones instead of one per row */
@media (max-width:700px){
  .tph-dates>.wp-block-group__inner-container{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:18px!important}
  .tph-dates .wp-block-columns{display:contents!important}
  .tph-dates .wp-block-column{padding:12px 0!important;margin:0!important;flex-basis:auto!important}
  .tph-dates .tph-d{font-size:1.15rem!important}
  .tph-dates .tph-l{font-size:.68rem!important;line-height:1.35!important}
}
/* 64e. lead card on phones: stack, full-width image at its real ratio (no more cropped chart) */
@media (max-width:700px){
  .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child{flex-direction:column!important}
  .tph-cat-rows .tph-cat-row:first-child .tph-guide-card:first-child>img{width:100%!important;flex:0 0 auto!important;height:auto!important;min-height:0!important;aspect-ratio:1200/630;object-fit:cover;border-radius:0!important;border:0!important;border-bottom:1px solid var(--rule)!important;margin:0!important}
}
/* 64f. shop rows on phones: 2-up compact cards */
@media (max-width:700px){
  body.home ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body.home ul.products li.product{padding:10px 10px 12px!important}
  body.home ul.products li.product .woocommerce-loop-product__title{font-size:.86rem!important}
  body.home ul.products li.product .price{font-size:.9rem!important}
  body.home ul.products li.product .button{padding:9px 12px!important;font-size:.8rem!important;width:100%!important;text-align:center!important}
}
/* 64g. Browse by topic: compact grid */
.tph-topics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:18px 0 0}
.tph-topic{display:flex;flex-direction:column;gap:8px;min-width:0;padding:16px 16px 14px;border:1px solid var(--rule);border-radius:14px;background:var(--surface);color:var(--text);text-decoration:none!important;transition:border-color .18s,transform .18s,box-shadow .18s}
.tph-topic:hover{border-color:#E8A33D;transform:translateY(-2px);box-shadow:0 10px 24px rgb(9 36 41 / .08)}
.tph-topic-ic{width:34px;height:34px;border-radius:10px;background:#0E3B43;color:#fff;display:grid;place-items:center;margin-bottom:4px}
.tph-topic-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tph-topic-t{font-family:var(--head);font-weight:600;font-size:1rem;line-height:1.2;color:var(--text)}
.tph-topic-s{font-family:var(--sans);font-size:.78rem;line-height:1.4;color:var(--soft)}
.tph-topic-n{font-family:var(--sans);font-size:.74rem;font-weight:600;letter-spacing:.02em;color:#A96F17;margin-top:auto;padding-top:6px}
html:root[data-theme="dark"] .tph-topic{background:var(--raised)}
html:root[data-theme="dark"] .tph-topic-ic{background:#E8A33D;color:#092429}
html:root[data-theme="dark"] .tph-topic-n{color:#E8A33D}
@media (max-width:1000px){.tph-topics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.tph-topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tph-topic{padding:14px 14px 12px}.tph-topic-s{display:none}}
/* 64h. empty basket: no crying face */
.wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before{display:none!important}
.wp-block-woocommerce-empty-cart-block h2.with-empty-cart-icon{padding-top:8px!important;font-size:1.5rem!important;margin-bottom:6px!important}
.wp-block-woocommerce-empty-cart-block .tph-cart-empty-sub{max-width:460px;margin:0 auto 18px!important}
.wp-block-woocommerce-empty-cart-block .tph-seeall{justify-content:center;margin-bottom:34px!important}
