/* Studio Galleti Core 1.2.4 — Portfolio aligned to the visual system of Serviços.
   Content remains native Elementor Free and therefore fully editable. */
.sg-portfolio-native-hero{
  position:relative;
  overflow:hidden;
  padding:72px 0 62px!important;
  color:#fff;
  background:
    radial-gradient(circle at 76% 16%,rgba(41,63,134,.36),transparent 30%),
    radial-gradient(circle at 92% 76%,rgba(208,102,27,.15),transparent 24%),
    linear-gradient(125deg,#04101d 0%,#071a2c 54%,#0a2037 100%)!important;
}
.sg-portfolio-native-hero:before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:linear-gradient(90deg,rgba(4,16,29,.98) 0%,rgba(4,16,29,.88) 38%,rgba(4,16,29,.18) 74%,rgba(4,16,29,.66) 100%);
}
.sg-portfolio-native-hero>.elementor-container{
  position:relative;z-index:2;
  width:min(calc(100% - 48px),1320px)!important;
  max-width:1320px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr)!important;
  gap:42px!important;
  align-items:center!important;
}
.sg-portfolio-native-copy,.sg-portfolio-native-visual{width:100%!important;max-width:none!important;padding:0!important}
.sg-portfolio-native-copy{max-width:610px!important;padding-right:6px!important}
.sg-portfolio-native-copy>.elementor-widget-wrap{align-content:center}
.sg-portfolio-native-kicker .elementor-heading-title{
  color:#f07a27!important;
  letter-spacing:0!important;
  line-height:1.05!important;
}
.sg-portfolio-native-kicker .elementor-heading-title:before{
  content:"";display:inline-block;width:20px;height:20px;margin-right:9px;vertical-align:-4px;
  background-position:center;background-size:contain;background-repeat:no-repeat;
}
.sg-portfolio-native-title{margin-top:13px!important;margin-bottom:14px!important}
.sg-portfolio-native-title .elementor-heading-title{color:#fff!important;line-height:1.08!important}
.sg-portfolio-native-text,.sg-portfolio-native-text p{color:#e4ecf5!important;line-height:1.55!important;margin-bottom:0}
.sg-portfolio-native-actions{margin-top:24px!important}
.sg-portfolio-native-actions>.elementor-container{gap:10px!important;justify-content:flex-start!important}
.sg-portfolio-native-actions .elementor-column{width:auto!important;flex:0 0 auto!important}
.sg-portfolio-native-actions .elementor-button{
  min-height:44px!important;padding:12px 20px!important;border-radius:6px!important;
  font-weight:800!important;line-height:1!important;box-shadow:none!important;
  transition:transform .2s ease,background .2s ease,border-color .2s ease!important;
}
.sg-portfolio-native-button-primary .elementor-button{
  background:#e77718!important;color:#fff!important;border:1px solid #e77718!important;
}
.sg-portfolio-native-button-secondary .elementor-button{
  background:transparent!important;color:#fff!important;border:1px solid #d0661b!important;
}
.sg-portfolio-native-actions .elementor-button:hover{transform:translateY(-2px)!important}
.sg-portfolio-native-button-primary .elementor-button:hover{background:#f07a27!important;border-color:#f07a27!important}
.sg-portfolio-native-button-secondary .elementor-button:hover{background:rgba(208,102,27,.12)!important}

/* Right-side feature card, visually consistent with Serviços. */
.sg-portfolio-native-visual>.elementor-widget-wrap{
  position:relative!important;display:grid!important;min-height:430px!important;align-content:center!important;
}
.sg-portfolio-native-visual .elementor-widget-image{
  grid-area:1/1!important;align-self:center!important;margin:0!important;width:100%!important;z-index:1!important;
}
.sg-portfolio-native-visual .elementor-widget-image img{
  display:block!important;width:100%!important;height:390px!important;max-height:none!important;object-fit:cover!important;
  border-radius:14px!important;border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 24px 64px rgba(0,0,0,.35)!important;
}
.sg-portfolio-native-visual>.elementor-widget-wrap:after{
  content:"";grid-area:1/1;align-self:center;z-index:2;pointer-events:none;width:100%;height:390px;border-radius:14px;
  background:linear-gradient(180deg,rgba(4,14,25,.04) 42%,rgba(4,14,25,.94) 100%);
}
.sg-portfolio-native-panel-kicker,.sg-portfolio-native-panel-title,.sg-portfolio-native-panel-text{
  grid-area:1/1!important;z-index:3!important;align-self:end!important;justify-self:stretch!important;
  margin-left:24px!important;margin-right:24px!important;
}
.sg-portfolio-native-panel-kicker{margin-bottom:111px!important}
.sg-portfolio-native-panel-title{margin-bottom:58px!important}
.sg-portfolio-native-panel-text{margin-bottom:20px!important}
.sg-portfolio-native-panel-kicker .elementor-heading-title{color:#f07a27!important;font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.sg-portfolio-native-panel-title .elementor-heading-title{color:#fff!important;font-size:30px!important;line-height:1.08!important;max-width:520px}
.sg-portfolio-native-panel-text,.sg-portfolio-native-panel-text p{color:#d9e2ed!important;font-size:15px!important;line-height:1.5!important;margin:0}

/* Gallery and CTA keep the same dark rhythm and content width used by Serviços. */
.sg-portfolio-native-gallery{background:#071726!important;padding:52px 0 58px!important;color:#fff}
.sg-portfolio-native-gallery>.elementor-container,.sg-portfolio-native-cta>.elementor-container{
  width:min(calc(100% - 48px),1320px)!important;max-width:1320px!important;margin:0 auto!important;
}
.sg-portfolio-native-gallery .elementor-heading-title{color:#fff!important}
.sg-portfolio-native-gallery .sg-portfolio-native-kicker .elementor-heading-title{color:#f07a27!important}
.sg-portfolio-native-gallery-title{margin-top:9px!important;margin-bottom:8px!important}
.sg-portfolio-native-gallery-text{max-width:780px;margin-bottom:22px!important}
.sg-portfolio-elementor-gallery-preview{padding:28px;border:1px dashed rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.035);color:#dce6f1}
.sg-portfolio-elementor-gallery-preview strong{display:block;margin-bottom:7px;color:#fff}
.sg-portfolio-native-cta{background:#061321!important;padding:0 0 72px!important}
.sg-portfolio-native-cta-box{background:linear-gradient(145deg,#0e2c4a,#0a1c30)!important;border:1px solid rgba(208,102,27,.38)!important;border-radius:18px!important;padding:34px!important}
.sg-portfolio-native-cta-button .elementor-button{background:#e77718!important;color:#fff!important;border:1px solid #e77718!important;border-radius:6px!important;font-weight:800!important}

@media(max-width:1180px){
  .sg-portfolio-native-hero>.elementor-container{grid-template-columns:1fr!important;gap:34px!important}
  .sg-portfolio-native-copy{max-width:790px!important}
  .sg-portfolio-native-visual{max-width:900px!important}
}
@media(max-width:767px){
  .sg-portfolio-native-hero{padding:54px 0 42px!important}
  .sg-portfolio-native-hero>.elementor-container,.sg-portfolio-native-gallery>.elementor-container,.sg-portfolio-native-cta>.elementor-container{width:min(calc(100% - 30px),1320px)!important}
  .sg-portfolio-native-visual>.elementor-widget-wrap{min-height:330px!important}
  .sg-portfolio-native-visual .elementor-widget-image img,.sg-portfolio-native-visual>.elementor-widget-wrap:after{height:300px!important}
  .sg-portfolio-native-panel-kicker{margin-bottom:100px!important}
  .sg-portfolio-native-panel-title{margin-bottom:52px!important}
  .sg-portfolio-native-actions>.elementor-container{display:flex!important;flex-direction:column!important;align-items:stretch!important}
  .sg-portfolio-native-actions .elementor-column{width:100%!important}
  .sg-portfolio-native-actions .elementor-button{width:100%!important}
}
