/*
 * Sanimax Professional 4.3
 * Responsive & UX refinements only.
 * IMPORTANT: these rules style the existing WordPress blocks; they do not
 * replace page content, so texts/images/buttons remain editable in Gutenberg.
 */

/* Accessibility / interaction */
.sx4-page-main a:focus-visible,
.sx4-site-header a:focus-visible,
.sx4-site-footer a:focus-visible,
.sx41-download-btn:focus-visible,
.sx43-flipbook-frame:focus-visible,
.sx4-page-main button:focus-visible,
.sx4-site-header button:focus-visible {
  outline: 3px solid rgba(10,164,200,.42);
  outline-offset: 3px;
}
.sx4-actions .wp-block-button__link,
.sx41-download-btn,
.sx4-form-card button,
.sx4-register-form button { min-height:44px; }

/* Full catalog iframe (optional: enabled from Appearance > Catalogo Download). */
.sx43-catalog-preview{max-width:1180px;margin:0 auto 34px;padding:0 18px}
.sx43-catalog-preview-head{text-align:center;max-width:780px;margin:0 auto 24px}
.sx43-catalog-preview-head .sx4-kicker{justify-content:center!important}
.sx43-catalog-preview-head h2{margin:10px 0 8px!important;color:var(--sx4-navy);font-size:clamp(28px,3.2vw,42px)!important;letter-spacing:-.035em}
.sx43-catalog-preview-head p:last-child{margin:0;color:#6a7d87;font-size:14px;line-height:1.6}
.sx43-flipbook-frame{width:100%;height:min(82vh,860px);min-height:660px;border:1px solid #d7e7ed;border-radius:16px;overflow:hidden;background:#edf3f9;box-shadow:0 20px 46px rgba(3,46,73,.12)}
.sx43-flipbook-frame iframe{display:block;width:100%;height:100%;border:0;background:#edf3f9}
#catalogo-download{scroll-margin-top:100px}

/* Slight desktop polish without redesigning the approved layout. */
@media (min-width:1060px){
  .sx4-hero-title{max-width:570px}
  .sx4-card-body{padding:10px 12px 11px}
  .sx4-footer-grid{gap:34px}
}

/* Tablet */
@media (max-width:820px){
  .sx4-hero-copy{padding-inline:20px}
  .sx4-partner-copy{padding-inline:20px!important}
  .sx4-section-head{padding-inline:20px}
  .sx4-actions .wp-block-button__link{justify-content:center}
  .sx4-form-card input,.sx4-form-card textarea,.sx4-form-card select,
  .sx4-register-form input[type=text],.sx4-register-form input[type=email],.sx4-register-form input[type=tel]{min-height:44px}
  .sx43-flipbook-frame{height:78vh;min-height:620px;border-radius:12px}
}

/* Smartphone: improve rhythm and reduce excessive page length. */
@media (max-width:560px){
  .sx4-site-header{position:relative}
  .sx4-header-inner{min-height:64px}
  .sx4-header-inner .wp-block-site-logo img{max-width:128px;height:auto}
  .sx41-navigation .wp-block-navigation__responsive-container-open{min-width:44px;min-height:44px;align-items:center;justify-content:center}
  .sx41-navigation .wp-block-navigation__responsive-container.is-menu-open{padding:24px 20px 28px}
  .sx41-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:2px}
  .sx41-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:17px;line-height:1.25;padding:12px 8px!important}

  .sx4-hero{padding-top:8px}
  .sx4-hero-copy{padding:22px 18px 12px}
  .sx4-hero-title{font-size:30px!important;line-height:1.02!important;letter-spacing:-.041em;margin:11px 0 13px!important}
  .sx4-hero-text{font-size:13.5px;line-height:1.58}
  .sx4-actions{margin-top:19px!important;gap:8px;align-items:stretch}
  .sx4-actions .wp-block-button{flex:1 1 145px}
  .sx4-actions .wp-block-button__link{width:100%;padding-inline:13px;font-size:12px;min-height:46px}
  .sx4-hero-image{height:270px;border-radius:0 0 22px 22px}

  .sx4-proof{padding-bottom:12px}
  .sx4-proof-item{min-height:84px;padding:12px 8px}
  .sx4-proof-item h4{font-size:14px!important}
  .sx4-proof-item p:not(.sx4-proof-icon){font-size:9.5px;line-height:1.3;max-width:145px}
  .sx4-proof-icon{width:29px;height:29px;font-size:14px!important;margin-bottom:5px!important}

  .sx4-partner{padding:38px 0 34px}
  .sx4-partner-image{height:300px;border-radius:16px}
  .sx4-partner-copy{padding:24px 18px 8px!important}
  .sx4-partner-copy h2{font-size:28px!important;line-height:1.04;margin:9px 0 10px!important}
  .sx4-partner-copy>p:not(.sx4-kicker):not(.sx4-text-link){font-size:13px;line-height:1.55}
  .sx4-steps{gap:7px;margin:15px 0 13px!important}
  .sx4-steps p{font-size:10px;padding:9px 8px}

  .sx4-section{padding:42px 0}
  .sx4-section-head{padding-inline:18px;margin-bottom:20px!important}
  .sx4-section-head h2{font-size:27px!important;line-height:1.06;margin-top:8px!important}
  .sx4-section-head>p:not(.sx4-kicker){font-size:12px;line-height:1.45}
  .sx4-showcase{padding-inline:12px}
  .sx4-featured{min-height:390px!important;border-radius:15px 15px 24px 15px}

  /* Services: compact horizontal cards below the featured service. */
  .sx4-services .sx4-card-grid{grid-template-columns:1fr!important;gap:10px}
  .sx4-services .sx4-card{display:grid;grid-template-columns:minmax(115px,38%) 1fr;min-height:136px}
  .sx4-services .sx4-card>.wp-block-image{height:100%!important;min-height:136px}
  .sx4-services .sx4-card>.wp-block-image img{height:100%;object-fit:cover}
  .sx4-services .sx4-card-body{padding:12px 12px 10px;align-self:center}
  .sx4-services .sx4-card-body h3{font-size:14px!important;line-height:1.12}
  .sx4-services .sx4-card-body>p:not(.sx4-card-kicker):not(.sx4-card-link){font-size:9.5px;-webkit-line-clamp:2}
  .sx4-services .sx4-card-link{font-size:9px!important}

  /* Products: two compact columns on normal smartphones. */
  .sx4-products .sx4-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
  .sx4-products .sx4-card>.wp-block-image{height:122px!important}
  .sx4-products .sx4-card-body{padding:9px 8px 9px}
  .sx4-products .sx4-card-body h3{font-size:12px!important;line-height:1.12}
  .sx4-products .sx4-card-body>p:not(.sx4-card-kicker):not(.sx4-card-link){font-size:8.5px;line-height:1.3;-webkit-line-clamp:2}
  .sx4-products .sx4-card-kicker{font-size:6.8px!important}
  .sx4-products .sx4-card-link{font-size:8px!important}
  .sx4-products .sx4-product-featured{min-height:340px!important}
  .sx4-all-link{margin-top:14px!important}

  /* Contact and registration: less empty space, larger touch fields. */
  .sx4-contact{padding:38px 12px 30px}
  .sx4-contact-copy{padding:24px 132px 24px 20px!important;min-height:315px}
  .sx4-contact-copy h2,.sx4-register-copy h2{font-size:26px!important;line-height:1.04}
  .sx4-contact-copy>p:not(.sx4-kicker),.sx4-register-copy>p:not(.sx4-kicker){font-size:11.5px;line-height:1.5}
  .sx4-contact-list,.sx4-register-list{font-size:9.5px;line-height:1.6;margin-top:12px!important}
  .sx4-contact-person{width:125px;right:4px}
  .sx4-form-card{padding:18px!important}
  .sx4-form-card input,.sx4-form-card select{min-height:46px!important;font-size:16px!important}
  .sx4-form-card textarea{min-height:110px!important;font-size:16px!important}
  .sx4-form-card button,.sx4-form-card input[type=submit]{min-height:46px!important;width:100%!important}

  .sx4-register{padding:8px 12px 34px}
  .sx4-register-copy{padding:24px 145px 24px 20px!important;min-height:330px}
  .sx4-register-person{width:145px}
  .sx4-register-form{padding:18px!important}
  .sx4-register-form .snx-register-fields{gap:10px}
  .sx4-register-form input[type=text],.sx4-register-form input[type=email],.sx4-register-form input[type=tel]{height:46px;font-size:16px}
  .sx4-register-form .snx-register-check{font-size:10.5px!important;line-height:1.4!important}
  .sx4-register-form .snx-register-note{font-size:9.5px}
  .sx4-register-form button{min-height:46px;margin-top:12px}

  .sx4-final{padding:0 12px 30px}
  .sx4-final-card{border-radius:17px}
  .sx4-final-copy{padding:24px 20px!important}
  .sx4-final-copy h2{font-size:26px!important;line-height:1.04}
  .sx4-final-image{height:145px}

  /* Footer: brand full width + two-column link groups. */
  .sx4-site-footer{padding:30px 16px 16px}
  .sx4-footer-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px!important}
  .sx4-footer-grid>.wp-block-column{min-width:0!important;flex-basis:auto!important}
  .sx4-footer-grid>.wp-block-column:first-child{grid-column:1/-1}
  .sx4-footer-grid h4{font-size:12px!important;margin-bottom:6px!important}
  .sx4-footer-grid p{font-size:10px;line-height:1.55}
  .sx4-footer-note{max-width:300px}
  .sx4-footer-bottom{margin-top:22px!important}

  .sx41-download-hero{padding:42px 18px 38px}
  .sx41-download-content{padding:36px 0 48px}
  .sx41-download-box{margin-inline:12px;padding:24px 20px}
  .sx43-catalog-preview{padding-inline:12px;margin-bottom:26px}
  .sx43-catalog-preview-head{padding-inline:6px;margin-bottom:16px}
  .sx43-catalog-preview-head h2{font-size:27px!important}
  .sx43-catalog-preview-head p:last-child{font-size:12.5px}
  .sx43-flipbook-frame{height:76vh;min-height:560px;border-radius:9px}
}

@media (max-width:359px){
  .sx4-hero-title{font-size:28px!important}
  .sx4-actions .wp-block-button{flex-basis:100%}
  .sx4-products .sx4-card-grid{grid-template-columns:1fr!important}
  .sx4-products .sx4-card>.wp-block-image{height:170px!important}
  .sx4-contact-copy{padding-right:108px!important}
  .sx4-contact-person{width:105px}
  .sx4-register-copy{padding-right:120px!important}
  .sx4-register-person{width:120px}
  .sx4-footer-grid{grid-template-columns:1fr}
  .sx4-footer-grid>.wp-block-column:first-child{grid-column:auto}
}

@media (prefers-reduced-motion:reduce){
  .sx4-card,.sx4-actions .wp-block-button__link,.sx41-download-btn{transition:none!important}
  html{scroll-behavior:auto!important}
}
