.elementor-1498 .elementor-element.elementor-element-6dfc9df{--display:flex;--min-height:90vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:80px;--padding-bottom:80px;--padding-left:30px;--padding-right:30px;}.elementor-1498 .elementor-element.elementor-element-81ea817{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:16px 16px;--row-gap:16px;--column-gap:16px;}.elementor-1498 .elementor-element.elementor-element-5e60953 .elementor-heading-title{font-family:"Courier Prime", Sans-serif;font-size:20px;}.elementor-1498 .elementor-element.elementor-element-dac8d40{--display:flex;}.elementor-1498 .elementor-element.elementor-element-7f80704{--display:flex;--min-height:520px;}.elementor-1498 .elementor-element.elementor-element-7f80704:not(.elementor-motion-effects-element-type-background), .elementor-1498 .elementor-element.elementor-element-7f80704 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://shanagrimoire.com/wp-content/uploads/2026/03/b6e60e99-447f-4534-b83f-8212e9132a3c.jpg");background-position:top center;background-repeat:no-repeat;background-size:cover;}.elementor-1498 .elementor-element.elementor-element-57d5547{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:95px;--padding-bottom:95px;--padding-left:30px;--padding-right:30px;}.elementor-1498 .elementor-element.elementor-element-ed2ca5d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:18px 18px;--row-gap:18px;--column-gap:18px;}.elementor-1498 .elementor-element.elementor-element-9458bd1{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:110px;--padding-bottom:110px;--padding-left:0px;--padding-right:0px;}.elementor-1498 .elementor-element.elementor-element-ec087a6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-1498 .elementor-element.elementor-element-faf4641{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1498 .elementor-element.elementor-element-55cbe9a{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1498 .elementor-element.elementor-element-e51c076{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1498 .elementor-element.elementor-element-7bcec60{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1498 .elementor-element.elementor-element-02fc6b9{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1498 .elementor-element.elementor-element-93e5658{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-1498 .elementor-element.elementor-element-f65c2fb{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-1498 .elementor-element.elementor-element-e39ee09{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-1498 .elementor-element.elementor-element-52bdfda{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:100px;--padding-bottom:110px;--padding-left:0px;--padding-right:0px;}.elementor-1498 .elementor-element.elementor-element-798d319{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-1498 .elementor-element.elementor-element-b3ccc55{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}@media(max-width:1024px){.elementor-1498 .elementor-element.elementor-element-faf4641{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-1498 .elementor-element.elementor-element-81ea817{--width:52%;}.elementor-1498 .elementor-element.elementor-element-7f80704{--content-width:42%;}.elementor-1498 .elementor-element.elementor-element-ed2ca5d{--content-width:980px;}.elementor-1498 .elementor-element.elementor-element-b3ccc55{--content-width:720px;}}@media(max-width:767px){.elementor-1498 .elementor-element.elementor-element-faf4641{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for container, class: .elementor-element-6dfc9df */@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

/* =========================
   HELL RITUAL HERO
========================= */

.sg-agency-hero{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% -8%, rgba(255, 28, 28, 0.22) 0%, rgba(170, 0, 0, 0.14) 16%, rgba(70, 0, 0, 0.08) 28%, rgba(0,0,0,0) 58%),
    radial-gradient(circle at 18% 36%, rgba(120, 0, 0, 0.14) 0%, rgba(0,0,0,0) 34%),
    radial-gradient(circle at 82% 42%, rgba(90, 0, 0, 0.12) 0%, rgba(0,0,0,0) 30%),
    linear-gradient(180deg, #010101 0%, #090001 18%, #140102 46%, #050000 72%, #010101 100%);
  border-top: 1px solid rgba(170, 14, 14, 0.18);
  border-bottom: 1px solid rgba(170, 14, 14, 0.14);
  box-shadow:
    inset 0 120px 160px rgba(170,0,0,0.10),
    inset 0 -120px 160px rgba(0,0,0,0.72),
    inset 0 0 220px rgba(120,0,0,0.12),
    0 0 80px rgba(120,0,0,0.08);
}

/* plasma infernal superior */
.sg-agency-hero::before{
  content:"";
  position:absolute;
  left:50%;
  top:-8%;
  transform:translateX(-50%);
  width:min(1050px, 92vw);
  height:520px;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(255, 46, 26, 0.26) 0%,
      rgba(210, 0, 0, 0.18) 14%,
      rgba(130, 0, 0, 0.10) 28%,
      rgba(70, 0, 0, 0.05) 42%,
      rgba(0,0,0,0) 72%);
  filter: blur(44px);
  pointer-events:none;
  z-index:0;
}

