/* Shared typography and accessible brand colors, Aménage Tout 1.9.33. */
:root {
  --at-font: Inter, Arial, sans-serif;
  --at-ink: #172432;
  --at-muted: #526577;
  --at-blue: #075a93;
  --at-deep: #063a61;
  --at-action: #a84200;
  --at-action-hover: #7a3200;
  --at-line: #d7e4ec;
  --at-soft: #f2f7fb;
}
body.at-v140-site, body.at-vnext-site {
  font-family: var(--at-font);
  font-size: 16px;
  line-height: 1.6;
  color: var(--at-ink);
}
body :is(.at25,.at1922-page,.ats29,.atl30,.at29-guides,.atp360-app,.at-v140-header,.at-v140-footer,.at26-promo,.woocommerce) {
  font-family: var(--at-font);
}
body :is(h1,h2,h3,h4,h5,h6,button,input,select,textarea) {
  font-family: var(--at-font) !important;
}
body :is(button,input,select,textarea) { letter-spacing: normal; }
body main :is(p,li,label) { line-height: 1.6; }
body main :is(h1,h2,h3) { text-wrap: pretty; }
body main h1 { font-size: clamp(30px,3.2vw,44px); line-height: 1.18; letter-spacing: -.025em; }
body main h2 { line-height: 1.25; letter-spacing: -.02em; }
body main h3 { line-height: 1.35; letter-spacing: -.01em; }
body .ats29 { --ats-ink:var(--at-deep); --ats-muted:var(--at-muted); --ats-blue:var(--at-blue); --ats-orange:var(--at-action); --ats-soft:var(--at-soft); font-size:16px; }
body .atl30 { --navy:var(--at-deep); --blue:var(--at-blue); --orange:var(--at-action); --muted:var(--at-muted); --line:var(--at-line); --soft:var(--at-soft); font-size:16px; }
body .atp360-app { --atp-text:var(--at-ink); --atp-muted:var(--at-muted); }
body .atc-app { font-family:var(--at-font); font-size:16px; color:var(--at-ink); }
body .atc-app .atc-btn { font-family:var(--at-font); font-size:15px !important; line-height:1.4; min-height:48px; overflow-wrap:normal; word-break:normal; }
body .atc-app a.atc-primary { color:#fff !important; background:var(--at-action); }
body .atc-app .atc-claim { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
body .atc-app .atc-claim>div { flex:1 1 320px; min-width:0; }
body .atc-app .atc-claim>.atc-btn { flex:0 1 auto; white-space:normal; }
body .at-v140-search button { font-size:15px; line-height:1.4; }
body .at-v140-nav :is(a,summary) { font-family:var(--at-font); }
body .at-v140-nav .at-v140-nav__mega :is(a,strong),
body .at-v140-nav .at32-services__panel a { font-size:14px; line-height:1.45; }
body .at27-nav__panel :is(a,summary),
body .at32-services__panel :is(a,summary) { line-height:1.45; }
body :is(.at32-services__panel,.at27-nav__panel) small { font-size:13px; line-height:1.5; }
body .at32-services__bottom a { font-size:13px; }
body .at32-services .at32-services__panel small { font-size:13px !important; line-height:1.5 !important; }
body .at32-services .at32-services__panel a { line-height:1.5; }
body .at26-promo { font-size:13px; line-height:1.5; }
body .at26-promo small { font-size:12px; }
body :is(.at25-fine,.at25-stock,.at25-paths small,.at25-universes small,.at25-trust span,
  .ats29-needs small,.ats29-scope li,.ats29-process li,.ats29-space>small,
  .atl30-fine,.atl30-product-body>.atl30-muted,.atl30-status,.atl30-search-help small,
  .atl30-more-families,.atl30-actions>a:not(.atl30-button),.at29-guide-card-body>.at25-eyebrow) {
  font-size:13px !important;
  line-height:1.55;
}
body :is(.ats29-copy,.at29-guide-card-body>p:not(.at25-eyebrow),.at29-guide-side p) { font-size:16px; }
body :is(.ats29-figure figcaption,.atl30-more-families span) { font-size:12px; }
body :is(.at25-button,.at1921-submit,.at1922-button,.atl30-button,.at-primary-button,.at-secondary-button) {
  font-size:15px !important;
  line-height:1.4;
  font-weight:700;
  min-height:48px;
}
body :is(.atp360-app,.woocommerce) button { font-size:15px; line-height:1.4; }
body .atp360-app :is(.atp360-next,.atp360-prev,.atp360-save-draft) { font-size:15px !important; }
body :is(.atp360-app,.atl30,.at1921-form,.at-quote-form,.woocommerce) label { font-size:14px; line-height:1.5; }
body main :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]) {
  font-size:16px !important;
  line-height:1.5;
}
body main :is(input,textarea)::placeholder { color:var(--at-muted); opacity:1; }
body main :is(.at25-fine,.at25-stock,.at25-paths small,.at25-universes small,.at25-trust span) { color:var(--at-muted); }
body :is(a,button,input,select,textarea,summary):focus-visible {
  outline:3px solid var(--at-blue);
  outline-offset:3px;
}
body :is(.at-v140-hero,.at1922-hero,.at26-promo,.at25-project-panel) :focus-visible { outline-color:#fff; }
body main :is(.at29-guide-reading,.entry-content)>p { max-width:75ch; }
body main :is(.at29-guide-reading,.entry-content) p a { text-underline-offset:3px; }
/* The contact assurance rail sits in a narrow column, not a full-page row. */
body .at1921-contact .at-commercial-trust { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important; margin-inline:0 !important; overflow:visible; }
body .at1921-contact .at-commercial-trust__item { min-width:0; padding:12px; border:0; }
body .at1921-contact .at-commercial-trust__item>div { min-width:0; }
body .at1921-contact .at-commercial-trust__item small { font-size:13px; }
body .atp360-app .at25-project-reassurance small,
body .atp360-app .atp360-journey-modes small { font-size:13px; }
/* Keep floating shortcuts clear of the current form. */
body:has(.atp360-app,.at1921-form,.at-document-form,.at-quote-form,.atl30-form) .atp360-floating { display:none !important; }
body:has(main form:focus-within) :is(.at-v140-whatsapp,.at-whatsapp-float,.at-floating-whatsapp) { visibility:hidden; }
@media(max-width:700px) {
  body.at-v140-site .at-v141-search .at-product-search__form { grid-template-columns:minmax(0,1fr) 98px !important; }
  body.at-v140-site .at-v141-search .at-product-search__form input { min-width:0; width:100%; }
  body.at-v140-site .at-v141-search .at-product-search__form button { min-width:98px; padding:0 10px !important; }
  body.at-v140-site .at-v141-search .at-product-search__form button span { display:inline !important; font-size:13px; }
  body.at-v140-site .at-v140-actions>a { font-size:11px !important; line-height:1.35; min-height:48px; }
  body .at-v140-search button { font-size:14px; }
  body .at-v140-nav :is(a,summary) { font-size:14px; }
  body .at26-promo { line-height:1.45; }
  body .ats29 .ats29-space select { min-height:48px; }
  body :is(.atl30,.ats29) :is(p,li) { overflow-wrap:break-word; }
}
@media(max-width:420px) { body .at1921-contact .at-commercial-trust { grid-template-columns:1fr !important; } }
@media(prefers-reduced-motion:reduce) {
  body :is(.at-v140-hero__track,.at27-nav__panel,.at32-services__panel) { transition:none !important; }
}
