/* Comfortable reading and touch targets on phones and tablets. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.notebook-site :is(.hero-copy,.hero-drawing,.workspace-intro>div,.samples-heading>div,.workspace-benefits>div,.report-library>*),.notebook-portal :is(.form-grid>*,.detail-grid>*,.panel){min-width:0}
.notebook-site .mobile-nav{max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain}
@media(max-width:1150px){
 .notebook-site .menu-toggle{min-width:44px;min-height:44px;padding:10px}
 .notebook-site .header-cta{min-height:44px;display:inline-flex;align-items:center}
 .notebook-site .mobile-nav a{font-size:17px;min-height:44px;display:flex;align-items:center}
}
@media(max-width:1024px){
 .notebook-site :is(.hero-description,.section-lead,.split-heading>p,.service>p,.report-copy>p,.faq-intro,.faq-list details>div,.contact-intro,.workspace-intro>div>p,.samples-heading p,.workspace-benefits p,.workspace-blueprint p,.steps p){font-size:16px;line-height:1.75;color:#4c6048}
 .notebook-site :is(.check-list li,.soil-tab small,.ground-panel p,.contact-max p,.sample-disclosure,.workspace-intro>div>.help,.requisites-list dd){font-size:14px;line-height:1.7}
 .notebook-site :is(.faq-list summary,.soil-tab strong){font-size:17px;line-height:1.5}
 .notebook-site :is(.calculator-form label,.calculator-form legend){font-size:14px;line-height:1.5}
 .notebook-site :is(.calculator-form input[type=text],.calculator-form input[type=number],.calculator-form select,.calculator-form textarea,.gallery-category select){font-size:16px;min-height:48px}
 .notebook-site :is(.calc-step-intro,.field-help,.calc-data-note,.calc-send-note,.estimate-disclaimer,.summary-footnote,.logistics-rates p,.estimate-line small,.summary-price>p){font-size:13px;line-height:1.7;color:#526448}
 .notebook-site :is(.calc-summary dt,.calc-summary dd,.estimate-line>span,.estimate-line strong,.result-messenger-links){font-size:14px;line-height:1.6}
 .notebook-site :is(.gallery-card-caption,.contact-location,.requisites-name){font-size:14px;line-height:1.6}
 .notebook-site :is(.button,.calc-navigation>.button,.result-contact-actions>.button,.hero-buttons>.button,.gallery-types button){min-height:48px;font-size:16px}
 .notebook-site .gallery-card-topic{font-size:12px;line-height:1.5}
 .notebook-site .contact-phone{white-space:normal;overflow-wrap:anywhere}
 .notebook-site .calc-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .notebook-site .calc-progress button{font-size:14px;line-height:1.4;min-height:48px;gap:7px;text-align:left}
 .notebook-site .calc-progress button>span{width:26px;height:26px;flex-shrink:0;font-size:12px}
 .notebook-site .sample-reader :is(button,select){min-height:44px;font-size:16px}
 .notebook-site .reader-toolbar label{min-width:0;max-width:100%;flex-wrap:wrap;font-size:14px}
 .notebook-site .reader-toolbar select{min-width:0;max-width:min(230px,65vw)}
 .notebook-site .reader-paper p,.notebook-site .reader-footer{font-size:13px;line-height:1.5}
 .notebook-portal{font-size:16px}
 .notebook-portal :is(input,select,textarea){font-size:16px;min-height:48px}
 .notebook-portal input[type=checkbox]{min-height:0}
 .notebook-portal :is(.help,.muted,small,.panel p.intro,.note,.page-heading p,.metric span,label){font-size:14px;line-height:1.65}
 .notebook-portal :is(.btn,.btn.small,.tabs button,.remove-row){min-height:44px;font-size:16px}
 .notebook-portal .table-wrap{max-width:100%;overflow-x:auto}
 .notebook-portal .table-wrap table{font-size:14px}
 .notebook-portal .schedule-week{max-width:100%;min-width:0}
 .notebook-portal .toolbar>*{max-width:100%;min-width:0}
}
@media(max-width:800px){
 .notebook-site .hero-sheet{grid-template-columns:1fr}
 .notebook-site .hero-sheet::before{display:none}
 .notebook-site .hero-drawing{border-left:0;border-top:1px dashed #b5c1a6}
 .notebook-site .hero-drawing>img{max-height:420px;object-fit:contain}
 .notebook-site .hero-location-note{display:block;font-size:14px;line-height:1.6}
 .notebook-site .report-grid{grid-template-columns:1fr}
 .notebook-site .report-copy{grid-row:1}
}
@media(max-width:650px){
 .notebook-site .hero h1{font-size:clamp(36px,10vw,46px);letter-spacing:0;overflow-wrap:break-word}
 .notebook-site .hero h1 em{font-size:29px}
 .notebook-site .section{padding-inline:12px}
 .notebook-site .section>.container{padding-inline:20px}
 .notebook-site .calculator-section>.container{padding-inline:14px}
 .notebook-site .calculator-form{padding-inline:16px}
 .notebook-site .calc-field-row{grid-template-columns:1fr}
 .notebook-site .calc-progress{grid-template-columns:1fr;gap:4px}
 .notebook-site .calc-progress button{min-height:44px}
 .notebook-site .calc-navigation>.button{width:100%}
 .notebook-site .steps{grid-template-columns:1fr}
 .notebook-site .steps>li:nth-child(even){border-left:0}
 .notebook-site .steps>li+li{border-top:1px solid #cdd3be}
 .notebook-site .report-library{grid-template-columns:1fr;gap:24px}
 .notebook-site .report-library .sample-cover{max-width:100%}
 .notebook-site .report-library .sample-cover strong{min-height:0;font-size:29px}
 .notebook-site .report-library :is(.cover-stamp,.cover-bottom){font-size:12px}
 .notebook-site .report-library .cover-drawing img{height:150px}
 .notebook-site .gallery-grid{grid-template-columns:1fr}
 .notebook-site .gallery-card-caption{font-size:16px}
 .notebook-site .footer-bottom{font-size:12px;line-height:1.6}
 .notebook-site .footer-contacts{font-size:15px}
 .notebook-site .reader-header{align-items:flex-start}
 .notebook-site .reader-header>div{min-width:0}
 .notebook-site .reader-header h2{font-size:22px;overflow-wrap:anywhere}
 .notebook-site .reader-header>button{flex-shrink:0}
 .notebook-site .reader-footer{flex-direction:column;gap:4px}
 .notebook-portal .topbar{height:auto;min-height:64px;flex-wrap:wrap;gap:10px;padding-block:12px}
 .notebook-portal #account-bar{min-width:0;flex-wrap:wrap;font-size:13px;overflow-wrap:anywhere}
 .notebook-portal .portal-footer{flex-direction:column;font-size:13px}
}
@media(max-width:370px){
 .notebook-site .header-inner{gap:6px;padding-inline:12px}
 .notebook-site .header-cta{padding-inline:9px;font-size:14px;gap:8px}
 .notebook-site .hero-copy{padding-inline:18px}
 .notebook-site .section>.container{padding-inline:16px}
 .notebook-site .report-grid{padding-inline:14px}
 .notebook-site .report-page,.notebook-site .report-back{width:205px}
 .notebook-site .reader-toolbar>button{flex:1;font-size:14px;padding-inline:6px}
}

.calc-access-panel{margin-top:25px;padding:22px;border:1px solid #b9c6a7;background:#f8f8ef;scroll-margin-top:100px;min-width:0}.calc-access-panel p{font-size:14px;line-height:1.7;margin:14px 0;color:#4c6048}.calc-access-panel label{display:block;font-size:14px;margin:16px 0 7px}.calc-access-panel input,.calc-access-panel textarea{display:block;width:100%;min-width:0;min-height:48px;font-size:16px;padding:11px;border:1px solid #aabc98;background:#fffef8;border-radius:2px}.calc-access-panel textarea{resize:vertical}.calc-access-panel form>.button{margin-top:18px}.calc-access-panel .help{font-size:13px}.calc-access-panel .help a{text-decoration:underline}.calc-access-panel .result-actions{flex-wrap:wrap}.notebook-site [data-portal-link][hidden]{display:none!important}

.header-login{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid #6c805e;color:#30472e;font-size:14px;font-weight:600;white-space:nowrap;border-radius:3px}.notebook-site [data-login-link][hidden]{display:none!important}.notebook-site .simple-calculator .calc-summary dd{font-size:16px}.notebook-site .simple-calculator .summary-footnote{font-size:14px}@media(max-width:650px){.header-login{padding:8px 10px;font-size:14px}.header-actions{gap:8px}.header-actions .header-cta{padding:10px;font-size:12px}}
@media(max-width:420px){.header-actions .header-cta{display:none}.header-login{min-width:64px}}