/* vetas litúrgicas / textura */
.sg-agency-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.012) 0px,
      rgba(255,255,255,0.012) 1px,
      transparent 1px,
      transparent 118px
    ),
    linear-gradient(180deg, rgba(255,0,0,0.02) 0%, rgba(0,0,0,0) 26%, rgba(255,0,0,0.02) 100%);
  opacity:.22;
  pointer-events:none;
  z-index:0;
}

/* =========================
   LEFT SIDE
========================= */

.sg-agency-hero__content{
  position:relative;
  z-index:2;
}

.sg-agency-eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 22px;
  border-radius:999px;
  border:1px solid rgba(220, 38, 28, 0.52);
  background:
    linear-gradient(180deg, rgba(42,0,0,0.78) 0%, rgba(16,0,0,0.84) 100%);
  color:#e0a78f;
  font-family:"Cinzel", serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.24em;
  text-transform:uppercase;
  box-shadow:
    inset 0 0 14px rgba(220,30,20,0.10),
    0 0 18px rgba(160,0,0,0.12);
}

.sg-agency-eyebrow::before,
.sg-agency-eyebrow::after{
  content:"✦";
  color:#ff6a4f;
  font-size:10px;
  text-shadow:0 0 10px rgba(255,40,0,0.22);
}

.sg-agency-title{
  margin:18px 0 0 0;
  color:#f4eadf;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(66px, 7vw, 118px);
  line-height:.86em;
  letter-spacing:-.04em;
  font-weight:600;
  text-transform:none;
  text-shadow:
    0 0 2px rgba(255,255,255,0.06),
    0 0 18px rgba(255,70,40,0.12),
    0 0 34px rgba(180,0,0,0.14),
    0 0 72px rgba(110,0,0,0.08);
}

.sg-agency-title .accent{
  display:inline-block;
  color:#c20e12;
  font-family:"Cinzel", serif;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.02em;
  text-shadow:
    0 0 10px rgba(255,20,20,0.45),
    0 0 26px rgba(200,0,0,0.24),
    0 0 54px rgba(120,0,0,0.16);
  filter:saturate(120%);
}

.sg-agency-subtitle{
  max-width:670px;
  margin-top:28px;
  color:rgba(243, 227, 214, 0.84);
  font-family:"Inter", sans-serif;
  font-size:20px;
  line-height:1.82em;
  font-weight:400;
  text-shadow:
    0 0 18px rgba(0,0,0,0.38),
    0 0 30px rgba(70,0,0,0.06);
}

/* =========================
   BUTTONS: BLOOD PORTALS
========================= */

.sg-agency-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:38px;
}

.sg-btn-primary .elementor-button,
.sg-btn-secondary .elementor-button{
  position:relative;
  overflow:visible;
  min-height:58px;
  padding:16px 34px !important;
  border-radius:999px !important;
  font-family:"Cinzel", serif;
  font-size:15px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:all .35s ease;
}

/* botón principal: sangre viva */
.sg-btn-primary .elementor-button{
  background:
    radial-gradient(circle at 50% 46%, rgba(255, 80, 45, 0.22) 0%, rgba(200, 18, 18, 0.12) 34%, rgba(0,0,0,0) 100%),
    linear-gradient(135deg, #3f0004 0%, #7c0608 28%, #b50f12 66%, #df4b1f 100%);
  color:#f6e9de !important;
  border:1px solid rgba(238, 98, 54, 0.62);
  box-shadow:
    inset 0 0 20px rgba(255, 220, 190, 0.05),
    0 0 0 1px rgba(255,255,255,0.03),
    0 0 22px rgba(220,30,20,0.18),
    0 16px 34px rgba(80,0,0,0.36);
}

.sg-btn-primary .elementor-button::before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:999px;
  background:
    radial-gradient(circle, rgba(215, 20, 20, 0.30) 0%, rgba(215, 20, 20, 0.14) 34%, rgba(255, 110, 50, 0.08) 52%, rgba(0,0,0,0) 74%);
  filter:blur(14px);
  z-index:-1;
}

.sg-btn-primary .elementor-button::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:999px;
  background:
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.08) 48%, transparent 100%);
  transform:translateX(-135%);
  transition:transform .8s ease;
}

.sg-btn-primary .elementor-button:hover::after{
  transform:translateX(135%);
}

