/* Shared conversion elements and accessible responsive layouts. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid #0052cc;outline-offset:4px}
.hero-secondary{display:block;margin:18px 0;text-align:center;color:#0052cc;font-weight:600;min-height:44px;padding:10px}
.stock-date{display:block;font-weight:400;font-size:12px;margin-top:7px;line-height:1.6}
.article-meta{font-size:14px;color:#525252;margin:20px 0 30px}.sources{margin-top:40px;border-top:1px solid #e8e8e3;padding-top:12px}.sources h2{font-size:24px}
.calc-comparison{margin-top:20px;padding:20px;border-radius:16px;background:#e8f0ff;text-align:left;color:#0a0a0a;font-size:15px;line-height:1.7}.calc-comparison p+p{margin-top:14px}
.callback-form{max-width:680px;padding:clamp(22px,4vw,36px);border:1px solid #d7e5ff;border-radius:24px;background:white;margin:30px auto}
.callback-form h3{font-size:28px;line-height:1.2;margin-bottom:16px}.callback-form>p{margin:14px 0}.callback-form label{display:block;font-size:15px;font-weight:600;margin:18px 0}.callback-form input{display:block;width:100%;min-height:50px;border:1px solid #909090;border-radius:10px;padding:10px 14px;margin-top:8px;font:inherit;background:#fff;color:#0a0a0a}.callback-form button{border:0;font:inherit;cursor:pointer}.callback-form a.button{margin-top:16px}.callback-form .small{font-size:13px;line-height:1.6;color:#525252}
.contact-dock{display:none}.seo-footer{padding-bottom:110px}
.seo-guides.prose{max-width:1000px;line-height:1.8}.seo-guides.prose p{margin:18px 0}.seo-guides.prose a{color:#0052cc;text-underline-offset:4px}.seo-guides .cards{align-items:stretch}
#shareCalculation[aria-disabled=true]{pointer-events:none;opacity:.6}
.seo-main .calc-section{padding:24px 0;background:transparent}.seo-main .calc-section .container{max-width:780px;padding:0}.seo-main .calc-section h2{font-size:clamp(28px,4vw,42px);margin-top:20px}.seo-main .calc-label{margin-bottom:14px;display:block}.seo-main .calc-card{margin-top:28px}.seo-main .calc-settings{margin:22px 0}
.seo-main .calc-card .result{margin-top:28px}.seo-main .calc-card p{line-height:1.65}.seo-main .result-number{font-weight:700}
@media(min-width:601px) and (max-width:1100px){.seo-header>.seo-nav{width:100%;justify-content:center;gap:8px 18px}.seo-header{justify-content:center}}
@media(max-width:600px){.contact-dock{position:fixed;z-index:400;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fffffff2;border-top:1px solid #e8e8e3;box-shadow:0 -4px 20px #0000000a}.contact-dock .button{padding:10px 14px;min-height:48px}.seo-main{padding-bottom:100px}.seo-menu .seo-nav{max-height:75svh;overflow-y:auto}.callback-form{margin:24px 0}.calc-card{padding:22px}.calc-cta .cta-whatsapp{max-width:100%;white-space:normal}.hero-secondary{font-size:15px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
@media print{.seo-header,.seo-footer,.contact-dock,.sticky-bar,.hero-actions,.calc-cta,.callback-form{display:none!important}body{background:white;color:black}.seo-main{padding:0;max-width:none}}
.skip{position:absolute;top:-100px;left:16px;z-index:999;background:white;color:#0052cc;padding:12px;border-radius:10px}.skip:focus{top:12px}
/* Confirmed limited promotion: visible in first screen and pricing. */
.hero-stock{padding:12px 16px;margin:24px 0 18px;border-radius:12px;background:#fff2df;color:#7a3a00;border:1px solid #e6ad6a;font-size:16px;line-height:1.5;text-align:center}
.offer-stock>strong{display:block;font-size:clamp(17px,3vw,22px);line-height:1.4}.tax-note{font-size:15px;font-weight:700;color:#0052cc;margin:4px 0 20px}
/* Integrated time comparison, deliberately limited to two cumulative totals. */
.period-comparison{margin:24px 0 0;padding:24px 0 0;border-top:1px solid #e8e8e3;text-align:left}
.period-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.period-heading h3{font-size:18px;line-height:1.35;letter-spacing:-.02em;margin:0;color:#0a0a0a}.period-heading output{flex-shrink:0;background:#e8f0ff;color:#0052cc;font-size:15px;font-weight:700;padding:7px 12px;border-radius:10px}
.year-range{display:block;width:100%;height:44px;min-height:44px;margin:0;padding:0;border:0;box-sizing:border-box;appearance:none;-webkit-appearance:none;background:transparent;accent-color:#0066ff;cursor:pointer;touch-action:pan-y}.year-range:focus-visible{outline:3px solid #0052cc;outline-offset:4px;border-radius:10px}
.year-range::-webkit-slider-runnable-track{height:6px;background:#d7e5ff;border-radius:999px}
.year-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:24px;height:24px;margin-top:-9px;border:0;border-radius:50%;background:#0066ff;box-shadow:0 1px 4px #00000020}
.year-range::-moz-range-track{height:6px;background:#d7e5ff;border:0;border-radius:999px}
.year-range::-moz-range-thumb{width:24px;height:24px;border:0;border-radius:50%;background:#0066ff;box-shadow:0 1px 4px #00000020}
.year-ticks{position:relative;height:22px;margin:0 12px 18px;padding:0;color:#525252;font-size:12px;line-height:22px}
.year-ticks span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap;text-align:center}
.year-ticks span:nth-child(1){left:0}.year-ticks span:nth-child(2){left:25%}.year-ticks span:nth-child(3){left:50%}.year-ticks span:nth-child(4){left:75%}.year-ticks span:nth-child(5){left:100%}
.period-totals{display:grid;grid-template-columns:1fr 1fr;gap:12px}.period-total{min-width:0;padding:16px 14px;border:1px solid #e8e8e3;background:#fff;border-radius:16px}.period-total>span{display:block;font-weight:600;font-size:14px;line-height:1.4}.period-total strong{display:block;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(23px,5vw,32px);font-weight:800;line-height:1.3;margin:12px 0;overflow-wrap:anywhere;letter-spacing:-.04em}.period-total small{display:block;font-size:12px;color:#525252;line-height:1.5}.period-total.osmosis{background:#e8f0ff;border-color:#d7e5ff}.period-total.osmosis strong{color:#0052cc}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:359px){.period-heading{align-items:flex-start}.period-heading h3{font-size:16px}.period-total{padding:14px 10px}.period-total strong{font-size:23px}}
