.marketing-pricing { color:#0a1a33; background:white; font:400 18px/1.3 'Hanken Grotesk',sans-serif; }
.marketing-pricing *, .marketing-pricing *::before, .marketing-pricing *::after { box-sizing:border-box; }
.marketing-pricing :is(h1,h2,h3,p) { margin:0; }
.marketing-pricing :is(h1,h2,h3) { font-family:Archivo,sans-serif; font-weight:700; letter-spacing:0; }
.marketing-pricing h1 { font-size:80px; line-height:1.04; max-width:1100px; color:white; }
.marketing-pricing h2 { font-size:48px; line-height:1.08; color:#0a1a33; }
.marketing-pricing h3 { font-size:22px; line-height:1.3; }
.pr-container { width:min(1200px,calc(100% - 64px)); margin-inline:auto; }
.pr-section { padding:92px 0; }
.pr-gray { background:#f4f6f8; }
.pr-eyebrow { font:700 12px/1.4 'Space Mono',monospace; letter-spacing:2px; text-transform:uppercase; color:#007985; margin-bottom:16px!important; }
.pr-center { text-align:center; }
.pr-center > p:not(.pr-eyebrow) { margin:18px auto 0; }
.pr-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:12px 24px; min-height:48px; border:1px solid #ffbf2e; border-radius:10px; background:#ffbf2e; color:#07172c; font:600 16px/1.35 'Hanken Grotesk',sans-serif; text-decoration:none; text-align:center; }
.pr-button span { font-size:20px; line-height:1; }
.pr-button.pr-secondary { background:transparent; color:inherit; border-color:currentColor; }
.pr-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin-top:42px; }
.marketing-pricing :is(a,button,summary):focus-visible { outline:3px solid #007985; outline-offset:5px; }
.pr-hero { position:relative; isolation:isolate; padding:138px 0 168px; background:#0a1a33 url('/assets/pricing/hero-poster.jpg') center/cover; color:#fff; overflow:hidden; }
.pr-hero-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:0; }
.pr-hero::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#0a1a33d9,#0a1a33b8); z-index:1; pointer-events:none; }
.pr-hero > .pr-container { position:relative; z-index:2; }
.pr-static-hero .pr-hero-video { display:none; }
.pr-hero .pr-eyebrow { color:#dcf1ef; }
.pr-hero h1 span { color:#dcf1ef; }
.pr-hero p:not(.pr-eyebrow) { max-width:850px; margin-top:24px; }
.pr-hero .pr-actions { justify-content:flex-start; }
.pr-hero :is(a,button):focus-visible,.pr-final a:focus-visible,.pr-savings a:focus-visible { outline-color:#ffbf2e; }
.marketing-pricing nav.pr-section-nav { position:static; width:auto; max-width:none; height:auto; flex-direction:row; overflow:visible; box-shadow:none; display:flex; flex-wrap:wrap; gap:28px; justify-content:center; padding:24px 32px; border-bottom:1px solid #dde3eb; background:white; }
.marketing-pricing nav.pr-section-nav a { margin:0; color:#07172c; text-decoration:none; font-size:16px; padding:4px 0; }
.pr-section-nav a:hover { color:#007985; }
.pr-benefits { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:48px; }
.pr-benefits > div { background:#0a1a33; color:#fff; border-radius:20px; padding:32px 28px; }
.pr-benefits strong { color:#ffbf2e; font:700 48px/1.1 'Space Mono',monospace; }
.pr-benefits h3 { font:400 16px/1.3 'Hanken Grotesk',sans-serif; margin-top:12px; }
.pr-benefits p { font-size:14px; color:#bac6d5; margin-top:10px; }
.pr-section > .pr-container > h2 + p { margin-top:18px; }
.pr-plan-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.07fr); gap:40px; margin-top:32px; align-items:start; }
.pr-core { padding:40px; background:#0a1a33; color:white; border-radius:24px; }
.pr-badge { display:inline-block; padding:5px 12px; border-radius:20px; color:#07172c; background:#ffbf2e; font:700 12px/1.4 'Space Mono',monospace; letter-spacing:1px; }
.pr-core > h3 { margin-top:24px; font-size:24px; }
.pr-core > p { margin-top:24px; color:#c0ccd9; font-size:16px; }
.pr-core ul { list-style:none; padding:0; display:grid; gap:16px; margin:26px 0; font-size:16px; }
.pr-core li { position:relative; padding-left:26px; }
.pr-core li::before { content:'✓'; color:#79c5c1; position:absolute; left:0; }
.pr-core-quote { border-top:1px solid #c0ccd9; padding-top:20px; margin-bottom:32px; }
.pr-core-quote h3 { font-size:24px; color:#ffbf2e; }
.pr-core-quote p { margin-top:4px; color:#c0ccd9; font-size:14px; }
.pr-core .pr-note { font-size:12px; }
.pr-module { display:grid; grid-template-columns:56px minmax(0,1fr) auto; align-items:center; gap:20px; padding:24px 20px; margin-bottom:16px; background:#f0f5f8; border:1px solid #dde3eb; border-radius:16px; }
.pr-icon { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:16px; background:#dcf1ef; color:#007985; flex-shrink:0; }
.pr-icon svg { width:32px; height:32px; }
.pr-module h3 { font-size:22px; }
.pr-module h3 span { display:inline; font:400 14px/1.4 'Hanken Grotesk',sans-serif; color:#007985; margin-left:6px; }
.pr-module p { font-size:14px; color:#475a70; margin-top:4px; }
.pr-add { border:1px solid #cdd7e3; background:transparent; color:#0a1a33; border-radius:24px; min-height:44px; min-width:76px; padding:8px 12px; font:600 16px/1.3 'Hanken Grotesk',sans-serif; cursor:pointer; }
.pr-add[aria-pressed=true] { background:#dcf1ef; border-color:#007985; }
.pr-note { font-size:14px; color:#53647a; line-height:1.5; }
.pr-selection { font-size:14px; margin-top:14px!important; color:#007985; }
.pr-savings { background:#0a1a33; color:white; }
.pr-savings h2 { color:white; }
.pr-savings .pr-eyebrow { color:#dcf1ef; }
.marketing-pricing .fh-calculator { margin-top:32px; padding:40px; border-radius:24px; background:#f0f5f8; color:#0a1a33; box-shadow:none; }
.marketing-pricing .fh-calculator > .fh-eyebrow { display:none; }
.marketing-pricing .fh-calculator > h3 { font-size:22px; }
.marketing-pricing .calc-layout { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:40px; }
.marketing-pricing .calc-layout .calc-controls { gap:20px; }
.marketing-pricing .calc-field { grid-template-columns:minmax(0,1fr) 156px; }
.marketing-pricing .calc-field label { font-size:16px; }
.marketing-pricing .calc-results { padding:40px 32px; border-radius:16px; }
.marketing-pricing .calc-results-title { text-align:center; margin-bottom:22px; color:white; font-size:24px; }
.marketing-pricing .calc-results dl { gap:24px; }
.marketing-pricing .calc-results dl > div { font-size:16px; }
.marketing-pricing .calc-results [data-result=monthly],.marketing-pricing .calc-results [data-result=annual] { font-size:30px; }
.marketing-pricing .calc-disclaimer { font-style:italic; text-align:center; margin-top:24px; }
.pr-shapes { display:grid; grid-template-columns:minmax(0,0.8fr) minmax(0,1.28fr); align-items:center; gap:56px; }
.pr-shapes > div > p:not(.pr-eyebrow) { margin-top:18px; }
.pr-shapes .pr-actions { justify-content:flex-start; margin-top:36px; }
.pr-safe { background:#dcf1ef; border-radius:12px; display:flex; align-items:center; gap:12px; padding:16px; margin-top:18px; font-size:14px; }
.pr-safe .pr-icon { width:24px; height:24px; }
.pr-safe .pr-icon svg { width:24px; height:24px; }
.pr-shape-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.pr-shape-cards > div { border-radius:20px; background:#f0f5f8; border:1px solid #dde3eb; padding:28px; }
.pr-shape-cards h3 { margin-top:16px; }
.pr-shape-cards p { font-size:14px; color:#475a70; margin-top:14px; }
.pr-shape-cards ul { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:14px 0 0; list-style:none; }
.pr-shape-cards li { font-size:12px; color:#475a70; border:1px solid #dde3eb; border-radius:20px; background:white; padding:4px 10px; }
.pr-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; list-style:none; padding:0; margin:64px 0 0; text-align:center; }
.pr-steps li { position:relative; }
.pr-steps li:not(:last-child)::before { content:''; position:absolute; left:50%; top:28px; width:calc(100% + 28px); height:2px; background:#cdd7e3; }
.pr-steps span { display:flex; position:relative; z-index:1; align-items:center; justify-content:center; width:56px; height:56px; margin:auto; border-radius:50%; background:#0a1a33; color:white; font-size:16px; font-weight:600; }
.pr-steps li:last-child span { background:#ffbf2e; color:#07172c; }
.pr-steps h3 { margin-top:18px; }
.pr-steps p { font-size:14px; color:#475a70; margin-top:16px; }
.pr-steps + .pr-actions { margin-top:60px; }
.pr-actions + .pr-note { margin-top:24px; }
.pr-faqs { max-width:800px; margin:64px auto 0; }
.pr-faqs details { padding:26px 0; border-bottom:1px solid #cdd7e3; }
.pr-faqs summary { display:flex; justify-content:space-between; gap:16px; cursor:pointer; list-style:none; font:700 22px/1.3 Archivo,sans-serif; }
.pr-faqs summary::-webkit-details-marker { display:none; }
.pr-faqs summary::after { content:'+'; color:#007985; }
.pr-faqs details[open] summary::after { content:'−'; }
.pr-faqs p { font-size:16px; margin-top:10px; }
.pr-faqs + .pr-note { margin-top:40px; font-style:italic; }
.pr-final { padding:180px 0; background:linear-gradient(90deg,#0a1a33b3,#0a1a339e),url('/assets/pricing/final-cta.webp') center 55%/cover; text-align:center; color:white; }
.pr-final h2 { color:white; }
@media(max-width:1100px) {
 .marketing-pricing h1 { font-size:64px; }
 .marketing-pricing h2 { font-size:40px; }
 .pr-benefits { gap:16px; }
 .pr-benefits > div { padding:28px 20px; }
 .pr-benefits strong { font-size:40px; }
 .pr-plan-grid { gap:24px; }
 .pr-core { padding:28px; }
 .pr-module { gap:12px; padding:20px 16px; grid-template-columns:44px minmax(0,1fr) auto; }
 .pr-module .pr-icon { width:44px; height:44px; border-radius:12px; }
 .pr-module h3 span { display:block; margin:4px 0 0; }
 .pr-shapes { gap:32px; }
 .pr-shape-cards > div { padding:22px; }
 .marketing-pricing .calc-layout { gap:24px; }
 .marketing-pricing .calc-results { padding:28px 20px; }
}
@media(max-width:800px) {
 .pr-container { width:calc(100% - 40px); }
 .pr-section { padding:64px 0; }
 .marketing-pricing h1 { font-size:48px; }
 .marketing-pricing h2 { font-size:36px; }
 .pr-hero { padding:84px 0 100px; background-image:url('/assets/pricing/hero-poster-mobile.jpg'); }
 .pr-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .pr-plan-grid,.pr-shapes { grid-template-columns:1fr; }
 .pr-core { padding:32px; }
 .marketing-pricing nav.pr-section-nav { gap:12px 20px; padding:20px; }
 .pr-module h3 span { display:inline; margin-left:6px; }
 .marketing-pricing .fh-calculator { padding:24px; }
 .marketing-pricing .calc-layout { grid-template-columns:1fr; }
 .marketing-pricing .calc-results { padding:32px; }
 .pr-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 24px; }
 .pr-steps li:not(:last-child)::before { display:none; }
 .pr-final { padding:110px 0; }
}
@media(max-width:480px) {
 .marketing-pricing { font-size:16px; }
 .marketing-pricing h1 { font-size:40px; }
 .marketing-pricing h2 { font-size:30px; }
 .marketing-pricing h3 { font-size:20px; }
 .pr-actions { gap:12px; margin-top:28px; }
 .pr-button { width:100%; padding-inline:16px; }
 .pr-benefits { gap:12px; }
 .pr-benefits > div { padding:22px 16px; border-radius:16px; }
 .pr-benefits strong { font-size:32px; }
 .pr-benefits h3 { font-size:14px; }
 .pr-core { padding:24px; }
 .pr-module { grid-template-columns:44px minmax(0,1fr); }
 .pr-module h3 span { display:block; margin-left:0; }
 .pr-add { grid-column:2; justify-self:start; }
 .pr-shape-cards { grid-template-columns:1fr; gap:16px; }
 .pr-steps { grid-template-columns:1fr; }
 .pr-faqs { margin-top:32px; }
 .pr-faqs summary { font-size:20px; }
 .marketing-pricing .fh-calculator { padding:18px; }
 .marketing-pricing .calc-field { grid-template-columns:minmax(0,1fr) 90px; }
 .marketing-pricing .calc-field label { font-size:14px; }
 .marketing-pricing .calc-results { padding:24px 18px; }
 .marketing-pricing .calc-results dl > div { font-size:14px; }
 .marketing-pricing .calc-results [data-result=monthly],.marketing-pricing .calc-results [data-result=annual] { font-size:24px; }
}

.pr-savings > .pr-container > .calc-disclaimer { color:#dcf1ef; font-size:12px; font-style:italic; text-align:center; margin-top:28px; }
.marketing-pricing .calc-field input[type=range] { appearance:none; background:transparent; }
.marketing-pricing .calc-field input[type=range]::-webkit-slider-runnable-track { height:4px; background:#d7e0e8; border-radius:4px; }
.marketing-pricing .calc-field input[type=range]::-webkit-slider-thumb { appearance:none; width:20px; height:20px; margin-top:-8px; border-radius:50%; background:#1b7480; }
.marketing-pricing .calc-field input[type=range]::-moz-range-track { height:4px; background:#d7e0e8; border-radius:4px; }
.marketing-pricing .calc-field input[type=range]::-moz-range-thumb { width:20px; height:20px; border:0; border-radius:50%; background:#1b7480; }

.marketing-pricing .calc-layout { margin-top:0; align-items:stretch; }
.marketing-pricing .calc-layout .calc-controls { margin-top:24px; }
.marketing-pricing .calc-results { display:flex; flex-direction:column; justify-content:center; }
.pr-steps + .pr-actions .pr-secondary { background:#0a1a33; color:white; border-color:#0a1a33; }
@media(prefers-reduced-motion:reduce) { .pr-hero-video { display:none; } }

/* Centre the approved arrow beside every Pricing CTA label at every viewport. */
.pr-button > span[aria-hidden="true"] { display:inline-flex; align-items:center; justify-content:center; align-self:center; flex:0 0 16px; width:16px; height:16px; margin:0; padding:0; line-height:1; transform:none; rotate:none; }
.pr-button [data-dp-action-arrow] { align-self:center!important; vertical-align:middle!important; transform:none!important; rotate:none!important; margin:0!important; }
