﻿/* ==============================
   Petrovia Services (pvx-) FINAL
   ============================== */

/* Section */
.pvx-services{
    position:relative;
    padding:92px 0;
    background:
      radial-gradient(900px 380px at 12% 8%, rgba(15,23,42,.08), transparent 55%),
      radial-gradient(820px 360px at 86% 10%, rgba(2,132,199,.10), transparent 58%),
      linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
    overflow:hidden;
}
.pvx-services::before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(520px 220px at 20% 80%, rgba(99,102,241,.10), transparent 60%),
      radial-gradient(520px 220px at 90% 86%, rgba(14,165,233,.10), transparent 60%);
    pointer-events:none;
}

/* Container */
.pvx-services__container{
    position:relative;
    width:min(1200px, calc(100% - 44px));
    margin:0 auto;
}

/* Head */
.pvx-services__head{
    text-align:center;
    margin-bottom:44px;
}
.pvx-services__title{
    margin:0 0 10px;
    font-size:clamp(28px, 3.2vw, 44px);
    line-height:1.08;
    letter-spacing:-0.03em;
    color:#0b1220;
}
.pvx-services__subtitle{
    margin:0 auto;
    max-width:860px;
    font-size:15.5px;
    line-height:1.8;
    color:#4b5b73;
}

/* Grid */
.pvx-services__grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:22px;
}
@media (max-width:980px){
    .pvx-services__grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width:620px){
    .pvx-services{ padding:72px 0; }
    .pvx-services__grid{ grid-template-columns:1fr; }
}

/* Card */
.pvx-sCard{
    position:relative;
    border-radius:20px;
    padding:26px 24px;
    background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.78));
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 18px 40px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.7);
    backdrop-filter:blur(6px);
    overflow:hidden;

    transform:translateY(14px);
    opacity:0;
    transition:
      transform .55s cubic-bezier(.2,.8,.2,1),
      opacity .55s ease,
      box-shadow .25s ease,
      border-color .25s ease;
}
.pvx-sCard.pvx-is-in{
    transform:translateY(0);
    opacity:1;
}
.pvx-sCard::after{
    content:"";
    position:absolute;
    inset:-2px;
    border-radius:22px;
    background:
      radial-gradient(900px 260px at 20% 8%, rgba(15,23,42,.06), transparent 60%),
      radial-gradient(900px 280px at 88% 18%, rgba(14,165,233,.08), transparent 60%);
    pointer-events:none;
}
.pvx-sCard:hover{
    border-color:rgba(148,163,184,.55);
    box-shadow:0 22px 55px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.75);
    transform:translateY(-3px);
}

/* Shine */
.pvx-sCard__shine{
    position:absolute;
    inset:0;
    background:linear-gradient(120deg, transparent 30%, rgba(255,255,255,.55), transparent 70%);
    transform:translateX(-120%) skewX(-18deg);
    transition:transform .7s ease;
    pointer-events:none;
    opacity:.65;
}
.pvx-sCard:hover .pvx-sCard__shine{
    transform:translateX(120%) skewX(-18deg);
}

/* Top (icon centered) */
.pvx-sCard__top{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:14px;
}

/* Icon wrap */
.pvx-sCard__iconWrap{
    width:78px;
    height:78px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;

    color:#0b1220;
    background:
      radial-gradient(18px 18px at 30% 30%, rgba(255,255,255,.9), rgba(255,255,255,.3)),
      linear-gradient(135deg, rgba(14,165,233,.18), rgba(99,102,241,.16));
    border:1px solid rgba(226,232,240,.85);
    box-shadow:0 12px 24px rgba(2,132,199,.12), inset 0 1px 0 rgba(255,255,255,.75);
}

/* SVG size */
.pvx-sIcon{
    width:48px;
    height:48px;
    display:block;
    opacity:.9;
}

/* ✅ SVG stroke inceltme + yumuşatma (kalın/karışık durmayı çözer) */
.pvx-sIcon *{
    stroke-width:1.6 !important;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* Title/Text (centered) */
.pvx-sCard__title{
    margin:0 0 10px;
    font-size:17px;
    line-height:1.35;
    letter-spacing:-0.01em;
    color:#0b1220;
    text-align:center;
}
.pvx-sCard__text{
    margin:0;
    font-size:14.6px;
    line-height:1.78;
    color:#52627a;
    text-align:center;
}

/* Mini */
.pvx-sCard--mini{ padding:22px 22px; }

/* Actions button (optional) */
.pvx-services__actions{
    display:flex;
    justify-content:center;
    margin-top:26px;
}
.pvx-services__btn{
    appearance:none;
    border:1px solid rgba(148,163,184,.45);
    background:linear-gradient(135deg, #0b1220, #111c33);
    color:#fff;
    padding:12px 18px;
    border-radius:14px;
    cursor:pointer;
    font-weight:700;
    letter-spacing:.01em;
    box-shadow:0 12px 22px rgba(15,23,42,.12);
    transition:transform .15s ease, opacity .2s ease, box-shadow .25s ease;
}
.pvx-services__btn:hover{
    transform:translateY(-1px);
    box-shadow:0 16px 28px rgba(15,23,42,.16);
}
.pvx-services__btn:active{
    transform:translateY(0);
    opacity:.92;
}
/* ==============================
   pvx Accordion Details (no modal)
   ============================== */

.pvx-sCard__details{
  margin-top:14px;
  border-top:1px solid rgba(226,232,240,.9);
  padding-top:14px;

  max-height:0;
  overflow:hidden;
  opacity:0;
  transform:translateY(-4px);
  transition:
    max-height .45s cubic-bezier(.2,.8,.2,1),
    opacity .25s ease,
    transform .25s ease;
}

.pvx-sCard.pvx-open .pvx-sCard__details{
  opacity:1;
  transform:translateY(0);
}

.pvx-sCard__detailsInner{
  text-align:left;
  color:#52627a;
  font-size:14.6px;
  line-height:1.85;
}

.pvx-sCard__detailsInner p{ margin:0 0 12px; }

.pvx-sCard__detailsInner ul{
  margin:10px 0 12px 18px;
  padding:0;
}

.pvx-sCard__detailsInner li{ margin:6px 0; }

/* Kart tıklanabilir hissi */
.pvx-sCard[role="button"]{ cursor:pointer; }
.pvx-sCard[role="button"]:focus{
  outline:none;
  box-shadow:0 0 0 4px rgba(14,165,233,.22), 0 22px 55px rgba(15,23,42,.12), inset 0 1px 0 rgba(255,255,255,.75);
}
/* Mobil/Tablet: kart iç boşluk + ikon boyutu + yazı ölçek */
@media (max-width: 980px){
  .pvx-sCard{ padding:24px 20px; border-radius:18px; }
  .pvx-sCard__iconWrap{ width:72px; height:72px; border-radius:16px; }
  .pvx-sIcon{ width:44px; height:44px; }
}

@media (max-width: 620px){
  .pvx-services__container{ width:min(1200px, calc(100% - 28px)); }
  .pvx-sCard{ padding:22px 18px; }
  .pvx-sCard__title{ font-size:16.2px; }
  .pvx-sCard__text{ font-size:14.2px; }

  /* Açılan metin mobilde taşmasın */
  .pvx-sCard__detailsInner{ font-size:14.2px; line-height:1.9; }
}

/* Accordion alanı: max-height animasyonu daha stabil */
.pvx-sCard__details{
  will-change: max-height;
}