.sg-btn-primary .elementor-button:hover{
  transform:translateY(-2px);
  box-shadow:
    inset 0 0 22px rgba(255,230,210,0.08),
    0 0 0 1px rgba(255,255,255,0.05),
    0 0 40px rgba(255,35,20,0.28),
    0 18px 38px rgba(95,0,0,0.40);
}

/* botón secundario: hueso quemado */
.sg-btn-secondary .elementor-button{
  background:
    linear-gradient(180deg, rgba(25,6,6,0.92) 0%, rgba(11,3,3,0.96) 100%);
  color:#efe0d0 !important;
  border:1px solid rgba(155, 40, 24, 0.44);
  box-shadow:
    inset 0 0 14px rgba(150,14,14,0.08),
    0 0 18px rgba(90,0,0,0.10);
}

.sg-btn-secondary .elementor-button::before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:999px;
  background:
    radial-gradient(circle, rgba(160, 34, 18, 0.18) 0%, rgba(160,34,18,0.08) 34%, rgba(0,0,0,0) 72%);
  filter:blur(12px);
  z-index:-1;
}

.sg-btn-secondary .elementor-button:hover{
  transform:translateY(-2px);
  border-color:rgba(210, 56, 28, 0.56);
  box-shadow:
    inset 0 0 14px rgba(180,22,14,0.12),
    0 0 26px rgba(120,0,0,0.14);
}

/* =========================
   PHOTO AS INFERNAL RELIC
========================= */

.sg-agency-hero__visual{
  position:relative;
  z-index:2;
  overflow:visible;
}

/* halo central rojo/infernal */
.sg-agency-hero__visual::before{
  content:"";
  position:absolute;
  inset:6% 8%;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(255, 28, 28, 0.26) 0%,
      rgba(185, 0, 0, 0.18) 22%,
      rgba(120, 0, 0, 0.12) 42%,
      rgba(255, 90, 20, 0.06) 56%,
      rgba(0,0,0,0) 76%);
  filter:blur(38px);
  z-index:0;
  animation:sgHellPulse 5.8s ease-in-out infinite;
}

/* aura exterior tipo calor infernal */
.sg-agency-hero__visual::after{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:34px;
  background:
    linear-gradient(180deg,
      rgba(255,255,255,0.02) 0%,
      rgba(220,22,18,0.09) 28%,
      rgba(255,110,30,0.05) 52%,
      rgba(10,0,0,0.06) 100%);
  filter:blur(16px);
  z-index:0;
  pointer-events:none;
}

@keyframes sgHellPulse{
  0%{
    transform:scale(1);
    opacity:.90;
  }
  50%{
    transform:scale(1.05);
    opacity:1;
  }
  100%{
    transform:scale(1);
    opacity:.90;
  }
}

/* sin ensanchar la imagen */
.sg-agency-hero__visual img{
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  border-radius:28px;
  filter:
    brightness(.88)
    contrast(1.07)
    saturate(.94)
    sepia(.05);
  box-shadow:
    0 26px 64px rgba(0,0,0,0.52),
    0 0 30px rgba(170,10,10,0.14);
}

/* marco relicario */
.sg-agency-hero__visual .elementor-widget-container{
  position:relative;
  height:100%;
}

.sg-agency-hero__visual .elementor-widget-container::before{
  content:"";
  position:absolute;
  inset:16px;
  border-radius:22px;
  border:1px solid rgba(236, 220, 198, 0.10);
  box-shadow: inset 0 0 18px rgba(255,255,255,0.02);
  z-index:3;
  pointer-events:none;
}

.sg-agency-hero__visual .elementor-widget-container::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:28px;
  background:
    linear-gradient(180deg, rgba(25,0,0,0.08) 0%, rgba(12,0,0,0.24) 100%),
    radial-gradient(circle at 50% 14%, rgba(200, 0, 0, 0.10) 0%, rgba(0,0,0,0) 48%);
  pointer-events:none;
  z-index:2;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 1024px){
  .sg-agency-title{
    font-size:clamp(50px, 9vw, 84px);
  }

  .sg-agency-subtitle{
    font-size:18px;
  }
}

