/* FIXUM V513 — spacing, proportion and responsive refinement */
:root{
  --fx-page-gutter:clamp(18px,3vw,44px);
  --fx-section-y:clamp(58px,7vw,108px);
  --fx-section-y-sm:clamp(38px,5vw,72px);
  --fx-card-pad:clamp(20px,2.5vw,32px);
  --fx-grid-gap:clamp(16px,2vw,28px);
  --fx-radius-lg:24px;
  --fx-radius-md:18px;
}
html{overflow-x:hidden;scroll-padding-top:110px}
body{overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,svg,video,canvas{max-width:100%}
.container,.container-lg,.container-xl,.container-xxl{padding-left:var(--fx-page-gutter)!important;padding-right:var(--fx-page-gutter)!important}
.fx-page-region>section{position:relative}
.section{padding-top:var(--fx-section-y)!important;padding-bottom:var(--fx-section-y)!important}
.section-sm{padding-top:var(--fx-section-y-sm)!important;padding-bottom:var(--fx-section-y-sm)!important}
.fx-page-region :is(.row,[class*="-grid"],[class*="-layout"],[class*="-list"],[class*="-cards"],[class*="-panel"],[class*="-copy"])>*{min-width:0}
.fx-page-region p{margin-top:0;margin-bottom:1rem}
.fx-page-region h1,.fx-page-region h2,.fx-page-region h3,.fx-page-region h4{overflow-wrap:anywhere}

/* Brand assets */
.fx-logo{display:flex;align-items:center;min-width:0}
.fx-logo img{display:block;width:auto;height:clamp(34px,3.1vw,48px);max-width:clamp(150px,16vw,224px);object-fit:contain}
.footer-logo img{display:block;max-width:190px;max-height:54px;object-fit:contain}
.fx-preloader .mark img{max-width:210px;max-height:70px;object-fit:contain}

/* Unified header rhythm */
.fx-unified-header .fx-header-inner{min-height:72px;gap:clamp(18px,2.5vw,38px)}
.fx-unified-desktop{gap:clamp(18px,2vw,34px)}
.fx-corporate-nav{gap:clamp(10px,1.35vw,22px)}
.fx-corporate-nav>li>a{padding:26px 0 22px;white-space:nowrap}
.fx-store-subnav>.container-xl{min-height:52px;gap:24px}

/* General section heads */
.v506-section-head,.v505-section-head{gap:clamp(22px,4vw,58px)!important;margin-bottom:clamp(28px,4vw,54px)!important}
.v506-section-head>*,.v505-section-head>*{min-width:0}
.v506-section-head>p,.v505-section-head>p{max-width:560px;line-height:1.7}

/* Image heroes */
.v512-image-hero>.container-xl{padding-top:clamp(126px,12vw,174px)!important;padding-bottom:clamp(66px,7vw,100px)!important}
.v512-image-hero :is(.v505-about-hero-grid,.v505-academy-hero-grid,.v505-agent-hero-grid,.v505-contact-hero-grid,.v505-clinical-index-grid){gap:clamp(34px,5vw,78px)!important;align-items:end!important}
.v512-image-hero h1{margin-top:18px!important;margin-bottom:24px!important;max-width:900px!important}
.v512-image-hero p{margin-bottom:0!important;max-width:760px!important}
.v512-image-hero :is(.v505-about-signature,.v505-academy-hero-stack,.v505-agent-card,.v505-contact-direct,.v505-clinical-index-stats){padding:clamp(18px,2.2vw,28px)!important}

/* Cards and grids: consistent breathing room */
.v506-solution-grid,.v506-case-grid,.v507-feature-grid,.v507-contact-topic-grid,.v507-timeline,.v505-agent-profile-grid,.v505-clinical-index-grid,.v505-case-related-grid,.v505-academy-library-grid{gap:var(--fx-grid-gap)!important}
.v506-solution-body,.v507-feature-card,.v507-contact-topic,.v507-timeline article,.v505-agent-profile-grid article,.v505-academy-library-card>div{padding:var(--fx-card-pad)!important}
.v506-solution-body p,.v507-feature-card p,.v507-contact-topic small,.v507-timeline p{line-height:1.68}

/* About / story */
.v512-story-strip{padding-top:clamp(28px,4vw,52px)!important;padding-bottom:clamp(28px,4vw,52px)!important}
.v512-story-grid{gap:var(--fx-grid-gap)!important}
.v512-story-grid figure{border-radius:var(--fx-radius-lg)!important}
.v507-about-timeline .v507-timeline{gap:var(--fx-grid-gap)!important}
.v507-timeline article{min-height:220px;display:flex;flex-direction:column;align-items:flex-start}
.v512-timeline-icon{flex:0 0 auto;margin-bottom:22px!important}
.v507-timeline article h3{margin:0 0 12px!important}

/* Academy: prevent narrow text columns at every desktop width */
.v505-academy-hero-grid{grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr)!important}
.v505-academy-hero-stack{min-width:0!important}
.v505-academy-hero-stack>div{display:grid!important;grid-template-columns:34px 44px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:16px!important;row-gap:5px!important;align-items:start!important;padding:22px 0!important}
.v505-academy-hero-stack>div>span{grid-column:1!important;grid-row:1/3!important;min-width:0!important}
.v505-academy-hero-stack>div>i{grid-column:2!important;grid-row:1/3!important;width:42px!important;height:42px!important;display:grid!important;place-items:center!important;margin:0!important}
.v505-academy-hero-stack>div>strong{grid-column:3!important;grid-row:1!important;min-width:0!important}
.v505-academy-hero-stack>div>small{grid-column:3!important;grid-row:2!important;min-width:0!important;max-width:none!important;line-height:1.55!important;overflow-wrap:normal!important;word-break:normal!important}
.v507-academy-gallery{gap:var(--fx-grid-gap)!important}
.v507-academy-gallery figure{border-radius:var(--fx-radius-lg)!important}

