/* PeraFix shared design layer 2026-10-29: one typeface, readable minimum sizes,
   one heading scale and mobile answer-first fault pages. Loaded last in <head>. */
@font-face {
  font-family:'PF Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-ff2310f5.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family:'PF Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-875ccdd4.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family:'PF Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-52306abf.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family:'PF Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-001175b1.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family:'PF Sans';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-98bbbccb.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{--pf-blue:#005cff;--pf-font:'PF Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif}

/* Typeface: the homepage's self-hosted Geist everywhere (Inter was never loaded). */
html body{font-family:var(--pf-font)!important}
html body :is(h1,h2,h3,h4,h5,h6,p,a,span,li,ul,ol,button,input,select,textarea,label,small,strong,em,b,i,dt,dd,dl,td,th,summary,details,figcaption,blockquote,div,nav,section,article,aside,header,footer,main,legend,option,time,mark,cite){font-family:inherit!important}
html body :is(code,kbd,samp,pre){font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important}

/* Heading scale: one H1 size per breakpoint (homepage hero keeps its own). */
html body h1:not(#hp-title){font-size:clamp(34px,3.4vw,50px)!important;line-height:1.1!important}
@media(max-width:760px){html body h1:not(#hp-title){font-size:clamp(26px,7.4vw,30px)!important;line-height:1.16!important}}

/* Navigation panel title is no longer an H2 (it is not page content). */
#pfn-header .pfn-discover .pfn-discover-title{margin:0 0 26px;font-size:27px;font-weight:700;line-height:1.25;letter-spacing:-.6px;color:#fff}
@media(max-width:1150px){#pfn-header .pfn-discover .pfn-discover-title{font-size:22px;margin-bottom:14px}}

/* Readable minimum (12px) for homepage eyebrow and label text. */
html body :is(.hp-tag,.hp-kicker,.hp-answer-eyebrow,.hp-device-eyebrow,.hp-picker-label,.hp-studio-label,.hp-intent-label,.hp-query-type,.hp-device-seal,.hp-visual-top,.pf-downloads__note){font-size:12px!important;letter-spacing:.08em!important}
html body #pf-corporate-footer nav .pfc-nav-heading{font-size:12px}

/* WhatsApp support button: smaller on phones and kept clear of the footer. */
@media(max-width:760px){
 html body #pf-whatsapp-support{width:44px!important;min-height:44px!important;height:44px;padding:4px!important;right:max(12px,env(safe-area-inset-right))!important;bottom:max(14px,env(safe-area-inset-bottom),var(--pfw-clearance,0px))!important;border-radius:14px!important}
 html body #pf-whatsapp-support svg{width:26px!important;height:26px!important}
 html body #pf-corporate-footer{padding-bottom:72px!important}
}

/* Fault-code pages on phones: the meaning comes first. Brand/model boxes repeat
   the H1 and the device plate is decorative, so they are hidden on small screens. */
@media(max-width:760px){
 body[data-pf-detail-kind="code"] #pf-main-content .pf-detail-stats,
 body[data-pf-detail-kind="code"] #pf-main-content .pf-detail-visual,
 body[data-pf-detail-kind="code"] #pf-main-content .pf-code-meaning .pf-context{display:none!important}
 body[data-pf-detail-kind="code"] #pf-main-content .pf-detail-hero{padding-bottom:18px!important}
 body[data-pf-detail-kind="code"] #pf-main-content .pf-detail-actions{margin-top:16px!important}
}

/* Checkout: same logo and type as the rest of the site, no square buttons. */
body[data-pf-design="commerce"] .site-header .brand{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
body[data-pf-design="commerce"] .site-header .brand img{width:150px;height:auto;display:block}
body[data-pf-design="commerce"] :is(button,.button,a.button,[type=submit]){border-radius:12px}
body[data-pf-design="commerce"] :is(.breadcrumbs,.breadcrumbs a,.breadcrumbs span,.progress li,.progress span,.header-actions,.header-actions a,.header-actions span){font-size:12px!important}

/* Remaining sub-12px text found in the 2026-10-29 re-audit (all raised to 12px). */
html body :is(.pf-card-count,.pf-category-kicker,.pf-filter,.pfp-kicker,.pf-answer-kicker,.pf-category-eyebrow,.pfh-eyebrow,.pfh-orientation-label,.pfc-eyebrow,.pf-detail-eyebrow,.pf-service-eyebrow,.panel-top,.trade-kicker,.about-label,.pf-signup-label,.hp-network-node,.change-plan,.text-button){font-size:12px!important}
html body :is(.hp-studio-data>span,.hp-studio-data>p,.hp-visual-link>span,.hp-guide-shortcuts>a,.hp-wrap>a>small,.hp-wrap>a>p,.pf-app-metrics>div>span,.pf-app-bottom>span,.hp-tools-heading>span,.hp-tools-grid>a>p,.pf-store-copy>small,.about-contact-links>a>small,.membership-pass-top>span,.membership-pass-tags>span,.membership-pass>small){font-size:12px!important}
html body :is(.pfc-rights-notice>strong,.pfc-rights-notice>p,.pfc-footer-grid>nav>h2){font-size:12px!important}
body[data-pf-design="commerce"] :is(.eyebrow,.page-intro p,.panel>form>label,.panel>p.lead,.login-links>a,.new-member>span,.new-member>a,.faq summary,.faq p,.order-summary>h2,.summary-price>span){font-size:12px!important}
body[data-pf-design="commerce"] :is(.panel>p.lead,.page-intro p,.faq p){font-size:14px!important;line-height:1.6}