@media (max-width: 767px){
  .sg-agency-eyebrow{
    font-size:11px;
    letter-spacing:.18em;
    padding:8px 14px;
  }

  .sg-agency-title{
    font-size:46px;
    line-height:.94em;
  }

  .sg-agency-subtitle{
    font-size:16px;
    line-height:1.72em;
  }

  .sg-agency-buttons{
    width:100%;
    flex-direction:column;
    align-items:stretch;
  }

  .sg-btn-primary .elementor-button,
  .sg-btn-secondary .elementor-button{
    width:100%;
    justify-content:center;
  }

  .sg-agency-hero__visual::after{
    inset:-6px;
    border-radius:24px;
  }

  .sg-agency-hero__visual img,
  .sg-agency-hero__visual .elementor-widget-container::after{
    border-radius:24px;
  }

  .sg-agency-hero__visual .elementor-widget-container::before{
    inset:12px;
    border-radius:18px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-57d5547 */@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600&display=swap');

/* =========================
   ABOUT — STONE INSCRIPTION
========================= */

.sg-agency-about{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 0%, rgba(165, 0, 18, 0.10) 0%, rgba(100, 0, 0, 0.05) 18%, rgba(0,0,0,0) 40%),
    linear-gradient(180deg, #020202 0%, #060102 24%, #070202 68%, #020202 100%);
  border-top: 1px solid rgba(145, 14, 18, 0.10);
  border-bottom: 1px solid rgba(145, 14, 18, 0.10);
}

.sg-agency-about::before{
  content:"";
  position:absolute;
  left:50%;
  top:-10%;
  transform:translateX(-50%);
  width:min(820px, 82vw);
  height:320px;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(180, 18, 18, 0.16) 0%,
      rgba(110, 0, 0, 0.07) 22%,
      rgba(0,0,0,0) 70%);
  filter: blur(38px);
  pointer-events:none;
  z-index:0;
}

.sg-agency-about::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.008) 0px,
      rgba(255,255,255,0.008) 1px,
      transparent 1px,
      transparent 130px
    );
  opacity:.12;
  pointer-events:none;
  z-index:0;
}

/* PIEDRA / LOSA CENTRAL */
.sg-agency-about__stone{
  position: relative;
  z-index: 2;
  padding: 48px 52px 42px 52px;
  border-radius: 34px;
  background:
    linear-gradient(180deg, rgba(22, 8, 8, 0.88) 0%, rgba(11, 5, 5, 0.96) 100%);
  border: 1px solid rgba(135, 28, 18, 0.22);
  box-shadow:
    inset 0 0 18px rgba(185, 18, 18, 0.05),
    inset 0 -20px 40px rgba(0,0,0,0.22),
    0 20px 50px rgba(0,0,0,0.26),
    0 0 24px rgba(100,0,0,0.05);
  overflow: visible;
}

/* textura de piedra ritual */
.sg-agency-about__stone::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 0%, rgba(185, 22, 22, 0.08) 0%, rgba(0,0,0,0) 38%),
    linear-gradient(180deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0.00) 18%, rgba(0,0,0,0.08) 100%);
  pointer-events:none;
}

.sg-agency-about__stone::after{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:24px;
  border:1px solid rgba(228, 214, 196, 0.06);
  pointer-events:none;
}

/* EYEBROW */
.sg-agency-about__eyebrow{
  position: relative;
  z-index: 2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(170, 36, 26, 0.42);
  background:
    linear-gradient(180deg, rgba(30, 0, 0, 0.78) 0%, rgba(16, 0, 0, 0.84) 100%);
  color:#d9a288;
  font-family:"Cinzel", serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
  box-shadow:
    inset 0 0 12px rgba(180,20,20,0.06),
    0 0 18px rgba(110,0,0,0.08);
}

.sg-agency-about__eyebrow::before,
.sg-agency-about__eyebrow::after{
  content:"✦";
  font-size:10px;
  color:#d66b55;
  text-shadow:0 0 10px rgba(180,20,20,0.18);
}

/* TITULO */
.sg-agency-about__title{
  position: relative;
  z-index: 2;
  margin: 10px 0 4px 0;
  text-align:center;
  color:#f1e6da;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(40px, 4.7vw, 68px);
  line-height:0.96em;
  letter-spacing:-0.03em;
  font-weight:600;
  text-shadow:
    0 0 1px rgba(255,255,255,0.05),
    0 0 18px rgba(100,0,0,0.08);
  max-width: 850px;
}

/* TEXTO */
.sg-agency-about__text{
  position: relative;
  z-index: 2;
  max-width: 760px;
  text-align:center;
}

.sg-agency-about__text p{
  margin:0;
  color:rgba(235, 222, 212, 0.82);
  font-family:"Inter", sans-serif;
  font-size:17px;
  line-height:1.9em;
  font-weight:400;
  text-shadow:0 0 16px rgba(0,0,0,0.24);
}