/* Clinical empty state */
.v512-clinical-empty{gap:clamp(24px,4vw,54px)!important;padding:clamp(20px,3vw,40px)!important}
.v512-clinical-empty-media{border-radius:20px!important}
.v505-clinical-empty>div:last-child{padding:clamp(6px,1.5vw,18px) 0!important;align-self:center}

/* Contact / forms */
.v505-contact-layout{gap:clamp(34px,5vw,76px)!important}
.v505-contact-form-panel,.v505-contact-context{min-width:0}
.v505-contact-form-panel{padding:clamp(22px,3vw,38px)!important}
.v505-contact-form{gap:22px}
.v505-form-grid{gap:18px!important}
.v505-form-grid .form-control,.v505-form-grid .form-select{min-height:48px}
.v505-form-grid textarea.form-control{min-height:140px;padding-top:14px}
.v507-contact-topic-grid{align-items:stretch}
.v507-contact-topic{min-height:190px}

/* Buttons should not collide or shrink into unusable pills */
.v506-actions,.v505-hero-actions,.v505-case-footer-cta>.container-xl>div:last-child{gap:12px!important}
.v506-btn,.v505-btn{padding-left:22px!important;padding-right:22px!important;min-height:50px;white-space:normal;text-align:center}

/* Footer spacing */
.fx-footer{padding-top:clamp(52px,6vw,86px)!important}
.footer-grid{gap:clamp(24px,3vw,44px)!important}
.footer-grid>div{min-width:0}
.footer-bottom{margin-top:clamp(30px,4vw,52px)!important;padding-top:24px!important;padding-bottom:24px!important;gap:18px;flex-wrap:wrap}
.footer-links li+li{margin-top:9px}

/* Product/store consistency */
.product-card-body{padding:clamp(18px,2vw,24px)!important}
.product-card{height:100%;display:flex;flex-direction:column}
.product-card-body{display:flex;flex:1;flex-direction:column}
.product-card .qty-add{margin-top:auto}
.detail-shell,.catalog-shell{min-width:0}

@media(max-width:1199.98px){
  .fx-corporate-nav{gap:12px}.fx-corporate-nav>li>a{font-size:.82rem}
  .v505-academy-hero-grid{grid-template-columns:minmax(0,1fr) minmax(330px,420px)!important}
  .v512-image-hero :is(.v505-about-hero-grid,.v505-agent-hero-grid,.v505-contact-hero-grid,.v505-clinical-index-grid){gap:38px!important}
}
@media(max-width:991.98px){
  :root{--fx-page-gutter:clamp(18px,4vw,30px);--fx-section-y:clamp(52px,8vw,82px)}
  .v512-image-hero>.container-xl{padding-top:118px!important;padding-bottom:64px!important}
  .v505-academy-hero-grid{grid-template-columns:1fr!important}
  .v505-academy-hero-stack{max-width:760px!important}
  .v512-story-grid{grid-template-columns:1fr 1fr!important}
  .v512-story-grid figure:first-child{grid-column:1/-1!important}
  .v506-section-head,.v505-section-head{grid-template-columns:1fr!important;align-items:start!important}
}
@media(max-width:767.98px){
  :root{--fx-page-gutter:18px;--fx-card-pad:20px;--fx-grid-gap:16px}
  .v512-image-hero>.container-xl{padding-top:104px!important;padding-bottom:54px!important}
  .v512-image-hero h1{font-size:clamp(2.55rem,12vw,4rem)!important;line-height:.98!important}
  .v512-image-hero :is(.v505-about-signature,.v505-academy-hero-stack,.v505-agent-card,.v505-contact-direct,.v505-clinical-index-stats){padding:18px!important}
  .v505-academy-hero-stack>div{grid-template-columns:30px 38px minmax(0,1fr)!important;column-gap:12px!important;padding:18px 0!important}
  .v505-academy-hero-stack>div>i{width:38px!important;height:38px!important}
  .v512-story-grid{grid-template-columns:1fr!important}
  .v512-story-grid figure,.v512-story-grid figure:first-child,.v512-story-grid figure:last-child{grid-column:auto!important;height:240px!important}
  .v505-contact-layout{grid-template-columns:1fr!important}
  .v505-contact-form-panel{padding:20px!important}
  .footer-bottom{align-items:flex-start!important;flex-direction:column}
}
@media(max-width:430px){
  :root{--fx-page-gutter:15px;--fx-card-pad:18px;--fx-section-y:48px;--fx-section-y-sm:34px}
  .v512-image-hero>.container-xl{padding-top:92px!important;padding-bottom:46px!important}
  .v512-image-hero h1{font-size:clamp(2.25rem,13vw,3.2rem)!important}
  .v505-academy-hero-stack>div{grid-template-columns:26px 34px minmax(0,1fr)!important;column-gap:10px!important}
  .v505-academy-hero-stack>div>i{width:34px!important;height:34px!important;font-size:.9rem!important}
  .v506-actions,.v505-hero-actions{display:grid!important;grid-template-columns:1fr!important}
  .v506-actions .v506-btn,.v505-hero-actions .v505-btn{width:100%!important}
  .product-card-body{padding:18px!important}
}
