/* Premium homepage About block, inspired by the approved visual mockup. */
.cg-about-section{
  position:relative;
  padding:96px 0 104px;
  background:
    radial-gradient(circle at 7% 12%,rgba(232,168,174,.12),transparent 28%),
    radial-gradient(circle at 94% 84%,rgba(238,198,193,.16),transparent 28%),
    linear-gradient(180deg,#fffdfb 0%,#fff8f5 100%);
}
.cg-about-section .container{position:relative;z-index:1}
.cg-about{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
  min-height:620px;
  padding:12px;
  overflow:hidden;
  border:1px solid rgba(230,204,198,.7);
  border-radius:30px;
  background:rgba(255,253,250,.97);
  box-shadow:0 28px 78px rgba(89,58,58,.12);
}
.cg-about:after{
  content:"✿";
  position:absolute;
  z-index:0;
  right:-32px;
  top:-54px;
  color:rgba(218,122,132,.075);
  font:400 210px/1 Georgia,serif;
  transform:rotate(14deg);
  pointer-events:none;
}
.cg-about__image{
  position:relative;
  z-index:1;
  min-height:596px;
  overflow:hidden;
  border-radius:22px;
  background-color:#efe4df;
  background-repeat:no-repeat;
  background-size:cover;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45);
}
.cg-about__image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(39,30,28,.01),rgba(39,30,28,.10));
  pointer-events:none;
}
.cg-about__copy{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:58px 60px 50px 64px;
}
.cg-about__copy>.eyebrow{
  display:flex;
  align-items:center;
  gap:14px;
  width:max-content;
  max-width:100%;
  margin:0 0 18px;
  color:#d16f7a;
  font:500 20px/1.2 Georgia,serif;
  letter-spacing:.035em;
  text-transform:none;
}
.cg-about__copy>.eyebrow:before,.cg-about__copy>.eyebrow:after{
  content:"";
  width:38px;
  height:1px;
  background:currentColor;
  opacity:.75;
}
.cg-about__copy h2{
  max-width:720px;
  margin:0 0 24px;
  color:#4a3834;
  font:500 clamp(42px,4.25vw,62px)/1.06 Georgia,serif;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.cg-about__copy p{
  max-width:690px;
  margin:0;
  color:#77645f;
  font-size:17px;
  line-height:1.72;
}
.cg-about__facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:32px 0 34px;
}
.cg-about__facts>div{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  min-width:0;
  min-height:188px;
  padding:22px 16px 18px;
  border:1px solid rgba(230,207,201,.9);
  border-radius:18px;
  background:rgba(255,253,250,.92);
  text-align:center;
  box-shadow:0 12px 30px rgba(104,71,68,.055);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.cg-about__facts>div:hover{
  transform:translateY(-2px);
  border-color:#e8c5c1;
  box-shadow:0 16px 36px rgba(104,71,68,.09);
}
.cg-about__facts>div:before{
  content:"";
  display:block;
  width:58px;
  height:58px;
  margin:0 auto 15px;
  border-radius:50%;
  background-position:center;
  background-repeat:no-repeat;
  background-size:27px 27px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6),0 8px 20px rgba(78,54,52,.07);
}
.cg-about__facts>div:nth-child(1):before{
  background-color:#fff0e9;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e87854' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='5.5' width='16' height='14' rx='2'/%3E%3Cpath d='M8 3.5v4M16 3.5v4M4 9.5h16M9.5 14l1.7 1.7 3.5-3.7'/%3E%3C/svg%3E");
}
.cg-about__facts>div:nth-child(2):before{
  background-color:#eef1ff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f78cf' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7.5h3l1.6-2h6.8l1.6 2h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E");
}
.cg-about__facts>div:nth-child(3):before{
  background-color:#edf8f0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235ca56e' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20c-4.5-1.7-6.8-5-6.7-9.8 3.2-.2 5.4 1 6.7 3.4 1.3-2.4 3.5-3.6 6.7-3.4.1 4.8-2.2 8.1-6.7 9.8Z'/%3E%3Cpath d='M12 13.6c-1.8-2.8-1.6-5.7.5-8.6 2.7 1.9 3.8 4.5 3 7.6'/%3E%3C/svg%3E");
}
.cg-about__facts strong{
  display:block;
  margin:0 0 7px;
  color:#d06f79;
  font:500 28px/1.1 Georgia,serif;
}
.cg-about__facts span{
  display:block;
  color:#62514d;
  font-size:14px;
  font-weight:500;
  line-height:1.48;
}
.cg-about__copy .button{
  align-self:flex-start;
  min-width:286px;
  min-height:56px!important;
  padding:0 28px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#df7d88,#cf6875)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(196,93,106,.22)!important;
  font-size:15px!important;
  font-weight:700!important;
}
.cg-about__copy .button:after{
  content:"→";
  margin-left:14px;
  font-size:18px;
  line-height:1;
  transition:transform .2s ease;
}
.cg-about__copy .button:hover{
  background:linear-gradient(135deg,#d8737e,#c65d69)!important;
  box-shadow:0 18px 38px rgba(196,93,106,.27)!important;
  transform:translateY(-1px);
}
.cg-about__copy .button:hover:after{transform:translateX(3px)}

@media(max-width:1100px){
  .cg-about__copy{padding:48px 42px 44px 46px}
  .cg-about__facts>div{padding-inline:12px}
}

@media(max-width:980px){
  .cg-about-section{padding:78px 0 84px}
  .cg-about{
    grid-template-columns:1fr;
    min-height:0;
    padding:10px;
  }
  .cg-about__image{
    min-height:0;
    aspect-ratio:4/5;
    border-radius:21px;
  }
  .cg-about__copy{padding:46px 38px 40px}
  .cg-about__copy h2{max-width:760px;font-size:clamp(42px,7vw,58px)}
  .cg-about__copy p{max-width:760px}
}

@media(max-width:640px){
  .cg-about-section{padding:56px 0 64px}
  .cg-about-section .container{width:min(calc(100% - 20px),var(--cg-container))}
  .cg-about{
    padding:7px;
    border-radius:23px;
    box-shadow:0 18px 48px rgba(89,58,58,.11);
  }
  .cg-about:after{right:-42px;top:38%;font-size:150px}
  .cg-about__image{
    aspect-ratio:3/4;
    border-radius:18px;
  }
  .cg-about__copy{padding:32px 18px 24px}
  .cg-about__copy>.eyebrow{gap:10px;margin-bottom:14px;font-size:18px}
  .cg-about__copy>.eyebrow:before,.cg-about__copy>.eyebrow:after{width:27px}
  .cg-about__copy h2{margin-bottom:18px;font-size:38px;line-height:1.08;letter-spacing:-.025em}
  .cg-about__copy p{font-size:15px;line-height:1.7}
  .cg-about__facts{grid-template-columns:1fr;gap:10px;margin:26px 0 28px}
  .cg-about__facts>div{
    display:grid;
    grid-template-columns:54px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:15px;
    align-items:center;
    min-height:0;
    padding:15px;
    text-align:left;
  }
  .cg-about__facts>div:before{
    grid-row:1 / 3;
    width:54px;
    height:54px;
    margin:0;
    background-size:25px 25px;
  }
  .cg-about__facts strong{margin:0 0 3px;font-size:24px}
  .cg-about__facts span{font-size:13px;line-height:1.45}
  .cg-about__copy .button{width:100%;min-width:0;min-height:54px!important}
}

@media(prefers-reduced-motion:reduce){
  .cg-about__facts>div,.cg-about__copy .button,.cg-about__copy .button:after{transition:none!important}
}
