html { scroll-behavior: smooth; scroll-padding-top: 100px; }
body { font-family: 'Poppins', sans-serif; color: #2a2a2a; }
a { text-decoration: none; }
.brand-mark { display: inline-flex; align-items: center; height: 100px; }
.brand-mark:hover { color: #726ae3; }
.brand-logo-image { display: block; width: min(300px, 27vw); max-height: 78px; height: auto; object-fit: contain; }
.background-header .main-nav .logo.brand-mark { height: 80px; }
.header-area .main-nav .nav li { padding-left: 16px; padding-right: 16px; }
.header-area .main-nav .nav li:last-child { padding-left: 18px; }
.header-area .main-nav .nav li:last-child a, .background-header .main-nav .nav li:last-child a { padding: 0 22px !important; }
.header-area .main-nav .nav.active { display: block !important; }
.main-banner { min-height: 700px; display: flex; align-items: center; padding: 145px 0 85px; }
.main-banner:after { pointer-events: none; }
.main-banner:before { pointer-events: none; }
.main-banner .container, .about-us .container { position: relative; z-index: 2; }
.main-banner .left-content h1, .main-banner .left-content h2 { line-height: 1.23; font-size: clamp(38px,5vw,58px); }
.main-banner .left-content h1 em, .main-banner .left-content h2 em, .section-heading h4 em { color: #726ae3; font-style: normal; }
.main-banner .left-content p { color: #666; line-height: 1.9; max-width: 560px; }
.main-banner .right-image img { width: 100%; height: auto; }
.main-button a, .main-green-button a, .main-blue-button a { border-radius: 24px; }
.about-us { padding: 100px 0 90px; }
.about-us .left-image img { width: 100%; max-width: 520px; }
.about-us .section-heading h4 { line-height: 1.35; }
.about-copy { color: #666; line-height: 1.9; }
.package-section { position: relative; padding: 100px 0 110px; background: #f7f7ff; }
.package-section:before { content: ''; position: absolute; inset: 0; background: url('/digimedia/assets/images/services-left-dec.jpg') no-repeat left center; opacity: .35; pointer-events: none; }
.package-section > .container { position: relative; }
.category-tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin: 38px auto 34px; }
.category-tab { display: flex; flex: 1 1 170px; max-width: 220px; min-height: 145px; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 18px 14px; border: 1px solid #eeeef6; border-radius: 16px; background: #fff; color: #2a2a2a; box-shadow: 0 8px 24px rgba(42,42,42,.045); cursor: pointer; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.category-tab:hover { transform: translateY(-3px); border-color: #c9c4f4; }
.category-tab.active { border-color: #9b93ee; box-shadow: 0 10px 28px rgba(114,106,227,.18); }
.category-tab-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 17px; background: #f1efff; color: #726ae3; font-size: 27px; }
.category-tab-instagram .category-tab-icon { background: linear-gradient(135deg,#feda75 0%,#fa7e1e 22%,#d62976 55%,#962fbf 78%,#4f5bd5 100%); color: #fff; }
.category-tab-facebook .category-tab-icon { background: #1877f2; color: #fff; }
.category-tab-youtube .category-tab-icon { background: #ff1638; color: #fff; }
.category-tab-tiktok .category-tab-icon { background: linear-gradient(135deg,#25f4ee 0%,#17171d 48%,#fe2c55 100%); color: #fff; }
.category-tab-whatsapp .category-tab-icon { background: #20c96b; color: #fff; }
.category-tab-other .category-tab-icon { background: linear-gradient(135deg,#726ae3,#d629a7 58%,#fa7e1e); color: #fff; }
.category-tab-instagram.active { border-color: #d62976; box-shadow: 0 10px 28px rgba(214,41,118,.18); }
.category-tab-facebook.active { border-color: #1877f2; box-shadow: 0 10px 28px rgba(24,119,242,.16); }
.category-tab-youtube.active { border-color: #ff1638; box-shadow: 0 10px 28px rgba(255,22,56,.15); }
.category-tab-tiktok.active { border-color: #25252a; box-shadow: 0 10px 28px rgba(37,37,42,.18); }
.category-tab-whatsapp.active { border-color: #20c96b; box-shadow: 0 10px 28px rgba(32,201,107,.16); }
.category-tab-name { font-size: 15px; font-weight: 600; }
.category-tab-count { color: #89899a; font-size: 12px; font-weight: 400; }
#packages .section-heading h6 { display: inline-flex; align-items: center; margin: 0 auto 13px; padding: 7px 14px; border-radius: 22px; background: linear-gradient(100deg,#e63391,#8b53db); color: #fff; font-size: 12px; font-weight: 700; letter-spacing: .08em; box-shadow: 0 7px 18px rgba(196,57,155,.2); }
#packages .section-heading h4 { color: #28223f; font-weight: 700; }
#packages .section-heading h4 em { background: linear-gradient(90deg,#ed398c,#8a52df 80%); background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
#packages .section-heading .line-dec { height: 4px; border-radius: 5px; background: linear-gradient(90deg,#fa65b1,#726ae3); }
#packages .section-heading p { color: #6f6c80 !important; }
.package-group { margin-top: 20px; }
.package-group[hidden], .package-group.d-none { display: none !important; }
.package-card { position: relative; height: 100%; overflow: hidden; padding: 26px; border: 1px solid #f0e5f0; border-radius: 22px; background: linear-gradient(155deg,#fff 0%,#fff 67%,#fff8fc 100%); box-shadow: 0 13px 32px rgba(88,45,104,.11), 0 3px 8px rgba(75,54,120,.05); transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease; }
.package-card:before { position: absolute; top: 0; left: 0; width: 100%; height: 5px; background: linear-gradient(90deg,#fa65b1,#9e56df,#726ae3); content: ''; }
.package-card:after { position: absolute; top: -68px; right: -52px; width: 150px; height: 150px; border-radius: 50%; background: radial-gradient(circle,rgba(214,41,118,.10),rgba(214,41,118,0) 70%); content: ''; pointer-events: none; }
.package-card:hover { transform: translateY(-7px); border-color: #e5c9e3; box-shadow: 0 23px 48px rgba(88,45,104,.18), 0 6px 14px rgba(75,54,120,.08); }
.package-card-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.package-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 17px; background: linear-gradient(135deg,#f7d4e9,#e3d8ff); color: #8d3ca8; font-size: 23px; box-shadow: 0 8px 16px rgba(90,50,125,.15); transition: transform .24s ease; }
.package-card:hover .package-icon { transform: rotate(-5deg) scale(1.06); }
.package-card-like .package-icon { background: linear-gradient(135deg,#ff8bb7,#e72c83); color: #fff; box-shadow: 0 8px 18px rgba(231,44,131,.27); }
.package-card-followers .package-icon { background: linear-gradient(135deg,#9a68ec,#6953d9); color: #fff; box-shadow: 0 8px 18px rgba(105,83,217,.25); }
.package-card-views .package-icon { background: linear-gradient(135deg,#44c9ee,#4175e9); color: #fff; box-shadow: 0 8px 18px rgba(65,117,233,.23); }
.package-card-comments .package-icon { background: linear-gradient(135deg,#43d4c6,#1f9fac); color: #fff; box-shadow: 0 8px 18px rgba(31,159,172,.22); }
.package-card-shares .package-icon { background: linear-gradient(135deg,#60d69b,#23a66b); color: #fff; box-shadow: 0 8px 18px rgba(35,166,107,.22); }
.package-card-subscribers .package-icon { background: linear-gradient(135deg,#ffbd59,#f18a34); color: #fff; box-shadow: 0 8px 18px rgba(241,138,52,.22); }
.package-card-general .package-icon { background: linear-gradient(135deg,#fa65b1,#726ae3); color: #fff; }
.package-platform { padding: 6px 11px; border: 1px solid #f0e4f3; border-radius: 20px; background: #fffaff; color: #7c548a; font-size: 11px; font-weight: 600; letter-spacing: .03em; }
.package-card h3 { position: relative; z-index: 1; min-height: 54px; margin-bottom: 3px; color: #29243b; font-size: 19px; font-weight: 700; line-height: 1.45; }
.package-card p { position: relative; z-index: 1; min-height: 54px; margin: 9px 0 19px; color: #777386; font-size: 13px; line-height: 1.75; }
.package-quantity { position: relative; z-index: 1; display: inline-flex; align-self: flex-start; align-items: center; margin-bottom: 16px; padding: 8px 12px; border: 1px solid #f0ddea; border-radius: 20px; background: linear-gradient(90deg,#fff1f8,#f5efff); color: #9b428b; font-size: 12px; font-weight: 600; }
.package-price { position: relative; z-index: 1; margin: auto 0 19px; background: linear-gradient(90deg,#dc347f,#8151d6); background-clip: text; color: #a337a0; font-size: 28px; font-weight: 700; -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.package-order { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; border: 0; border-radius: 25px; background: linear-gradient(100deg,#e83e91 0%,#ae4fd0 52%,#7256df 100%); color: #fff; font-size: 14px; font-weight: 600; box-shadow: 0 9px 18px rgba(174,79,208,.24); transition: transform .2s ease, filter .2s ease, box-shadow .2s ease; }
.package-order:hover { transform: translateY(-2px); color: #fff; filter: saturate(1.12) brightness(1.03); box-shadow: 0 12px 24px rgba(174,79,208,.34); }
.empty-packages { padding: 36px; border: 1px dashed #c9c5ef; border-radius: 18px; background: rgba(255,255,255,.8); color: #666; text-align: center; }
.steps-section { padding: 100px 0; }
.step-card { height: 100%; padding: 28px; border-radius: 18px; background: #fff; box-shadow: 0 12px 34px rgba(42,42,42,.07); }
.step-number { display: grid; place-items: center; width: 48px; height: 48px; margin-bottom: 22px; border-radius: 15px; background: #f1efff; color: #726ae3; font-size: 20px; font-weight: 700; }
.step-card h3 { margin-bottom: 10px; font-size: 18px; font-weight: 600; }
.step-card p { margin: 0; color: #777; font-size: 14px; line-height: 1.8; }
.site-footer { padding: 34px 0; background: #f7f7ff; color: #777; text-align: center; font-size: 13px; }
.site-footer p { margin: 0; line-height: 1.8; }
.footer-credit-separator { margin: 0 5px; color: #b8b5d3; }
.site-footer a { color: #726ae3; }
.site-credit-line { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 18px; color: #77788b; font-size: 13px; line-height: 1.6; }
.developer-credit { color: #5148bb; font-weight: 600; }
.developer-credit a { color: #5148bb; text-decoration: none; }
.developer-credit a:hover { color: #df438e; text-decoration: underline; text-underline-offset: 3px; }
.order-page { min-height: 100vh; padding-bottom: 78px; background: radial-gradient(ellipse at 15% 8%, rgba(250,101,177,.09), transparent 32%), radial-gradient(ellipse at 90% 23%, rgba(114,106,227,.11), transparent 35%), #fafaff; }
.order-header { height: 92px; background: rgba(255,255,255,.92); border-bottom: 1px solid #efeff7; }
.order-header .container { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.order-brand { display: inline-flex; align-items: center; height: 84px; }
.order-brand img { display: block; width: min(270px, 42vw); max-height: 72px; object-fit: contain; }
.order-back-link { display: inline-flex; align-items: center; gap: 9px; color: #7169db; font-size: 14px; font-weight: 500; transition: color .2s ease; }
.order-back-link:hover { color: #fa65b1; }
.order-container { max-width: 1080px; }
.order-intro { padding: 48px 0 34px; text-align: center; }
.order-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 12px; color: #726ae3; font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.order-intro h1 { margin: 0; font-size: clamp(30px,4vw,42px); font-weight: 700; letter-spacing: -.035em; }
.order-intro h1 em { color: #726ae3; font-style: normal; }
.order-intro p { margin: 10px 0 0; color: #77788b; font-size: 15px; }
.order-package-card { margin-bottom: 0; }
.order-assurance { display: flex; align-items: center; justify-content: center; gap: 9px; padding: 17px 10px 0; color: #77788b; font-size: 12px; }
.order-assurance i { color: #726ae3; font-size: 15px; }
.order-form-card { padding: 32px; border: 1px solid #efeff7; border-radius: 20px; background: #fff; box-shadow: 0 14px 40px rgba(40,37,91,.07); }
.order-form-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 27px; padding-bottom: 22px; border-bottom: 1px solid #f0f0f6; }
.form-step-icon { display: grid; flex: 0 0 48px; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: #f1efff; color: #726ae3; font-size: 20px; }
.order-form-heading h2 { margin: 0; font-size: 18px; font-weight: 600; }
.order-form-heading p { margin: 4px 0 0; color: #9292a1; font-size: 12px; }
.order-field { margin-bottom: 20px; }
.order-label { display: block; margin-bottom: 8px; color: #383849; font-size: 13px; font-weight: 600; }
.order-label > span, .order-required-note span { color: #ef4d8d; }
.order-label small { color: #9696a4; font-size: 11px; font-weight: 400; }
.order-input-wrap { position: relative; }
.order-input-wrap > i { position: absolute; z-index: 2; top: 50%; left: 15px; transform: translateY(-50%); color: #8c87d7; font-size: 15px; }
.order-input.form-control { min-height: 50px; padding: 12px 14px 12px 43px; border: 1px solid #e6e6ef; border-radius: 11px; background: #fcfcff; color: #303041; font-family: inherit; font-size: 13px; box-shadow: none; transition: border-color .2s ease, background .2s ease, box-shadow .2s ease; }
.order-input.form-control::placeholder { color: #b0b0bd; }
.order-input.form-control:focus { border-color: #8a81e6; background: #fff; box-shadow: 0 0 0 4px rgba(114,106,227,.12); }
.order-target-field { margin-top: 4px; }
.order-field-hint { display: block; margin-top: 8px; color: #9494a2; font-size: 11px; line-height: 1.6; }
.order-field-error { display: block; min-height: 0; margin-top: 5px; color: #dc426e; font-size: 12px; }
.order-field-error:empty { display: none; }
.order-validation-summary { margin-bottom: 16px; color: #c13862; font-size: 13px; }
.order-validation-summary:empty { display: none; }
.order-validation-summary ul { margin: 0; padding: 12px 15px 12px 34px; border-radius: 10px; background: #fff2f5; }
.order-form-actions { display: flex; align-items: center; gap: 20px; margin-top: 27px; }
.order-submit-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 12px; padding: 0 24px; border: 0; border-radius: 26px; background: linear-gradient(95deg,#726ae3,#a15fd6 70%,#d35ab9); color: #fff; font-family: inherit; font-size: 14px; font-weight: 600; box-shadow: 0 9px 20px rgba(114,106,227,.2); cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; }
.order-submit-button:hover { transform: translateY(-2px); box-shadow: 0 12px 25px rgba(114,106,227,.28); }
.order-submit-button:focus-visible, .order-back-link:focus-visible, .order-cancel-link:focus-visible { outline: 3px solid rgba(114,106,227,.3); outline-offset: 3px; }
.order-cancel-link { color: #828294; font-size: 13px; }
.order-cancel-link:hover { color: #726ae3; }
.order-required-note { margin: 19px 0 0; color: #9999a8; font-size: 11px; }
.completion-page { min-height: auto; padding-bottom: 0; }
.completion-content { display: grid; min-height: calc(100vh - 170px); place-items: center; padding-top: 55px; padding-bottom: 70px; }
.completion-card { width: min(100%,720px); padding: 48px 54px; border: 1px solid #efedf7; border-radius: 26px; background: rgba(255,255,255,.96); box-shadow: 0 24px 65px rgba(75,54,120,.12), 0 5px 18px rgba(195,58,142,.07); text-align: center; }
.completion-icon { display: grid; width: 78px; height: 78px; place-items: center; margin: 0 auto 19px; border: 7px solid #fff; border-radius: 50%; background: linear-gradient(135deg,#fa65b1,#a052dd 68%,#726ae3); color: #fff; font-size: 31px; box-shadow: 0 9px 24px rgba(151,72,192,.25), 0 0 0 1px #eee5f4; }
.completion-eyebrow { display: inline-block; color: #be438d; font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.completion-card h1 { margin: 8px 0 12px; color: #29243b; font-size: clamp(31px,4vw,40px); font-weight: 700; letter-spacing: -.035em; }
.completion-message { max-width: 540px; margin: 0 auto 26px; color: #777386; font-size: 14px; line-height: 1.85; }
.completion-order-details { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 15px; border: 1px solid #f0eaf5; border-radius: 16px; background: linear-gradient(110deg,#fff6fb,#f6f3ff); text-align: left; }
.completion-order-number, .completion-status { display: flex; flex-direction: column; gap: 7px; padding: 8px 12px; }
.completion-order-number > span, .completion-status > span { color: #898597; font-size: 11px; font-weight: 500; }
.completion-order-number strong { color: #8a3caa; font-size: 20px; letter-spacing: .03em; }
.completion-status strong { display: inline-flex; align-items: center; gap: 8px; color: #5f52b9; font-size: 14px; font-weight: 600; }
.completion-status strong i { color: #d5589e; }
.completion-note { display: flex; align-items: flex-start; gap: 10px; margin: 18px 0 24px; color: #858195; font-size: 12px; line-height: 1.7; text-align: left; }
.completion-note i { margin-top: 2px; color: #8a65d7; }
.completion-button { width: auto; min-width: 210px; padding: 0 23px; text-decoration: none; }
.completion-button:hover { text-decoration: none; }
@media (max-width: 991px) {
  .main-banner { min-height: auto; padding: 150px 0 70px; }
  .main-banner .right-image { margin-top: 45px; text-align: center; }
  .main-banner .right-image img { max-width: 480px; }
  .about-us, .package-section, .steps-section { padding: 75px 0; }
}
@media (max-width: 767px) {
  .main-banner .left-content h1, .main-banner .left-content h2 { font-size: 38px; }
  .package-card { padding: 24px; }
  .header-area .main-nav .logo { margin-left: 0; }
  .brand-mark { height: 80px; }
  .brand-logo-image { width: 220px; max-height: 62px; }
  .order-header { height: 78px; }
  .order-brand { height: 72px; }
  .order-brand img { width: 205px; max-height: 58px; }
  .order-back-link { gap: 6px; font-size: 12px; }
  .order-intro { padding: 38px 0 27px; }
  .order-intro p { font-size: 13px; }
  .order-form-card { padding: 23px 19px; }
  .order-form-actions { align-items: flex-start; flex-direction: column; gap: 14px; }
  .order-submit-button { width: 100%; }
  .completion-content { min-height: calc(100vh - 150px); padding-top: 36px; padding-bottom: 46px; }
  .completion-card { padding: 36px 26px; border-radius: 22px; }
  .completion-order-details { grid-template-columns: 1fr; gap: 2px; }
  .completion-status { border-top: 1px solid #eee8f4; }
  .completion-button { width: 100%; }
}

/* Guest order tracking */
.completion-order-details-single { grid-template-columns: 1fr; }
.tracking-card { text-align: center; }
.tracking-form { max-width: 520px; margin: 0 auto 24px; text-align: left; }
.tracking-form .form-label { color: #49445e; font-size: 13px; font-weight: 600; }
.tracking-form .form-control { min-height: 48px; border: 1px solid #e5e1ee; border-radius: 11px; padding: 11px 14px; color: #34314f; }
.tracking-form .form-control:focus { border-color: #9b95e5; box-shadow: 0 0 0 .2rem rgba(81,72,187,.13); }
.tracking-form .field-validation-error { display: block; margin-top: 5px; }
.tracking-form .validation-summary-valid { display: none; }
.tracking-submit { width: 100%; justify-content: center; margin-top: 5px; }
.tracking-result { max-width: 620px; margin: 25px auto 22px; padding: 22px; border: 1px solid #eee8f4; border-radius: 17px; background: linear-gradient(120deg,#fff9fc,#f7f5ff); }
.tracking-result-heading { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid #eee8f4; }
.tracking-result-heading > div > span { color: #8a65d7; font-size: 12px; font-weight: 700; }
.tracking-result-heading h2 { margin: 5px 0 0; color: #29243b; font-size: 20px; font-weight: 700; }
.tracking-status { display: inline-flex; align-items: center; min-height: 30px; padding: 5px 12px; border-radius: 50px; font-size: 12px; font-weight: 700; }
.tracking-status-pending { background: #fff0c2; color: #795300; }
.tracking-status-processing { background: #d9f7fc; color: #08788c; }
.tracking-status-complete { background: #dcf5e5; color: #176536; }
.tracking-status-cancelled { background: #ffe1e5; color: #992d3b; }
.tracking-status-default { background: #eceaf3; color: #514b62; }
.tracking-result-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; padding-top: 17px; }
.tracking-result-details > div { display: flex; flex-direction: column; gap: 4px; }
.tracking-result-details span { color: #898597; font-size: 11px; }
.tracking-result-details strong { color: #34314f; font-size: 13px; font-weight: 600; }
.tracking-home-link { display: inline-block; margin-top: 12px; color: #6559c4; font-size: 13px; font-weight: 600; text-decoration: none; }
.tracking-home-link:hover { color: #c0448c; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 576px) {
  .tracking-result { padding: 17px; }
  .tracking-result-details { grid-template-columns: 1fr; gap: 12px; }
}

/* Social profile preview on the order form */
.profile-preview-area { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin-top: 12px; padding: 12px 14px; border: 1px solid #eee8f4; border-radius: 13px; background: linear-gradient(110deg,#fff7fb,#f7f5ff); }
.profile-preview-link { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 8px 13px; border-radius: 9px; background: linear-gradient(110deg,#e94391,#7955d9); color: #fff; font-size: 12px; font-weight: 700; text-decoration: none; box-shadow: 0 5px 13px rgba(151,72,192,.18); transition: transform .18s ease,box-shadow .18s ease; }
.profile-preview-link:hover { transform: translateY(-1px); color: #fff; text-decoration: none; box-shadow: 0 8px 18px rgba(151,72,192,.25); }
.profile-preview-link:focus-visible { outline: 3px solid rgba(114,106,227,.3); outline-offset: 3px; }
.profile-preview-message { flex: 1 1 220px; color: #777386; font-size: 11px; line-height: 1.6; }

/* Customer catalog: platform -> service type -> package */
.platform-cards { align-items: stretch; }
.platform-card { position: relative; max-width: 260px; min-height: 190px; justify-content: flex-start; text-decoration: none; }
.platform-card:hover { color: #29243b; box-shadow: 0 15px 34px rgba(82,62,122,.13); }
.platform-card .category-tab-icon { width: 60px; height: 60px; margin-bottom: 2px; }
.platform-card .category-tab-name { color: #29243b; }
.platform-card-cta { display: inline-flex; align-items: center; gap: 8px; margin-top: 7px; color: #8e55bc; font-size: 12px; font-weight: 700; }
.platform-card:hover .platform-card-cta { color: #d03f8e; }
.faq-section { padding: 76px 0 90px; background: linear-gradient(180deg,#fbf9fd 0%,#fff 100%); }
.faq-heading { max-width: 690px; margin: 0 auto 32px; }
.faq-heading h6 { color: #8e55bc; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.faq-heading h2 { margin: 8px 0 12px; color: #29243b; font-size: clamp(28px,4vw,38px); font-weight: 700; }
.faq-heading h2 em { color: #726ae3; font-style: normal; }
.faq-heading p { margin: 14px 0 0; color: #777386; }
.faq-list { max-width: 860px; margin: 0 auto; }
.faq-item { margin-bottom: 12px; border: 1px solid #eeeaf3; border-radius: 14px; background: #fff; box-shadow: 0 6px 18px rgba(42,42,42,.04); }
.faq-item summary { position: relative; padding: 19px 54px 19px 21px; color: #34314f; font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { position: absolute; top: 50%; right: 22px; color: #8e55bc; content: "+"; font-size: 23px; font-weight: 400; transform: translateY(-52%); }
.faq-item[open] summary::after { content: "−"; }
.faq-item p { margin: 0; padding: 0 21px 20px; color: #777386; font-size: 14px; line-height: 1.75; }
.faq-item p a { color: #745ec4; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.faq-item summary:focus-visible { outline: 3px solid rgba(114,106,227,.3); outline-offset: 3px; border-radius: 12px; }
@media (max-width: 576px) {
  .faq-section { padding: 58px 0 68px; }
  .faq-item summary { padding: 17px 46px 17px 16px; font-size: 14px; }
  .faq-item p { padding: 0 16px 17px; font-size: 13px; }
}
.catalog-page { min-height: 65vh; padding: 90px 0 82px; background: linear-gradient(180deg,#fff 0%,#fbf9fd 100%); }
.catalog-heading { padding: 36px 0 20px; }
.catalog-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 35px; color: #aaa4b3; font-size: 12px; }
.catalog-breadcrumb a { color: #8065bd; text-decoration: none; }
.catalog-breadcrumb a:hover { color: #d03f8e; text-decoration: underline; }
.catalog-breadcrumb strong { color: #514b61; font-weight: 600; }
.catalog-heading .section-heading h1 { color: #29243b; font-size: clamp(28px,4vw,38px); font-weight: 700; }
.catalog-content { padding: 15px 0 30px; }
.service-type-card { display: flex; height: 100%; min-height: 218px; flex-direction: column; align-items: flex-start; padding: 23px; border: 1px solid #eeeaf3; border-radius: 19px; background: #fff; color: #29243b; box-shadow: 0 8px 24px rgba(42,42,42,.05); text-decoration: none; transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease; }
.service-type-card:hover { transform: translateY(-4px); border-color: #d8cbee; color: #29243b; box-shadow: 0 16px 36px rgba(82,62,122,.13); }
.service-type-icon { display: grid; width: 54px; height: 54px; place-items: center; margin-bottom: 19px; border-radius: 16px; background: linear-gradient(135deg,#f8d2e8,#e7deff); color: #a34aa0; font-size: 22px; }
.service-type-likes .service-type-icon { background: linear-gradient(135deg,#ff7ea9,#ec367c); color: #fff; }
.service-type-followers .service-type-icon { background: linear-gradient(135deg,#726ae3,#a34ac2); color: #fff; }
.service-type-views .service-type-icon { background: linear-gradient(135deg,#ff9b43,#ed557e); color: #fff; }
.service-type-shares .service-type-icon { background: linear-gradient(135deg,#34c6d3,#4777db); color: #fff; }
.service-type-comments .service-type-icon { background: linear-gradient(135deg,#39c99a,#268eaa); color: #fff; }
.service-type-name { color: #302a40; font-size: 17px; font-weight: 700; }
.service-type-description { margin-top: 6px; color: #8a8496; font-size: 12px; line-height: 1.6; }
.service-type-action { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 17px; color: #8e55bc; font-size: 12px; font-weight: 700; }
.service-type-card:hover .service-type-action { color: #d03f8e; }
.catalog-content .package-card { height: 100%; }
@media (max-width: 767px) {
  .platform-card { max-width: none; flex: 1 1 145px; min-height: 175px; }
  .catalog-page { padding-top: 70px; }
  .catalog-heading { padding-top: 24px; }
  .catalog-breadcrumb { margin-bottom: 24px; }
  .service-type-card { min-height: 195px; }
}