.sg-agency-about__text p + p{
  margin-top: 14px;
}

/* =========================
   SYMBOL / PORTAL
========================= */

.sg-agency-about__symbol{
  position: relative;
  z-index: 2;
  margin-top: 26px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.sg-agency-about__symbol .elementor-widget-container{
  position: relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 14px;
  border-radius: 999px;
}

/* aura exterior flotante */
.sg-agency-about__symbol .elementor-widget-container::before{
  content:"";
  position:absolute;
  inset:-18px;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(210, 18, 18, 0.24) 0%,
      rgba(155, 0, 0, 0.14) 28%,
      rgba(90, 0, 0, 0.08) 46%,
      rgba(0,0,0,0) 72%);
  filter: blur(22px);
  z-index:0;
  animation: sgAboutPortalPulse 5.5s ease-in-out infinite;
}

/* anillo fino */
.sg-agency-about__symbol .elementor-widget-container::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(230, 214, 196, 0.10);
  box-shadow:
    inset 0 0 12px rgba(255,255,255,0.02),
    0 0 24px rgba(160,0,0,0.08);
  z-index:1;
  pointer-events:none;
}

@keyframes sgAboutPortalPulse{
  0%{
    transform: scale(1);
    opacity: .88;
  }
  50%{
    transform: scale(1.05);
    opacity: 1;
  }
  100%{
    transform: scale(1);
    opacity: .88;
  }
}

/* imagen circular flotando */
.sg-agency-about__symbol img{
  position: relative;
  z-index: 2;
  width: min(220px, 42vw);
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 50%;
  filter:
    brightness(.92)
    contrast(1.05)
    saturate(.96)
    sepia(.04);
  box-shadow:
    0 18px 45px rgba(0,0,0,0.32),
    0 0 28px rgba(160, 12, 12, 0.12);
  animation: sgSymbolFloat 6.5s ease-in-out infinite;
}

@keyframes sgSymbolFloat{
  0%{
    transform: translateY(0px);
  }
  50%{
    transform: translateY(-8px);
  }
  100%{
    transform: translateY(0px);
  }
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1024px){
  .sg-agency-about__stone{
    padding: 38px 30px 36px 30px;
  }

  .sg-agency-about__title{
    font-size: clamp(38px, 6vw, 56px);
  }
}

@media (max-width: 767px){
  .sg-agency-about{
    padding-top: 68px;
    padding-bottom: 64px;
  }

  .sg-agency-about__stone{
    padding: 28px 18px 30px 18px;
    border-radius: 24px;
  }

  .sg-agency-about__stone::after{
    inset:10px;
    border-radius:16px;
  }

  .sg-agency-about__eyebrow{
    font-size:11px;
    letter-spacing:.16em;
    padding:8px 14px;
  }

  .sg-agency-about__title{
    font-size:42px;
    line-height:1em;
  }

  .sg-agency-about__text p{
    font-size:16px;
    line-height:1.8em;
  }

  .sg-agency-about__symbol{
    margin-top: 22px;
  }

  .sg-agency-about__symbol img{
    width: min(180px, 54vw);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-ec087a6 *//* =========================
   HOW THE AGENCY WORKS
========================= */

.sg-agency-process{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 0%, rgba(170, 0, 0, 0.10) 0%, rgba(90, 0, 0, 0.05) 18%, rgba(0,0,0,0) 42%),
    linear-gradient(180deg, #020202 0%, #050102 38%, #020202 100%);
  border-top: 1px solid rgba(145, 14, 18, 0.08);
  border-bottom: 1px solid rgba(145, 14, 18, 0.08);
}

.sg-agency-process::before{
  content:"";
  position:absolute;
  left:50%;
  top:-8%;
  transform:translateX(-50%);
  width:min(900px, 85vw);
  height:320px;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(185, 24, 24, 0.14) 0%,
      rgba(100,0,0,0.06) 24%,
      rgba(0,0,0,0) 68%);
  filter: blur(36px);
  pointer-events:none;
  z-index:0;
}

.sg-agency-process::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,0.008) 0px,
      rgba(255,255,255,0.008) 1px,
      transparent 1px,
      transparent 126px
    );
  opacity:.12;
  pointer-events:none;
  z-index:0;
}

.sg-agency-process__wrap{
  position: relative;
  z-index: 2;
}

