/* Actions 01-04: clear entry points, readable controls and unobstructed mobile tasks. */
.hero-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin-top:28px}
.hero-actions .button{justify-content:center;min-height:48px;max-width:100%;gap:14px;padding:13px 18px}
.architect-heading{min-width:0}
.architect-heading h1{line-height:1.08;letter-spacing:-.045em}
.form-grid label,.form-grid fieldset,.form-grid .form-group,.contact-grid>*,.detail-grid>*,.catalog-tools>*,.discovery-controls>*{min-width:0}
.form-grid .form-group{max-width:100%}
.form-grid input,.form-grid select,.form-grid textarea{font-size:1rem}
.button,.text-link,.path-actions a,.filter-btn{overflow-wrap:break-word}
.footer a,.model,.quote-selection li{overflow-wrap:anywhere}
.filter-btn,.catalog-photo-choice,.product-jump a,.compare-remove,.print-button{min-height:44px}
.catalog-photo figcaption,.family-catalog-photo span{font-size:.8125rem}
.pdf-viewer iframe{max-width:100%;display:block}
.pdf-actions{flex-wrap:wrap;gap:16px}
.pdf-actions>*{max-width:100%;overflow-wrap:anywhere}
.comparison-table-scroll,.table-scroll{max-width:100%}
.comparison-table-scroll:focus-visible,.table-scroll:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.table-scroll{overscroll-behavior-x:contain}
.pdf-help{font-size:.875rem;line-height:1.6;color:#fff;margin:0 0 16px}
.pdf-actions{margin-top:0;margin-bottom:16px}
.contact-dock{bottom:max(16px,env(safe-area-inset-bottom))}
body,body.has-comparison{padding-bottom:calc(var(--action-height,64px) + 24px)}
html{scroll-padding-top:calc(var(--header-height,94px) + 18px);scroll-padding-bottom:calc(var(--action-height,64px) + 24px)}
.comparison-tray{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
.mobile-menu-open .comparison-tray{visibility:hidden}
@media(max-width:1120px){
  .site-header .nav-row nav{top:100%}
  .site-header .nav-row nav.is-open{max-height:calc(var(--viewport-height,100dvh) - var(--header-height,84px));padding-bottom:calc(24px + env(safe-area-inset-bottom));overflow-y:auto}
  .site-header .menu-backdrop{top:var(--header-height,84px)}
  .site-header .nav-row nav .language{min-height:48px;font-size:1rem}
  .site-header .smart-panel a{min-height:48px}
}
@media(max-width:700px){
  .wrap{width:calc(100% - 40px)}
  .architect-hero{padding-top:28px}
  .architect-heading h1{font-size:clamp(2.5rem,10vw,3.6rem);margin-bottom:18px}
  .architect-heading .lead{font-size:1rem;line-height:1.6}
  .architect-heading .eyebrow{margin-bottom:14px}
  .hero-actions{margin-top:22px;gap:10px}
  .hero-actions .button{width:100%;min-height:48px;font-size:.9375rem}
  .audience-paths .path-actions{gap:14px}
  .contact-dock{bottom:0;right:0;left:0;padding-bottom:env(safe-area-inset-bottom);background:#fff}
  .contact-dock a{min-height:52px;font-size:.875rem}
  .editing-field .contact-dock,.editing-field .comparison-tray{display:none}
  .catalog-tools{align-items:stretch}
  .catalog-search,.search-label{max-width:100%;min-width:0}
  .catalog-tools input,.discovery-controls input{font-size:1rem}
  .comparison-tray-inner{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
  .comparison-tray-actions{justify-content:space-between;gap:16px;min-width:0}
  .comparison-tray-actions button{min-height:44px}
  .compare-selection-names{font-size:.875rem}
  .compare-message{font-size:.8125rem}
  .comparison-bottom .button{white-space:normal;width:100%}
  .quote-flow-actions{align-items:stretch;gap:12px}
  .quote-flow-actions .button{flex:1;min-width:0;justify-content:center;font-size:.9375rem}
  .quote-review-heading{flex-wrap:wrap}
  .quote-progress li{font-size:.875rem}
  .form-grid .check{font-size:.875rem;line-height:1.6}
  .form-grid .check input{flex-shrink:0}
  .pdf-viewer iframe{height:60dvh;min-height:280px}
  .pdf-actions .button{width:100%;justify-content:center}
  .pdf-actions a{min-height:44px;display:inline-flex;align-items:center}
}
@media(max-width:380px){
  .path-actions{grid-template-columns:minmax(0,1fr);gap:0}
  .quote-progress{gap:8px}
  .quote-step-number{font-size:.8125rem}
  .contact-dock a{padding-inline:12px}
}
@media print{body,body.has-comparison{padding:0}.hero-actions{display:none}}
