/* 공개 화면의 글자 역할은 이 파일에서 관리한다. 글꼴·색·폭은 빌더 설정을 따른다. */
:root {
 --pn-text-body:20px; --pn-text-ui:18px; --pn-text-note:16px;
 --pn-text-section:34px; --pn-text-card:24px;
}
:is(#pn-main,body[class^='page-'] :where(#main),.pn-global-header,.pn-site-footer) {
 font-family:var(--pn-font); font-weight:400; letter-spacing:-.015em;
}
:is(#pn-main,body[class^='page-'] :where(#main),.pn-global-header,.pn-site-footer) :is(h1,h2,h3,h4,h5,h6,a,button,input,select,textarea,summary,strong,b,em,small,span,p,li,dt,dd,figcaption,th,td,label,address) {
 font-family:var(--pn-font);
}
:is(#pn-main,body[class^='page-'] :where(#main)) {
 font-size:var(--pn-text-body); line-height:1.75;
}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(p,li,address) {
 font-size:var(--pn-text-body); font-weight:400; line-height:1.8;
 letter-spacing:-.015em; word-break:keep-all; overflow-wrap:anywhere;
}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(strong,b) {font-weight:600}
:is(#pn-main,body[class^='page-'] :where(#main)) h1 {
 font-size:clamp(40px,3.7vw,54px); font-weight:700; line-height:1.28; letter-spacing:-.035em;
 word-break:keep-all; overflow-wrap:anywhere;
}
:is(#pn-main,body[class^='page-'] :where(#main)) h1 em {font-weight:inherit}
:is(#pn-main,body[class^='page-'] :where(#main)) h2 {
 font-size:var(--pn-text-section); font-weight:700; line-height:1.4; letter-spacing:-.025em;
 word-break:keep-all; overflow-wrap:anywhere;
}
:is(#pn-main,body[class^='page-'] :where(#main)) h3 {
 font-size:var(--pn-text-card); font-weight:600; line-height:1.45; letter-spacing:-.02em;
 word-break:keep-all; overflow-wrap:anywhere;
}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(.button,.text-link,button,input,select,textarea,summary) {
 font-size:var(--pn-text-ui); line-height:1.55;
}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(.button,.text-link,button,summary) {font-weight:600}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(.button,.text-link) {min-height:48px}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(input,select,textarea) {font-weight:400}
:is(#pn-main,body[class^='page-'] :where(#main)) :is(small,figcaption) {font-size:var(--pn-text-note);line-height:1.65}
:is(#pn-main,body[class^='page-'] :where(#main)) .eyebrow {
 font-size:14px; font-weight:600; line-height:1.6; letter-spacing:.1em;
}
/* 헤더: 메뉴명과 설명을 구분하고, 배경색과 가로 열 설정을 유지한다. */
body .pn-global-header .pn-nav {gap:22px}
body .pn-global-header .pn-nav-links {gap:20px}
body .pn-global-header :is(.pn-nav-link,.pn-nav-group>summary,.pn-nav-member) {
 font-size:17px; font-weight:500; line-height:1.5; letter-spacing:-.02em;
}
body .pn-global-header .pn-nav-contact {font-size:17px;font-weight:600;min-height:42px;padding:9px 18px}
body .pn-global-header .pn-nav-member {display:inline-flex;align-items:center;min-height:44px}
body .pn-global-header .pn-nav-dropdown {
 width:calc(var(--pn-submenu-cols)*260px + 24px); padding:10px; gap:2px;
 border-color:#e1e7e4; border-radius:16px; box-shadow:0 12px 36px #17372b14,0 2px 6px #17372b08;
}
body .pn-global-header .pn-nav-dropdown a {padding:15px 16px;font-size:17px;line-height:1.55;font-weight:500;border-radius:9px}
body .pn-global-header .pn-nav-dropdown a>span {font-size:17px;font-weight:600;line-height:1.5;letter-spacing:-.015em}
body .pn-global-header .pn-nav-dropdown a>small {font-size:15px;font-weight:400;line-height:1.6;letter-spacing:-.015em;color:#5b6d65;margin-top:5px}
body .pn-global-header .pn-nav-dropdown a.pn-nav-third {font-size:16px;font-weight:500}
body .pn-global-header .pn-nav-dropdown a[aria-current=page]>span {color:var(--pn-accent)}
body.pn-nav-open #chat-fab {visibility:hidden;pointer-events:none}
@container pn-navigation (max-width:1180px) {
 body .pn-global-header :is(.pn-nav-link,.pn-nav-group>summary) {font-size:19px;font-weight:600;min-height:54px}
 body .pn-global-header .pn-nav-dropdown {width:auto;padding:6px;box-shadow:none;border:0}
 body .pn-global-header .pn-nav-dropdown a {padding:13px 14px}
 body .pn-global-header .pn-nav-dropdown a>span {font-size:18px}
 body .pn-global-header .pn-nav-dropdown a>small {font-size:15px}
}
/* 메인: 본문, 카드, 배포 메타데이터를 별도 크기로 구분한다. */
#pn-main.pn-home-clean {--muted:color-mix(in srgb,var(--ink),var(--pn-page-bg) 23%)}
#pn-main .pn-portal-copy h1 {font-size:clamp(40px,3.6vw,52px);line-height:1.3}
#pn-main .pn-portal-copy>p {margin-top:24px;line-height:1.85}
#pn-main :is(.button,.text-link,.pn-portal-guide,.pn-service-cta,.pn-round-more) {font-size:var(--pn-text-ui);font-weight:600;line-height:1.6;min-height:48px}
#pn-main .pn-portal-metrics>p {font-weight:600;font-size:19px}
#pn-main .pn-portal-metrics>small {font-size:16px;font-weight:400;line-height:1.7}
#pn-main .pn-portal-metrics dt {font-size:17px;font-weight:500}
#pn-main .pn-portal-metrics dt small {display:block;font-size:14px;font-weight:400;line-height:1.7;min-height:3.4em;word-break:keep-all;letter-spacing:-.01em}
#pn-main .pn-portal-metrics dd {font-weight:600;font-size:34px;line-height:1.25}
#pn-main .pn-portal-metrics dd span {font-size:18px;font-weight:500}
#pn-main .pn-portal-news-head h2 {font-size:26px}
#pn-main .pn-portal-news-head .text-link {font-size:17px}
#pn-main .pn-portal-news-card h3 {font-size:20px;line-height:1.5;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#pn-main .pn-portal-news-card p {font-size:18px;line-height:1.65}
#pn-main .pn-portal-news-card small {font-size:15px;line-height:1.6}
#pn-main :is(.course-level,.image-chip,.pn-feature-top>small,.pn-home-product-copy>small) {font-size:15px;font-weight:500;line-height:1.6}
#pn-main .pn-services-note {font-size:16px;line-height:1.7}
#pn-main :is(.pn-feature-link,.pn-feature-filters button,.pn-home-film-tabs button,.pn-home-play) {font-size:18px;font-weight:600}
#pn-main :is(.carousel-controls p,.pn-home-film-caption) {font-size:18px}
#pn-main .pn-feature-filters {flex-wrap:wrap;gap:10px}
#pn-main .pn-feature-filters button {min-height:46px}
#pn-main :is(.pn-feature-card,.pn-service-card)>p {min-height:0}
#pn-main .pn-service-cover>span {font-size:15px;font-weight:500}
#pn-main .pn-services-controls>span {font-size:15px}
#pn-main .pn-services-controls button {width:44px;height:44px;font-size:23px}
#pn-main .pn-round-cover h2 {font-size:24px;font-weight:600;letter-spacing:-.02em}
#pn-main .pn-round-cover-copy>span {font-size:13px;font-weight:500}
#pn-main .pn-round-latest h3 {font-size:25px;line-height:1.45;font-weight:600}
#pn-main .pn-round-latest p {font-size:19px;line-height:1.75}
#pn-main .pn-round-release-meta {font-size:15px;font-weight:500}
#pn-main .pn-round-guide-copy>strong {font-size:21px;line-height:1.5;font-weight:600}
#pn-main .pn-round-guide-copy>span {font-size:18px;line-height:1.65;white-space:normal}
#pn-main .pn-round-guide-copy>small {font-size:15px;line-height:1.5}
#pn-main .pn-round-footer>a {font-size:16px;font-weight:500;min-height:44px}
#pn-main .operation-visual>span {font-size:17px;font-weight:500}
#pn-main .operation-brand small {font-size:15px}
#pn-main .pn-home-media-label {font-size:14px;line-height:1.6}
/* 회원 및 프렌즈: 오른쪽 빈 공간과 휴대폰 예시 잘림을 방지한다. */
#pn-main .pn-member-section {grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:48px;align-items:center}
#pn-main .pn-member-section :is(.member-visual,.section-copy) {min-width:0;max-width:none;width:100%}
#pn-main .pn-member-section .member-visual {height:380px;min-height:380px;margin:0;padding:20px 12px}
#pn-main .pn-member-section .section-copy>p:not(.eyebrow) {margin:16px 0 22px;max-width:none}
#pn-main .pn-member-section .check-list {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:22px 0 26px}
#pn-main .pn-member-section .check-list li {font-size:19px;line-height:1.75;min-width:0;align-items:flex-start}
#pn-main .pn-member-section .check-list li:before {flex-shrink:0;margin-top:3px}
#pn-main .pn-member-section .phone {position:absolute;top:50%;left:50%;margin:0;width:224px;min-height:0;padding:24px 16px 15px;transform:translate(-50%,-50%) rotate(-3deg) scale(.78);transform-origin:center}
#pn-main .pn-member-section .phone-brand {margin-bottom:14px}
#pn-main .pn-member-section .phone>p {font-size:14px;margin:0;line-height:1.5}
#pn-main .pn-member-section .phone>p strong {font-size:20px}
#pn-main .pn-member-section .phone-stamp {margin:12px 0;padding:12px}
#pn-main .pn-member-section .phone-stamp>div {margin:8px 0;font-size:22px}
#pn-main .pn-member-section .phone-stamp small {font-size:10px;line-height:1.5}
#pn-main .pn-member-section .phone-row {padding:7px 2px;font-size:12px;line-height:1.6}
#pn-main .pn-member-section .phone-qr {margin-top:12px;padding:9px 2px;font-size:12px;line-height:1.6}
#pn-main .family-section .family-picture {width:100%;max-width:none;max-height:none;min-width:0;aspect-ratio:16/9;justify-self:stretch}
#pn-main .family-section .family-picture img {display:block;width:100%;height:100%;object-fit:cover}
/* 서브페이지: 정보 표, 탭, 폼도 실제 읽는 크기로 맞춘다. */
body[class^='page-'] #main :is(th,td,label) {font-size:18px;line-height:1.75}
body[class^='page-'] #main :is(th,label) {font-weight:600}
body[class^='page-'] #main td {font-weight:400}
body[class^='page-'] #main :is(.pn26-subnav,.pn-products-nav,.pn-didim-nav,.pn-equipment-jump,.eq-nav,.season-tabs) :is(a,button) {
 font-size:18px;font-weight:500;line-height:1.55;min-height:48px;letter-spacing:-.015em;
}
body[class^='page-'] #main :is(.pn26-subnav,.pn-products-nav,.pn-didim-nav,.pn-equipment-jump,.eq-nav,.season-tabs) :is([aria-current=page],[aria-selected=true],.active) {font-weight:600}
body[class^='page-'] #main :is(.pn26-subnav,.pn-products-nav)>.wrap {gap:30px}
body[class^='page-'] #main :is(.pn-didim-nav,.pn-equipment-jump,.eq-nav) {flex-wrap:wrap;gap:12px 24px}
body[class^='page-'] #main :is(.pn-didim-nav,.pn-equipment-jump,.eq-nav) a {display:inline-flex;align-items:center}
body[class^='page-'] #main .pn27-points a {font-size:18px;font-weight:600;line-height:1.6;min-height:48px}
body[class^='page-'] #main .pagination a {width:44px;height:44px;font-size:17px;font-weight:500}
body[class^='page-'] #main :is(.course-level,.image-chip,.pn27-visual-caption) {font-size:15px;font-weight:500;line-height:1.6}
body[class^='page-'] #main .pn27-visual-caption b {font-size:18px;font-weight:600}
body[class^='page-'] #main .pn26-sticky-cta {font-size:17px;font-weight:600;min-height:48px}
body[class^='page-'] #main :is(dt,dd) {font-size:17px;line-height:1.7}
body[class^='page-'] #main dt {font-weight:500}
body[class^='page-'] #main dd {font-weight:400}
body[class^='page-'] #main :is(.value-card>span,.pn-didim-promise>span,.pn-didim-contact>span,.pn-product-card-body>span,.pn-products-trust>span,.pn-products-visual-caption>span,.pn-products-mini span,.eq-sensor-product-top>span,.eq-sensor-product-top>strong,.eq-sensor-caption span,.eq-sensor-measures span,.eq-tee-intro>span,.eq-tee-badge span,.eq-sim-label,.eq-lumen-title>span,.eq-product-image>span,.pn-kiosk-photo>span,.pn27-points article>span,.pn26-card>span,.pn26-support-grid span,.pn-as-tag,.pn-support-routes a>span,.store-label>.tag,.pn-release-article-meta :is(span,time)) {
 font-size:15px;font-weight:500;line-height:1.65;letter-spacing:.015em;
}
body[class^='page-'] #main :is(.eq-kicker,.pn-products-note) {font-size:15px!important;line-height:1.75!important;letter-spacing:.015em!important}
body[class^='page-'] #main :is(.pn-product-card-body>div>span,.pn26-zoom>span,.gallery-photo>span) {font-size:16px;font-weight:500;line-height:1.6}
body[class^='page-'] #main :is(.pn-products-trust>a,.eq-sensor-product>a,.eq-tee-actions>a,.eq-product-body>a,.eq-component-link,.pn-products-next-links>a,.pn-release-help>a,.pn-as-footer a) {font-size:17px;font-weight:600;line-height:1.65;min-height:44px}
body[class^='page-'] #main .pn-support-routes b {font-size:18px;line-height:1.6;font-weight:600}
body[class^='page-'] #main .faq summary {font-size:var(--pn-text-ui);font-weight:600;line-height:1.6}
body[class^='page-'] #main .pn-products-trust {flex-wrap:wrap;gap:10px 20px}
body[class^='page-'] #main :is(.pn-product-card-body,.pn-kiosk-copy,.pn-products-next,.eq-product-body,.eq-sensor-product) p:not(.eyebrow) {color:#526660}
/* 도식의 위치 버튼은 설명 문구 길이에 영향받지 않도록 그림 행에 고정한다. */
body.page-equipment #main .pn-equipment-diagram {position:relative}
body.page-equipment #main .pn-equipment-diagram>svg {display:block;width:100%;height:auto}
body.page-equipment #main .pn-equipment-diagram>.hotspot {width:44px;height:44px;font-size:16px;font-weight:600;line-height:1;display:grid;place-items:center}
body.page-equipment #main .booth-visual>p {font-size:16px;line-height:1.75;margin-top:18px}
/* 독립 회원 라운지와 로그인 화면에서도 선택한 서체와 실제 굵기를 사용한다. */
body.page-member .app-shell,body.page-member .app-shell :is(h1,h2,h3,p,a,button,input,select,textarea,label,small,strong,span,dt,dd) {font-family:var(--pn-font)}
body.page-member .welcome h1 {font-size:38px;font-weight:700;line-height:1.35;letter-spacing:-.035em}
body.page-member .welcome>p:not(.eyebrow) {font-size:var(--pn-text-body);line-height:1.8;font-weight:400}
body.page-member .welcome .eyebrow {font-size:14px;font-weight:600}
body.page-member .welcome-art>span {font-size:15px}
body.page-member .welcome :is(.button,.text-link) {font-size:18px;font-weight:600;min-height:50px}
body.page-member .guest-features strong {font-size:17px;font-weight:500}
body.page-member .member-brand>span {font-size:15px;font-weight:500}
body.page-member .bottom-nav .nav-item {font-size:16px;font-weight:500;line-height:1.4;min-height:60px}
body.page-member .bottom-nav .nav-item.active {font-weight:600}
body.page-member .bottom-nav .nav-item>span:last-child {font-size:inherit;font-weight:inherit}
body:has(.pn-auth-offset) :is(.rb_login,.rb_member,.mbskin),body:has(.pn-auth-offset) :is(.rb_login,.rb_member,.mbskin) :is(h1,h2,h3,p,a,button,input,label,span,b,strong) {font-family:var(--pn-font)}
body:has(.pn-auth-offset) :is(.rb_login,.rb_member,.mbskin) :is(label,.btn_find) {font-size:16px;font-weight:500;line-height:1.6}
body:has(.pn-auth-offset) :is(.rb_login,.rb_member,.mbskin) :is(input:not([type=checkbox]):not([type=radio]),button[type=submit],.btn_submit) {font-size:18px;min-height:50px}
body:has(.pn-auth-offset) :is(.rb_login,.rb_member,.mbskin) :is(b,strong,button[type=submit],.btn_submit) {font-weight:600}
/* 푸터: 홈·서브 동일한 글꼴/굵기. 모바일은 펼침 메뉴와 충분한 터치 영역. */
body .pn-site-footer.pn-footer-responsive {padding:36px 0 28px;color:var(--pn-page-ink);background:var(--pn-page-bg);border-top:1px solid color-mix(in srgb,var(--pn-page-ink),transparent 88%)}
body .pn-site-footer.pn-footer-responsive .pn-footer-grid {padding-block:10px 24px;gap:40px;grid-template-columns:240px minmax(0,1fr)}
body .pn-site-footer.pn-footer-responsive .pn-footer-sitemap {gap:20px;grid-template-columns:repeat(6,minmax(0,1fr))}
body .pn-site-footer.pn-footer-responsive .pn-footer-group {min-width:0}
body .pn-site-footer.pn-footer-responsive .pn-footer-category {display:block;font-size:18px;font-weight:600;line-height:1.6;margin:0 0 16px;color:inherit}
body .pn-site-footer.pn-footer-responsive .pn-footer-links a {display:block;font-size:17px;font-weight:400;line-height:1.7;margin:0 0 12px;color:color-mix(in srgb,var(--pn-page-ink),var(--pn-page-bg) 20%);word-break:keep-all;overflow-wrap:anywhere}
body .pn-site-footer.pn-footer-responsive .pn-footer-links a:hover {color:var(--pn-accent);text-decoration:underline;text-underline-offset:4px}
body .pn-site-footer.pn-footer-responsive .pn-footer-identity>p {font-size:18px;font-weight:400;line-height:1.8;margin:16px 0 20px}
body .pn-site-footer.pn-footer-responsive .pn-footer-service {max-width:none;padding:18px;background:color-mix(in srgb,var(--pn-accent),var(--pn-page-bg) 96%);color:inherit}
body .pn-site-footer.pn-footer-responsive .pn-footer-service span {font-size:15px;font-weight:400;color:inherit}
body .pn-site-footer.pn-footer-responsive .pn-footer-service strong {font-size:22px;font-weight:600;color:inherit}
body .pn-site-footer.pn-footer-responsive .pn-footer-service small {font-size:15px;font-weight:500;color:inherit}
body .pn-site-footer.pn-footer-responsive .pn-footer-base {font-size:16px;font-weight:400;line-height:1.8;margin-top:18px;padding-top:22px}
body .pn-site-footer.pn-footer-responsive .pn-footer-base>div {gap:12px 20px}
body .pn-site-footer.pn-footer-responsive .pn-footer-credit {font-size:15px;font-weight:400;line-height:1.8;color:color-mix(in srgb,var(--pn-page-ink),var(--pn-page-bg) 24%)}
.pn-footer-responsive [hidden] {display:none!important}
.pn-footer-responsive :is(a,button):focus-visible {outline:2px solid var(--pn-accent);outline-offset:3px}
@media(max-width:1199px) {
 body .pn-site-footer.pn-footer-responsive .pn-footer-sitemap {grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 #pn-main .pn-round-footer {gap:18px}
}
@media(max-width:1000px) {
 #pn-main .pn-member-section {grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:30px}
 #pn-main .pn-member-section .check-list {grid-template-columns:1fr;gap:10px}
 #pn-main .pn-member-section .chip-one {left:10px;top:20px}
 #pn-main .pn-member-section .chip-two {right:10px;bottom:20px}
}
@media(max-width:800px) {
 #pn-main .pn-member-section {grid-template-columns:1fr;gap:28px}
 #pn-main .pn-member-section .check-list {grid-template-columns:repeat(2,minmax(0,1fr))}
 #pn-main .family-section>.wrap {grid-template-columns:1fr;gap:24px}
}
@media(max-width:767px) {
 :root {--pn-text-body:18px;--pn-text-ui:17px;--pn-text-note:15px;--pn-text-section:30px;--pn-text-card:23px}
 :is(#pn-main,body[class^='page-'] :where(#main)) h1 {font-size:38px;line-height:1.3}
 :is(#pn-main,body[class^='page-'] :where(#main)) .eyebrow {font-size:13px}
 body[class^='page-'] #main :is(th,td,label) {font-size:17px}
 body[class^='page-'] #main .course-grid {grid-template-columns:1fr}
 body[class^='page-'] #main :is(.pn26-subnav,.pn-products-nav,.pn-didim-nav,.pn-equipment-jump,.eq-nav,.season-tabs) :is(a,button) {font-size:17px;min-height:48px}
 body[class^='page-'] #main :is(.pn26-subnav,.pn-products-nav)>.wrap {justify-content:flex-start;gap:24px}
 body[class^='page-'] #main .pn27-visual-caption {flex-wrap:wrap;font-size:14px;gap:8px}
 body .pn-site-footer.pn-footer-responsive {padding:26px 0 90px}
 body .pn-site-footer.pn-footer-responsive>.wrap {width:100%;max-width:calc(100% - 40px)}
 body .pn-site-footer.pn-footer-responsive .pn-footer-grid {grid-template-columns:1fr;gap:24px;padding:0}
 body .pn-site-footer.pn-footer-responsive .pn-footer-identity>a:first-child {width:170px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-identity>p {margin:14px 0 18px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-service {padding:16px 18px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-service strong {font-size:22px;margin-block:4px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-sitemap {display:block;border-top:1px solid color-mix(in srgb,var(--pn-page-ink),transparent 88%)}
 body .pn-site-footer.pn-footer-responsive .pn-footer-group {display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--pn-page-ink),transparent 88%)}
 body .pn-site-footer.pn-footer-responsive .pn-footer-category {display:flex;align-items:center;min-height:54px;margin:0;padding:10px 0}
 .pn-footer-responsive .pn-footer-toggle {display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-size:24px;cursor:pointer}
 body .pn-site-footer.pn-footer-responsive .pn-footer-links {grid-column:1/-1;padding:0 0 12px 12px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-links a {font-size:17px;line-height:1.65;min-height:44px;padding:9px 0;margin:0}
 body .pn-site-footer.pn-footer-responsive .pn-footer-base {align-items:flex-start;flex-direction:column;margin-top:24px;gap:14px;padding-top:20px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-base>div {gap:4px 20px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-base a {display:inline-flex;align-items:center;min-height:44px;font-size:16px}
 body .pn-site-footer.pn-footer-responsive .pn-footer-credit {margin-top:18px!important}
}
@media(max-width:600px) {
 #pn-main .pn-portal-copy h1 {font-size:38px}
 #pn-main .pn-portal-actions .button {padding:13px 10px;min-height:52px}
 #pn-main .pn-portal-metrics>p {font-size:18px}
 #pn-main .pn-portal-metrics>small {font-size:15px}
 #pn-main .pn-portal-metrics dt {font-size:16px}
 #pn-main .pn-portal-metrics dt small {font-size:13px;min-height:0}
 #pn-main .pn-portal-metrics dl {grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 #pn-main .pn-portal-metrics dd {font-size:32px}
 #pn-main .pn-feature-grid,#pn-main .pn-home-product-grid {grid-template-columns:1fr}
 #pn-main .pn-home-product-image {aspect-ratio:2.2}
 #pn-main .pn-home-product-copy {padding:21px}
 #pn-main .pn-feature-card {padding:23px}
 #pn-main .pn-feature-filters button {font-size:17px;padding:10px 14px}
 #pn-main .pn-feature-link {font-size:17px}
 #pn-main .pn-service-cta {padding:12px 18px}
 #pn-main .pn-portal-news-head {align-items:flex-start;flex-wrap:wrap;gap:8px}
 #pn-main .pn-portal-news-head h2 {font-size:25px}
 #pn-main .pn-portal-news-head .text-link {font-size:16px;min-height:44px}
 #pn-main .pn-portal-news-card {align-items:flex-start;padding:20px 16px}
 #pn-main .pn-portal-news-thumb {flex-basis:66px;height:66px}
 #pn-main .pn-portal-news-card h3 {font-size:20px}
 #pn-main .pn-portal-news-card p {font-size:17px}
 #pn-main .pn-portal-news-card small {font-size:14px}
 #pn-main .pn-member-section .check-list {grid-template-columns:1fr;gap:13px}
 #pn-main .pn-member-section .check-list li {font-size:18px}
 #pn-main .pn-member-section .member-visual {height:360px;min-height:360px}
 #pn-main .pn-member-section .phone {transform:translate(-50%,-50%) rotate(-3deg) scale(.72)}
 #pn-main .pn-member-section .floating-chip {font-size:12px;padding:8px 11px}
 #pn-main .pn-member-section .section-copy>p:not(.eyebrow) {margin-bottom:18px}
 #pn-main .pn-round-cover h2 {font-size:22px}
 #pn-main .pn-round-cover-copy>span {font-size:12px}
 #pn-main .pn-round-latest h3 {font-size:23px}
 #pn-main .pn-round-latest p {font-size:18px}
 #pn-main .pn-round-guide-copy>span {font-size:17px}
 #pn-main .pn-round-guide-copy>strong {font-size:20px}
 #pn-main .pn-round-guide-copy>small {font-size:14px}
 #pn-main .pn-round-footer {gap:8px 14px;justify-content:flex-start}
 #pn-main .pn-home-film-tabs button {font-size:16px}
}
@media(min-width:380px) and (max-width:600px) {
 #pn-main .pn-portal-metrics dl {grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}
 #pn-main .pn-portal-metrics dt small {min-height:3.4em}
}
@media(max-width:360px) {
 #pn-main .pn-portal-actions .button-row {grid-template-columns:1fr}
 #pn-main .pn-portal-copy h1,body[class^='page-'] #main h1 {font-size:34px}
 #pn-main .pn-portal-news-thumb {display:none}
 #pn-main .pn-round-latest h3 {font-size:22px}
 body.page-member .welcome h1 {font-size:33px}
 body.page-member .member-brand>span {font-size:14px}
}