.sg-agency-process__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(170, 36, 26, 0.42);
  background:
    linear-gradient(180deg, rgba(30, 0, 0, 0.78) 0%, rgba(16, 0, 0, 0.84) 100%);
  color:#d9a288;
  font-family:"Cinzel", serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
  box-shadow:
    inset 0 0 12px rgba(180,20,20,0.06),
    0 0 18px rgba(110,0,0,0.08);
}

.sg-agency-process__eyebrow::before,
.sg-agency-process__eyebrow::after{
  content:"✦";
  font-size:10px;
  color:#d66b55;
  text-shadow:0 0 10px rgba(180,20,20,0.18);
}

.sg-agency-process__title{
  margin:12px 0 0 0;
  text-align:center;
  color:#f1e6da;
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(40px, 4.8vw, 70px);
  line-height:.96em;
  letter-spacing:-.03em;
  font-weight:600;
  text-shadow:
    0 0 1px rgba(255,255,255,0.05),
    0 0 18px rgba(100,0,0,0.08);
}

.sg-agency-process__intro{
  max-width:760px;
  text-align:center;
  color:rgba(235, 222, 212, 0.82);
  font-family:"Inter", sans-serif;
  font-size:17px;
  line-height:1.85em;
}

/* GRID */
.sg-agency-process__grid{
  margin-top:18px;
}

/* CARDS */
.sg-agency-step{
  position: relative;
  flex: 1 1 calc(25% - 22px);
  min-width: 240px;
  max-width: 270px;
  padding: 28px 24px 26px 24px;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(22, 6, 6, 0.88) 0%, rgba(10, 4, 4, 0.96) 100%);
  border: 1px solid rgba(145, 28, 18, 0.22);
  box-shadow:
    inset 0 0 16px rgba(180, 18, 18, 0.05),
    0 16px 34px rgba(0,0,0,0.24),
    0 0 18px rgba(100,0,0,0.04);
  overflow:hidden;
  text-align:center;
}

.sg-agency-step::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 0%, rgba(185, 24, 24, 0.08) 0%, rgba(0,0,0,0) 38%);
  pointer-events:none;
}

.sg-agency-step::after{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:20px;
  border:1px solid rgba(230, 216, 198, 0.05);
  pointer-events:none;
}

.sg-agency-step__number{
  position: relative;
  z-index:2;
  margin:0 0 10px 0;
  color:#b14e46;
  font-family:"Cinzel", serif;
  font-size:24px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-shadow:0 0 12px rgba(150,0,0,0.10);
}

.sg-agency-step__title{
  position: relative;
  z-index:2;
  margin:0;
  color:#f0e4d8;
  font-family:"Cormorant Garamond", serif;
  font-size:34px;
  line-height:1em;
  font-weight:600;
  letter-spacing:-.02em;
}

.sg-agency-step__text{
  position: relative;
  z-index:2;
  margin-top:12px;
}

.sg-agency-step__text p{
  margin:0;
  color:rgba(234, 220, 210, 0.78);
  font-family:"Inter", sans-serif;
  font-size:15px;
  line-height:1.75em;
}

/* note */
.sg-agency-process__note{
  margin-top:16px;
  text-align:center;
  color:#a96958;
  font-family:"Cinzel", serif;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.92;
}

@media (max-width: 1024px){
  .sg-agency-step{
    flex: 1 1 calc(50% - 22px);
    max-width: 100%;
  }
}

