:root{--fp-menu-image-size:80px}

/* FactorPrint CMS 1.2.3: theme.public.min.css */
/* FactorPrint CMS 1.0.22 — public-only CSS Snapshot 2026; generated from theme.css. */
@layer reset,tokens,base,components,utilities;@layer reset{*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input,textarea,select{font:inherit}img{max-width:100%;height:auto}a{color:inherit}}@layer tokens{:root{color-scheme:light;--fp-navy:#232b39;--fp-deep:#151d29;--fp-blue:#1685bb;--fp-blue-dark:#086b9a;--fp-surface:#fff;--fp-canvas:#f4f7fa;--fp-line:#dce3ea;--fp-text:#253241;--fp-muted:#728195;--fp-danger:#b53140;--fp-shadow:0 14px 34px rgb(27 43 63 / 13%);--fp-radius:10px;--fp-radius-sm:6px;--fp-focus:0 0 0 3px rgb(22 133 187 / 20%);--fp-space:clamp(16px,2.4vw,32px);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}}@layer base{body{background:var(--fp-canvas);color:var(--fp-text);font-size:15px;line-height:1.5}h1,h2,h3{line-height:1.22;margin:0 0 15px}h1{font-size:clamp(24px,3vw,34px)}h2{font-size:22px}h3{font-size:17px}p{margin:0 0 13px}button,a,input,select,textarea{transition:border-color .15s,background .15s,box-shadow .15s}a{text-decoration:none;color:var(--fp-blue-dark)}a:hover{text-decoration:underline}button{cursor:pointer}input:not([type="checkbox"]),textarea,select{width:100%;min-height:42px;border:1px solid var(--fp-line);border-radius:var(--fp-radius-sm);padding:9px 12px;background:#fff;color:var(--fp-text)}textarea{min-height:92px;resize:vertical}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--fp-blue);outline-offset:2px}label{display:grid;gap:6px;font-size:13px;font-weight:600;margin-bottom:14px}code,pre{background:#eff3f7;border-radius:4px;padding:2px 5px;overflow-wrap:anywhere}pre{display:block;white-space:pre-wrap;padding:14px}.container{width:min(1200px,calc(100% - 36px));margin-inline:auto}.muted{color:var(--fp-muted);font-size:13px}.wide{width:100%}}@layer components{.button{background:var(--fp-blue);color:#fff!important;border:1px solid var(--fp-blue);border-radius:7px;padding:10px 16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none!important;min-height:40px}.button:hover{background:var(--fp-blue-dark)}.button-muted{background:#f1f5f8!important;color:var(--fp-text)!important;border-color:var(--fp-line)!important}.button-danger{background:#fff!important;color:var(--fp-danger)!important;border-color:#edcbd0!important}.panel{background:var(--fp-surface);border:1px solid var(--fp-line);border-radius:var(--fp-radius);padding:22px;margin-bottom:18px;min-width:0}.panel h2{font-size:17px}.notice{border:1px solid #c4e7d9;background:#f0faf5;border-radius:7px;padding:12px;color:#266448;font-size:13px}.notice-error{background:#fff1f2;border-color:#f8bdc4;color:var(--fp-danger)}.table-scroll{overflow:auto;width:100%}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:12px 13px;border-bottom:1px solid var(--fp-line);text-align:left;vertical-align:top}th{background:#f7f9fb;color:#526478;font-weight:650}.brand{font-weight:850;letter-spacing:-.04em;color:#f9fbff;font-size:24px}.brand span{color:#46add6}.brand small{font-size:12px;letter-spacing:0;color:#9fb2c5}.admin-sidebar nav a,.sidebar-logout{display:block;width:100%;color:#d7e4ee;padding:11px 13px;border-radius:7px;background:none;border:0;text-align:left;text-decoration:none}.admin-sidebar nav a:hover,.sidebar-logout:hover{background:#344255;color:#fff}.sidebar-logout{margin-top:auto}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stat-grid .panel{display:grid;gap:8px}.stat-grid .panel span{color:var(--fp-muted)}.stat-grid .panel strong{font-size:35px}.toolbar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}.toolbar form{display:flex;gap:8px;min-width:280px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 18px}.panel-title{display:flex;justify-content:space-between;align-items:start;gap:20px}.checkline{display:flex;align-items:center;gap:8px}.checkline input{width:auto}.menu-item-editor{padding:12px;border:1px solid var(--fp-line);border-radius:8px;margin-bottom:10px}.menu-item-editor summary{cursor:pointer;font-weight:600;display:flex;justify-content:space-between}.menu-item-editor form{padding-top:15px}.menu-item-editor form+form{margin-top:8px}.top-stripe{height:5px;background:var(--fp-deep)}.site-header{position:relative;z-index:10;background:white}.site-head-inner{width:min(1250px,calc(100% - 36px));min-height:93px;margin:auto;display:flex;align-items:center;gap:30px;justify-content:space-between}.site-logo{color:#293949;font-size:31px;font-weight:850;letter-spacing:-.055em;text-decoration:none!important}.site-logo strong{color:var(--fp-blue)}.site-contact{display:flex;gap:24px;color:var(--fp-muted);font-size:13px}.site-nav{background:var(--fp-navy);color:#eff6fb}.nav-inner{position:relative;width:min(1250px,calc(100% - 22px));margin:auto;display:flex;align-items:stretch;gap:0}.nav-entry{position:relative}.nav-entry:has(>.nav-grid){position:static}.nav-entry-head{display:flex;align-items:center}.nav-entry-head>a{padding:16px 12px;color:inherit;text-transform:uppercase;font-size:12px;font-weight:700;letter-spacing:.01em;white-space:nowrap;text-decoration:none}.nav-entry:hover .nav-entry-head,.nav-entry:focus-within .nav-entry-head,.nav-entry.is-open .nav-entry-head{background:#3c4a5b}.nav-expand{border:0;background:none;color:inherit;padding:10px 7px}.nav-panel{display:none;position:absolute;top:100%;left:0;min-width:290px;max-width:calc(100vw - 32px);background:#fff;color:var(--fp-text);border:1px solid var(--fp-line);border-radius:0 0 10px 10px;box-shadow:var(--fp-shadow);padding:22px}.nav-entry:hover>.nav-panel,.nav-entry:focus-within>.nav-panel,.nav-entry.is-open>.nav-panel{display:grid}.nav-panel.nav-grid{width:max-content;grid-template-columns:repeat(var(--menu-cols),minmax(130px,155px));gap:18px 14px}.nav-panel.nav-list{min-width:270px;padding:10px}.nav-child{color:var(--fp-text);font-size:13px;text-align:center;padding:8px 5px;border-radius:6px;min-height:40px}.nav-child:hover{background:#eff6fb;text-decoration:none}.nav-child img{width:100%;height:86px;object-fit:contain;display:block;margin-bottom:5px}.nav-list .nav-child{text-align:left;padding:10px 14px}.language-picker{margin-left:auto;display:flex;align-items:center;gap:11px;font-size:13px}.language-picker a{color:#fff}.site-menu-trigger{display:none}.site-main{min-height:55vh;background:#fff}.page-wrap{padding-block:32px 55px}.page-heading{padding:15px 0 25px}.site-footer{background:#273342;color:#ebf1f6;padding:36px 0}.site-footer p{font-size:13px;color:#abbdd0;margin-top:10px}.content-block{margin:0 0 26px}.content-block figure{margin:0}.content-block figcaption{color:var(--fp-muted);font-size:12px;margin-top:6px}.content-block .richtext{max-width:100%;overflow-wrap:anywhere}.richtext p{margin-bottom:10px}.fp-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}.fp-gallery img,.fp-carousel img{width:100%;height:180px;object-fit:cover;border-radius:7px}.fp-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:15px}.fp-carousel figure{flex:0 0 min(280px,80vw);scroll-snap-align:start}.carousel-controls{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.carousel-controls button{padding:6px 15px;border:1px solid var(--fp-line);background:#fff;border-radius:6px;font-size:22px}.fp-tabs [role=tablist]{display:flex;gap:8px;border-bottom:1px solid var(--fp-line);flex-wrap:wrap}.fp-tabs [role=tab]{padding:10px 15px;border:0;background:#f3f6f8;border-radius:7px 7px 0 0}.fp-tabs [role=tab][aria-selected=true]{background:var(--fp-blue);color:white}.fp-tabs [role=tabpanel]{padding:20px 5px}.fp-accordion details{border-bottom:1px solid var(--fp-line);padding:15px 10px}.fp-accordion summary{cursor:pointer;font-weight:600}.fp-accordion details>div{padding:15px}.fp-modal{border:0;border-radius:12px;padding:28px;width:min(780px,calc(100% - 28px));max-height:85vh;box-shadow:var(--fp-shadow)}.fp-modal::backdrop{background:#192631ae}.fp-modal-head{display:flex;justify-content:space-between;gap:18px}.fp-modal-head button{border:0;background:none;font-size:28px}.form-pending{background:#f8fafb;border:1px dashed #adbecb;border-radius:8px;padding:16px;color:var(--fp-muted)}}@layer utilities{[hidden]{display:none!important}@media (max-width:1100px){.nav-entry-head>a{padding:14px 8px;font-size:11px}.nav-panel.nav-grid{grid-template-columns:repeat(min(4,var(--menu-cols)),minmax(115px,1fr))}.site-contact{gap:12px}}@media (max-width:1366px){.sidebar-logout{margin:0}.site-contact{display:none}.site-menu-trigger{display:block;background:var(--fp-navy);border:0;color:white;border-radius:7px;padding:10px 14px}.site-head-inner{min-height:78px}.site-nav{display:none}.site-nav.nav-mobile-open{display:block}.nav-inner{display:block;width:100%}.nav-entry-head{justify-content:space-between;padding-inline:14px}.nav-entry-head>a{font-size:13px;padding:14px 0}.nav-expand{font-size:19px;padding:10px 19px}.nav-panel{position:static;width:100%!important;max-width:100%;box-shadow:none;border-radius:0;display:none!important}.nav-entry.is-open>.nav-panel{display:grid!important}.nav-panel.nav-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:13px}.nav-panel.nav-list{grid-template-columns:1fr}.nav-child img{height:70px}.language-picker{padding:14px}}@media (max-width:580px){.stat-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.panel{padding:16px}.toolbar form{width:100%;min-width:0}.nav-panel.nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-logo{font-size:25px}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}}@layer components{.fp-inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.fp-inline-form label{flex:1;min-width:220px}.fp-media-detail fieldset,.panel fieldset{border:1px solid var(--fp-line);border-radius:7px;margin:12px 0;padding:10px 16px}}@layer components{.fp-staging-actions{display:flex;align-items:center;gap:15px;font-size:14px}.fp-staging-main{min-height:65vh;display:flex;align-items:center;background:radial-gradient(circle at 85% 20%,#e9f5fc 0,transparent 48%),#fff}.fp-staging-hero{max-width:760px;padding:clamp(45px,7vw,105px) 0}.fp-staging-hero h1{font-size:clamp(34px,5vw,62px);letter-spacing:-.04em;color:var(--fp-deep);margin:14px 0 20px}.fp-staging-hero>p{font-size:clamp(16px,1.8vw,20px);color:#526476;max-width:650px}.fp-staging-eyebrow{display:inline-block;letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700;color:var(--fp-blue-dark)}.fp-staging-hero .fp-staging-note{font-size:14px;color:#738393;max-width:590px;margin-top:25px}.fp-staging-links{display:flex;gap:12px;margin-top:24px}}@layer components{.fp-rich-editor{min-height:260px!important;resize:vertical;font:14px/1.5 ui-monospace,monospace}.fp-editor-fallback{border-color:var(--fp-blue);background:#f9fcff}.fp-html-content{line-height:1.55;overflow-wrap:anywhere}.fp-html-content img{max-width:100%;height:auto}.fp-html-content table{border-collapse:collapse;width:100%}.fp-html-content a{text-decoration:underline}.fp-html-content ul,.fp-html-content ol{margin:0 0 1rem;padding-inline-start:1.6rem}.fp-html-content blockquote{border-left:3px solid var(--fp-blue);margin:1rem 0;padding:8px 16px;background:var(--fp-canvas)}.fp-html-content pre{white-space:pre-wrap}}@layer components{.site-header{isolation:isolate}.site-head-inner{gap:clamp(12px,2.5vw,36px)}.site-contact i{color:var(--fp-blue);margin-inline-end:7px}.site-nav{background:#152b36}.nav-inner{width:min(1300px,calc(100% - 24px))}.nav-entry{position:relative}.nav-entry:has(>.nav-grid){position:static}.nav-entry-head>a{display:inline-flex;align-items:center;gap:7px;font-size:12px;white-space:nowrap;padding:17px 10px}.nav-entry-head>a i{font-size:13px;opacity:.85}.nav-expand{min-height:44px;min-width:30px;display:grid;place-items:center}.nav-expand i{font-size:10px;transition:transform .18s}.nav-entry.is-open .nav-expand i{transform:rotate(180deg)}.nav-entry:has(>.nav-grid)>.nav-panel{left:0}.nav-panel{z-index:50;border:1px solid #dce3ea;box-shadow:0 22px 45px #142d3c22}.nav-panel.nav-grid{grid-template-columns:repeat(var(--menu-cols),minmax(0,1fr));width:min(1120px,calc(100vw - 42px));max-width:100%;gap:12px 15px;padding:22px 28px;max-height:min(75vh,660px);overflow:auto}.nav-panel.nav-list{max-height:min(75vh,660px);overflow:auto}.nav-child{display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:start;text-align:center;min-width:0;padding:9px 6px}.nav-child-art{display:grid;place-items:center;width:100%;height:92px;min-width:0;color:#1685bb}.nav-child-art img{width:100%;height:88px;margin:0;object-fit:contain}.nav-child-art>i{font-size:32px}.nav-child-art>.nav-child-placeholder{opacity:.35;font-size:24px}.nav-child-copy{display:grid;gap:3px;min-width:0;max-width:100%}.nav-child-title{font-size:13px;font-weight:600;line-height:1.32;overflow-wrap:anywhere}.nav-child-description{font-size:11px;color:var(--fp-muted);line-height:1.35;overflow-wrap:anywhere}.nav-panel.nav-list .nav-child{flex-direction:row;text-align:left;align-items:center;gap:10px;min-height:44px}.nav-panel.nav-list .nav-list-icon{font-size:17px;min-width:24px;color:var(--fp-blue)}.language-picker a[aria-current]{font-weight:750;color:#fff}.fp-menu-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.fp-menu-preview-frame{display:block;width:100%;height:370px;border:1px solid var(--fp-line);border-radius:8px;background:#f6f8fb}.fp-menu-preview-content{min-height:260px;padding:22px 10px}.fp-menu-tree{display:grid;gap:10px}.fp-menu-group{border:1px solid var(--fp-line);border-radius:7px;overflow:hidden}.fp-menu-group-title,.fp-menu-tree-child{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:10px 13px}.fp-menu-group-title{background:#f2f6f8}.fp-menu-group-title>form,.fp-menu-tree-child>form{margin-left:auto;display:flex;gap:5px}.fp-menu-tree-child{border-top:1px solid var(--fp-line);padding-left:27px}.fp-move-button{background:#fff;border:1px solid var(--fp-line);border-radius:5px;min-width:34px;height:32px;font-weight:800}.fp-move-button:hover{background:#e5f4fb}}@layer utilities{@media (max-width:1100px){.nav-entry-head>a{padding:14px 8px;font-size:11px}.nav-panel.nav-grid{grid-template-columns:repeat(min(4,var(--menu-cols)),minmax(0,1fr));width:min(820px,calc(100vw - 26px))}}@media (max-width:1366px){.site-head-inner{min-height:74px;padding-right:105px}.site-header>.site-menu-trigger{position:absolute;top:23px;right:14px;display:inline-flex;align-items:center;gap:9px;z-index:5}.site-nav{display:none}.site-nav.nav-mobile-open{display:block}.nav-inner{display:block;width:100%}.nav-entry:has(>.nav-grid){position:relative}.nav-entry-head{padding:0 12px}.nav-entry-head>a{font-size:13px;white-space:normal;padding:14px 0;flex:1}.nav-expand{min-width:50px;min-height:48px}.nav-panel{position:static;display:none!important;width:100%!important;max-width:100%!important;max-height:none;overflow:visible;border:0;border-radius:0;box-shadow:none}.nav-entry.is-open>.nav-panel{display:grid!important}.nav-panel.nav-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px}.nav-child-art{height:68px}.nav-child-art img{height:65px}.nav-child-art>i{font-size:25px}.nav-panel.nav-list{padding:4px 12px 12px}.nav-child-title{font-size:12px}.fp-menu-preview-frame{height:460px}}@media (max-width:580px){.nav-panel.nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-menu-preview-frame{height:520px}}@media (hover:none){.nav-entry:hover:not(.is-open)>.nav-panel{display:none}}}@layer components{.fp-template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}.fp-template-card{display:flex;flex-direction:column;gap:8px;padding:22px;background:#fafcfe;border:1px solid var(--fp-line);border-radius:12px;min-height:215px}.fp-template-card h3{font-size:17px;margin:0}.fp-template-card p{font-size:13px;color:var(--fp-muted);line-height:1.55}.fp-template-card .muted{margin-top:auto}.fp-template-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:13px;color:var(--fp-blue-dark);background:#e2f3fc;font-size:21px;margin-bottom:6px}.fp-layout-picker{padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:end;background:#f2f8fc;border:1px solid #d5e9f5;border-radius:9px}.fp-layout-picker label{margin:0}.fp-layout-picker>a{margin-bottom:10px;font-size:13px}.fp-live-preview-panel{min-width:0}.fp-preview-toolbar{display:flex;align-items:center;gap:8px;margin:16px 0;flex-wrap:wrap}.fp-live-preview{display:block;width:100%;height:580px;border:1px solid var(--fp-line);border-radius:10px;background:white;transition:width .2s ease;max-width:100%;margin-inline:auto}.fp-live-preview.fp-live-preview-mobile{width:390px}.fp-preview-body{margin:0;background:#fff}.fp-preview-body .site-main{min-height:100%}.fp-page{--fp-page-section-space:clamp(24px,3.3vw,48px)}.fp-page>.content-block{margin-block-end:var(--fp-page-section-space)}.fp-page.fp-page-knowledge_article,.fp-page.fp-page-content_page,.fp-page.fp-page-knowledge_topic_archive{max-width:1100px}.fp-page.fp-page-knowledge_article>.block-rich_text,.fp-page.fp-page-content_page>.block-rich_text{max-width:900px}.fp-hero{background:linear-gradient(125deg,#e5f3f9 0%,#f5fafd 55%,#eaf5fb 100%);border:1px solid #d8eaf4;border-radius:18px;padding:clamp(26px,4.5vw,70px);display:grid;grid-template-columns:minmax(0,1fr);min-height:300px;align-items:center;gap:34px;overflow:hidden}.fp-hero-with-image{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.fp-hero h1{font-size:clamp(29px,4vw,55px);line-height:1.12;letter-spacing:-.035em;color:#153c57;max-width:760px;margin:0 0 22px}.fp-hero-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:750;font-size:12px;color:var(--fp-blue-dark);margin-bottom:17px}.fp-hero-description{font-size:clamp(15px,1.6vw,19px);color:#476477;max-width:620px;margin:0 0 25px;line-height:1.65}.fp-hero-visual{height:100%;min-height:200px;display:grid;place-items:center;overflow:hidden;border-radius:13px;background:transparent}.fp-hero-visual>img{width:100%;height:100%;max-height:470px;object-fit:cover;display:block}.fp-columns{display:grid;grid-template-columns:repeat(var(--fp-cols,2),minmax(0,1fr));gap:22px}.fp-column{min-width:0;padding:clamp(15px,2.8vw,32px);border:1px solid var(--fp-line);border-radius:12px;background:#fff;box-shadow:0 6px 22px rgb(26 47 67 / 4%)}.fp-column h3{font-size:20px;color:#184b69;margin:0 0 17px}.fp-column .content-block:last-child{margin-bottom:0}.fp-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,255px),1fr));gap:18px}.fp-feature-card{display:flex;flex-direction:column;gap:10px;color:var(--fp-text);background:#fff;border:1px solid var(--fp-line);border-radius:12px;padding:20px;text-decoration:none!important;min-width:0;transition:box-shadow .15s,transform .15s}a.fp-feature-card:hover{box-shadow:0 12px 24px #1c58751a;transform:translateY(-2px)}.fp-feature-card img{width:100%;height:175px;object-fit:contain;display:block}.fp-feature-card h3{font-size:19px;margin:0;color:#1c4d6d}.fp-feature-card p{font-size:14px;color:var(--fp-muted);margin:0;line-height:1.55}.fp-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#193d54;color:white;padding:clamp(24px,4.5vw,56px);border-radius:16px}.fp-cta h2{font-size:clamp(22px,2.8vw,33px);color:white;margin:0 0 8px}.fp-cta p{color:#d0e4ed;font-size:16px;margin:0;max-width:730px}.fp-cta>.button{white-space:nowrap;background:#fff;color:#184762!important;border-color:#fff}.fp-cta>.button:hover{background:#e2f3fc}}@layer utilities{@media (max-width:1024px){.fp-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-hero-with-image{grid-template-columns:1fr}.fp-hero-visual{max-height:340px}}@media (max-width:700px){.fp-layout-picker{grid-template-columns:1fr}.fp-layout-picker>a{margin:0}.fp-columns{grid-template-columns:1fr}.fp-hero{min-height:0;padding:27px 22px}.fp-hero h1{font-size:clamp(27px,7vw,40px)}.fp-cta{flex-direction:column;align-items:flex-start}.fp-feature-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.fp-feature-card,.fp-live-preview{transition:none}}}@layer components{.fp-design-nav{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:20px}.fp-design-form{max-width:1080px}.fp-design-form .form-grid{margin-block:10px 17px}.fp-design-form input[type=color]{min-height:48px;padding:5px;width:min(100%,240px)}.fp-site-logo-image{display:block;width:auto;max-width:230px;max-height:65px;object-fit:contain}.fp-global-slot{background:#f6fafc;border-block:1px solid #e0eaf0;padding:clamp(15px,2vw,28px) 0}.fp-global-slot .fp-shared-section>.content-block:last-child,.fp-footer-extra .fp-shared-section>.content-block:last-child{margin-bottom:0}.fp-shared-section{min-width:0}.fp-slot-before-footer{background:#f1f8fc}.fp-footer-extra{margin-top:22px;padding-top:20px;border-top:1px solid #627b8c}.site-nav{background:var(--fp-site-nav,var(--fp-navy))}.top-stripe{background:var(--fp-blue)}}@layer utilities{@media (max-width:700px){.fp-site-logo-image{max-width:175px;max-height:52px}.fp-design-nav>a{flex:0 0 auto}}}.fp-language-toggle{display:flex;align-items:center;gap:.65rem;line-height:1.5;padding:.6rem 0;font-weight:600}.fp-language-toggle input{width:1.2rem;height:1.2rem;flex:none;accent-color:var(--fp-blue,#1685bb)}@layer components{.fp-page{width:min(var(--fp-template-max,1200px),calc(100% - 36px));max-width:var(--fp-template-max,1200px);background:var(--fp-template-bg,#fff);--fp-page-section-space:var(--fp-template-space,36px)}.fp-page.fp-page-content_page,.fp-page.fp-page-knowledge_article,.fp-page.fp-page-knowledge_topic_archive{max-width:var(--fp-template-max,1200px)}.fp-page>.content-block{margin-bottom:var(--fp-template-space,36px)}.fp-page .fp-columns{gap:var(--fp-template-grid-gap,22px)}.fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-desktop,var(--fp-template-cols-desktop,3)),minmax(0,1fr));gap:var(--fp-template-grid-gap,22px)}.fp-page .fp-columns{grid-template-columns:repeat(var(--fp-block-cols-desktop,var(--fp-cols,2)),minmax(0,1fr))}.fp-visual-bg-white{background:#fff}.fp-visual-bg-muted{background:#eef4f7}.fp-visual-bg-brand{background:#e3f3fb}.fp-visual-bg-dark{background:#263747;color:#fff}.fp-visual-bg-dark h2,.fp-visual-bg-dark h3{color:#fff}.fp-visual-pad-small{padding:12px}.fp-visual-pad-medium{padding:26px}.fp-visual-pad-large{padding:clamp(32px,4vw,60px)}.fp-visual-pad-none{padding:0}.fp-visual-radius-small{border-radius:6px}.fp-visual-radius-medium{border-radius:14px}.fp-visual-radius-large{border-radius:26px}.fp-visual-radius-none{border-radius:0}.fp-visual-width-narrow{max-width:780px;margin-inline:auto}.fp-visual-width-full{width:100%}.fp-builder-appearance{margin:12px 0;border:1px solid var(--fp-line);padding:12px;border-radius:9px;background:#f9fcfe}.fp-builder-appearance summary{font-weight:700;cursor:pointer}.fp-builder-appearance .builder-field{margin:9px 0}.fp-font-list{display:grid;gap:12px;margin-top:17px}.fp-font-list>div{border-bottom:1px solid var(--fp-line);padding:8px 0}}@layer utilities{@media (max-width:1024px){.fp-page .fp-columns,.fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-tablet,var(--fp-template-cols-tablet,2)),minmax(0,1fr))}}@media (max-width:700px){.fp-page .fp-columns,.fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-mobile,var(--fp-template-cols-mobile,1)),minmax(0,1fr))}}}@layer components{.site-nav-backdrop, .site-nav-mobile-head{display:none}.public-body .site-main, .public-body .page-wrap, .public-body .fp-page,
  .public-body .content-block, .public-body .fp-column,
  .public-body .fp-hero > *, .public-body .fp-cta > *{min-inline-size:0}.public-body :is(.richtext,.fp-html-content,.fp-page,.fp-staging-hero,
                    .fp-column,.fp-feature-card,.fp-global-slot){overflow-wrap:anywhere}.public-body :is(.richtext,.fp-html-content) :is(img,video,iframe,svg,canvas,embed,object){max-inline-size:100%;height:auto}.public-body :is(.richtext,.fp-html-content) pre{white-space:pre-wrap;overflow-wrap:anywhere}.public-body :is(.richtext,.fp-html-content) table{max-inline-size:100%;overflow-wrap:anywhere}}@layer utilities{@media (max-width:1366px){html, body.public-body{max-inline-size:100%;overflow-x:clip}.public-body .container, .public-body .site-head-inner, .public-body .fp-page{min-inline-size:0;max-inline-size:100%}.site-header{z-index:100;isolation:isolate}.site-head-inner{gap:12px;min-inline-size:0}.site-logo{min-inline-size:0;overflow-wrap:anywhere}.site-header>.site-menu-trigger{z-index:2}.site-header>.site-nav{display:block;position:fixed;inset-block:0;inset-inline:auto 0;inline-size:min(390px,calc(100vw - 32px));max-inline-size:100vw;block-size:100vh;block-size:100dvh;overflow-y:auto;overflow-x:clip;overscroll-behavior:contain;background:var(--fp-site-nav,var(--fp-navy));transform:translate3d(100%,0,0);visibility:hidden;pointer-events:none;z-index:101;box-shadow:-14px 0 35px #06182440;transition:transform .24s ease,visibility 0s linear .24s}.site-header>.site-nav.nav-mobile-open{transform:translate3d(0,0,0);visibility:visible;pointer-events:auto;transition:transform .24s ease,visibility 0s linear 0s}.site-nav-backdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:100;background:#081827b3;border:0;border-radius:0;padding:0;margin:0;inline-size:100vw;block-size:100vh;block-size:100dvh;cursor:pointer}.site-nav-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-block-size:72px;padding:15px 18px;border-bottom:1px solid #ffffff29;color:#fff;font-size:18px;font-weight:700}.site-nav-close{display:grid;place-items:center;inline-size:44px;block-size:44px;flex:none;border:1px solid #ffffff55;border-radius:8px;background:#ffffff14;color:#fff;font-size:20px}.site-nav .nav-inner{display:flex;flex-direction:column;align-items:stretch;width:100%;padding-block:7px 24px}.site-nav .nav-entry{width:100%;min-width:0}.site-nav .nav-entry-head{gap:2px;border-bottom:1px solid #ffffff18}.site-nav .nav-entry-head>a{min-width:0;overflow-wrap:anywhere}.site-nav .nav-panel{min-width:0;max-width:100%!important;overflow-x:hidden}.site-nav .nav-child{min-width:0}.site-nav .nav-child-title{overflow-wrap:anywhere}.site-nav .language-picker{margin:8px 18px 0;padding:12px 0}html.fp-mobile-nav-open,html.fp-mobile-nav-open body{overflow:hidden;overscroll-behavior:none}.fp-staging-home .site-head-inner{min-width:0}.fp-staging-home .fp-staging-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end;gap:8px}.fp-staging-hero{min-width:0}.fp-staging-hero h1{overflow-wrap:anywhere}}@media (max-width:420px){.fp-staging-home .site-head-inner{flex-wrap:wrap;padding-block:12px;gap:8px}.fp-staging-home .site-logo{font-size:clamp(21px,6vw,25px)}.fp-staging-home .fp-staging-actions{width:100%;justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.site-header>.site-nav{transition:none}}}@layer utilities{.public-body .site-logo{min-width:0;max-width:min(100%,var(--fp-logo-width,230px));flex-shrink:1}.public-body .fp-site-logo-image{width:var(--fp-logo-width,230px);height:var(--fp-logo-height,65px);max-width:100%;max-height:200px;object-fit:contain}.public-body .site-main{color:var(--fp-text-color,#253241);font-size:var(--fp-text-size,16px)}.public-body .site-main h1{font-size:var(--fp-h1-size,42px)}.public-body .site-main h2{font-size:var(--fp-h2-size,32px)}.public-body .site-main h3{font-size:var(--fp-h3-size,26px)}.public-body .site-main h4{font-size:var(--fp-h4-size,22px)}.public-body .site-main h5{font-size:var(--fp-h5-size,18px)}.public-body .site-main h6{font-size:var(--fp-h6-size,16px)}.public-body .site-main :is(p,li,blockquote){font-size:inherit}.public-body .site-main a:link{color:var(--fp-link-color,#086b9a)}.public-body .site-main a:visited{color:var(--fp-link-visited-color,#68489a)}.public-body .site-main a:hover{color:var(--fp-link-hover-color,#1685bb)}.public-body .site-main a:active{color:var(--fp-link-active-color,#b53140)}@media (max-width:1366px){.public-body .site-logo{max-width:min(100%,var(--fp-logo-width,230px))}.public-body .fp-site-logo-image{max-width:100%;height:min(var(--fp-logo-height,65px),120px)}}}@layer components{.fp-admin-nav{display:grid;gap:8px}.fp-admin-group{min-width:0}.fp-admin-group summary{list-style:none;display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;color:#9fc0d3;font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;border-radius:8px}.fp-admin-group summary::-webkit-details-marker{display:none}.fp-admin-group summary>i:first-child{width:19px;text-align:center}.fp-admin-group summary:hover{background:#344255;color:#fff}.fp-group-chevron{margin-left:auto;font-size:10px;transition:transform .18s}.fp-admin-group[open] .fp-group-chevron{transform:rotate(180deg)}.fp-admin-group-links{padding:2px 0 5px 9px;display:grid;gap:2px}.sidebar-logout{display:flex;align-items:center;gap:10px;font-size:13px}.fp-content-toolbar form input{min-width:min(240px,70vw)}.fp-toolbar-buttons{display:flex;flex-wrap:wrap;gap:8px}.fp-content-table{min-width:920px}.fp-content-table th:last-child{min-width:212px}.fp-content-table .fp-col-handle{width:75px;text-align:center;padding-inline:5px}.fp-row-sort{display:flex;align-items:center;justify-content:center;gap:5px}.fp-sort-grip{cursor:grab;touch-action:none;color:#708ea0;padding:10px 3px;border-radius:5px;font-size:17px}.fp-sort-grip:active{cursor:grabbing}.fp-sort-steps{display:grid;gap:0}.fp-sort-steps button{width:25px;height:23px;background:none;border:0;color:#71879a;border-radius:4px;font-size:10px;display:grid;place-items:center}.fp-sort-steps button:hover{background:#e8f3f9;color:#086b9a}.fp-content-table tr.fp-row-dragging{opacity:.52;outline:2px dashed var(--fp-blue);background:#e6f5fc}.fp-content-title a{font-weight:700;color:#184967}.fp-content-title small,.fp-content-table .fp-qa-status{display:block;color:var(--fp-muted);margin-top:4px;font-size:11px}.fp-status{display:inline-block;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:700;white-space:nowrap}.fp-status-published{color:#27664a;background:#e9f8ef}.fp-status-draft{color:#84662d;background:#fff5db}.fp-icon-actions{display:flex;gap:4px;align-items:center;flex-wrap:nowrap}.fp-action-form{display:inline-flex;margin:0}.fp-icon-button{display:inline-grid;place-items:center;border:1px solid transparent;background:transparent;color:#466779;border-radius:7px;width:32px;height:34px;font-size:13px;cursor:pointer;padding:0;flex:none}.fp-icon-button:hover,.fp-icon-button:focus-visible{background:#e8f5fd;border-color:#b7def4;color:#04638f;text-decoration:none}.fp-icon-button.fp-icon-danger:hover{background:#fff0f1;border-color:#f1c7d0;color:#ad2435}.fp-list-feedback{margin:8px 0 13px;border-left:3px solid #55a4c2;padding:7px 11px;background:#f0f8fc;font-size:13px;color:#184e6d}.fp-list-feedback.fp-list-error{border-color:#b53140;background:#fff3f4;color:#922333}@media (max-width:900px){.fp-admin-group-links{padding-left:0}}@media (prefers-reduced-motion:reduce){.fp-group-chevron{transition:none}}}@layer utilities{@media (max-width:700px){.fp-content-toolbar form{min-width:0;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}.fp-content-toolbar form input{min-width:0;width:100%}.fp-content-toolbar .button{padding:8px 10px}.fp-content-list{padding:14px}.fp-toolbar-buttons{width:100%}}}.fp-maintenance-card{min-width:0;padding:1rem;border:1px solid var(--border,#d7dde4);border-radius:12px;background:var(--surface,#fff)}.fp-maintenance-card h3{margin:.1rem 0 .65rem}.fp-maintenance-card p{overflow-wrap:anywhere;font-size:.92rem}.fp-maintenance-progress{margin:1rem 0;padding:1rem;border-radius:10px;background:var(--surface-soft,#f6f7f9)}.fp-maintenance-progress progress{display:block;width:100%;height:1rem}.fp-maintenance-duplicate-group{padding:.8rem 0;border-top:1px solid #dde2e8}.fp-maintenance-duplicate-group ul{margin:.5rem 0;padding-left:1.5rem;overflow-wrap:anywhere}.admin-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border:1px solid #cad8e5;border-radius:10px;background:#fff;min-width:0;max-width:100%;transition:border-color .15s,box-shadow .15s}.admin-body :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{outline:2px solid transparent;border-color:var(--fp-admin-focus);box-shadow:0 0 0 3px rgb(38 126 206 / 13%)}.admin-body :is(input[type=checkbox],input[type=radio]){accent-color:var(--fp-admin-focus)}.admin-body :is(.fp-media-filters,.fp-content-toolbar,.fp-media-topbar){background:#fff;border:1px solid var(--fp-admin-border);border-radius:14px;padding:14px;box-shadow:0 3px 12px rgb(23 54 85 / 3%)}.public-body :is(.fp-hero-description,.fp-cta-description,.fp-feature-description) :is(p,ul,ol){margin:.35em 0 .8em}.public-body :is(.fp-hero-description,.fp-cta-description,.fp-feature-description) p:last-child{margin-bottom:0}.fp-service-body{margin:0;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 15% 16%,#e2f4ff 0,transparent 38%),linear-gradient(140deg,#f8fbfe,#e8f2fa);color:#17324b;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;position:relative;overflow-x:hidden}.fp-service-body:after{content:"";position:absolute;right:-170px;top:-220px;width:570px;height:570px;border:1px solid #a7d4ee;border-radius:50%;pointer-events:none}.fp-service-glow{position:absolute;width:44vw;height:44vw;min-width:330px;min-height:330px;left:-17vw;bottom:-24vw;border-radius:50%;background:#b9e4fa;filter:blur(90px);opacity:.45;pointer-events:none}.fp-service-main{position:relative;z-index:1;min-height:100vh;min-height:100dvh;width:min(1140px,100%);margin:auto;padding:32px clamp(16px,4vw,48px);display:flex;flex-direction:column;gap:40px;box-sizing:border-box}.fp-service-brand{display:flex;align-items:center;gap:13px;font-weight:850;font-size:18px;letter-spacing:-.03em}.fp-service-brand-mark{display:grid;place-items:center;background:#087ab3;color:white;width:42px;height:42px;border-radius:13px;box-shadow:0 8px 22px #127fb944}.fp-service-card{margin:auto 0;max-width:720px;padding:clamp(26px,5.5vw,68px);border:1px solid rgb(255 255 255 / 90%);background:rgb(255 255 255 / 84%);backdrop-filter:blur(12px);box-shadow:0 24px 80px #173e5618;border-radius:clamp(20px,3vw,32px)}.fp-service-icon{width:70px;height:70px;border-radius:20px;display:grid;place-items:center;color:#0876aa;background:#e2f2fc;font-size:30px;margin-bottom:28px}.fp-service-eyebrow{color:#1176a4;font-weight:850;font-size:12px;letter-spacing:.12em}.fp-service-card h1{max-width:680px;font-size:clamp(32px,5vw,56px);letter-spacing:-.05em;line-height:1.12;margin:16px 0 22px;color:#152d42}.fp-service-card p{font-size:clamp(16px,2vw,19px);line-height:1.75;color:#486075;margin:0;overflow-wrap:anywhere}.fp-service-actions{margin-top:32px;display:flex;align-items:center;flex-wrap:wrap;gap:20px}.fp-service-button{display:inline-flex;align-items:center;gap:10px;background:#0878ae;color:white;text-decoration:none;padding:13px 19px;border-radius:11px;font-weight:700}.fp-service-button:hover{background:#005d90;color:white}.fp-service-soon{font-size:14px;color:#58718b;font-weight:650;display:flex;align-items:center;gap:10px}.fp-service-soon span{width:9px;height:9px;border-radius:50%;background:#35a98c;box-shadow:0 0 0 5px #35a98c20}.fp-service-hint,.fp-service-footer{font-size:13px;color:#7690a3}.fp-service-footer{padding-top:20px}@media (max-width:700px){.fp-service-main{gap:28px}.fp-service-card{margin:auto 0}}html:has(>body.fp-service-body){overflow-x:clip}.fp-service-icon span{font-weight:900;font-size:26px;letter-spacing:-.04em}.fp-feature-card-link{display:inline-flex;margin-top:12px;font-weight:750;text-decoration:underline}.admin-body :is(.fp-builder-feature-card,.fp-builder-column,.fp-builder-images-grid .builder-item,.fp-builder-tabs-grid .builder-nested) :is(input,select,textarea,.tox,.builder-fields){max-width:100%;min-width:0;box-sizing:border-box}.admin-body :is(.fp-builder-feature-card,.fp-builder-column) .tox-tinymce{min-width:0;max-width:100%;width:100%}.admin-body :is(.fp-builder-feature-card,.fp-builder-column) .tox-editor-header{max-width:100%}.fp-kb-tabs{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:1.25rem}.fp-kb-locale{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1.2rem}.fp-kb-list{min-width:0}.fp-kb-edit-item{border:1px solid #dce5f0;border-radius:14px;margin-bottom:.75rem;padding:1rem;background:#fff}.fp-kb-edit-item summary{cursor:pointer;font-weight:650;display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.fp-kb-edit-item summary small{margin-left:auto;color:#65758a;font-weight:400}.fp-kb-editor{display:grid;gap:.7rem;margin-top:.85rem;min-width:0}.fp-kb-editor label{display:grid;gap:.3rem}.fp-kb-editor input,.fp-kb-editor select,.fp-kb-editor textarea{max-width:100%;width:100%}.fp-kb-editor .fp-inline-check{display:flex;align-items:center;gap:.5rem}.fp-kb-inline-check input,.fp-inline-check input{width:auto}.fp-kb-add{background:#f8faff;border:1px solid #dce5f0;border-radius:14px;padding:1rem;margin-top:0;align-content:start}.fp-kb-delete{margin-top:.65rem}.fp-kb-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.fp-kb-public{padding-block:2.2rem 5rem}.fp-kb-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;color:#667892;margin-bottom:1.4rem;font-size:.91rem}.fp-kb-breadcrumbs span[aria-current]{font-weight:600;color:#15283f}.fp-kb-breadcrumbs a{text-decoration:none}.fp-kb-hero{border-radius:22px;padding:clamp(1.7rem,4vw,3.4rem);background:linear-gradient(130deg,#e9f5ff,#fff 70%);border:1px solid #dceaf5;margin-bottom:2rem}.fp-kb-hero h1{margin:.35rem 0 .7rem}.fp-kb-hero p{max-width:65ch;margin:0;color:#50647a}.fp-kb-eyebrow{color:#006fa3;font-weight:700;letter-spacing:.07em;text-transform:uppercase;font-size:.8rem}.fp-kb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.fp-kb-card{min-width:0;text-decoration:none;display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;background:#fff;border:1px solid #dce5f0;border-radius:16px;padding:1.35rem;box-shadow:0 6px 22px rgba(35,55,82,.035);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.fp-kb-card:hover,.fp-kb-card:focus-visible{transform:translateY(-3px);border-color:#8ac2e6;box-shadow:0 12px 28px rgba(35,55,82,.09)}.fp-kb-card strong{font-size:1.15rem;color:#172b42}.fp-kb-card-description{font-size:.95rem;line-height:1.55;color:#536881}.fp-kb-card-icon{display:grid;place-items:center;width:3rem;height:3rem;border-radius:12px;background:#edf6fd;color:#1177ab}.fp-kb-card-action{margin-top:auto;font-weight:700;color:#0b6597;font-size:.9rem}.fp-kb-empty{padding:2rem;background:#f7f9fc;border:1px dashed #c8d5e5;border-radius:12px;color:#536881}@media (max-width:940px){.fp-kb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.fp-kb-grid{grid-template-columns:minmax(0,1fr)}.fp-kb-public{padding-block:1.2rem 2rem}.fp-kb-card{padding:1.1rem}.fp-kb-hero{border-radius:14px}}@media (prefers-reduced-motion:reduce){.fp-kb-card{transition:none}.fp-kb-card:hover{transform:none}}.fp-kb-section-tabs-wrap{background:#172b3c;overflow-x:auto}.fp-kb-section-tabs{display:flex;align-items:center;gap:.25rem;min-width:max-content}.fp-kb-section-tab{color:#ebf5fd;padding:1rem 1.15rem;text-decoration:none;border-bottom:3px solid transparent;display:inline-flex}.fp-kb-section-tab:hover,.fp-kb-section-tab.is-active{color:#fff;border-bottom-color:#49b5eb;background:#fff1}.fp-kb-category-tabs-wrap{background:#f1f5fa;border-bottom:1px solid #dce5f0;overflow-x:auto}.fp-kb-category-tabs{display:flex;align-items:center;gap:.55rem;min-width:max-content;padding-block:.55rem}.fp-kb-category-tab{display:inline-flex;padding:.6rem .85rem;text-decoration:none;border-radius:8px;color:#2c4960;font-weight:600;white-space:nowrap}.fp-kb-category-tab:hover,.fp-kb-category-tab.is-active{background:#fff;color:#0b6296;box-shadow:0 1px 4px #182d421a}.fp-kb-reader-layout{display:grid;grid-template-columns:minmax(210px,280px) minmax(0,1fr);align-items:start;gap:1.4rem}.fp-kb-article-nav{border:1px solid #dce5f0;border-radius:13px;display:grid;overflow:hidden;background:#fff;position:sticky;top:1.1rem}.fp-kb-article-nav strong{padding:1rem 1.2rem;background:#f1f6fa;border-bottom:1px solid #dce5f0}.fp-kb-article-nav a{padding:.9rem 1.1rem;text-decoration:none;display:flex;align-items:baseline;gap:.55rem;color:#30516c;border-bottom:1px solid #edf2f6}.fp-kb-article-nav a:hover{background:#edf6ff;color:#036da5}.fp-kb-reader-main{min-width:0}.fp-kb-reader-main h2{margin:.2rem 0}.fp-kb-grid-list{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:760px){.fp-kb-reader-layout{grid-template-columns:minmax(0,1fr)}.fp-kb-article-nav{position:static}.fp-kb-grid-list{grid-template-columns:minmax(0,1fr)}}.fp-kb-reader-page{padding-block:1.5rem 3rem}.fp-kb-reader-page .fp-kb-reader-main .page-wrap{width:100%;max-width:none;margin:0;padding:0}.fp-kb-article-nav a.is-active{background:#eaf5ff;color:#086b9a;font-weight:700}.fp-kb-reader-page .fp-kb-breadcrumbs{margin-top:0}.fp-kb-assignment-help{grid-column:1/-1;margin:0 0 12px}.fp-kb-section-articles{margin-top:clamp(24px,4vw,46px)}.fp-kb-section-articles>h2{margin-bottom:16px}@layer components{.fp-visual-border-none{border:0}.fp-visual-border-subtle{border:1px solid #d5dfe7}.fp-visual-border-strong{border:2px solid #8297a6}.fp-visual-shadow-none{box-shadow:none}.fp-visual-shadow-soft{box-shadow:0 4px 18px rgba(18,38,58,.09)}.fp-visual-shadow-medium{box-shadow:0 10px 32px rgba(18,38,58,.17)}.fp-visual-text-left{text-align:left}.fp-visual-text-center{text-align:center}.fp-visual-text-right{text-align:right}.fp-visual-align-start{align-content:start}.fp-visual-align-center{align-content:center}.fp-visual-align-end{align-content:end}.fp-page .fp-columns,.fp-page .fp-feature-grid{gap:var(--fp-block-gap,var(--fp-template-grid-gap,22px))}.fp-builder-style-advanced{margin-block:12px;padding:12px;border:1px solid #cfdee9;border-radius:8px;background:#fff}.fp-builder-style-advanced>summary{cursor:pointer;font-weight:650}.fp-builder-style-extended{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.fp-builder-style-extended .builder-field{min-width:0;margin:0}.fp-builder-dimensions{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fp-builder-dimensions input{width:100%}@media (max-width:650px){.fp-builder-style-extended,.fp-builder-dimensions{grid-template-columns:minmax(0,1fr)}}}@layer utilities{@media (max-width:700px){.fp-visual-visibility-hide_mobile{display:none!important}}@media (min-width:701px) and (max-width:1024px){.fp-visual-visibility-hide_tablet{display:none!important}}@media (min-width:971px){.fp-visual-visibility-hide_desktop{display:none!important}}}@layer components{.fp-section-group>.content-block:last-child{margin-bottom:0}.fp-page>.block-section>.fp-section-group{max-width:100%}.content-block[class*="fp-visual-bg-"]>.fp-hero,
  .content-block[class*="fp-visual-bg-"]>.fp-cta,
  .content-block[style*="background-image:"]>.fp-hero,
  .content-block[style*="background-image:"]>.fp-cta{background:transparent}.content-block>.fp-hero{gap:var(--fp-block-gap,34px)}.fp-builder-section{margin:12px 0;padding:14px;border-inline-start:3px solid #9cb8ca;background:#f8fbfd}}.fp-upload-progress,.fp-update-progress{display:grid;gap:.6rem;margin-block:.85rem;padding:.75rem;border:1px solid var(--line,#26333d);border-radius:8px}.fp-upload-progress progress,.fp-update-progress progress{width:100%;height:.75rem;accent-color:var(--accent,#5e9fb0)}.fp-upload-progress progress[hidden],.fp-update-progress[hidden],.fp-update-progress[hidden]{display:none}.fp-upload-results{max-height:220px;overflow:auto;list-style:none;padding:0;margin:0;display:grid;gap:.3rem;overflow-wrap:anywhere;font-size:.9rem}.fp-upload-results .is-success{color:var(--success,#358a68)}.fp-upload-results .is-error{color:var(--danger,#c54a52)}.fp-update-progress[hidden],.fp-upload-progress[hidden]{display:none}

/* FactorPrint CMS 1.0.24 — block sorter, gallery layouts, modal settings. CSS Snapshot 2026. */
.builder-drag-handle{border:1px solid var(--fp-line,#cbd7df);border-radius:6px;background:#fff;color:#35627c;cursor:grab;min-width:35px;min-height:35px;font-size:22px;line-height:1;touch-action:none;flex-shrink:0}
.builder-drag-handle:active{cursor:grabbing}.builder-drag-handle:focus-visible{outline:3px solid #3699c9;outline-offset:2px}
.builder-bar{gap:9px}.builder-bar>strong{flex:1;min-width:100px}
.builder-block.is-dragging{opacity:.45}.builder-block.is-drop-before{box-shadow:0 -4px 0 0 #3488b5}.builder-block.is-drop-after{box-shadow:0 4px 0 0 #3488b5}
.fp-gallery-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:#f5f9fc;border:1px solid #cfdae4;border-radius:8px;padding:12px;margin-bottom:14px}
.fp-gallery-settings>p{grid-column:1/-1;margin:0}.fp-gallery-settings>.builder-field{margin:0}.fp-gallery-settings select{width:100%}
@media(max-width:720px){.fp-gallery-settings{grid-template-columns:minmax(0,1fr)}.builder-bar{flex-wrap:wrap}.builder-actions{justify-content:flex-start}}
.fp-gallery{--fp-gallery-cols:3;--fp-gallery-gap:16px;gap:var(--fp-gallery-gap)}
.fp-gallery.fp-gallery-tile,.fp-gallery.fp-gallery-standard{display:grid;grid-template-columns:repeat(var(--fp-gallery-cols),minmax(0,1fr));align-items:start}
.fp-gallery figure[hidden]{display:none!important}
@media(max-width:900px){.fp-gallery.fp-gallery-tile,.fp-gallery.fp-gallery-standard{grid-template-columns:repeat(min(var(--fp-gallery-cols),6),minmax(0,1fr))}.fp-gallery.fp-gallery-masonry{columns:min(var(--fp-gallery-cols),6)}}
@media(max-width:600px){.fp-gallery.fp-gallery-tile,.fp-gallery.fp-gallery-standard{grid-template-columns:repeat(min(var(--fp-gallery-cols),2),minmax(0,1fr))}.fp-gallery.fp-gallery-masonry{columns:min(var(--fp-gallery-cols),2)}}
.fp-gallery.fp-gallery-tile img{width:100%;height:195px;object-fit:cover;display:block}
.fp-gallery.fp-gallery-standard img{width:100%;height:auto;object-fit:contain;display:block}
.fp-gallery.fp-gallery-masonry{display:block;columns:var(--fp-gallery-cols);column-gap:var(--fp-gallery-gap)}
.fp-gallery.fp-gallery-masonry figure{break-inside:avoid;display:inline-block;width:100%;margin:0 0 var(--fp-gallery-gap)}
.fp-gallery.fp-gallery-masonry img{width:100%;height:auto;display:block;object-fit:contain}
.fp-gallery-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 15px}
.fp-gallery-filters button{padding:8px 13px;border:1px solid #cbd7e0;background:#fff;color:#34556d;border-radius:7px;cursor:pointer;font:inherit}
.fp-gallery-filters button.is-active,.fp-gallery-filters button[aria-pressed=true]{border-color:#246f9b;background:#246f9b;color:#fff}
.fp-gallery-filters button:focus-visible{outline:2px solid #278ec0;outline-offset:2px}
.fp-modal.fp-modal-size-small{width:min(430px,calc(100% - 28px))}.fp-modal.fp-modal-size-medium{width:min(780px,calc(100% - 28px))}
.fp-modal.fp-modal-size-large{width:min(1050px,calc(100% - 28px))}.fp-modal.fp-modal-size-full{width:calc(100% - 24px);max-width:1500px}
.fp-modal.fp-modal-pos-top{margin-top:min(7vh,72px);margin-bottom:auto}.fp-modal.fp-modal-pos-center{margin-block:auto}
.fp-modal-content{max-width:100%;overflow-wrap:anywhere}.fp-modal-trigger-link{display:inline-flex;align-items:center}
@media(max-width:680px){.fp-gallery.fp-gallery-tile,.fp-gallery.fp-gallery-standard{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-gallery.fp-gallery-masonry{columns:2}}
@media(max-width:420px){.fp-gallery.fp-gallery-tile,.fp-gallery.fp-gallery-standard{grid-template-columns:minmax(0,1fr)}.fp-gallery.fp-gallery-masonry{columns:1}}
@media(prefers-reduced-motion:reduce){.builder-block{transition:none}}


/* FactorPrint CMS 1.0.26 — lightweight responsive gallery lightbox, CSS Snapshot 2026. */
.fp-gallery a[data-gallery-lightbox]{display:block;cursor:zoom-in}
.fp-gallery a[data-gallery-lightbox]:focus-visible{outline:3px solid #1988be;outline-offset:4px}
.fp-lightbox{position:fixed;inset:0;max-width:none;max-height:none;width:100%;height:100%;margin:0;padding:0;border:0;color:#f2f6fb;background:rgba(9,17,27,.96);overflow:hidden}
.fp-lightbox::backdrop{background:#080d15dd}
.fp-lightbox-shell{height:100%;display:flex;flex-direction:column;align-items:stretch;padding:clamp(8px,2vw,20px)}
.fp-lightbox-head{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:16px}
.fp-lightbox-counter{font-variant-numeric:tabular-nums;color:#b8c7d6;font-size:14px}
.fp-lightbox-close,.fp-lightbox-nav{font-family:inherit;color:#f3f6fa;border:1px solid #65708066;background:#ffffff17;border-radius:10px;cursor:pointer;display:grid;place-items:center}
.fp-lightbox-close{width:42px;height:42px;font-size:30px;line-height:1}
.fp-lightbox-nav{width:46px;height:54px;font-size:38px;line-height:1;z-index:1}
.fp-lightbox-close:hover,.fp-lightbox-nav:hover{background:#ffffff36}.fp-lightbox-nav:disabled{opacity:.25;cursor:default}
.fp-lightbox-stage{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:8px;flex:1;min-height:0;align-items:center}
.fp-lightbox-media{height:100%;min-height:0;position:relative;display:flex;justify-content:center;align-items:center;touch-action:pan-y}
.fp-lightbox-img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:7px;box-shadow:0 9px 45px #0008}
.fp-lightbox-img.is-loading{visibility:hidden}.fp-lightbox-loading{position:absolute;inset:auto;color:#cbd6e3;font-size:14px;text-align:center}
.fp-lightbox-caption{color:#ebf1f7;text-align:center;margin:12px auto 6px;max-width:min(760px,95%);font-size:14px;max-height:15vh;overflow:auto;overflow-wrap:anywhere}
.fp-lightbox-caption[hidden]{display:none}
@media(max-width:600px){.fp-lightbox-shell{padding:8px}.fp-lightbox-stage{grid-template-columns:34px minmax(0,1fr) 34px;gap:2px}.fp-lightbox-nav{width:34px;height:48px;font-size:29px}.fp-lightbox-caption{font-size:13px}}
@media(prefers-reduced-motion:reduce){.fp-lightbox *, .fp-gallery a[data-gallery-lightbox]{transition:none!important;animation:none!important}}

/* FactorPrint CMS 1.1.0 — global visitor component palettes; administration is never affected. */
.public-body .fp-gallery figure{background:var(--fp-ui-gallery-background,#fff);color:var(--fp-ui-gallery-text,#526478);border:1px solid var(--fp-ui-gallery-border,#fff)}
.public-body .fp-gallery figcaption{color:var(--fp-ui-gallery-text,#526478)}
.public-body .fp-gallery-filters button[aria-pressed=true],.public-body .fp-gallery-filters button.is-active{background:var(--fp-ui-gallery-accent,#246f9b);border-color:var(--fp-ui-gallery-accent,#246f9b);color:var(--fp-ui-gallery-accent_text,#fff)}
.public-body .table-scroll table{background:var(--fp-ui-table-background,#fff);color:var(--fp-ui-table-text,#253241)}
.public-body .table-scroll th,.public-body .table-scroll td{border-color:var(--fp-ui-table-border,#d9e1e8)}
.public-body .table-scroll th{background:var(--fp-ui-table-accent,#f7f9fb);color:var(--fp-ui-table-accent_text,#526478)}
.public-body .fp-carousel figure{background:var(--fp-ui-carousel-background,#fff);color:var(--fp-ui-carousel-text,#526478);border-color:var(--fp-ui-carousel-border,#d9e1e8)}
.public-body .carousel-controls button{background:var(--fp-ui-carousel-accent,#fff);color:var(--fp-ui-carousel-accent_text,#253241);border-color:var(--fp-ui-carousel-border,#d9e1e8)}
.public-body .fp-tabs [role=tablist]{border-color:var(--fp-ui-tabs-border,#d9e1e8)}
.public-body .fp-tabs [role=tab]{background:var(--fp-ui-tabs-background,#f3f6f8);color:var(--fp-ui-tabs-text,#253241)}
.public-body .fp-tabs [role=tab][aria-selected=true]{background:var(--fp-ui-tabs-accent,#1685bb);color:var(--fp-ui-tabs-accent_text,#fff)}
.public-body .fp-accordion details{background:var(--fp-ui-accordion-background,#fff);color:var(--fp-ui-accordion-text,#253241);border-color:var(--fp-ui-accordion-border,#d9e1e8)}
.public-body .fp-accordion details[open]{background:var(--fp-ui-accordion-accent,#f3f6f8)}
.public-body .fp-accordion details[open]>summary{color:var(--fp-ui-accordion-accent_text,#253241)}
.public-body .button:not(.button-muted):not(.button-danger):not(.fp-cta .button){background:var(--fp-ui-button-background,#1685bb);color:var(--fp-ui-button-text,#fff)!important;border-color:var(--fp-ui-button-border,#1685bb)}
.public-body .button:not(.button-muted):not(.button-danger):hover{background:var(--fp-ui-button-accent,#116f9b);color:var(--fp-ui-button-accent_text,#fff)!important}

/* FactorPrint CMS 1.1.5 — validated Hero image sizing and independent background image. CSS Snapshot 2026. */
@layer components {
  .fp-hero.fp-hero-with-image.fp-hero-sized{grid-template-columns:minmax(0,1fr) minmax(0,var(--fp-hero-image-width,46%))}
  .fp-hero .fp-hero-visual>img{max-height:var(--fp-hero-image-height,470px);object-fit:var(--fp-hero-image-fit,cover)}
  @media(max-width:1024px){.fp-hero.fp-hero-with-image.fp-hero-sized{grid-template-columns:minmax(0,1fr)}}
}

/* FactorPrint CMS 1.1.8 — image link/lightbox and responsive CMS block carousel. CSS Snapshot 2026. */
.fp-image-lightbox-trigger{display:block;width:100%;padding:0;border:0;background:none;text-align:inherit;cursor:zoom-in;color:inherit;font:inherit}
.fp-image-lightbox-trigger:focus-visible,.fp-image-link:focus-visible{outline:3px solid #1988be;outline-offset:4px}
.fp-image-lightbox-trigger img,.fp-image-link img{display:block;max-width:100%}
.fp-carousel-blocks>.fp-carousel-slide{flex:0 0 clamp(240px,30vw,370px);min-width:0;scroll-snap-align:start}
.fp-carousel-slide>.content-block{margin:0;height:100%}
.fp-carousel-slide .fp-product-card{height:100%}
.fp-product-card{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--fp-ui-carousel-border,#d9e1e8);border-radius:12px;background:var(--fp-ui-carousel-background,#fff);color:var(--fp-ui-carousel-text,#253241)}
.fp-product-card-main{display:flex;flex-direction:column;gap:14px;color:inherit;text-decoration:none}
.fp-product-card img{width:100%;height:190px;object-fit:contain;border-radius:8px}
.fp-product-card h3{font-size:19px;margin:0;line-height:1.35;color:inherit}
.fp-product-card-button{align-self:flex-start;margin-top:auto}
@media(max-width:640px){.fp-carousel-blocks>.fp-carousel-slide{flex-basis:min(85vw,320px)}}


/* FactorPrint CMS 1.1.9 — explicit photo caption alignment; block-wide alignment remains inherited. CSS Snapshot 2026. */
.public-body figcaption.fp-caption-align-left{text-align:left}
.public-body figcaption.fp-caption-align-center{text-align:center}
.public-body figcaption.fp-caption-align-right{text-align:right}
.admin-body .fp-builder-quick-align{display:block;margin:12px 0;padding:9px 12px;border-left:3px solid #83b4d4;background:#f1f7fb;border-radius:6px}
.admin-body .fp-builder-quick-align select{max-width:100%;width:100%}

/* FactorPrint CMS 1.1.10 — compact builder media previews, duplicate cards and carousel alignment. CSS Snapshot 2026. */
@layer components {
 .fp-builder-image-preview{display:flex;align-items:center;gap:10px;margin-top:8px;min-height:48px;max-width:100%;font-size:12px;color:#526478}
 .fp-builder-image-preview img{display:block;max-width:112px;width:112px;max-height:78px;height:78px;object-fit:contain;border:1px solid #cfdee9;border-radius:7px;background:#f1f6fa}
 .fp-builder-image-preview img[hidden]{display:none}
 .fp-maintenance-duplicate-images{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;margin-top:13px}
 .fp-maintenance-duplicate-card{display:grid;gap:7px;min-width:0;border:1px solid #d7e2eb;border-radius:9px;padding:8px;background:#fff}
 .fp-maintenance-duplicate-card>a{display:block;text-align:center;background:#f3f7fb;border-radius:6px;overflow:hidden}
 .fp-maintenance-duplicate-card img{width:100%;height:110px;object-fit:contain;display:block}
 .fp-maintenance-duplicate-card>small{overflow-wrap:anywhere;line-height:1.3;font-size:11px;color:#536b7e}
 .fp-maintenance-duplicate-check{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;margin:0}
 .fp-maintenance-duplicate-check input{width:17px;height:17px;flex:0 0 auto}
 .fp-maintenance-archive-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}
 .fp-maintenance-archive-form>.muted{margin-top:14px}
 .fp-maintenance-duplicate-group{margin-block:16px}
}
/* Let a carousel's selected block text alignment reach its contents and CTA; explicit photo caption overrides still win. */
@layer components {
 .public-body .block-image_carousel.fp-visual-text-left .fp-carousel-slide,.public-body .block-image_carousel.fp-visual-text-left .fp-carousel-slide .fp-product-card{text-align:left}
 .public-body .block-image_carousel.fp-visual-text-center .fp-carousel-slide,.public-body .block-image_carousel.fp-visual-text-center .fp-carousel-slide .fp-product-card{text-align:center}
 .public-body .block-image_carousel.fp-visual-text-right .fp-carousel-slide,.public-body .block-image_carousel.fp-visual-text-right .fp-carousel-slide .fp-product-card{text-align:right}
 .public-body .block-image_carousel.fp-visual-text-center .fp-product-card-button{align-self:center}
 .public-body .block-image_carousel.fp-visual-text-right .fp-product-card-button{align-self:flex-end}
 .public-body .block-image_carousel.fp-visual-text-left .fp-product-card-button{align-self:flex-start}
 .public-body .block-image_carousel.fp-visual-text-left .fp-carousel figure figcaption:not([class*="fp-caption-align-"]){text-align:left}
 .public-body .block-image_carousel.fp-visual-text-center .fp-carousel figure figcaption:not([class*="fp-caption-align-"]){text-align:center}
 .public-body .block-image_carousel.fp-visual-text-right .fp-carousel figure figcaption:not([class*="fp-caption-align-"]){text-align:right}
}

/* FactorPrint CMS 1.1.10 — unlayered override: legacy unlayered product card button alignment wins over @layer declarations otherwise. */
.public-body .block-image_carousel.fp-visual-text-left .fp-product-card-button{align-self:flex-start}
.public-body .block-image_carousel.fp-visual-text-center .fp-product-card-button{align-self:center}
.public-body .block-image_carousel.fp-visual-text-right .fp-product-card-button{align-self:flex-end}

/* FactorPrint CMS 1.1.11 — explicit alignment of an individual nested product card.
   An individual card setting overrides the carousel's default, even when the
   whole-card <a> is enabled. Unlayered rules override legacy layered styles. */
.public-body .fp-product-card.fp-card-text-left,
.public-body .fp-product-card.fp-card-text-left .fp-product-card-main,
.public-body .fp-product-card.fp-card-text-left h3{text-align:left}
.public-body .fp-product-card.fp-card-text-center,
.public-body .fp-product-card.fp-card-text-center .fp-product-card-main,
.public-body .fp-product-card.fp-card-text-center h3{text-align:center}
.public-body .fp-product-card.fp-card-text-right,
.public-body .fp-product-card.fp-card-text-right .fp-product-card-main,
.public-body .fp-product-card.fp-card-text-right h3{text-align:right}
.public-body .fp-product-card.fp-card-text-left .fp-product-card-button{align-self:flex-start}
.public-body .fp-product-card.fp-card-text-center .fp-product-card-button{align-self:center}
.public-body .fp-product-card.fp-card-text-right .fp-product-card-button{align-self:flex-end}

/* FactorPrint CMS 1.1.16 — border appearance on containers also controls their child cards.
   CSS Snapshot 2026. Variables inherit through columns and grouped blocks, while an
   explicitly configured nested border preset overrides its parent's preference. */
.public-body .content-block.fp-visual-border-none {
  --fp-child-card-border:none;
}
.public-body .content-block.fp-visual-border-subtle {
  --fp-child-card-border:1px solid #d5dfe7;
}
.public-body .content-block.fp-visual-border-strong {
  --fp-child-card-border:2px solid #8297a6;
}
.public-body .fp-columns > .fp-column,
.public-body .fp-feature-grid > .fp-feature-card,
.public-body .fp-carousel .fp-product-card,
.public-body .fp-carousel .fp-carousel-slide,
.public-body .fp-gallery > figure {
  border:var(--fp-child-card-border, 1px solid var(--fp-line, #d5dfe7));
}
/* The gallery already has its own global component-color border; keep that fallback. */
.public-body .fp-gallery > figure {
  border:var(--fp-child-card-border, 1px solid var(--fp-ui-gallery-border,#fff));
}
/* Dedicated product card default uses its own appearance palette. */
.public-body .fp-product-card {
  border:var(--fp-child-card-border, 1px solid var(--fp-ui-carousel-border,#d9e1e8));
}

/* FactorPrint CMS 1.1.18 — CSS Snapshot 2026: one gallery preview; exact masonry tracks. */
.admin-body .fp-gallery-image-columns{grid-template-columns:minmax(0,1fr)}
.fp-gallery.fp-gallery-masonry{display:grid;columns:auto;grid-template-columns:repeat(var(--fp-gallery-cols,3),minmax(0,1fr));align-items:start;gap:var(--fp-gallery-gap,16px)}
.fp-gallery.fp-gallery-masonry figure{display:block;min-width:0;width:100%;margin:0;align-self:start}
.fp-gallery.fp-gallery-masonry.fp-masonry-ready{grid-auto-rows:6px;grid-auto-flow:row dense}
@media(max-width:900px){.fp-gallery.fp-gallery-masonry{grid-template-columns:repeat(min(var(--fp-gallery-cols,3),6),minmax(0,1fr))}}
@media(max-width:680px){.fp-gallery.fp-gallery-masonry{grid-template-columns:repeat(min(var(--fp-gallery-cols,3),2),minmax(0,1fr))}}
@media(max-width:420px){.fp-gallery.fp-gallery-masonry{grid-template-columns:minmax(0,1fr)}}
.fp-media-picker-grid>.fp-media-scroll-sentinel{grid-column:1/-1;min-height:1px;pointer-events:none}

/* FactorPrint CMS 1.1.22 — breadcrumb navigation and FAQ blocks, CSS Snapshot 2026. */
@layer components {
 .fp-page-breadcrumbs {margin:0 0 1.1rem;color:var(--fp-muted,#728195);font-size:.88rem;}
 .fp-page-breadcrumbs ol {display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;list-style:none;margin:0;padding:0;}
 .fp-page-breadcrumbs li {display:inline-flex;align-items:center;gap:.4rem;overflow-wrap:anywhere;}
 .fp-page-breadcrumbs li+li::before {content:'›';color:var(--fp-muted,#728195);margin-right:.15rem;}
 .fp-page-breadcrumbs a {color:inherit;text-decoration:none;}
 .fp-page-breadcrumbs a:hover,.fp-page-breadcrumbs a:focus-visible {text-decoration:underline;}
 .fp-page-breadcrumbs [aria-current='page'] {color:var(--fp-text,#253241);font-weight:600;}
 .fp-faq {margin:1.1rem 0 1.4rem;}
 .fp-faq details {border-bottom:1px solid var(--fp-ui-accordion-border,var(--fp-line,#dce3ea));}
 .fp-faq summary {list-style-position:outside;cursor:pointer;line-height:1.45;}
 .fp-faq summary:focus-visible {outline:2px solid var(--fp-blue,#1685bb);outline-offset:3px;}
 .fp-faq-answer {line-height:1.65;overflow-wrap:anywhere;}
 .fp-builder-faq-list {display:grid;gap:.9rem;}
 .fp-builder-faq-item {min-width:0;}
 .fp-builder-faq-actions {display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.55rem;}
 .fp-builder-faq-actions .button {width:auto;}
}

/* FactorPrint CMS 1.1.35 — CSS Snapshot 2026: safe merged table presets and flexible icon list. */
.fp-table-scroll{overflow-x:auto;max-width:100%;border-radius:8px}
.fp-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:inherit;table-layout:auto}
.fp-data-table th,.fp-data-table td{padding:12px 15px;vertical-align:middle;border-bottom:1px solid #dce5ec;min-width:80px}
.fp-data-table th{font-weight:650;background:#eef4f8;color:#223948}
.fp-table-striped tbody tr:nth-child(even),.fp-table-striped tr:nth-child(even){background:#f1f7fb}
.fp-table-bordered{border:1px solid #cbd9e4}.fp-table-bordered th,.fp-table-bordered td{border:1px solid #cbd9e4}
.fp-table-minimal th,.fp-table-minimal td{border-bottom:1px solid #e4eaf0;background:transparent}
.fp-table-minimal th{font-weight:750}
.fp-table-dark{background:#172d39;color:#f0f5f8}.fp-table-dark th,.fp-table-dark td{color:inherit;border-color:#38515d}.fp-table-dark th{background:#284554;color:#fff}
.fp-icon-list{list-style:none;margin:0;padding:0;display:flex;gap:var(--fp-icon-list-gap,12px);min-width:0}
.fp-icon-list-column{flex-direction:column}.fp-icon-list-row{flex-direction:row;flex-wrap:wrap;align-items:center}
.fp-icon-list li{list-style:none;min-width:0;margin:0;padding:0}
.fp-icon-list a,.fp-icon-list-label{display:inline-flex;align-items:flex-start;gap:10px;text-decoration:none;color:inherit;line-height:1.5}
.fp-icon-list a:hover{text-decoration:underline}.fp-icon-list i{width:1.2em;flex:0 0 1.2em;line-height:1.5;text-align:center;color:var(--fp-blue,#2686b9)}
@media(max-width:700px){.fp-icon-list-row{row-gap:12px}.fp-table-scroll{max-width:100%}}

/* FactorPrint CMS 1.1.35 — explicit table preset colors override global theme table tokens. */
.public-body .table-scroll .fp-data-table.fp-table-striped tr:nth-child(even){background:#f1f7fb}
.public-body .table-scroll .fp-data-table.fp-table-minimal th,.public-body .table-scroll .fp-data-table.fp-table-minimal td{background:transparent;border:0;border-bottom:1px solid #e4eaf0}
.public-body .table-scroll .fp-data-table.fp-table-bordered th,.public-body .table-scroll .fp-data-table.fp-table-bordered td{border:1px solid #cbd9e4}
.public-body .table-scroll .fp-data-table.fp-table-dark{background:#172d39;color:#f0f5f8}
.public-body .table-scroll .fp-data-table.fp-table-dark th,.public-body .table-scroll .fp-data-table.fp-table-dark td{color:#f0f5f8;border-color:#38515d}
.public-body .table-scroll .fp-data-table.fp-table-dark th{background:#284554}

/* FactorPrint CMS 1.1.36 — transparent Hero illustration, gallery sorting and block CSS IDs. CSS Snapshot 2026. */
.fp-hero-visual{background:transparent!important;box-shadow:none!important}
.fp-gallery-image-reorder{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.fp-gallery-image-reorder strong{flex:1;min-width:65px}
.fp-gallery-image-handle{border:1px solid #bed1df;background:#f4f8fa;border-radius:6px;cursor:grab;padding:7px 11px;touch-action:none;user-select:none}
.fp-gallery-image-handle:active{cursor:grabbing}
.fp-gallery-image-arrows{display:flex;gap:5px}
.fp-gallery-image-card.is-gallery-drop-target{outline:3px solid #2680ad;outline-offset:0;background:#eef7fc}
.fp-gallery-image-card.is-dragging{opacity:.55}
.fp-builder-css-anchor{margin-top:12px}


/* FactorPrint CMS 1.1.37 — CSS Snapshot 2026: respect gallery column count on phones.
 * Two configured columns remain two below 420px; one explicitly configured column stays one.
 */
@media (max-width:420px) {
  .public-body .fp-gallery.fp-gallery-tile,
  .public-body .fp-gallery.fp-gallery-standard {
    grid-template-columns:repeat(min(var(--fp-gallery-cols,3),2),minmax(0,1fr));
  }
  .public-body .fp-gallery.fp-gallery-masonry {
    grid-template-columns:repeat(min(var(--fp-gallery-cols,3),2),minmax(0,1fr));
  }
  .public-body .fp-gallery > figure {min-width:0;max-width:100%;}
}

/* FactorPrint CMS 1.1.38 — accessible messages, custom icons and centered icon lists. CSS Snapshot 2026. */
.fp-icon-list-custom{display:block;width:1.35em;height:1.35em;object-fit:contain;flex:0 0 1.35em}
.fp-visual-text-center .fp-icon-list-column,.fp-visual-text-center.fp-icon-list-column{align-items:center}
.fp-visual-text-center .fp-icon-list-row,.fp-visual-text-center.fp-icon-list-row{justify-content:center}
.fp-visual-text-right .fp-icon-list-column{align-items:flex-end}
.fp-visual-text-right .fp-icon-list-row{justify-content:flex-end}
.fp-visual-text-left .fp-icon-list-column{align-items:flex-start}
.fp-visual-text-left .fp-icon-list-row{justify-content:flex-start}
/* Inherited center alignment on parent sections/columns without brittle inline style inspection. */
.fp-visual-text-center .fp-icon-list-column{align-items:center}
.fp-visual-text-center .fp-icon-list-row{justify-content:center}
.fp-message{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:1px solid;border-radius:9px;line-height:1.6}
.fp-message>i{font-size:21px;flex:0 0 24px;margin-top:2px}
.fp-message-body{min-width:0;flex:1}.fp-message-title{display:block;font-size:1.03em;font-weight:750;margin:0 0 3px}
.fp-message-body p{margin:0;overflow-wrap:anywhere}
.fp-message-important{background:#fff8e5;border-color:#f1ce87;color:#794c05}
.fp-message-info{background:#ebf6ff;border-color:#a9d5f6;color:#165074}
.fp-message-success{background:#ecf8ef;border-color:#a9dabb;color:#195b34}
.fp-message-error{background:#fdf0f0;border-color:#e9b4b9;color:#812632}
.fp-navigation-menu-list{list-style:none;display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:0;margin:0}
.fp-navigation-menu-list li{list-style:none}.fp-navigation-menu-list a{color:inherit;text-decoration:none}.fp-navigation-menu-list a:hover{text-decoration:underline}
.fp-footer-menu-slot{background:#122b39;color:#e9f3f7}.fp-footer-menu-slot .fp-navigation-menu-list{padding-block:15px}
.fp-footer-menu-inside .fp-navigation-menu-list{margin-top:15px}
@media(max-width:700px){.fp-message{padding:14px;gap:10px}.fp-navigation-menu-list{gap:12px}}

/* FactorPrint CMS 1.1.38 — nested menu placement and standard footer layout. */
.fp-navigation-menu-sublist{list-style:none;display:flex;flex-direction:column;gap:8px;margin:9px 0 0;padding:0 0 0 12px;border-inline-start:1px solid currentColor;opacity:.9;font-size:.9em}
.fp-navigation-slot-header_secondary{background:#f0f6fa;padding-block:10px}.fp-navigation-slot-header_secondary .fp-navigation-menu-list{justify-content:flex-end}
.fp-navigation-slot-before_footer{background:#f0f7fb;padding-block:12px}
.site-footer .fp-navigation-menu-list{gap:14px;justify-content:center}

/* FactorPrint CMS 1.2.0 — CSS Snapshot 2026: collection tree, compact chooser and sticky actions. */
.fp-media-workspace{display:grid;grid-template-columns:clamp(220px,21vw,295px) minmax(0,1fr);gap:16px;align-items:start}
.fp-media-main{min-width:0}
.fp-media-sidebar{position:sticky;top:12px;max-height:calc(100dvh - 30px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border:1px solid #d5e2ed;border-radius:12px;padding:15px;min-width:0}
.fp-media-sidebar h3{margin:0 0 12px;font-size:16px;display:flex;gap:8px;align-items:center}
.fp-media-folder-tree{display:flex;flex-direction:column;gap:3px;margin-bottom:16px}
.fp-media-folder-branch{padding-left:calc(var(--folder-depth)*13px)}
.fp-media-folder{display:flex;align-items:center;gap:8px;padding:9px 8px;border-radius:7px;min-width:0;color:#33475a;text-decoration:none;border:1px solid transparent;font-size:13px}
.fp-media-folder span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.fp-media-folder small{margin-left:auto;background:#eef3f7;border-radius:5px;padding:2px 5px}
.fp-media-folder:hover,.fp-media-folder.is-active{background:#eaf5fc;color:#16638f}
.fp-media-folder.is-drop-target{border:1px dashed #2585b5;background:#d9edf9;box-shadow:inset 0 0 0 2px #fff}
.fp-media-folder-create{border-top:1px solid #dfebf3;padding-top:12px;display:grid;gap:9px}
.fp-media-folder-create label{font-size:12px;display:grid;gap:5px}
.fp-media-folder-create input,.fp-media-folder-create select{width:100%;max-width:100%;min-width:0}
.fp-media-drop-hint{font-size:12px;line-height:1.5}
.fp-media-workspace [data-media-row][draggable=true]{cursor:grab}
.fp-media-workspace [data-media-row].is-moving{opacity:.55}
.fp-media-workspace.is-file-drop-target .fp-media-main{outline:3px dashed #268bb7;outline-offset:-5px}
/* The modal owns scrolling content; filters and actions stay visible. */
.admin-body .fp-media-dialog.fp-media-chooser{width:min(1120px,96vw);max-height:min(92dvh,920px);height:min(790px,92dvh);overflow:hidden;padding:0;display:flex;flex-direction:column;min-width:0}
.fp-media-dialog:not([open]){display:none!important}
.admin-body .fp-media-chooser .fp-media-dialog-header{flex-shrink:0;padding:14px 18px 8px}
.admin-body .fp-media-chooser .fp-media-modal-tools{flex-shrink:0;display:grid;grid-template-columns:minmax(120px,2fr) repeat(2,minmax(110px,1fr)) auto;gap:8px;margin:0;padding:6px 18px 10px}
.admin-body .fp-media-chooser .fp-media-modal-tools input,.admin-body .fp-media-chooser .fp-media-modal-tools select{min-width:0;max-width:100%}
.admin-body .fp-media-chooser .fp-media-reset-filters{width:auto!important;min-width:0;align-self:stretch;padding:7px 11px}
.admin-body .fp-media-chooser .fp-media-modal-status{flex-shrink:0;margin:0;padding:4px 18px;font-size:12px}
.admin-body .fp-media-chooser .fp-media-picker-grid{flex:1 1 auto;min-height:70px;max-height:none;overflow:auto;align-content:start;padding:10px 18px}
.admin-body .fp-media-chooser .fp-media-picker-footer{flex:0 0 auto;position:relative;z-index:1;margin:0;padding:12px 18px;border-top:1px solid #d8e5ef;background:#fff;justify-content:flex-end}
@media(max-width:750px){.fp-media-workspace{grid-template-columns:1fr}.fp-media-sidebar{position:relative;top:auto;max-height:260px}.admin-body .fp-media-chooser .fp-media-modal-tools{grid-template-columns:minmax(0,1fr) minmax(110px,1fr)}.admin-body .fp-media-chooser .fp-media-reset-filters{grid-column:auto}}
@media(max-width:450px){.admin-body .fp-media-chooser .fp-media-modal-tools{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.admin-body .fp-media-chooser .fp-media-modal-tools input[type=search]{grid-column:1/-1}.admin-body .fp-media-chooser .fp-media-reset-filters{grid-column:2}.admin-body .fp-media-chooser .fp-media-picker-footer{padding:8px;gap:5px}.admin-body .fp-media-chooser .fp-media-picker-grid{padding:8px}}

/* 1.2.0 chooser: separate tree/list scroll and fixed footer, preserving control visibility. */
.admin-body .fp-media-chooser .fp-media-modal-main{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:0;flex:1 1 auto;overflow:hidden;border-top:1px solid #e2eaf0}
.admin-body .fp-media-chooser .fp-media-modal-folders{min-height:0;overflow-y:auto;padding:11px 9px;background:#f7fafc;border-right:1px solid #e2eaf0}
.admin-body .fp-media-chooser .fp-media-modal-folders h4{font-size:13px;margin:0 0 8px 5px}
.admin-body .fp-media-chooser .fp-media-modal-folder-list{display:flex;flex-direction:column;gap:2px}
.admin-body .fp-media-chooser .fp-media-modal-folder{width:100%;min-width:0;display:flex;gap:7px;align-items:center;text-align:left;border:0;border-radius:6px;background:transparent;padding:8px 6px 8px calc(6px + var(--folder-depth)*12px);font:inherit;font-size:12px;color:#344f62;cursor:pointer}
.admin-body .fp-media-chooser .fp-media-modal-folder span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-body .fp-media-chooser .fp-media-modal-folder:hover,.admin-body .fp-media-chooser .fp-media-modal-folder.is-active{background:#e1f1fb;color:#12638f}
.admin-body .fp-media-chooser .fp-media-modal-content{min-height:0;display:flex;flex-direction:column;min-width:0;overflow:hidden}
.admin-body .fp-media-chooser .fp-media-modal-content .fp-media-picker-grid{min-height:0;flex:1 1 auto;max-height:none;overflow-y:auto}
.admin-body .fp-media-chooser .fp-media-picker-grid.is-file-drop-target{outline:3px dashed #2785b0;outline-offset:-5px;background:#eef8fc}
@media(max-width:700px){.admin-body .fp-media-chooser .fp-media-modal-main{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.admin-body .fp-media-chooser .fp-media-modal-folders{overflow:auto;max-height:100px;border-right:0;border-bottom:1px solid #e2eaf0}.admin-body .fp-media-chooser .fp-media-modal-folders h4{display:none}.admin-body .fp-media-chooser .fp-media-modal-folder-list{flex-direction:row;flex-wrap:nowrap;gap:3px}.admin-body .fp-media-chooser .fp-media-modal-folder{width:auto;flex:none;padding:6px;max-width:150px}}

/* FactorPrint CMS 1.2.1 — single-line footer, right-aligned menu and configurable navigation typography. CSS Snapshot 2026. */
.site-footer .fp-footer-mainline{display:flex;align-items:center;justify-content:space-between;gap:clamp(16px,3vw,44px);flex-wrap:wrap}
.site-footer .fp-footer-identity{min-width:0;flex:0 1 auto}
.site-footer .fp-footer-menu-inside{margin-inline-start:auto;min-width:0;max-width:100%}
.site-footer .fp-footer-menu-inside .fp-navigation-menu-list{margin:0;justify-content:flex-end;text-align:right;gap:12px 22px}
.fp-navigation-menu-list{font-size:var(--fp-menu-font-size,14px)}
.fp-navigation-menu-list a{display:inline-flex;align-items:center;gap:6px}
.site-nav .nav-entry-head>a{font-size:var(--fp-primary-menu-font,12px)}
@media(max-width:700px){.site-footer .fp-footer-mainline{align-items:flex-start}.site-footer .fp-footer-menu-inside{margin-inline-start:0}.site-footer .fp-footer-menu-inside .fp-navigation-menu-list{justify-content:flex-start;text-align:left}}


/* FactorPrint CMS 1.2.9 — subtle interactive motion; hover-only, no LCP blocking entrance animation. */
@layer components {
  .public-body .fp-cta .button,
  .public-body .fp-feature-card,
  .public-body .fp-carousel figure,
  .public-body .fp-carousel .fp-carousel-slide,
  .public-body .fp-gallery figure {
    transition:transform 220ms cubic-bezier(.2,.75,.25,1),box-shadow 220ms ease,filter 220ms ease;
  }
  @media (hover:hover) and (pointer:fine) {
    .public-body .fp-cta .button:hover {transform:translateY(-2px);box-shadow:0 8px 19px rgb(20 69 98 / 18%)}
    .public-body .fp-feature-card:hover {transform:translateY(-3px);box-shadow:0 10px 24px rgb(30 62 85 / 12%)}
    .public-body .fp-carousel figure:hover,
    .public-body .fp-carousel .fp-carousel-slide:hover,
    .public-body .fp-gallery figure:hover {transform:translateY(-2px)}
  }
  .public-body :is(.fp-cta .button,.fp-feature-card,.fp-gallery a,.carousel-controls button):focus-visible {outline:3px solid var(--fp-blue,#1685bb);outline-offset:3px}
  @media (prefers-reduced-motion:reduce) {
    .public-body :is(.fp-cta .button,.fp-feature-card,.fp-carousel figure,.fp-carousel .fp-carousel-slide,.fp-gallery figure) {transition:none!important;transform:none!important}
  }
}

/* FactorPrint CMS 1.2.18 — compact original swatch tables. */
@layer components{.fp-html-content table.fp-color-swatch-table{width:max-content;max-width:none;table-layout:fixed;border-collapse:collapse;margin-bottom:10px}.fp-html-content table.fp-color-swatch-table td,.fp-html-content table.fp-color-swatch-table th{padding:0;border:0;vertical-align:middle}.fp-html-content table.fp-color-swatch-table td[style*="border"],.fp-html-content table.fp-color-swatch-table th[style*="border"]{border:1px solid #c0c0c0}.fp-html-content:has(table.fp-color-swatch-table){overflow-x:auto}}
@layer utilities{.public-body .fp-html-content table.fp-color-swatch-table{max-inline-size:none}}


/* FactorPrint CMS 1.2.24 — layout extension. CSS Snapshot 2026. */
.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left>.fp-hero-visual{grid-column:1;grid-row:1}
.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left>.fp-hero-copy{grid-column:2;grid-row:1}
@media(max-width:1024px){.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left>.fp-hero-copy{grid-column:1;grid-row:1}.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left>.fp-hero-visual{grid-column:1;grid-row:2}}
.public-body .block-image_carousel .fp-carousel[style*="--fp-carousel-item-height"]>figure{height:var(--fp-carousel-item-height);box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}
.public-body .block-image_carousel .fp-carousel[style*="--fp-carousel-item-height"]>figure img{height:100%;max-height:100%;min-height:0;object-fit:cover}
.public-body .block-image_carousel .fp-carousel[style*="--fp-carousel-item-height"]>figure figcaption{flex:none}
.public-body .block-image_carousel .fp-carousel-blocks[style*="--fp-carousel-item-height"]>.fp-carousel-slide{height:var(--fp-carousel-item-height);box-sizing:border-box;overflow:auto}
.public-body .fp-visual-align-start{display:flex;flex-direction:column;justify-content:flex-start}
.public-body .fp-visual-align-center{display:flex;flex-direction:column;justify-content:center}
.public-body .fp-visual-align-end{display:flex;flex-direction:column;justify-content:flex-end}
.public-body .block-section.fp-visual-align-start>.fp-section-group,.public-body .block-section.fp-visual-align-center>.fp-section-group,.public-body .block-section.fp-visual-align-end>.fp-section-group{width:100%;min-width:0}
.public-body .block-section.fp-visual-align-start>.fp-section-group{display:flex;flex-direction:column;justify-content:flex-start;flex:1}
.public-body .block-section.fp-visual-align-center>.fp-section-group{display:flex;flex-direction:column;justify-content:center;flex:1}
.public-body .block-section.fp-visual-align-end>.fp-section-group{display:flex;flex-direction:column;justify-content:flex-end;flex:1}

@media(min-width:971px){
.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left:not(.fp-hero-sized){grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.public-body .fp-hero.fp-hero-with-image.fp-hero-image-left.fp-hero-sized{grid-template-columns:minmax(0,var(--fp-hero-image-width,46%)) minmax(0,1fr)}
}

/* FactorPrint CMS 1.2.26 — preserve visual strong/em formatting in benefit cards. */
.public-body .fp-feature-description :is(strong,b){font-weight:700!important}
.public-body .fp-feature-description :is(em,i){font-style:italic!important}
.public-body .fp-feature-description :is(u){text-decoration:underline!important}


/* FactorPrint CMS 1.2.28 — reliable font emphasis in rendered advantage cards. */
.public-body .fp-feature-grid .fp-feature-card .fp-feature-description strong,
.public-body .fp-feature-grid .fp-feature-card .fp-feature-description b,
.public-body .fp-feature-grid .fp-feature-card .fp-feature-description [style*="font-weight:"]{font-weight:800!important;font-synthesis:weight;color:var(--fp-text,#253241)!important}
.public-body .fp-feature-grid .fp-feature-card .fp-feature-description em,
.public-body .fp-feature-grid .fp-feature-card .fp-feature-description i{font-style:italic!important}

/* FactorPrint CMS 1.2.30 — explicitly retain rich-text emphasis in public advantage cards. */
.public-body .fp-page .fp-feature-card .fp-feature-description :is(strong,b){font-weight:800!important;font-synthesis:weight!important}
.public-body .fp-page .fp-feature-card .fp-feature-description :is(em,i){font-style:italic!important}

/* FactorPrint CMS 1.2.32 — navigation typography per level, CSS Snapshot 2026. */
@layer utilities {
 .site-nav .nav-entry-head>a{font-family:var(--fp-menu-l1-family,inherit);font-style:var(--fp-menu-l1-style,normal)}
 .site-nav[data-fp-menu-l1-weight="1"] .nav-entry-head>a{font-weight:var(--fp-menu-l1-weight)}
 .site-nav .nav-panel .nav-child-title{font-family:var(--fp-menu-l2-family,inherit);font-style:var(--fp-menu-l2-style,normal);font-size:var(--fp-menu-l2-size,inherit)}
 .site-nav[data-fp-menu-l2-weight="1"] .nav-panel .nav-child-title{font-weight:var(--fp-menu-l2-weight)}
 .fp-navigation-menu-list>li>a{font-family:var(--fp-menu-l1-family,inherit);font-style:var(--fp-menu-l1-style,normal)}
 .fp-navigation-menu[data-fp-menu-l1-weight="1"] .fp-navigation-menu-list>li>a{font-weight:var(--fp-menu-l1-weight)}
 .fp-navigation-menu-sublist a{font-family:var(--fp-menu-l2-family,inherit);font-style:var(--fp-menu-l2-style,normal);font-size:var(--fp-menu-l2-size,inherit)}
 .fp-navigation-menu[data-fp-menu-l2-weight="1"] .fp-navigation-menu-sublist a{font-weight:var(--fp-menu-l2-weight)}
}


/* FactorPrint CMS 1.2.34 — CSS Snapshot 2026: borderless, transparent menu artwork with preserved aspect ratios. */
@layer components {
 .site-nav .nav-panel.nav-grid .nav-child .nav-child-art{
  inline-size:min(100%,var(--fp-menu-image-size,75px));width:min(100%,var(--fp-menu-image-size,75px))!important;
  block-size:var(--fp-menu-image-size,75px);height:var(--fp-menu-image-size,75px)!important;
  max-inline-size:100%;min-inline-size:0;
  margin-inline:auto;padding:0;position:relative;
  display:grid;place-items:center;overflow:visible;
  background:transparent;border:0;border-radius:0;box-shadow:none;
 }
 .site-nav .nav-panel.nav-grid .nav-child .nav-child-art img{
  display:block;position:absolute;inset:0;inline-size:100%;block-size:100%;width:100%!important;height:100%!important;
  max-inline-size:100%;max-block-size:100%;min-inline-size:0;min-block-size:0;
  object-fit:contain;object-position:center center;
  margin:0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;
  transform:scale(1);transition:transform .18s ease;
 }
 /* Image menu items stay transparent, including the surrounding hover state. */
 .site-nav .nav-panel.nav-grid .nav-child.has-image:is(:hover,:focus-visible){background:transparent;}
 /* Hover compresses the artwork only: no colored background, border or inset shadow. */
 .site-nav .nav-panel.nav-grid .nav-child.has-image:is(:hover,:focus-visible) .nav-child-art{
  background:transparent;border:0;box-shadow:none;
 }
 .site-nav .nav-panel.nav-grid .nav-child.has-image:is(:hover,:focus-visible) .nav-child-art img{
  transform:translateY(1px) scale(.94);
 }
 @media(prefers-reduced-motion:reduce){
  .site-nav .nav-panel.nav-grid .nav-child .nav-child-art img{transition:none}
  .site-nav .nav-panel.nav-grid .nav-child.has-image:is(:hover,:focus-visible) .nav-child-art img{transform:none}
 }
}

/* FactorPrint CMS 1.2.79 — CSS Snapshot 2026: enforce saved template width against any generic container width cascade.
   This rule is intentionally UNLAYERED to win against other unlayered generic .container overrides.
   Scope to the public page content only: navbar, header, footer and generic containers remain unchanged. */
.public-body .container.fp-page{width:min(var(--fp-template-max,1200px),calc(100% - 36px));max-width:var(--fp-template-max,1200px)}

/* FactorPrint CMS 1.2.80 — CSS Snapshot 2026: shared site chrome inherits the
   saved Home template max_width; backgrounds remain full-bleed. These unlayered
   rules win against legacy 1200/1250px containers without changing .fp-page. */
.public-body .site-head-inner,
.public-body .site-footer > .container,
.public-body .fp-global-slot > .container,
.public-body .fp-site-region-footer > .container.fp-site-region-content {
  width:min(var(--fp-site-layout-width,1200px),calc(100% - 36px));
  inline-size:min(var(--fp-site-layout-width,1200px),calc(100% - 36px));
  max-width:var(--fp-site-layout-width,1200px);
  max-inline-size:var(--fp-site-layout-width,1200px);
  margin-inline:auto;
}


/* FactorPrint CMS 1.2.3: company-regions.css */
/* FactorPrint CMS 1.1.29 — CSS Snapshot 2026: builder regions in header line and before footer. */
/* No published blocks means no region markup and the original header/footer remain unchanged. */
.public-body .site-head-inner.fp-head-has-region{align-items:center}
.public-body .site-head-inner>.fp-site-region-header{flex:1 1 0;inline-size:auto;min-inline-size:0;max-inline-size:100%}
.public-body .fp-site-region-header .fp-site-region-content{display:flex;align-items:center;justify-content:center;gap:clamp(8px,1.1vw,18px);inline-size:100%;min-inline-size:0}
.public-body .fp-site-region-header .fp-site-region-content>.content-block{flex:1 1 0;min-inline-size:0;margin:0;max-inline-size:100%}
.public-body .fp-site-region-header .content-block :is(h1,h2,h3,h4,h5,h6,p){margin-block:0;line-height:1.35;overflow-wrap:anywhere}
.public-body .fp-site-region-header .content-block img{display:block;max-inline-size:100%;block-size:auto}
.public-body .fp-site-region-header .richtext p+p{margin-block-start:5px}
.public-body .fp-site-region-header .fp-columns{gap:clamp(6px,1vw,12px)}
.public-body .fp-site-region-header .fp-column{min-inline-size:0;padding:clamp(6px,1vw,12px)}
.public-body .fp-site-region-header :is(.fp-column h3,.content-block h3){font-size:clamp(12px,1.25vw,17px);margin-block:0 5px}
.public-body .fp-site-region-header .content-block .button{min-block-size:38px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;white-space:normal}
/* Footer-builder content sits outside the standard dark footer, not inside its copyright strip. */
.public-body .fp-site-region-footer{inline-size:100%;min-inline-size:0;background:var(--fp-before-footer-bg,#f5f9fc);border-block-start:1px solid #e4edf3}
.public-body .fp-site-region-footer>.fp-site-region-content{display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(12px,2vw,28px);inline-size:min(1250px,calc(100% - 36px));max-inline-size:100%;margin-inline:auto;padding-block:clamp(16px,2.6vw,34px)}
.public-body .fp-site-region-footer>.fp-site-region-content>.content-block{flex:1 1 min(100%,260px);min-inline-size:0;margin:0}
.public-body .fp-site-region-footer>.fp-site-region-content>.content-block:last-child{margin-block-end:0}
/* Header now contains only the logo and custom user blocks; no fixed contact cluster. */
@media(max-width:1024px){
 .public-body .site-head-inner.fp-head-has-region{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 16px;padding-block:10px}
 .public-body .site-head-inner.fp-head-has-region>.site-logo{order:0}
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header{order:1;flex:0 0 100%;inline-size:100%;max-inline-size:100%}
 .public-body .fp-site-region-header .fp-site-region-content{justify-content:flex-start}
}
@media(max-width:1366px){
 /* Mobile nav trigger is positioned above the content; keep its reserved space. */
 .public-body .site-head-inner.fp-head-has-region{padding-inline-end:105px}
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header{inline-size:100%}
}
@media(max-width:580px){
 .public-body .fp-site-region-header .fp-site-region-content{flex-wrap:wrap;gap:9px}
 .public-body .fp-site-region-header .fp-site-region-content>.content-block{flex:1 1 min(100%,135px)}
 .public-body .fp-site-region-header .fp-columns{grid-template-columns:1fr}
 .public-body .fp-site-region-footer>.fp-site-region-content{inline-size:calc(100% - 28px);padding-block:18px}
}
.fp-company-page{padding-block:clamp(24px,4vw,60px) 90px}.fp-company-heading{max-width:920px;margin-bottom:36px}.fp-company-heading h1{font-size:clamp(30px,3.4vw,48px);line-height:1.15;letter-spacing:-.025em}.fp-company-heading p{font-size:clamp(16px,1.4vw,19px);line-height:1.75;color:#526373;white-space:normal}
.fp-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}.fp-company-card{min-width:0;padding:clamp(20px,3vw,30px);border:1px solid #d8e2ea;border-radius:14px;background:#fff;box-shadow:0 12px 40px rgba(13,49,76,.045)}.fp-company-card h2,.fp-company-map h2{font-size:clamp(19px,2vw,24px);margin:0 0 18px}.fp-company-card p{display:flex;flex-direction:column;align-items:start;gap:4px;margin:0 0 17px;line-height:1.5;overflow-wrap:anywhere}.fp-company-card p:last-child{margin-bottom:0}.fp-company-card p span{font-size:13px;color:#718291}.fp-company-card a{color:var(--fp-blue,#1685bb);text-decoration:none}.fp-company-card a:hover{text-decoration:underline}.fp-company-socials{display:flex;flex-wrap:wrap;gap:10px}.fp-company-socials a{border:1px solid #cbdce7;border-radius:9px;padding:10px 14px;background:#f6fafe;min-height:44px}.fp-company-map{margin-top:24px;padding:clamp(18px,3vw,30px);border:1px solid #d8e2ea;border-radius:14px;background:#fff}.fp-company-map iframe{width:100%;height:clamp(260px,45vw,460px);border:0;border-radius:8px}
@media(max-width:740px){.fp-company-grid{grid-template-columns:1fr}.fp-company-page{padding-block:24px 60px}.fp-company-card{border-radius:10px}.fp-site-region>.container{padding-inline:14px}}

/* 1.1.29: mobile-only visibility from header block settings. Existing shared
   token fp-visual-visibility-hide_mobile remains compatible with all builders. */
@media(max-width:700px){
 .public-body .fp-site-region-header .content-block.fp-visual-visibility-hide_mobile{display:none!important}
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header:not(:has(> .fp-site-region-content > .content-block:not(.fp-visual-visibility-hide_mobile))){display:none!important}
}

/* FactorPrint CMS 1.2.15 — reusable phone/hours/maps snippets, CSS Snapshot 2026. */
.fp-company-shortcode{min-width:0;max-width:100%;font:inherit;color:inherit}
.fp-company-shortcode dl{margin:0;display:grid;gap:10px}
.fp-company-shortcode-row{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 18px;padding:9px 0;border-bottom:1px solid rgba(115,145,168,.23);line-height:1.45}
.fp-company-shortcode-row:last-child{border-bottom:0}
.fp-company-shortcode-row dt{margin:0;color:inherit;opacity:.82}
.fp-company-shortcode-row dd{margin:0;font-weight:650}
.fp-company-shortcode-phones{display:grid;gap:4px}
.fp-company-shortcode-phones .fp-company-shortcode-row{align-items:center}
.fp-company-shortcode-label{font-size:.9em;color:inherit;opacity:.78}
.fp-company-shortcode-phones a{color:var(--fp-blue,#1685bb);text-decoration:none;overflow-wrap:anywhere;font-weight:650}
.fp-company-shortcode-phones a:hover{text-decoration:underline}
.fp-company-shortcode-phones a:focus-visible,.fp-company-shortcode-map-link a:focus-visible{outline:2px solid #177bbe;outline-offset:3px;border-radius:4px}
.fp-company-shortcode-map iframe{display:block;width:100%;max-width:100%;height:clamp(260px,38vw,440px);border:0;border-radius:12px;background:#e9f0f4}
.fp-company-shortcode-map-link a{display:inline-flex;align-items:center;padding:10px 15px;border-radius:9px;border:1px solid #b8d2e4;text-decoration:none;color:var(--fp-blue,#1685bb);background:#f5faff}
@media(max-width:580px){.fp-company-shortcode-map iframe{height:300px}.fp-company-shortcode-row{gap:4px 10px}}


/* FactorPrint CMS 1.2.16 — company profile shortcodes and bot-resistant email button. */
.fp-company-shortcode-address{font-style:normal;line-height:1.65;white-space:normal;overflow-wrap:anywhere}
.fp-company-shortcode-about{line-height:1.7;overflow-wrap:anywhere}
.fp-company-shortcode-social{display:flex;flex-wrap:wrap;gap:9px}
.fp-company-shortcode-social a{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;border:1px solid #c6dbe9;border-radius:10px;background:var(--fp-card,#fff);color:var(--fp-blue,#1685bb);text-decoration:none;overflow-wrap:anywhere}
.fp-company-shortcode-social a:hover{background:#edf6fc;border-color:#91bcd9}
.fp-company-shortcode-email{display:inline-flex;align-items:center;min-width:0;max-width:100%}
.fp-company-email-reveal{font:inherit;color:var(--fp-blue,#1685bb);background:transparent;border:1px dashed #a8c6d9;border-radius:9px;cursor:pointer;padding:7px 12px}
.fp-company-email-reveal:hover{background:#edf6fc;border-style:solid}
.fp-company-email-link{color:var(--fp-blue,#1685bb);text-decoration:underline;overflow-wrap:anywhere;font:inherit}
.fp-company-email-reveal:focus-visible,.fp-company-email-link:focus-visible,.fp-company-shortcode-social a:focus-visible{outline:2px solid #1476c8;outline-offset:3px}

/* FactorPrint CMS 1.2.81 — center the logo on phones, independently of optional
   builder blocks. The mobile menu remains in its separate dark navigation row. */
@media(max-width:700px){
 .public-body .site-head-inner,
 .public-body .site-head-inner.fp-head-has-region{justify-content:center;align-content:center;padding-inline:0;gap:10px;}
 .public-body .site-head-inner>.site-logo,
 .public-body .site-head-inner.fp-head-has-region>.site-logo{display:flex;align-items:center;justify-content:center;text-align:center;margin-inline:auto;flex:0 1 auto;min-width:0;}
 .public-body .site-head-inner>.site-logo .fp-site-logo-image{margin-inline:auto;}
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header{flex-basis:100%;}
}

/* 1.2.81: collapse empty, hidden-only header region at the handset breakpoint. */
@media(max-width:700px){
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header:not(:has(.content-block:not(.fp-visual-visibility-hide_mobile):not(.fp-visual-hide-phone))){display:none!important}
}

/* FactorPrint CMS 1.2.82 — CSS Snapshot 2026: horizontal phones and portrait/landscape
   tablets use the same centered logo row as narrow phones. The navigation is
   separate and header builder blocks follow on their own row without overlap. */
@media (max-width:1199px), (max-width:1399px) and (pointer:coarse){
 .public-body .site-head-inner,
 .public-body .site-head-inner.fp-head-has-region{
   display:flex;flex-wrap:wrap;justify-content:center;align-content:center;
   gap:10px 16px;padding-inline:0;
 }
 .public-body .site-head-inner>.site-logo,
 .public-body .site-head-inner.fp-head-has-region>.site-logo{
   display:flex;flex:0 1 auto;align-items:center;justify-content:center;
   margin-inline:auto;text-align:center;min-width:0;
 }
 .public-body .site-head-inner>.site-logo .fp-site-logo-image{display:block;margin-inline:auto;}
 .public-body .site-head-inner.fp-head-has-region>.fp-site-region-header{
   order:1;flex:0 0 100%;inline-size:100%;max-inline-size:100%;
 }
}


/* FactorPrint CMS 1.2.3: product-grid.css */
/* FactorPrint CMS 1.1.34 — CSS Snapshot 2026; adaptive product icon grid. */
.fp-product-auto-grid{display:grid;grid-template-columns:repeat(var(--fp-product-fullhd,6),minmax(0,1fr));gap:clamp(10px,1.6vw,24px);width:100%;margin:12px 0 24px}
.fp-product-auto-item{display:flex;align-items:center;flex-direction:column;gap:9px;min-width:0;text-align:center;text-decoration:none;color:inherit;padding:14px 8px;border:1px solid transparent;border-radius:10px;transition:background-color .18s,border-color .18s}
.fp-product-auto-item:hover,.fp-product-auto-item:focus-visible{background:#f4f9fc;border-color:#bcd8e8;outline-offset:2px}
.fp-product-auto-item img,.fp-product-auto-placeholder{display:block;width:100%;max-width:168px;aspect-ratio:4/3;object-fit:contain;min-width:0}
.fp-product-auto-placeholder{background:#f1f5f8;border-radius:7px}
.fp-product-auto-name{font-size:clamp(12px,1.2vw,15px);font-weight:600;line-height:1.35;overflow-wrap:anywhere}
@media(max-width:1366px){.fp-product-auto-grid{grid-template-columns:repeat(var(--fp-product-laptop,6),minmax(0,1fr))}}
@media(max-width:1024px){.fp-product-auto-grid{grid-template-columns:repeat(var(--fp-product-tablet,3),minmax(0,1fr))}}
@media(max-width:700px){.fp-product-auto-grid{grid-template-columns:repeat(var(--fp-product-mobile,2),minmax(0,1fr));gap:9px}.fp-product-auto-item{padding:8px 5px}}
@media(prefers-reduced-motion:reduce){.fp-product-auto-item{transition:none}}


/* FactorPrint CMS 1.2.3: public-edit.css */
/* FactorPrint CMS 1.1.32 — CSS Snapshot 2026, authenticated public edit shortcut. */
@layer components {
  .fp-public-edit-shortcut{position:fixed;inset-block-start:12px;inset-inline-end:14px;z-index:9999}
  .fp-public-edit-shortcut a{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:#fff;background:#176e9c;border:1px solid #0c557d;border-radius:10px;box-shadow:0 4px 16px rgb(21 45 65 / 22%);text-decoration:none;transition:background .16s,transform .16s}
  .fp-public-edit-shortcut a:hover{background:#0a537c;transform:translateY(-1px)}
  .fp-public-edit-shortcut a:focus-visible{outline:3px solid #ffc75c;outline-offset:3px}
  .fp-public-edit-shortcut svg{width:20px;height:20px;flex:none}
  @media (max-width:700px){.fp-public-edit-shortcut{inset-block-start:7px;inset-inline-end:8px}.fp-public-edit-shortcut a{width:36px;height:36px}}
  @media (prefers-reduced-motion:reduce){.fp-public-edit-shortcut a{transition:none}.fp-public-edit-shortcut a:hover{transform:none}}
}


/* FactorPrint CMS 1.2.3: navigation-exclusive.css */
/* FactorPrint CMS 1.1.25 — CSS Snapshot 2026: one desktop navigation panel at a time. */
/* JavaScript owns is-open. Disable parallel :hover and :focus-within display rules
   from the original public/admin-preview theme without affecting mobile toggles. */
@media (min-width:861px){
 .site-nav .nav-entry.has-panel > .nav-panel{display:none}
 .site-nav .nav-entry.has-panel.is-open > .nav-panel{display:grid}
}


/* FactorPrint CMS 1.2.78 — restore navigation links after generic theme link-state cascade.
   Scope to the primary navigation; never change links in pages, buttons or other menus.
   These unlayered rules intentionally follow the generated theme CSS in ResponsiveCss. */
.public-body .site-nav .nav-entry-head > a {
  color: inherit !important;
  text-decoration: none !important;
}
.public-body .site-nav .nav-panel a.nav-child {
  color: var(--fp-text, #253241) !important;
  text-decoration: none !important;
}
.public-body .site-nav .nav-panel a.nav-child .nav-child-title {
  color: inherit !important;
  text-decoration: none !important;
}


/* FactorPrint CMS 1.2.3: site-header-sticky.css */
/* FactorPrint CMS 1.2.63 — CSS Snapshot 2026: sticky primary menu only.
 * Included in dynamic adaptive CSS for the site's configured mobile-menu breakpoint.
 * Preserve the full original header/menu markup when the setting is off.
 */
@layer utilities {
  /* Top-level links always inherit the light navigation foreground, regardless of
     global normal / visited / hover link colors. Do not recolor menu-panel links. */
  .public-body .site-nav .nav-entry-head > a:is(:link,:visited,:hover,:active) {
    color: inherit;
  }
  .public-body .site-nav .nav-entry-head > .nav-expand {
    color: inherit;
  }
  /* This host is a sibling of the scrolling header: position:sticky cannot be
     constrained by a parent whose height is only the upper header area. */
  .public-body.fp-menu-sticky .fp-menu-sticky-host {
    position: sticky;
    top: 0;
    z-index: 2000;
    isolation: isolate;
    background: var(--fp-site-nav,var(--fp-navy));
    box-shadow: 0 5px 17px rgb(16 33 49 / 12%);
    min-width: 0;
    overflow: visible;
  }
  .public-body.fp-menu-sticky.fp-has-admin-toolbar .fp-menu-sticky-host {
    top: 42px; /* Matches the actual 42px fixed administration bar. */
  }
  .public-body.fp-menu-sticky .fp-menu-sticky-host > .site-nav {
    position: relative;
    z-index: 1;
  }
  @media (max-width:1366px) {
    .public-body.fp-menu-sticky .fp-menu-sticky-host {
      min-height: 52px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      padding: 5px 12px;
    }
    .public-body.fp-menu-sticky .fp-menu-sticky-host > .site-menu-trigger {
      display: inline-flex;
      align-items: center;
      gap: 9px;
      position: static;
      margin: 0;
      padding: 8px 13px;
      min-height: 42px;
      border: 1px solid rgb(255 255 255 / 35%);
      color: #fff;
      background: rgb(255 255 255 / 8%);
      border-radius: 7px;
    }
    .public-body.fp-menu-sticky .fp-menu-sticky-host > .site-nav {
      display: block;
      position: fixed;
      inset-block: 0;
      inset-inline: auto 0;
      inline-size: min(390px,calc(100vw - 32px));
      max-inline-size: 100vw;
      block-size: 100vh;
      block-size: 100dvh;
      overflow-y: auto;
      overflow-x: clip;
      overscroll-behavior: contain;
      background: var(--fp-site-nav,var(--fp-navy));
      transform: translate3d(100%,0,0);
      visibility: hidden;
      pointer-events: none;
      z-index: 101;
      box-shadow: -14px 0 35px #06182440;
      transition: transform .24s ease, visibility 0s linear .24s;
    }
    .public-body.fp-menu-sticky .fp-menu-sticky-host > .site-nav.nav-mobile-open {
      transform: translate3d(0,0,0);
      visibility: visible;
      pointer-events: auto;
      transition: transform .24s ease, visibility 0s linear 0s;
    }
    .public-body.fp-menu-sticky.fp-has-admin-toolbar .fp-menu-sticky-host > .site-nav {
      top: 42px;
      block-size: calc(100dvh - 42px);
    }
    .public-body.fp-menu-sticky.fp-has-admin-toolbar .fp-menu-sticky-host > .site-nav-backdrop:not([hidden]) {
      top: 42px;
      height: calc(100dvh - 42px);
    }
  }
  @media (prefers-reduced-motion:reduce) {
    .public-body.fp-menu-sticky .fp-menu-sticky-host > .site-nav { transition: none; }
  }
}


/* FactorPrint CMS 1.2.3: process-steps.css */
/* FactorPrint CMS 1.2.50 — mobile process markers/connector always left of the content, independent of desktop icon alignment; CSS Snapshot 2026. */
/* FactorPrint CMS 1.2.47 — six process looks/palettes, three icon alignments; CSS Snapshot 2026. */
/* FactorPrint CMS 1.2.46 — CSS Snapshot 2026: secondary Hero/CTA actions and responsive process visualization. */
@layer components {
  .public-body :is(.fp-hero-actions,.fp-cta-actions){display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-width:0}
  .public-body .fp-hero-actions{margin-top:24px}
  .public-body .fp-cta-actions{justify-content:flex-end;max-width:min(100%,510px)}
  .public-body :is(.fp-hero-actions,.fp-cta-actions) .button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;white-space:normal;text-align:center;text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}
  .public-body .fp-cta-actions .fp-action-primary.button{background:#fff;color:#184762!important;border:1px solid #fff}
  .public-body .fp-cta-actions .fp-action-primary.button:hover{background:#e2f3fc}
  .public-body :is(.fp-hero,.fp-cta) .fp-action-secondary-outline.button{background:transparent!important;color:inherit!important;border:1.5px solid currentColor!important;box-shadow:none}
  .public-body .fp-hero .fp-action-secondary-outline.button{color:#184762!important}
  .public-body .fp-cta .fp-action-secondary-outline.button{color:#fff!important}
  .public-body :is(.fp-hero,.fp-cta) .fp-action-secondary-soft.button{background:rgb(255 255 255 / 18%)!important;color:inherit!important;border:1px solid rgb(255 255 255 / 22%)!important}
  .public-body .fp-hero .fp-action-secondary-soft.button{background:rgb(22 133 187 / 10%)!important;color:#184762!important;border-color:rgb(22 133 187 / 26%)!important}
  .public-body :is(.fp-hero,.fp-cta) .fp-action-secondary-text.button{background:transparent!important;color:inherit!important;border:1px solid transparent!important;box-shadow:none!important;text-decoration:underline;text-underline-offset:5px}
  .public-body .fp-hero .fp-action-secondary-text.button{color:#184762!important}
  .public-body .fp-cta .fp-action-secondary-text.button{color:#fff!important}
  .public-body .fp-action-secondary.button:hover{filter:brightness(.94)}
  .public-body .fp-action-secondary.button:focus-visible{outline:3px solid var(--fp-ui-button-background,#1685bb);outline-offset:4px}
  .fp-process{--fp-process-accent:var(--fp-ui-button-background,var(--fp-blue,#1685bb));--fp-process-ink:var(--fp-text,#253241);--fp-process-subtle:var(--fp-muted,#687a8c);color:var(--fp-process-ink);min-width:0}
  .fp-process-header{max-width:780px;margin:0 auto 34px;text-align:center}
  .fp-process-header h2{font-size:clamp(24px,3vw,40px);line-height:1.2;letter-spacing:-.025em;margin:0 0 12px}
  .fp-process-intro{color:var(--fp-process-subtle);line-height:1.65}
  .fp-process .fp-process-list{list-style:none;margin:0;padding:0}
  .fp-process-step{min-width:0;position:relative}
  .fp-process-marker{z-index:1;position:relative;display:grid;place-items:center;flex:none;background:var(--fp-process-accent);border:4px solid #fff;border-radius:50%;width:68px;height:68px;box-shadow:0 0 0 1px rgb(22 133 187 / 18%),0 8px 25px rgb(17 76 110 / 13%);font-weight:850;font-size:21px;letter-spacing:-.06em;color:#fff}
  .fp-process-marker i{font-size:24px;letter-spacing:normal}
  .fp-process-step h3{font-size:clamp(17px,1.9vw,21px);line-height:1.3;font-weight:750;letter-spacing:-.015em;margin:0 0 8px;color:var(--fp-process-ink)}
  .fp-process-description{color:var(--fp-process-subtle);font-size:15px;line-height:1.6;overflow-wrap:anywhere}
  .fp-process-description p{margin:0 0 10px}.fp-process-description p:last-child{margin-bottom:0}
  .fp-process-link{display:inline-flex;align-items:center;gap:4px;color:var(--fp-process-accent);font-weight:700;font-size:14px;text-decoration:none;margin-top:14px}
  .fp-process-link:hover{text-decoration:underline;text-underline-offset:4px}
  .fp-process-link:focus-visible{outline:3px solid var(--fp-process-accent);outline-offset:4px;border-radius:3px}
  /* The line layout shows a connected horizontal journey. Overflow reveals additional steps without crushing copy. */
  .fp-process-line .fp-process-list{display:flex;gap:0;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:6px 2px 20px;scrollbar-width:thin}
  .fp-process-line .fp-process-step{flex:1 0 220px;max-width:330px;scroll-snap-align:start;padding:0 24px 0 0}
  .fp-process-line .fp-process-step:not(:last-child)::before{content:"";position:absolute;left:68px;right:0;top:34px;height:2px;background:linear-gradient(90deg,var(--fp-process-accent),rgb(22 133 187 / 22%))}
  .fp-process-line .fp-process-marker{margin-bottom:20px}
  /* Timeline is ideal for detailed steps, long descriptions, and more than six entries. */
  .fp-process-timeline .fp-process-list{max-width:850px;margin-inline:auto}
  .fp-process-timeline .fp-process-step{display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;padding-bottom:26px}
  .fp-process-timeline .fp-process-step:not(:last-child)::before{content:"";position:absolute;left:33px;top:68px;bottom:0;width:2px;background:linear-gradient(var(--fp-process-accent),rgb(22 133 187 / 16%))}
  .fp-process-timeline .fp-process-step-body{padding:11px 18px 24px 0;border-bottom:1px solid var(--fp-line,#dce3ea)}
  .fp-process-timeline .fp-process-step:last-child .fp-process-step-body{border-bottom:0}
  /* Cards have an editorial number badge and subtle step-to-step rhythm. */
  .fp-process-cards .fp-process-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,215px),1fr));gap:18px}
  .fp-process-cards .fp-process-step{padding:22px;border:1px solid var(--fp-line,#dce3ea);background:var(--fp-surface,#fff);border-radius:12px;box-shadow:0 9px 28px rgb(23 57 83 / 6%)}
  .fp-process-cards .fp-process-marker{width:56px;height:56px;border-width:3px;font-size:18px;box-shadow:none;margin-bottom:20px}
  .fp-process-cards .fp-process-marker i{font-size:21px}
  @media(max-width:700px){
    .public-body .fp-cta-actions{justify-content:flex-start;width:100%;max-width:none}
    .public-body :is(.fp-hero-actions,.fp-cta-actions) .button{max-width:100%}
    .fp-process-header{text-align:left;margin-bottom:24px}
    .fp-process-line .fp-process-list{display:block;overflow:visible;padding:0}
    .fp-process-line .fp-process-step{display:grid;grid-template-columns:70px minmax(0,1fr);gap:16px;max-width:none;min-height:105px;padding:0 0 24px;scroll-snap-align:none}
    .fp-process-line .fp-process-marker{margin:0;width:58px;height:58px;font-size:18px}
    .fp-process-line .fp-process-marker i{font-size:21px}
    .fp-process-line .fp-process-step:not(:last-child)::before{left:28px;top:58px;bottom:0;right:auto;width:2px;height:auto}
    .fp-process-line .fp-process-step-body{padding-top:6px}
    .fp-process-timeline .fp-process-step{grid-template-columns:64px minmax(0,1fr);gap:12px}
    .fp-process-timeline .fp-process-step:not(:last-child)::before{left:28px}
    .fp-process-timeline .fp-process-marker{width:58px;height:58px;font-size:18px}
  }
  @media(prefers-reduced-motion:reduce){.public-body .fp-action-secondary.button{transition:none!important;transform:none!important}.fp-process-line .fp-process-list{scroll-behavior:auto}}
}
/* FactorPrint CMS 1.2.46 — builder layout-only controls, not applied to public pages. */
.admin-body .fp-secondary-editor{margin:18px 0;padding:16px;border:1px solid #cbdce7;border-radius:9px;display:grid;gap:10px;min-width:0;background:#f7fafc}
.admin-body .fp-secondary-editor legend{font-weight:750;color:#21475e;padding:0 6px}
.admin-body .fp-secondary-editor>p{margin:0}
.admin-body .fp-builder-process-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}
.admin-body .fp-builder-process-step{background:#f9fcfe;border:1px solid #cbdce7;border-radius:10px;padding:14px;min-width:0}
.admin-body .fp-builder-process-header{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:12px}
.admin-body .fp-builder-process-header strong{margin-right:auto}
.admin-body .fp-builder-process-header button{min-width:35px;min-height:33px;padding:5px 8px}


/* 1.2.47: composable process presets. Defaults are intentionally identical to 1.2.46. */
@layer components {
  .fp-process.fp-process-color-blue{--fp-process-accent:#1679c2;--fp-process-rgb:22 121 194}
  .fp-process.fp-process-color-green{--fp-process-accent:#18875f;--fp-process-rgb:24 135 95}
  .fp-process.fp-process-color-purple{--fp-process-accent:#7952bc;--fp-process-rgb:121 82 188}
  .fp-process.fp-process-color-orange{--fp-process-accent:#b96519;--fp-process-rgb:185 101 25}
  .fp-process.fp-process-color-slate{--fp-process-accent:#465d70;--fp-process-rgb:70 93 112}
  .fp-process.fp-process-color-auto{--fp-process-rgb:22 133 187}
  .fp-process{--fp-process-surface:var(--fp-surface,#fff);--fp-process-soft:color-mix(in srgb,var(--fp-process-accent) 8%,transparent);--fp-process-border:color-mix(in srgb,var(--fp-process-accent) 24%,transparent)}
  .fp-process .fp-process-marker{box-shadow:0 0 0 1px var(--fp-process-border),0 8px 25px rgb(17 76 110 / 13%)}
  /* Soft: a subtle tint on every step without large shadows. */
  .fp-process-look-soft .fp-process-step{background:var(--fp-process-soft);border:1px solid var(--fp-process-border);border-radius:12px;padding:22px}
  .fp-process-look-soft.fp-process-line .fp-process-step{padding:18px 20px;max-width:330px}
  .fp-process-look-soft.fp-process-timeline .fp-process-step{padding:16px 20px;margin-bottom:14px}
  .fp-process-look-soft.fp-process-cards .fp-process-step{box-shadow:none}
  /* Bordered: editorial outlined cards with crisp outlined markers. */
  .fp-process-look-bordered .fp-process-step{border:1.5px solid var(--fp-process-border);border-radius:10px;padding:22px;background:var(--fp-process-surface);box-shadow:none}
  .fp-process-look-bordered.fp-process-line .fp-process-step{padding:18px 20px}
  .fp-process-look-bordered.fp-process-timeline .fp-process-step{padding:16px 20px;margin-bottom:12px}
  .fp-process-look-bordered .fp-process-marker{background:var(--fp-process-surface);border:2px solid var(--fp-process-accent);color:var(--fp-process-accent);box-shadow:none}
  /* Minimal: plain numbered/line icons without containers or heavy decoration. */
  .fp-process-look-minimal .fp-process-step{background:transparent;border:0;box-shadow:none}
  .fp-process-look-minimal.fp-process-cards .fp-process-step{padding:10px 4px;border-radius:0}
  .fp-process-look-minimal .fp-process-marker{border:0;border-radius:0;background:transparent;color:var(--fp-process-accent);box-shadow:none}
  .fp-process-look-minimal .fp-process-marker i{font-size:27px}
  /* Gradient: only accent elements gain a controlled gradient, readable on light backgrounds. */
  .fp-process-look-gradient .fp-process-marker{background:linear-gradient(135deg,var(--fp-process-accent),#253c63);border-color:var(--fp-process-surface);box-shadow:0 8px 24px color-mix(in srgb,var(--fp-process-accent) 23%,transparent)}
  .fp-process-look-gradient.fp-process-cards .fp-process-step{background:linear-gradient(155deg,var(--fp-process-surface) 56%,var(--fp-process-soft));border-color:var(--fp-process-border)}
  .fp-process-look-gradient.fp-process-line .fp-process-step-body,.fp-process-look-gradient.fp-process-timeline .fp-process-step-body{border-color:var(--fp-process-border)}
  /* Dark: high contrast is local to this block; never recolor the page body. */
  .fp-process-look-dark{--fp-process-ink:#f0f5fa;--fp-process-subtle:#b9c9d5;--fp-process-surface:#15232f;--fp-process-border:rgb(201 223 238 / 22%);color:var(--fp-process-ink);background:#0d1c28;padding:clamp(18px,3vw,36px);border-radius:14px}
  .fp-process-look-dark .fp-process-step{color:var(--fp-process-ink);background:var(--fp-process-surface);border:1px solid var(--fp-process-border);border-radius:12px;padding:22px;box-shadow:none}
  .fp-process-look-dark.fp-process-line .fp-process-step{padding:18px 20px}
  .fp-process-look-dark.fp-process-timeline .fp-process-step{padding:16px 20px;margin-bottom:12px}
  .fp-process-look-dark :is(.fp-process-marker,.fp-process-step-body){border-color:var(--fp-process-border)}
  .fp-process-look-dark .fp-process-marker{box-shadow:none}
  .fp-process-look-dark .fp-process-header{background:transparent;color:inherit}
  .fp-process-look-dark .fp-process-link{color:#9dd8ff}
  /* Align the icon, not the entire text body, except for the centered timeline. */
  .fp-process-line.fp-process-icons-center .fp-process-marker,.fp-process-cards.fp-process-icons-center .fp-process-marker{margin-left:auto;margin-right:auto}
  .fp-process-line.fp-process-icons-right .fp-process-marker,.fp-process-cards.fp-process-icons-right .fp-process-marker{margin-left:auto;margin-right:0}
  .fp-process-line.fp-process-icons-center .fp-process-step:not(:last-child)::before{left:50%;right:-50%}
  .fp-process-line.fp-process-icons-right .fp-process-step:not(:last-child)::before{left:calc(100% - 34px);right:-34px}
  .fp-process-timeline.fp-process-icons-right .fp-process-step{grid-template-columns:minmax(0,1fr) 84px}
  .fp-process-timeline.fp-process-icons-right .fp-process-marker{grid-column:2;grid-row:1}
  .fp-process-timeline.fp-process-icons-right .fp-process-step-body{grid-column:1;grid-row:1;padding:11px 0 24px 18px}
  .fp-process-timeline.fp-process-icons-right .fp-process-step:not(:last-child)::before{left:auto;right:49px}
  .fp-process-timeline.fp-process-icons-center .fp-process-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;min-height:160px}
  .fp-process-timeline.fp-process-icons-center .fp-process-marker{margin-inline:auto}
  .fp-process-timeline.fp-process-icons-center .fp-process-step-body{position:relative;z-index:1;width:100%;max-width:680px;padding:12px 18px 20px;background:var(--fp-process-surface);border:1px solid var(--fp-process-border);border-radius:8px}
  .fp-process-timeline.fp-process-icons-center .fp-process-step:not(:last-child)::before{left:calc(50% - 1px);top:68px;bottom:-16px}
  .fp-process-timeline.fp-process-icons-center .fp-process-step:last-child .fp-process-step-body{border:1px solid var(--fp-process-border)}
  .fp-process-icons-right.fp-process-cards .fp-process-step{text-align:right}
  .fp-process-icons-center.fp-process-cards .fp-process-step{text-align:center}
  @media(max-width:700px){
    .fp-process-line.fp-process-icons-center .fp-process-step,.fp-process-line.fp-process-icons-right .fp-process-step{display:flex;flex-direction:column;gap:10px}
    .fp-process-line.fp-process-icons-center .fp-process-step{align-items:center;text-align:center}
    .fp-process-line.fp-process-icons-right .fp-process-step{align-items:flex-end;text-align:right}
    .fp-process-line.fp-process-icons-center .fp-process-marker,.fp-process-line.fp-process-icons-right .fp-process-marker{margin:0}
    .fp-process-line.fp-process-icons-center .fp-process-step:not(:last-child)::before{left:calc(50% - 1px);right:auto;top:58px;bottom:0;width:2px;height:auto}
    .fp-process-line.fp-process-icons-right .fp-process-step:not(:last-child)::before{left:auto;right:28px;top:58px;bottom:0;width:2px;height:auto}
    .fp-process-timeline.fp-process-icons-right .fp-process-step{grid-template-columns:minmax(0,1fr) 64px}
    .fp-process-timeline.fp-process-icons-right .fp-process-step:not(:last-child)::before{right:35px}
    .fp-process-timeline.fp-process-icons-center .fp-process-step{grid-template-columns:1fr}
    .fp-process-look-soft.fp-process-line .fp-process-step,.fp-process-look-bordered.fp-process-line .fp-process-step,.fp-process-look-dark.fp-process-line .fp-process-step{padding:18px;margin-bottom:10px}
  }
  @media(forced-colors:active){.fp-process .fp-process-marker{border:2px solid CanvasText}.fp-process .fp-process-step{border-color:CanvasText}}
}

/* FactorPrint CMS 1.2.50 — mobile timeline safety for all six themes and all three desktop icon alignments.
   Force one two-column flow (marker | content), leaving connector strictly in the marker gutter. */
@layer components {
  @media(max-width:700px) {
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-list {
      display:block; overflow:visible; max-width:100%; padding:0; margin-inline:0;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-step {
      display:grid; grid-template-columns:60px minmax(0,1fr); gap:12px;
      align-items:start; text-align:left; min-width:0; min-height:0;
      width:100%; max-width:none; margin:0; padding:0 0 24px;
      background:transparent; border:0; border-radius:0; box-shadow:none;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-marker {
      grid-column:1; grid-row:1; justify-self:start; align-self:start;
      width:56px; height:56px; max-width:56px; margin:0;
      flex:none; z-index:2; font-size:18px;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      grid-column:2; grid-row:1; align-self:start; min-width:0;
      width:100%; max-width:none; margin:0; padding:4px 0 16px;
      text-align:left; position:relative; z-index:1;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-step :is(h3,.fp-process-description,.fp-process-link) {
      text-align:left; overflow-wrap:anywhere;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-step:not(:last-child)::before {
      content:""; display:block; position:absolute; left:27px; right:auto;
      top:56px; bottom:0; width:2px; height:auto; z-index:0;
      background:linear-gradient(var(--fp-process-accent),rgb(22 133 187 / 18%));
    }
    /* Center-aligned desktop timelines used to frame every body; in the classic mobile
       view restore the native unframed timeline rather than accidental card styling. */
    .public-body .fp-process-look-classic:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      background:transparent; border:0; border-radius:0; padding:4px 0 16px;
    }
    .public-body .fp-process-look-classic.fp-process-timeline .fp-process-step:not(:last-child) .fp-process-step-body {
      border-bottom:1px solid var(--fp-line,#dce3ea);
    }
    .public-body .fp-process-look-classic.fp-process-timeline.fp-process-icons-center .fp-process-step:last-child .fp-process-step-body {
      border:0;
    }
    /* Framed/colored variants retain the visual distinction on the content panel, not in the left gutter. */
    .public-body .fp-process-look-soft:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      padding:13px 14px; background:var(--fp-process-soft);
      border:1px solid var(--fp-process-border); border-radius:10px;
    }
    .public-body .fp-process-look-bordered:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      padding:13px 14px; background:var(--fp-process-surface);
      border:1px solid var(--fp-process-border); border-radius:10px;
    }
    .public-body .fp-process-look-gradient:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      padding:13px 14px; background:linear-gradient(155deg,var(--fp-process-surface),var(--fp-process-soft));
      border:1px solid var(--fp-process-border); border-radius:10px;
    }
    .public-body .fp-process-look-dark:is(.fp-process-line,.fp-process-timeline) .fp-process-step-body {
      padding:13px 14px; background:var(--fp-process-surface);
      border:1px solid var(--fp-process-border); border-radius:10px;
    }
    .public-body .fp-process:is(.fp-process-line,.fp-process-timeline) .fp-process-step:last-child {padding-bottom:0}
  }
}


/* FactorPrint CMS 1.2.3: feature-cards.css */
/* FactorPrint CMS 1.2.48 — Feature Cards presets / independent title align; CSS Snapshot 2026. */
/* Public-only scope: affects neither generic cards nor the Page Builder itself. */
.public-body .fp-feature-grid > .fp-feature-card.fp-feature-title-left > h3{text-align:left}
.public-body .fp-feature-grid > .fp-feature-card.fp-feature-title-center > h3{text-align:center}
.public-body .fp-feature-grid > .fp-feature-card.fp-feature-title-right > h3{text-align:right}
.public-body .fp-feature-grid > .fp-feature-card{min-inline-size:0;overflow-wrap:anywhere}
/* Minimal: no card chrome. */
.public-body .fp-feature-grid.fp-feature-look-minimal > .fp-feature-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:12px 4px;transform:none}
.public-body .fp-feature-grid.fp-feature-look-minimal > a.fp-feature-card:hover{box-shadow:none;transform:none}
.public-body .fp-feature-grid.fp-feature-look-minimal > .fp-feature-card > img{border-radius:8px}
/* Soft: tinted breathable surface. */
.public-body .fp-feature-grid.fp-feature-look-soft > .fp-feature-card{background:color-mix(in srgb,var(--fp-blue,#1685bb) 7%,white);border:1px solid color-mix(in srgb,var(--fp-blue,#1685bb) 17%,white);border-radius:18px;padding:24px;box-shadow:none}
.public-body .fp-feature-grid.fp-feature-look-soft > a.fp-feature-card:hover{background:color-mix(in srgb,var(--fp-blue,#1685bb) 11%,white)}
/* Outline: precision border, no resting drop shadow. */
.public-body .fp-feature-grid.fp-feature-look-outline > .fp-feature-card{background:transparent;border:2px solid color-mix(in srgb,var(--fp-blue,#1685bb) 55%,#cbd5e1);border-radius:10px;padding:23px;box-shadow:none}
.public-body .fp-feature-grid.fp-feature-look-outline > a.fp-feature-card:hover{border-color:var(--fp-blue,#1685bb);box-shadow:0 6px 20px rgb(30 62 85 / 10%)}
/* Accent: graphic colored top rule and defined surface hierarchy. */
.public-body .fp-feature-grid.fp-feature-look-accent > .fp-feature-card{background:#fff;border:1px solid var(--fp-line,#dce3ea);border-top:5px solid var(--fp-blue,#1685bb);border-radius:12px;padding:23px;box-shadow:0 6px 16px rgb(21 62 87 / 7%)}
.public-body .fp-feature-grid.fp-feature-look-accent > .fp-feature-card > h3{color:var(--fp-blue-dark,#11577f)}
/* Dark: own contrast pair, including sanitized rich-text descendants. */
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card{background:#152331;border:1px solid #304358;border-radius:16px;padding:24px;box-shadow:0 8px 22px rgb(0 0 0 / 13%);color:#e8f0f7}
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card > h3{color:#f3f9ff}
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card .fp-feature-description,
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card .fp-feature-description :is(p,li,span){color:#d3e0ec}
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card .fp-feature-description :is(strong,b,[style*="font-weight:"]){color:#fff!important}
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card .fp-feature-description a{color:#9addff}
.public-body .fp-feature-grid.fp-feature-look-dark > a.fp-feature-card:hover{background:#1c3042;box-shadow:0 12px 28px rgb(0 0 0 / 20%)}
.public-body .fp-feature-grid.fp-feature-look-dark > .fp-feature-card > img{background:#fff;border-radius:10px;padding:8px}
@media(prefers-reduced-motion:reduce){.public-body .fp-feature-grid > .fp-feature-card{transition:none!important;transform:none!important}}

/* FactorPrint CMS 1.2.71 — accessible opt-in image Lightbox on feature cards. */
.public-body .fp-feature-grid .fp-feature-card > .fp-image-lightbox-trigger{display:block;width:100%;max-width:100%;padding:0;margin:0 0 .35rem;background:transparent;border:0;cursor:zoom-in}
.public-body .fp-feature-grid .fp-feature-card > .fp-image-lightbox-trigger img{display:block;width:100%;height:175px;object-fit:contain}
.public-body .fp-feature-grid.fp-feature-look-dark .fp-feature-card > .fp-image-lightbox-trigger img{background:#fff;border-radius:10px;padding:8px}
.public-body .fp-feature-grid .fp-feature-card > .fp-image-lightbox-trigger:focus-visible{outline:3px solid var(--fp-blue,#1685bb);outline-offset:4px}


/* FactorPrint CMS 1.2.3: marketing-blocks.css */
/* FactorPrint CMS 1.2.64 — center/right heading subtitle geometry inside max-width text column. */
/* FactorPrint CMS 1.2.49 — CSS Snapshot 2026.
 * Hero, CTA, Accordion visual presets and Heading microcopy.
 * Scope all changes to explicitly selected appearance classes: legacy blocks stay intact.
 * Native HTML details/summary is preserved for keyboard access and no-JavaScript fallback.
 */

/* Heading microcopy: independent text nodes, not extra heading levels. */
.fp-heading-group{min-width:0}
.fp-heading-group .fp-heading-eyebrow{font-size:clamp(.75rem,1vw,.86rem);font-weight:750;line-height:1.5;letter-spacing:.11em;text-transform:uppercase;color:var(--fp-blue-dark,#086b9a);margin:0 0 .55em}
.fp-heading-group>h1,.fp-heading-group>h2,.fp-heading-group>h3,.fp-heading-group>h4,.fp-heading-group>h5,.fp-heading-group>h6{margin-top:0;margin-bottom:.35em}
.fp-heading-group .fp-heading-subtitle{color:var(--fp-muted,#60758a);font-size:clamp(.95rem,1.5vw,1.13rem);line-height:1.65;max-width:75ch;white-space:pre-line;overflow-wrap:anywhere;margin:.25em 0 0}

/* A 75ch subtitle is narrower than its block. text-align only aligns glyphs;
   align the entire subtitle column as well. Keep manual newlines (pre-line).
   The selector is limited to Heading blocks with an explicit alignment. */
.content-block.block-heading.fp-visual-text-center .fp-heading-group>.fp-heading-subtitle{margin-inline:auto}
.content-block.block-heading.fp-visual-text-right .fp-heading-group>.fp-heading-subtitle{margin-inline-start:auto;margin-inline-end:0}
.content-block.block-heading.fp-visual-text-left .fp-heading-group>.fp-heading-subtitle{margin-inline-start:0;margin-inline-end:auto}

/* Hero: theme values inherited by all five new presets, including primary/secondary actions. */
.fp-hero:where([class*="fp-hero-style-"]:not(.fp-hero-style-classic)){
  --fp-marketing-ink:#17344b;--fp-marketing-muted:#536d80;--fp-marketing-highlight:#126d99;
  position:relative;isolation:isolate;color:var(--fp-marketing-ink);border-radius:16px;
  border:1px solid #d9e6ef;background-color:#f7fbfe;min-width:0;
}
.fp-hero:where([class*="fp-hero-style-"]:not(.fp-hero-style-classic)) h1{color:var(--fp-marketing-ink)}
.fp-hero:where([class*="fp-hero-style-"]:not(.fp-hero-style-classic)) .fp-hero-eyebrow{color:var(--fp-marketing-highlight)}
.fp-hero:where([class*="fp-hero-style-"]:not(.fp-hero-style-classic)) .fp-hero-description{color:var(--fp-marketing-muted)}
.fp-hero:where([class*="fp-hero-style-"]:not(.fp-hero-style-classic)) .fp-hero-description p{color:inherit}
.fp-hero.fp-hero-style-light-gradient{background-image:linear-gradient(123deg,#eaf7ff 0%,#fff 46%,#f1f1ff 100%);border-color:#deebf5}
.fp-hero.fp-hero-style-dark{--fp-marketing-ink:#f3f8fd;--fp-marketing-muted:#c1d2df;--fp-marketing-highlight:#91d9fb;background:#13283b radial-gradient(ellipse at 100% 0%,#30627b 0%,#13283b 62%);border-color:#254860}
.fp-hero.fp-hero-style-minimal{background:transparent;border-color:transparent;border-radius:0;padding-inline:clamp(5px,2vw,28px);box-shadow:none}
.fp-hero.fp-hero-style-outline{background:#fff;border:2px solid #accddd;border-radius:10px}
.fp-hero.fp-hero-style-accent{background:linear-gradient(125deg,#f0f8fb,#f8f9ff);border:1px solid #c5dce8;border-inline-start:6px solid #348ab4;border-radius:10px}
.fp-hero.fp-hero-style-dark .fp-action-primary.button{background:#f4faff!important;border-color:#f4faff!important;color:#16334b!important}
.fp-hero.fp-hero-style-dark .fp-action-primary.button:hover{background:#dcedfa!important}
.fp-hero.fp-hero-style-dark .fp-action-secondary-outline.button,.fp-hero.fp-hero-style-dark .fp-action-secondary-text.button{color:#eef7ff!important}
.fp-hero.fp-hero-style-dark .fp-action-secondary-soft.button{background:rgb(255 255 255 / 11%)!important;color:#f2f8fc!important;border-color:rgb(255 255 255 / 35%)!important}

/* CTA: keep original layout and modal triggers while switching only appearance. */
.fp-cta:where([class*="fp-cta-style-"]:not(.fp-cta-style-classic)){
  --fp-marketing-ink:#193e53;--fp-marketing-muted:#567084;--fp-marketing-highlight:#1b7199;
  color:var(--fp-marketing-ink);background-color:#f7fbfe;border:1px solid #dcebf4;min-width:0;
}
.fp-cta:where([class*="fp-cta-style-"]:not(.fp-cta-style-classic)) h2{color:var(--fp-marketing-ink)}
.fp-cta:where([class*="fp-cta-style-"]:not(.fp-cta-style-classic)) :is(p,.fp-cta-description){color:var(--fp-marketing-muted)}
.fp-cta.fp-cta-style-light-gradient{background:linear-gradient(115deg,#e9f6ff 0%,#fcfdff 52%,#f0eeff 100%);border-color:#dceaf5}
.fp-cta.fp-cta-style-dark{--fp-marketing-ink:#f9fbfe;--fp-marketing-muted:#d1dfeb;background:linear-gradient(115deg,#102336,#223e57 62%,#152b41);border-color:#39516a}
.fp-cta.fp-cta-style-minimal{background:transparent;border:0;border-top:1px solid #d4e0e7;border-bottom:1px solid #d4e0e7;border-radius:0;padding-inline:clamp(12px,3vw,32px)}
.fp-cta.fp-cta-style-outline{background:#fff;border:2px solid #b1cddd;border-radius:10px}
.fp-cta.fp-cta-style-accent{background:linear-gradient(112deg,#deeff9,#f3fbff);border:1px solid #b8d9ec;border-inline-start:6px solid #2487ba;border-radius:10px}
.fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-action-primary.button{background:#186b94!important;color:#fff!important;border-color:#186b94!important}
.fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-action-primary.button:hover{background:#125777!important}
.fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) :is(.fp-action-secondary-outline.button,.fp-action-secondary-text.button){color:#20506c!important}
.fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-action-secondary-soft.button{background:#d9edf9!important;color:#194f6f!important;border-color:#b2d4e8!important}
.fp-cta.fp-cta-style-dark .fp-action-primary.button{background:#f5faff!important;color:#14364e!important;border-color:#f5faff!important}
.fp-cta.fp-cta-style-dark .fp-action-primary.button:hover{background:#dfedf7!important}
.fp-cta.fp-cta-style-dark :is(.fp-action-secondary-outline.button,.fp-action-secondary-text.button){color:#eef7ff!important}
.fp-cta.fp-cta-style-dark .fp-action-secondary-soft.button{color:#f4faff!important;background:rgb(255 255 255 / 12%)!important;border-color:rgb(255 255 255 / 30%)!important}

/* Accordion: details remain native; icon state is CSS-only, with open-mode name scoped by PHP. */
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)){display:grid;gap:10px;min-width:0}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details{
  --fp-accordion-ink:#1c3a50;--fp-accordion-copy:#476176;
  background:#fff;color:var(--fp-accordion-ink);border:1px solid #d8e5ed;border-radius:10px;
  min-width:0;overflow:hidden;padding:0;transition:border-color .18s ease,box-shadow .18s ease;
}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>summary{
  display:flex;align-items:center;gap:16px;justify-content:space-between;list-style:none;
  cursor:pointer;color:var(--fp-accordion-ink);padding:19px clamp(16px,2vw,23px);font-weight:700;
}
/* Override site-wide open-state summary colors only for explicit accordion presets. */
.public-body .fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>summary,
.public-body .fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details[open]>summary{color:var(--fp-accordion-ink)}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>summary::-webkit-details-marker{display:none}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>summary::after{
  content:"+";flex:none;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;
  width:30px;height:30px;font-size:19px;line-height:1;font-weight:400;opacity:.78;
}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details[open]>summary::after{content:"−"}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>div{
  color:var(--fp-accordion-copy);padding:0 clamp(16px,2vw,23px) 22px;line-height:1.65;overflow-wrap:anywhere;
}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>div :is(p,li){color:inherit}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details[open]{box-shadow:0 8px 24px #173c5210;border-color:#aacbdc}
.fp-accordion.fp-accordion-style-light-gradient details{background:linear-gradient(110deg,#ecf7ff,#fff 75%,#f6f2ff);border-color:#dcebf6}
.fp-accordion.fp-accordion-style-light-gradient details[open]{background:linear-gradient(110deg,#e1f2fc,#fff 78%)}
.fp-accordion.fp-accordion-style-dark details{--fp-accordion-ink:#f0f7fe;--fp-accordion-copy:#d2e3ef;background:#172c40;border-color:#314c60}
.fp-accordion.fp-accordion-style-dark details[open]{background:#1f3b50;border-color:#426e8c;box-shadow:0 7px 25px #091e3226}
.fp-accordion.fp-accordion-style-minimal{gap:0}
.fp-accordion.fp-accordion-style-minimal details,.fp-accordion.fp-accordion-style-minimal details[open]{background:transparent;border:0;border-radius:0;border-bottom:1px solid #d1e1e8;box-shadow:none}
.fp-accordion.fp-accordion-style-minimal details>summary{padding-inline:3px}
.fp-accordion.fp-accordion-style-minimal details>div{padding-inline:3px}
.fp-accordion.fp-accordion-style-outline details{background:#fff;border:2px solid #9dc4d9}
.fp-accordion.fp-accordion-style-outline details[open]{background:#f8fcff;border-color:#347fa8}
.fp-accordion.fp-accordion-style-accent details{background:#fff;border:1px solid #dbe8ee;border-left:5px solid #6cb5d4}
.fp-accordion.fp-accordion-style-accent details[open]{background:#f0f9ff;border-left-color:#197ba9}
.fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) summary:focus-visible{outline:3px solid #5a9ec4;outline-offset:-4px}
@media(max-width:700px){
  .fp-cta:where([class*="fp-cta-style-"]:not(.fp-cta-style-classic)){gap:20px}
  .fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>summary{padding-block:15px}
  .fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details>div{padding-bottom:18px}
}
@media(prefers-reduced-motion:reduce){
  .fp-accordion:where([class*="fp-accordion-style-"]:not(.fp-accordion-style-classic)) details{transition:none}
}

/* 1.2.49: public theme button rules may carry !important colors; preserve contrast. */
.public-body .fp-hero.fp-hero-style-dark .fp-hero-actions .fp-action-primary.button{color:#16334b!important}
.public-body .fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-cta-actions .fp-action-primary.button{color:#fff!important}
/* Existing public theme also defines layered !important button colors. In CSS Cascade,
 * layered important declarations outrank unlayered ones, so override in that layer. */
@layer components {
  .public-body .fp-hero.fp-hero-style-dark .fp-hero-actions .fp-action-primary.button{color:#16334b!important}
  .public-body .fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-cta-actions .fp-action-primary.button{color:#fff!important}
  .public-body .fp-hero.fp-hero-style-dark .fp-hero-actions .fp-action-secondary.button{color:#eef7ff!important}
  .public-body .fp-cta[class*="fp-cta-style-"]:not(.fp-cta-style-classic,.fp-cta-style-dark) .fp-cta-actions .fp-action-secondary.button{color:#20506c!important}
}
/* Nested Heading subtitle stays readable on a dark Accordion surface. */
.fp-accordion.fp-accordion-style-dark .fp-heading-subtitle{color:#d2e3ef}
.fp-accordion.fp-accordion-style-dark .fp-heading-eyebrow{color:#94d8f7}


/* FactorPrint CMS 1.2.3: price-list.css */
/* FactorPrint CMS 1.2.55 — three-column Price List item: name / large multiline description / price; adaptive CSS Snapshot 2026. */
/* FactorPrint CMS 1.2.54 — one-column admin items, optional dotted leaders and bold prices, CSS Snapshot 2026. */
/* FactorPrint CMS 1.2.53 — menu-style price list, CSS Snapshot 2026; no JavaScript required. */
@layer components {
  .public-body .fp-price-list{--fp-price-ink:var(--fp-text,#263441);--fp-price-muted:var(--fp-muted,#68788c);--fp-price-dots:color-mix(in srgb,var(--fp-price-ink) 38%,transparent);list-style:none;margin:0;padding:clamp(12px,2.5vw,24px);min-width:0;border-radius:12px;color:var(--fp-price-ink);background:transparent}
  .public-body .fp-price-list-item{margin:0;min-width:0;padding:16px 0;border-bottom:1px solid color-mix(in srgb,var(--fp-price-ink) 12%,transparent)}
  .public-body .fp-price-list-item:last-child{border-bottom:0}
  .public-body .fp-price-list-line{display:flex;gap:12px;align-items:baseline;min-width:0;line-height:1.45}
  .public-body .fp-price-list-name{font-size:clamp(15px,1.3vw,18px);font-weight:700;min-width:0;overflow-wrap:anywhere}
  .public-body .fp-price-list-dots{flex:1 1 auto;min-width:14px;border-bottom:2px dotted var(--fp-price-dots);height:1em;align-self:baseline;transform:translateY(-.20em)}
  .public-body .fp-price-list-price{flex:0 0 auto;max-width:48%;text-align:right;font-size:clamp(15px,1.3vw,18px);font-weight:750;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
  .public-body .fp-price-list-no-dots .fp-price-list-dots{border-bottom:0}
  .public-body .fp-price-list-price-normal .fp-price-list-price{font-weight:400}
  .public-body .fp-price-list-description{margin:5px 0 0;max-width:72ch;font-size:.92em;line-height:1.55;color:var(--fp-price-muted);overflow-wrap:anywhere}
  .public-body .fp-price-list-soft{background:linear-gradient(120deg,#f4faff 0%,#fdf7ff 100%);border:1px solid #e0e9f3}
  .public-body .fp-price-list-dark{--fp-price-ink:#f2f6fa;--fp-price-muted:#c4d1e0;--fp-price-dots:#7b9db8;background:linear-gradient(145deg,#152333,#243b51);border:1px solid #334b64}
  @media(max-width:480px){.public-body .fp-price-list{padding:14px}.public-body .fp-price-list-line{gap:8px}.public-body .fp-price-list-price{max-width:46%}.public-body .fp-price-list-item{padding:13px 0}.public-body .fp-price-list-description{font-size:.85em}}
}
/* Admin uses the exact same menu structure when a public preview is embedded. */
.admin-body .fp-builder-price-items{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;width:100%;min-width:0}
.admin-body .fp-builder-price-item{width:100%;max-width:100%;box-sizing:border-box;min-width:0;padding:14px;border:1px solid #d7e5ed;border-radius:10px;background:#fbfdff}
.admin-body .fp-builder-price-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px}
.admin-body .fp-builder-price-head strong{margin-right:auto}
.admin-body .fp-builder-price-head button{min-height:36px;padding:6px 10px}

/* Each position stays on its own full-width card; its inputs share one row.
   Container queries adapt to the actual inspector width rather than viewport width. */
.admin-body .fp-builder-price-item{container-type:inline-size}
.admin-body .fp-builder-price-fields{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2.35fr) minmax(0,.8fr);gap:18px;align-items:start;width:100%;min-width:0}
.admin-body .fp-builder-price-fields>div{min-width:0;max-width:100%}
.admin-body .fp-builder-price-fields .builder-field{display:flex;flex-direction:column;align-items:stretch;min-width:0;width:100%;max-width:100%;margin:0}
/* Description uses a real multiline control with wrap and a generous height. */
.admin-body .fp-builder-price-fields .builder-field input,
.admin-body .fp-builder-price-fields .builder-field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.admin-body .fp-builder-price-description textarea{min-height:148px;height:148px;line-height:1.5;resize:vertical;overflow-wrap:anywhere;white-space:pre-wrap}
/* A narrower column should not crush a long price or the central description. */
@container (max-width:680px){
  .admin-body .fp-builder-price-fields{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px}
  .admin-body .fp-builder-price-cost{grid-column:1 / -1}
}
@container (max-width:440px){
  .admin-body .fp-builder-price-fields{grid-template-columns:minmax(0,1fr)}
  .admin-body .fp-builder-price-cost{grid-column:auto}
}
@media(max-width:480px){.admin-body .fp-builder-price-item{padding:12px}.admin-body .fp-builder-price-head{row-gap:8px}}


/* FactorPrint CMS 1.2.80 — Home-aligned primary navigation */
@media(min-width:1367px){.public-body .site-nav .nav-inner{width:min(var(--fp-site-layout-width,1200px),calc(100% - 36px));max-width:var(--fp-site-layout-width,1200px);margin-inline:auto}}

/* FactorPrint CMS 1.2.5 — aligned primary nav items */
.site-nav[data-menu-align="left"] .nav-inner{justify-content:flex-start}
.site-nav[data-menu-align="center"] .nav-inner{justify-content:center}
.site-nav[data-menu-align="right"] .nav-inner{justify-content:flex-end}
.site-nav[data-menu-align="stretch"] .nav-inner{justify-content:stretch}
.site-nav[data-menu-align="stretch"] .nav-inner>.nav-entry{flex:1 1 0;min-width:0}
.site-nav[data-menu-align="stretch"] .nav-entry-head{justify-content:center}
@media(max-width:1366px){.site-nav[data-menu-align] .nav-inner{display:block;justify-content:initial}.site-nav[data-menu-align="stretch"] .nav-inner>.nav-entry{flex:none;width:100%}.site-nav[data-menu-align="stretch"] .nav-entry-head{justify-content:space-between}}
/* FactorPrint CMS 1.2.3 — independent secondary/footer/builder off-canvas menus */
.fp-menu-instance{position:relative;min-width:0}
.fp-menu-instance>[data-fp-menu-toggle],.fp-menu-drawer>[data-fp-menu-close]{display:none}
.fp-menu-overlay[hidden]{display:none!important}
.fp-menu-drawer{min-width:0}
.fp-menu-instance nav.fp-navigation-menu{min-width:0}
.fp-menu-instance nav .fp-navigation-menu-list{font-size:var(--fp-menu-font-size,14px)}
html.fp-compact-nav-active{overflow:hidden}
@media(prefers-reduced-motion:reduce){.fp-menu-drawer{transition:none!important}}
@media(max-width:1366px){
.fp-menu-instance[data-fp-menu-id="1"]>[data-fp-menu-toggle]{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #a9c2d3;border-radius:8px;min-height:44px;padding:9px 14px;background:#eff6fa;color:#15394a;font:inherit;cursor:pointer}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer{display:block;position:fixed;z-index:3002;top:0;right:0;width:min(390px,calc(100vw - 20px));height:100vh;height:100dvh;padding:22px 18px;background:#fff;color:#152d3d;overflow-y:auto;overscroll-behavior:contain;box-shadow:-8px 0 32px #0b263644;transform:translateX(110%);visibility:hidden;transition:transform .22s ease,visibility .22s}
.fp-menu-instance[data-fp-menu-id="1"].fp-menu-open>.fp-menu-drawer{transform:translateX(0);visibility:visible}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer>[data-fp-menu-close]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;float:right;border:1px solid #b2c6d3;background:#f4f8fa;border-radius:8px;cursor:pointer;margin-bottom:18px}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer>nav{clear:both}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer .fp-navigation-menu-list,.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer .fp-navigation-menu-sublist{display:flex;flex-direction:column;align-items:stretch;gap:0;text-align:left;margin:0;padding:0}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer .fp-navigation-menu-sublist{padding-left:17px;border-left:2px solid #d8e6ee;margin:9px 0 0}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer .fp-navigation-menu-list li{padding:6px 0;width:100%}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-drawer .fp-navigation-menu-list a{display:inline-flex;min-height:38px;align-items:center;line-height:1.4}
.fp-menu-instance[data-fp-menu-id="1"]>.fp-menu-overlay:not([hidden]){display:block;position:fixed;inset:0;background:rgba(12,31,45,.6);z-index:3001;cursor:pointer;border:0;width:100%;height:100%}
}
@media(max-width:860px){
.fp-menu-instance[data-fp-menu-id="3"]>[data-fp-menu-toggle]{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #a9c2d3;border-radius:8px;min-height:44px;padding:9px 14px;background:#eff6fa;color:#15394a;font:inherit;cursor:pointer}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer{display:block;position:fixed;z-index:3002;top:0;right:0;width:min(390px,calc(100vw - 20px));height:100vh;height:100dvh;padding:22px 18px;background:#fff;color:#152d3d;overflow-y:auto;overscroll-behavior:contain;box-shadow:-8px 0 32px #0b263644;transform:translateX(110%);visibility:hidden;transition:transform .22s ease,visibility .22s}
.fp-menu-instance[data-fp-menu-id="3"].fp-menu-open>.fp-menu-drawer{transform:translateX(0);visibility:visible}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer>[data-fp-menu-close]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;float:right;border:1px solid #b2c6d3;background:#f4f8fa;border-radius:8px;cursor:pointer;margin-bottom:18px}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer>nav{clear:both}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer .fp-navigation-menu-list,.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer .fp-navigation-menu-sublist{display:flex;flex-direction:column;align-items:stretch;gap:0;text-align:left;margin:0;padding:0}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer .fp-navigation-menu-sublist{padding-left:17px;border-left:2px solid #d8e6ee;margin:9px 0 0}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer .fp-navigation-menu-list li{padding:6px 0;width:100%}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-drawer .fp-navigation-menu-list a{display:inline-flex;min-height:38px;align-items:center;line-height:1.4}
.fp-menu-instance[data-fp-menu-id="3"]>.fp-menu-overlay:not([hidden]){display:block;position:fixed;inset:0;background:rgba(12,31,45,.6);z-index:3001;cursor:pointer;border:0;width:100%;height:100%}
}
/* FactorPrint CMS 1.2.68 — responsive per-block settings */
.public-body .fp-page .fp-columns:not(.fp-columns-weighted){grid-template-columns:repeat(var(--fp-block-cols-fullhd,var(--fp-block-cols-desktop,var(--fp-cols,2))),minmax(0,1fr))}
.public-body .fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-fullhd,var(--fp-block-cols-desktop,var(--fp-template-cols-desktop,3))),minmax(0,1fr))}
.public-body .fp-page .fp-columns.fp-columns-weighted{grid-template-columns:var(--fp-grid-fullhd-tracks,var(--fp-column-tracks))}
@media(min-width:1245px) and (max-width:1366px){.public-body .fp-page .fp-columns:not(.fp-columns-weighted){grid-template-columns:repeat(var(--fp-block-cols-laptop,var(--fp-block-cols-desktop,var(--fp-cols,2))),minmax(0,1fr))}.public-body .fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-laptop,var(--fp-block-cols-desktop,var(--fp-template-cols-desktop,3))),minmax(0,1fr))}.public-body .fp-page .fp-columns.fp-columns-weighted{grid-template-columns:var(--fp-grid-laptop-tracks,var(--fp-column-tracks))}}
@media(min-width:701px) and (max-width:1244px) and (orientation:landscape){.public-body .fp-page .fp-columns:not(.fp-columns-weighted){grid-template-columns:repeat(var(--fp-block-cols-tablet_landscape,var(--fp-block-cols-tablet,2)),minmax(0,1fr))}.public-body .fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-tablet_landscape,var(--fp-block-cols-tablet,var(--fp-template-cols-tablet,2))),minmax(0,1fr))}.public-body .fp-page .fp-columns.fp-columns-weighted{grid-template-columns:var(--fp-grid-tablet_landscape-tracks,repeat(2,minmax(0,1fr)))}}
@media(min-width:701px) and (max-width:1244px) and (orientation:portrait){.public-body .fp-page .fp-columns{grid-template-columns:repeat(var(--fp-block-cols-tablet_portrait,1),minmax(0,1fr))!important}.public-body .fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-tablet_portrait,var(--fp-block-cols-tablet,2)),minmax(0,1fr))}}
@media(max-width:700px){.public-body .fp-page .fp-columns{grid-template-columns:repeat(var(--fp-block-cols-phone,var(--fp-block-cols-mobile,1)),minmax(0,1fr))!important}.public-body .fp-page .fp-feature-grid{grid-template-columns:repeat(var(--fp-block-cols-phone,var(--fp-block-cols-mobile,1)),minmax(0,1fr))!important}}
@media(min-width:1367px){.fp-visual-hide-fullhd{display:none!important}}
@media(min-width:1245px) and (max-width:1366px){.fp-visual-hide-laptop{display:none!important}}
@media(min-width:701px) and (max-width:1244px) and (orientation:landscape){.fp-visual-hide-tablet_landscape{display:none!important}}
@media(min-width:701px) and (max-width:1244px) and (orientation:portrait){.fp-visual-hide-tablet_portrait{display:none!important}}
@media(max-width:700px){.fp-visual-hide-phone{display:none!important}}
