/* Shared styles for the supplied design and editable WordPress content. */
body{overflow-x:visible}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d49e3c;outline-offset:4px}button,input,textarea{font:inherit}a{overflow-wrap:anywhere}img{height:auto}p+.btn{margin-top:24px}.skip-link{position:fixed;top:-100px;left:12px;z-index:9999;background:#fff;color:#0f2540;padding:12px}.skip-link:focus{top:12px}.site-header .hin{max-width:1440px}.site-nav>a{padding:0 11px;font-size:13px}.site-nav>a::after{left:11px;right:11px}.lg{padding-right:22px}.menu-toggle,.mobile-only{display:none}.hero .hin2{padding-top:88px}.hero .kpi .v b{font-size:26px}.hero .lead{font-size:18px;max-width:670px}.hero .dis{font-size:12px;color:#c8d0db}.dis{color:#546274;font-size:13px}.issue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:38px;border:1px solid var(--line)}.issue-card{padding:30px;border:1px solid var(--line);transition:background .2s}.issue-card:hover{background:var(--bg2)}.issue-card>span{font-size:11px;letter-spacing:.15em;color:#866322}.issue-card h3{font-size:19px;margin:12px 0}.issue-card p{font-size:14px;color:var(--sub)}.issue-card b{display:block;margin-top:20px;font-size:13px}.phase-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:40px 0}.phase-grid>div{background:#fff;border-top:4px solid var(--gold);padding:32px}.phase-grid b{font-size:12px;color:#866322}.phase-grid h3{font-size:23px;margin:12px 0}.phase-grid p{font-size:15px}.home-content .btn{margin-top:24px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:32px 0}.article-card{border:1px solid var(--line);background:#fff;min-width:0;transition:transform .2s,box-shadow .2s}.article-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #132b4210}.article-card a{display:block;height:100%}.article-card img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#f3f5f7}.card-body{padding:24px}.card-body time{font-size:12px;color:#637080}.card-body h3{font-size:18px;line-height:1.7;margin:12px 0 24px}.readmore{font-size:13px;color:#866322;font-weight:700}.price-section .pl3{margin-bottom:30px}.price-section .pl3>div{padding-bottom:24px}.table-scroll{overflow-x:auto;max-width:100%;margin:24px 0}.price-table{width:100%;min-width:650px;border-collapse:collapse;background:#fff;font-size:14px}.price-table caption{text-align:left;font-weight:700;padding:10px 0}.price-table th,.price-table td{padding:17px 16px;border:1px solid #dce2e8;text-align:center}.price-table thead th{background:var(--navy);color:#fff}.price-table tbody th{text-align:left;background:#eef2f5}.price-notes{font-size:14px;margin-bottom:28px}.price-notes p{margin-bottom:14px}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;counter-reset:flow;gap:22px;margin-top:40px}.steps li{counter-increment:flow;border-top:2px solid var(--gold);padding-top:24px}.steps li:before{content:'STEP 0' counter(flow);display:block;color:#866322;font-weight:700;font-size:12px;letter-spacing:.12em;margin-bottom:12px}.steps p{font-size:14px;margin-top:12px}.faq-list{margin-top:32px}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{cursor:pointer;font-weight:700;padding-right:24px}.faq-list p{margin:16px 24px 0;color:var(--sub);font-size:15px}.fcta{padding:76px 0;text-align:center}.fcta h2{font-size:36px;line-height:1.6}.fcta p{margin:20px 0;color:#d9e0e9}.cta-buttons{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:24px}.site-footer{background:#f1f4f7;color:var(--ink);padding:56px 0 28px}.footer-grid{display:grid;grid-template-columns:1fr 2fr;gap:48px}.company-logo{background:#fff;max-height:90px;object-fit:contain;margin-bottom:18px}.footer-grid p{font-size:13px}.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;font-size:12px}.copyright{font-size:11px;color:#627083;margin-top:40px}.mobile-cta{display:none}.page-heading{background:var(--navy);color:#fff;padding:30px 0 56px}.page-heading h1{font-size:36px;line-height:1.55;margin-top:28px;max-width:980px}.page-heading time{display:block;font-size:13px;color:#d5dce5;margin-top:20px}.breadcrumb{font-size:12px;color:#d5dce5}.breadcrumb a{text-decoration:underline}.page-body,.archive-body{padding-top:64px;padding-bottom:80px}.reading-width{max-width:940px;padding-top:56px;padding-bottom:80px}.article-cover{margin-bottom:36px}.article-cover img{width:100%;max-height:550px;object-fit:contain}.entry-content{overflow-wrap:anywhere;min-width:0}.entry-content h2{font-size:27px;line-height:1.6;margin:48px 0 20px;color:var(--navy)}.entry-content h3{font-size:21px;line-height:1.6;margin:32px 0 14px}.entry-content p{margin:0 0 22px}.entry-content ul,.entry-content ol{padding-left:1.5em;margin:20px 0;list-style:revert}.entry-content li{margin-bottom:8px}.entry-content a:not(.btn):not(.issue-card){color:#214f7e;text-decoration:underline;text-underline-offset:4px}.entry-content table{border-collapse:collapse;max-width:100%;width:100%;font-size:14px}.entry-content td,.entry-content th{padding:12px;border:1px solid var(--line);overflow-wrap:anywhere}.entry-content section{padding:0;margin:24px 0}.entry-content section.price-section,.entry-content section.faq-section{padding:40px 0}.entry-content .price-section .w,.entry-content .faq-section .w{padding:0 24px}.entry-content .issue-grid h3{margin-top:0}.entry-content .issue-card p{font-size:14px}.entry-content .btn{color:#fff}.entry-content .btn-l{color:var(--navy)}.entry-content svg{max-width:100%;height:auto}.legacy-content header,.legacy-content footer{position:static;background:transparent;padding:0;border:0;backdrop-filter:none}.legacy-content [style*="width"]{max-width:100%}.legacy-content .kpi{display:block;border:1px solid #dce2e8;padding:16px}.legacy-content .kpi>div{border:0}.legacy-content .hero{padding:24px;background:var(--navy)}.legacy-content .hero:before,.legacy-content .hero:after{display:none}.legacy-content .btn{margin:8px 0;background:var(--navy)}.notice{padding:20px;background:#f3f5f7;border-left:3px solid var(--gold);font-size:14px;margin:20px 0}.author-box{padding:24px;background:#f3f5f7;margin-top:40px}.topic-links{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.topic-links a,.filter-nav a{padding:7px 14px;border:1px solid #ccd5df;font-size:13px;border-radius:3px}.filter-nav{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filter-nav a{display:inline-block;flex:0 1 auto}.filter-nav a[aria-current]{background:var(--navy);color:#fff}.tag-filter{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;margin:24px 0}.tag-filter a{text-decoration:underline}.pagination{display:block;text-align:center;margin-top:40px}.nav-links{display:flex;justify-content:center;gap:10px}.page-numbers{padding:8px 14px;border:1px solid #ccd5df}.page-numbers.current{background:var(--navy);color:#fff}.site-links{columns:2}.service-focus{border:1px solid var(--line);padding:32px;margin-top:32px}.wpcf7{max-width:760px;margin:36px auto}.wpcf7 label{display:block;font-weight:700}.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 textarea{display:block;width:100%;padding:13px;border:1px solid #9aabba;border-radius:3px;margin-top:8px;background:#fff}.wpcf7-submit{padding:16px 36px;border:0;background:var(--cta);color:#fff;cursor:pointer;font-weight:700}.wpcf7-list-item{margin-left:0}.wpcf7 .required{font-size:12px;color:#a33b18}.wpcf7-response-output{margin:16px 0!important}.entry-content .mainvisual,.entry-content .breadcrumb,.entry-content .pankuzu,.entry-content .contactbox{display:none}.entry-content .inner{max-width:100%;width:auto}.entry-content dl{margin:24px 0}.entry-content dt{font-weight:700;border-top:1px solid #dce2e8;padding-top:16px}.entry-content dd{margin:4px 0 16px}.entry-content img{max-width:100%;height:auto}
@media(min-width:1201px){.site-nav{display:flex!important}}
@media(max-width:1200px){.site-header .hin{align-items:center;justify-content:space-between;flex-wrap:wrap}.site-nav{display:none;width:100%;flex-basis:100%;order:4;padding:14px 0 24px;max-height:75vh;overflow-y:auto}.site-nav.is-open{display:flex;flex-direction:column}.site-nav>a{padding:12px 4px;border-bottom:1px solid var(--line)}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid #bdc8d4;padding:8px 12px;font-size:13px;color:var(--navy)}.hact{margin-left:auto;margin-right:20px;order:1}.menu-toggle{order:2}.mobile-only{display:block}.lg{padding-right:12px}.site-header .lg{padding-top:17px;padding-bottom:17px}}
@media(max-width:760px){.w,.site-header .hin{padding-left:22px;padding-right:22px}.hact{display:none}.hero .hin2{padding-top:56px}.hero h1{font-size:38px}.hero .lead{font-size:16px}.hero .kpi{grid-template-columns:1fr 1fr}.hero .kpi>div{padding:20px 12px}.hero .kpi .v b{font-size:21px}.hero .hbtn{gap:12px;margin-bottom:40px}.hbtn .btn{width:100%;padding:15px 12px}section{padding:64px 0}.sh{font-size:28px}.sl{font-size:15px}.issue-grid{grid-template-columns:1fr 1fr}.issue-card{padding:20px 16px}.issue-card h3{font-size:17px}.phase-grid{grid-template-columns:1fr;gap:18px}.phase-grid>div{padding:25px}.article-grid{grid-template-columns:1fr;gap:24px}.article-card img{max-height:260px}.steps{grid-template-columns:1fr 1fr}.fcta h2{font-size:28px}.fcta .btn{width:100%;font-size:14px;padding:17px 12px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-links{grid-template-columns:1fr 1fr}.site-footer{padding-bottom:100px}.mobile-cta{position:fixed;bottom:0;left:0;right:0;z-index:99;display:grid;grid-template-columns:1fr 1fr;background:#fff;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #10264015}.mobile-cta a{padding:17px 8px;text-align:center;font-size:13px;font-weight:700;color:var(--navy)}.mobile-cta a:last-child{background:var(--cta);color:#fff}.page-heading{padding-bottom:36px}.page-heading h1{font-size:27px}.reading-width,.page-body,.archive-body{padding-top:36px;padding-bottom:48px}.entry-content h2{font-size:23px}.entry-content h3{font-size:19px}.entry-content .price-section .w,.entry-content .faq-section .w{padding:0 12px}.entry-content table{display:block;overflow-x:auto;white-space:normal}.price-table{display:table!important}.site-links{columns:1}.filter-nav{gap:8px}.filter-nav a{font-size:12px;padding:7px 10px}.entry-content [class*=grid]{grid-template-columns:1fr!important}.entry-content .issue-grid{grid-template-columns:1fr 1fr!important}.entry-content .pl3{display:block}.entry-content .pl3>div{margin-bottom:20px}.entry-content svg{min-width:0}.lg .n1{font-size:21px}.lg .n2{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.case-summary{background:#f3f5f7;padding:24px;margin-bottom:32px;display:grid;grid-template-columns:100px 1fr;gap:12px}.case-summary dt{font-weight:700}.case-summary dd{margin:0}.entry-content .p-company__message>ul{list-style:none;display:grid;grid-template-columns:300px 1fr;gap:36px;padding:0}.p-company__message img{width:100%;max-width:300px}.entry-content .p-company__wrapper dl{display:grid;grid-template-columns:160px 1fr;gap:0 28px}.entry-content .p-company__wrapper dd{border-top:1px solid #dce2e8;padding-top:16px;margin:0 0 16px}@media(max-width:760px){.entry-content .p-company__message>ul,.entry-content .p-company__wrapper dl{grid-template-columns:1fr}.entry-content .p-company__wrapper dd{border:0;padding-top:0}.case-summary{grid-template-columns:1fr;gap:4px}}
section[id]{scroll-margin-top:100px}.home-content .hbtn .btn{margin-top:0}

.archive-filters{margin:0 0 28px}.archive-filters>summary{display:none}.archive-filter-content{display:block}.archive-filters:not([open])>.archive-filter-content{display:block}@media(max-width:760px){.archive-filters{border:1px solid #ccd5df;border-radius:4px;margin-bottom:24px}.archive-filters>summary{display:list-item;padding:12px 16px;font-size:14px;font-weight:700;cursor:pointer}.archive-filter-content{padding:0 16px 16px}.archive-filters:not([open])>.archive-filter-content{display:none}.archive-filters .tag-filter{margin-bottom:0}}

.issue-page-content>p{margin:0 0 24px}.issue-page-content>.issue-grid{margin:32px 0}

.plan-audience{padding:0 20px 20px;margin:0;font-size:14px;line-height:1.8;text-align:left}.archive-intro{margin-bottom:28px}.form-hint{display:block;margin-top:8px;line-height:1.8}

/* Recommendations: preserve the original reading width whenever possible. */
.column-layout.has-recommendations{max-width:1260px;display:grid;grid-template-columns:minmax(0,852px) 260px;gap:32px;align-items:start}
.column-layout>article{min-width:0}
.recommended-articles{min-width:0;border-top:3px solid var(--gold);padding-top:20px}
.recommended-articles h2{font-size:21px;line-height:1.5;margin:0 0 20px;color:var(--navy)}
.recommended-articles ul{list-style:none;margin:0;padding:0;display:grid;gap:24px}
.recommended-articles li{margin:0;min-width:0}
.recommended-articles a{display:block;color:var(--ink)}
.recommended-articles a:hover span{text-decoration:underline}
.recommended-articles img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--bg2);margin-bottom:10px}
.recommended-articles span{font-weight:700;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.recommended-mobile{display:none}
@media(max-width:1099px){.column-layout.has-recommendations{display:block;max-width:940px}.recommended-desktop{display:none}.recommended-mobile{display:block;max-width:852px;margin:40px auto;padding:24px 22px 0}.recommended-mobile ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.recommended-mobile ul{grid-template-columns:1fr}.recommended-mobile a{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:start}.recommended-mobile a:not(:has(img)){display:block}.recommended-mobile img{margin:0}.recommended-mobile{margin:32px auto 48px}}

/* Author profile: photo/name on the first row, biography on its own row. */
.writer-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px 24px;text-align:left;align-items:center;margin:40px 0 24px;padding:24px}
.writer-card .writer-photo{display:block;width:120px;height:120px;max-width:100%;object-fit:cover;border-radius:4px;margin:0}
.writer-card .writer-name{min-width:0}.writer-card .writer-label{display:block;font-size:12px;color:var(--sub);margin-bottom:6px}
.writer-card .writer-name h2{font-size:22px;line-height:1.6;margin:0;color:var(--navy);overflow-wrap:anywhere}
.writer-card .writer-name a{color:inherit;text-decoration:none}.writer-card .writer-name a:hover{text-decoration:underline}
.writer-card .writer-bio{grid-column:1/-1;min-width:0;font-size:15px;line-height:1.9;overflow-wrap:anywhere}
.writer-card .writer-bio p{margin:0 0 14px}.writer-card .writer-bio>:last-child{margin-bottom:0}
.writer-card.without-photo{grid-template-columns:minmax(0,1fr)}.entry-content .writer-card{padding:24px}
@media(max-width:760px){.writer-card{grid-template-columns:minmax(0,1fr);gap:16px;padding:22px}.writer-card .writer-photo{width:120px;height:120px}.writer-card .writer-name h2{font-size:21px}}

/* FV 1.5: keep text readable independently of the supplied imagery. */
.hero .fv-layout{display:grid;grid-template-columns:1fr;align-items:center;gap:36px;padding-bottom:38px}
.hero .fv-layout.has-image{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.fv-copy{min-width:0}.hero .fv-copy h1{font-size:clamp(34px,3.5vw,54px);line-height:1.5}.hero .fv-copy .lead{font-size:17px;line-height:1.9}
.hero .fv-copy .hbtn{margin-bottom:0;flex-wrap:wrap}.hero .fv-copy .btn{font-size:14px;padding:16px 20px}
.fv-picture{display:block;min-width:0}.fv-picture img{display:block;width:100%;height:auto;border-radius:8px;aspect-ratio:4/3;object-fit:contain;background:#ffffff08}
.hero .kpi .v b{font-size:clamp(18px,1.8vw,24px)}
.fv-logos{background:#fff;padding:36px 0;border-bottom:1px solid var(--line)}
.fv-logos h2{font-size:22px;margin:0 0 10px;color:var(--navy)}.fv-logos-note{font-size:12px;line-height:1.8;color:var(--sub);margin:0 0 18px}
.logo-viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain}
.logo-track{display:flex;gap:20px;margin:0;padding:0;list-style:none}.logo-track li{flex:0 0 calc((100% - 80px)/5);scroll-snap-align:start;min-width:0;display:flex;align-items:center;justify-content:center}
.logo-track img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
@media(max-width:1000px){.logo-track li{flex-basis:calc((100% - 40px)/3)}}
@media(max-width:760px){.hero .fv-layout.has-image{grid-template-columns:1fr}.hero .fv-layout{gap:26px;padding-top:36px;padding-bottom:28px}.hero .fv-copy h1{font-size:34px}.hero .fv-copy .lead{font-size:16px}.fv-picture img{aspect-ratio:3/2}.hero .kpi .v b{font-size:17px}.fv-logos{padding:28px 0}.fv-logos h2{font-size:20px}.logo-track{gap:14px}.logo-track li{flex-basis:calc((100% - 14px)/2)}}
@media(prefers-reduced-motion:reduce){.logo-viewport{scroll-behavior:auto}}

@media(max-width:760px){.hero .fv-layout.has-image .fv-copy{display:contents}.hero .fv-layout.has-image .fv-picture{order:1}.hero .fv-layout.has-image .hbtn{order:2}.hero .fv-layout.has-image{gap:18px}.hero .fv-layout.has-image h1,.hero .fv-layout.has-image .lead,.hero .fv-layout.has-image .lead2{margin-bottom:0}}

.logo-viewport.auto-scroll{overflow:hidden;scroll-snap-type:none}
.auto-scroll .logo-track{animation:logo-flow var(--logo-duration,45s) linear infinite;will-change:transform}
.auto-scroll .logo-track li{scroll-snap-align:none}
.auto-scroll:hover .logo-track,.auto-scroll:focus-within .logo-track{animation-play-state:paused}
@keyframes logo-flow{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--logo-distance)))}}
@media(prefers-reduced-motion:reduce){.logo-viewport.auto-scroll{overflow-x:auto}.auto-scroll .logo-track{animation:none;transform:none}.auto-scroll .logo-copy{display:none}}

/* 1.5.3: image behind FV copy on desktop and mobile. */
.hero.fv-background{isolation:isolate}
.hero.fv-background::before,.hero.fv-background::after{display:none}
.hero.fv-background>.fv-picture{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero.fv-background>.fv-picture img{width:100%;height:100%;object-fit:cover;object-position:center;aspect-ratio:auto;border-radius:0;background:none}
.hero.fv-background>.fv-picture::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,27,48,.9) 0%,rgba(8,27,48,.78) 50%,rgba(8,27,48,.35) 100%)}
.hero.fv-background>.w{position:relative;z-index:1}
.hero.fv-background .fv-layout.has-image{display:block;padding-bottom:38px}
.hero.fv-background .fv-copy{display:block;max-width:800px}
.hero.fv-background .fv-copy .lead{max-width:760px;color:#fff}
.hero.fv-background .lead2,.hero.fv-background .eb{color:#f0cc8c}
.hero.fv-background .kpi{background:rgba(8,27,48,.48)}
.hero.fv-background .kpi .l,.hero.fv-background .dis{color:#e1e8ef}
@media(max-width:760px){
 .hero.fv-background .fv-layout.has-image .fv-copy{display:block}
 .hero.fv-background .fv-layout.has-image h1{margin-bottom:26px}
 .hero.fv-background .fv-layout.has-image .lead{margin-bottom:20px}
 .hero.fv-background .fv-layout.has-image .lead2{margin-bottom:28px}
 .hero.fv-background>.fv-picture::after{background:linear-gradient(180deg,rgba(8,27,48,.78),rgba(8,27,48,.75) 65%,rgba(8,27,48,.9))}
 .hero.fv-background .fv-layout.has-image{padding-bottom:28px}
}
