/* Preserve both themes while making product text readable at normal zoom. */
html{font-size:16px}
body{font-size:1rem;line-height:1.65}
.header nav,.nav-contact{font-size:1rem}
.brand-sub{font-size:.75rem;letter-spacing:1.7px}
.eyebrow,.closing .eyebrow,.prose .eyebrow{font-size:.75rem;letter-spacing:1.5px;line-height:1.6}
.hero-description{font-size:1.125rem;line-height:1.8;max-width:470px}
.button,.hero-actions .button,.text-link,.hero-actions .text-link{font-size:1rem;line-height:1.5}
.button{min-height:48px}
.hero-actions{gap:20px}
.hero-note{font-size:.875rem;line-height:1.8}
.hero-note span{padding-inline:5px}
.visual-label{font-size:.75rem;letter-spacing:1px;line-height:1.6}
.sample-top{font-size:.875rem;flex-wrap:wrap}
.sample-badge,.small-label{font-size:.75rem;letter-spacing:.8px}
.sample-metrics span{font-size:.875rem;line-height:1.4;display:block}
.sample-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;font-size:.875rem;gap:10px}
.sample-row small{font-size:.75rem;line-height:1.6}
.sample-row .pill{font-size:.75rem;letter-spacing:0;padding:4px 6px}
.sample-bottom{font-size:.875rem;line-height:1.6}
.floating-note{font-size:.875rem}
.floating-note small{font-size:.75rem;line-height:1.6}
.principles>.container{flex-wrap:wrap}
.principles span{font-size:.75rem;letter-spacing:1px}
.principles p{font-size:1rem}
.section-heading>p{font-size:1rem;max-width:360px;line-height:1.8}
.service-top>span:last-child{font-size:.75rem;letter-spacing:.6px}
.service-card h3{font-size:1.375rem;line-height:1.4}
.service-card>p,.service-card ul{font-size:1rem;line-height:1.8}
.service-card>a{font-size:1rem;align-items:center;gap:12px;min-height:48px}
.service-card li{padding-left:18px;position:relative}
.service-card li:before{position:absolute;left:0;margin:0}
.scanner-intro>p:not(.eyebrow){font-size:1rem;line-height:1.8;max-width:420px}
.privacy-note{font-size:.875rem;line-height:1.8;max-width:420px}
.privacy-note strong{font-size:1rem}
.scanner-intro .text-link{font-size:.875rem}
.tab{font-size:1rem;min-height:56px}
.form-description{font-size:1rem;line-height:1.8}
.field-label{font-size:1rem}
.scanner-card input[type=text]{font-size:1rem;min-height:50px}
.field-help,.check-label{font-size:.875rem;line-height:1.75}
.check-label input{width:20px;height:20px}
.check-label small{font-size:.875rem;line-height:1.75}
.form-footer{font-size:.875rem;line-height:1.8}
.upload-zone strong{font-size:1rem}
.upload-zone>span:last-of-type,.upload-zone input{font-size:.875rem;line-height:1.75}
.upload-zone input{min-height:36px}
.progress strong{font-size:1rem}
.progress p,.error{font-size:.875rem;line-height:1.7}
.process-grid>article>span{font-size:.875rem}
.process-grid h3{font-size:1.25rem}
.process-grid p{font-size:1rem;line-height:1.8}
.faq-list summary{font-size:1.0625rem;line-height:1.6;min-height:56px}
.faq-list details p{font-size:1rem;line-height:1.8}
.footer{flex-wrap:wrap;row-gap:25px}
.footer>p,.footer>div{font-size:.875rem;line-height:1.7}
.footer>div{flex-wrap:wrap;gap:16px 24px}
.footer>div>a{display:inline-flex;align-items:center;min-height:44px}
.footer .brand-sub{font-size:.75rem;letter-spacing:1px}
#report-target{font-size:1rem}
.report-summary{font-size:1rem;line-height:1.8}
.finding h3{font-size:1.125rem}
.severity{font-size:.875rem}
.finding p{font-size:1rem;line-height:1.8}
.finding .location,.finding a{font-size:.875rem;line-height:1.8}
.report-panel p,.report-panel li{font-size:1rem;line-height:1.8}
.check-row strong{font-size:1rem}
.check-row span{font-size:.875rem}
.check-row p{font-size:.875rem;line-height:1.8}
.report-disclaimer,.report-next p{font-size:.875rem;line-height:1.8}
.prose p{font-size:1.0625rem;line-height:1.85}
.prose .lead{font-size:1.25rem}
@media(max-width:1100px){
  .service-top{align-items:flex-start;flex-wrap:wrap}
  .sample-row{grid-template-columns:25px minmax(0,1fr);column-gap:10px;row-gap:6px}
  .sample-row>.pill{grid-column:2;justify-self:start;margin-left:0}
}
@media(max-width:800px){
  .header nav{gap:18px;font-size:.9375rem}
  .nav-contact{padding-left:16px}
  .hero-description{font-size:1.125rem}
  .scanner-intro>p:not(.eyebrow){font-size:1rem}
  .sample-row{grid-template-columns:28px minmax(0,1fr) auto}
  .sample-row>.pill{grid-column:auto;justify-self:auto;margin-left:auto}
  .visual-label{left:0;right:0}
  .service-top{align-items:center}
}
@media(max-width:480px){
  .header-inner{gap:12px}
  .header nav{flex-shrink:0}
  .brand{font-size:1rem}
  .brand-sub{font-size:.75rem;letter-spacing:1px}
  .nav-contact{font-size:.875rem;padding-left:0}
  .hero h1{font-size:clamp(2.7rem,14vw,3.625rem)}
  .hero-description{font-size:1rem}
  .hero-actions{gap:20px;align-items:flex-start}
  .hero-note{font-size:.875rem}
  .hero-visual{width:100%;padding-top:62px}
  .visual-label{font-size:.75rem;letter-spacing:.7px}
  .sample-row{grid-template-columns:25px minmax(0,1fr)}
  .sample-row>.pill{grid-column:2;justify-self:start;margin-left:0}
  .sample-metrics>div{padding-inline:8px}
  .sample-metrics>div:first-child{padding-left:0}
  .sample-metrics span{font-size:.75rem}
  .sample-bottom{font-size:.75rem;gap:8px}
  .floating-note{right:0;font-size:.875rem;max-width:100%;padding:12px}
  .floating-note small{font-size:.75rem}
  .principles p{font-size:.875rem}
  .principles span{font-size:.75rem}
  .scanner-card form{padding:22px}
  .tabs{padding-inline:16px}
  .tab{font-size:1rem}
  .form-footer{font-size:.875rem}
  .footer>div{font-size:.875rem;justify-content:flex-start}
  .footer .brand-sub{font-size:.75rem}
  .prose p{font-size:1rem}
  .prose .lead{font-size:1.125rem}
}
@media print{
  .report-summary,.finding p,.report-panel p,.report-panel li{font-size:11pt}
  .finding .location,.finding a,.check-row span,.check-row p,.report-disclaimer{font-size:10pt}
}