@media (max-width: 767px){
  .sg-agency-process{
    padding-top:72px;
    padding-bottom:72px;
  }

  .sg-agency-process__title{
    font-size:42px;
    line-height:1em;
  }

  .sg-agency-process__intro{
    font-size:16px;
    line-height:1.8em;
  }

  .sg-agency-step{
    flex: 1 1 100%;
    min-width: 100%;
    border-radius:22px;
    padding:24px 18px 22px 18px;
  }

  .sg-agency-step::after{
    inset:10px;
    border-radius:16px;
  }

  .sg-agency-step__title{
    font-size:30px;
  }

  .sg-agency-step__text p{
    font-size:15px;
    line-height:1.72em;
  }

  .sg-agency-process__note{
    font-size:11px;
    line-height:1.6em;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e39ee09 *//* =========================================
   SHANA AGENCY — APPLY BUTTON (PORTAL STYLE)
========================================= */

.sg-apply-btn .elementor-button{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 18px 42px !important;
  border-radius: 999px !important;

  font-family: "Cinzel", serif;
  font-size: 14px;
  letter-spacing: .22em;
  text-transform: uppercase;

  color: #f4e9dc !important;

  background:
    radial-gradient(circle at 50% 50%, rgba(255, 80, 40, 0.18) 0%, rgba(200, 20, 20, 0.10) 38%, rgba(0,0,0,0) 100%),
    linear-gradient(135deg, #3a0003 0%, #7c0608 30%, #b10f14 65%, #d94a1f 100%);

  border: 1px solid rgba(255, 70, 40, 0.55);

  box-shadow:
    0 0 26px rgba(255, 0, 0, 0.25),
    0 18px 38px rgba(0,0,0,0.5),
    inset 0 0 14px rgba(255, 220, 200, 0.04);

  transition: all .3s ease;
  overflow: visible;
}

/* aura exterior */
.sg-apply-btn .elementor-button::before{
  content: "";
  position: absolute;
  inset: -14px;
  border-radius: 999px;

  background:
    radial-gradient(circle, rgba(255, 0, 0, 0.35) 0%, rgba(255, 0, 0, 0.12) 40%, rgba(0,0,0,0) 75%);

  filter: blur(16px);
  z-index: -1;
  opacity: 0.9;
}

/* halo interior */
.sg-apply-btn .elementor-button::after{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;

  background:
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.08) 48%, transparent 100%);

  transform: translateX(-130%);
  transition: transform .8s ease;
}

/* hover efecto portal */
.sg-apply-btn .elementor-button:hover{
  transform: translateY(-3px) scale(1.02);

  box-shadow:
    0 0 45px rgba(255, 10, 10, 0.45),
    0 22px 45px rgba(0,0,0,0.6),
    inset 0 0 18px rgba(255, 240, 220, 0.06);
}

/* animación de brillo */
.sg-apply-btn .elementor-button:hover::after{
  transform: translateX(130%);
}

/* pulsación leve constante */
.sg-apply-btn .elementor-button{
  animation: sgPortalPulse 4.5s ease-in-out infinite;
}

@keyframes sgPortalPulse{
  0%{
    box-shadow:
      0 0 20px rgba(255,0,0,0.22),
      0 18px 36px rgba(0,0,0,0.45);
  }
  50%{
    box-shadow:
      0 0 40px rgba(255,0,0,0.35),
      0 20px 42px rgba(0,0,0,0.55);
  }
  100%{
    box-shadow:
      0 0 20px rgba(255,0,0,0.22),
      0 18px 36px rgba(0,0,0,0.45);
  }
}

/* mobile */
@media (max-width: 767px){
  .sg-apply-btn .elementor-button{
    width: 100%;
    padding: 16px 28px !important;
    font-size: 13px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-93e5658 *//* =========================
   BECOME A MODEL — RITUAL ALTAR
========================= */

.sg-agency-apply{
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,0,0,0.18) 0%, rgba(120,0,0,0.08) 20%, rgba(0,0,0,0) 50%),
    linear-gradient(180deg, #010101 0%, #050101 40%, #010101 100%);
}

/* piedra */

.sg-agency-apply__stone{
  position: relative;
  padding:60px 50px;
  border-radius:40px;
  background:
    linear-gradient(180deg, rgba(18,4,4,0.94) 0%, rgba(8,2,2,0.98) 100%);
  border:1px solid rgba(180,20,20,0.25);
  box-shadow:
    inset 0 0 25px rgba(255,0,0,0.06),
    0 30px 70px rgba(0,0,0,0.5);
}

/* glow superior */

.sg-agency-apply__stone::before{
  content:"";
  position:absolute;
  left:50%;
  top:-20%;
  transform:translateX(-50%);
  width:600px;
  height:300px;
  border-radius:50%;
  background:
    radial-gradient(circle, rgba(255,0,0,0.25), transparent 70%);
  filter:blur(50px);
}

/* eyebrow */

.sg-agency-apply__eyebrow{
  font-family:"Cinzel", serif;
  font-size:12px;
  letter-spacing:.25em;
  text-transform:uppercase;
  color:#d79a84;
}

/* título */

.sg-agency-apply__title{
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(42px,5vw,70px);
  text-align:center;
  color:#f3e8db;
  text-shadow:0 0 20px rgba(255,0,0,0.15);
}

/* texto */

.sg-agency-apply__text{
  max-width:720px;
  text-align:center;
}

.sg-agency-apply__text p{
  font-family:"Inter", sans-serif;
  font-size:17px;
  line-height:1.9em;
  color:rgba(236,224,212,0.85);
}

/* =========================
   FORM
========================= */

.sg-agency-form input,
.sg-agency-form textarea,
.sg-agency-form select{
  width:100%;
  background:#0a0505;
  border:1px solid rgba(255,0,0,0.2);
  border-radius:12px;
  padding:12px 14px;
  color:#f2e6db;
  font-family:"Inter", sans-serif;
}

/* labels */

.sg-agency-form label{
  font-family:"Cinzel", serif;
  font-size:12px;
  letter-spacing:.1em;
  color:#d69a84;
}

/* spacing */

.sg-agency-form .elementor-field-group{
  margin-bottom:14px;
}

/* botón */

.sg-agency-form button{
  margin-top:20px;
  padding:16px 40px;
  border-radius:999px;
  background:
    linear-gradient(135deg,#500005,#b11014);
  border:1px solid rgba(255,60,60,0.5);
  color:#fff;
  font-family:"Cinzel", serif;
  letter-spacing:.2em;
  text-transform:uppercase;
  box-shadow:
    0 0 40px rgba(255,0,0,0.3),
    0 20px 40px rgba(0,0,0,0.5);
}

/* aura botón */

.sg-agency-form button::before{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:999px;
  background:
    radial-gradient(circle, rgba(255,0,0,0.4), transparent 70%);
  filter:blur(16px);
  z-index:-1;
}

/* hover */

.sg-agency-form button:hover{
  transform:translateY(-2px);
  box-shadow:
    0 0 60px rgba(255,0,0,0.5),
    0 25px 50px rgba(0,0,0,0.6);
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-52bdfda *//* =========================
   FAQ — FILTER BLOCK
========================= */

.sg-agency-faq{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 0%, rgba(200, 0, 0, 0.12) 0%, rgba(80, 0, 0, 0.05) 20%, rgba(0,0,0,0) 45%),
    linear-gradient(180deg, #010101 0%, #040101 40%, #010101 100%);
  border-top:1px solid rgba(150,20,20,0.08);
}

/* bloque central */

.sg-agency-faq__stone{
  position: relative;
  z-index:2;
  padding:50px 50px 52px;
  border-radius:36px;
  background:
    linear-gradient(180deg, rgba(16,4,4,0.94) 0%, rgba(8,2,2,0.98) 100%);
  border:1px solid rgba(150,20,20,0.18);
  box-shadow:
    inset 0 0 18px rgba(200,0,0,0.05),
    0 25px 60px rgba(0,0,0,0.4);
}

/* eyebrow */

.sg-agency-faq__eyebrow{
  font-family:"Cinzel", serif;
  font-size:12px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#d49a84;
}

/* título */

.sg-agency-faq__title{
  font-family:"Cormorant Garamond", serif;
  font-size:clamp(42px,5vw,70px);
  color:#f2e8db;
  text-align:center;
  letter-spacing:-.03em;
  text-shadow:0 0 20px rgba(150,0,0,0.15);
}

/* items */

.sg-agency-faq__item{
  margin-top:18px;
  text-align:center;
}

.sg-agency-faq__item p{
  font-family:"Inter", sans-serif;
  font-size:16px;
  line-height:1.8em;
  color:rgba(236,224,212,0.82);
}

/* pregunta */

.sg-agency-faq__item strong{
  display:block;
  font-family:"Cinzel", serif;
  font-size:14px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#e3a28d;
  margin-bottom:6px;
}

/* línea final */

.sg-agency-faq__final{
  margin-top:26px;
  font-family:"Cinzel", serif;
  font-size:13px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#b05a4a;
  text-align:center;
  opacity:.95;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b3ccc55 *//* =========================
   FINAL BLOCK — RITUAL CLOSE
========================= */

.sg-agency-final{
  position: relative;
  text-align: center;

  background:
    radial-gradient(circle at 50% 0%, rgba(200,0,0,0.10) 0%, rgba(80,0,0,0.05) 20%, rgba(0,0,0,0) 50%),
    linear-gradient(180deg, #020202 0%, #050101 40%, #010101 100%);
}

/* texto principal */

.sg-agency-final-text{
  max-width: 720px;
  margin: 0 auto;

  font-family: "Inter", sans-serif;
  font-size: 18px;
  line-height: 1.9em;

  color: rgba(236,224,212,0.85);
}

/* línea final */

.sg-agency-final-warning{
  margin-top: 18px;

  font-family: "Cinzel", serif;
  font-size: 13px;
  letter-spacing: .2em;
  text-transform: uppercase;

  color: #b25a4a;
}/* End custom CSS */