/* ═══ MALL: Pastelle (pastelle) ═══ Genererad via design-workflow.
   Inre-sid-CSS-lager (omformar delade komponenter) + animationer. Scopat [data-template="pastelle"].
   Video-hero: ja. */

html[data-template="pastelle"]{--bg:#FDF6F0;--bg-soft:#FBE9E6;--ink:#3E2B33;--ink-2:#6A5158;--muted:#9A8086;--line:rgba(62,43,51,0.08);--line-2:rgba(62,43,51,0.14);--star:#F2A65A;--radius:26px;--radius-lg:30px;--radius-sm:16px;--btn-radius:999px;--btn-pad:16px 30px 16px 32px;--btn-weight:700;--btn-transform:none;--btn-tracking:0}
[data-template="pastelle"] body{background:var(--bg);color:var(--ink-2)}
[data-template="pastelle"] .section{padding:88px 0}
[data-template="pastelle"] .section:nth-child(even){background:var(--bg-soft)}
[data-template="pastelle"] .subhero{background:radial-gradient(120% 110% at 82% -10%,rgba(var(--brand-rgb),.22) 0%,transparent 60%),radial-gradient(90% 80% at 0% 0%,rgba(242,166,90,.14) 0%,transparent 55%),var(--bg);padding:150px 0 64px}
[data-template="pastelle"] .subhero h1{color:var(--ink);font-weight:800;letter-spacing:-.01em;line-height:1.06}
[data-template="pastelle"] .subhero__lead{color:var(--ink-2)}
[data-template="pastelle"] .subhero__crumbs,[data-template="pastelle"] .subhero__crumbs a{color:var(--muted)}
[data-template="pastelle"] .subhero__crumbs a:hover{color:var(--brand-deep)}
[data-template="pastelle"] .subhero__answer{background:#fff;border:0;border-radius:28px;box-shadow:0 16px 40px rgba(var(--brand-rgb),.14);color:var(--ink-2)}
[data-template="pastelle"] .subhero__answer-label{color:var(--brand-deep)}
[data-template="pastelle"] .subhero__answer-question{color:var(--ink)}
[data-template="pastelle"] .subhero__photo,[data-template="pastelle"] .photo{border-radius:32px;box-shadow:0 22px 50px rgba(var(--brand-rgb),.18);background:var(--bg-soft)}
[data-template="pastelle"] .eyebrow,[data-template="pastelle"] .section-head .eyebrow{background:rgba(var(--brand-rgb),.16);color:var(--brand-deep);border-radius:999px;padding:7px 16px;letter-spacing:.04em}
[data-template="pastelle"] .section-head h2{color:var(--ink);font-weight:800;letter-spacing:-.01em}
[data-template="pastelle"] .section-head p{color:var(--ink-2)}
[data-template="pastelle"] .card{background:#fff;border:0;border-radius:28px;box-shadow:0 16px 40px rgba(var(--brand-rgb),.12);padding:28px}
[data-template="pastelle"] .card::after{display:none}
[data-template="pastelle"] .card:hover{transform:translateY(-6px);border-color:transparent;box-shadow:0 26px 56px rgba(var(--brand-rgb),.22)}
[data-template="pastelle"] .card__image{border-radius:22px;margin:-28px -28px 10px;border-bottom:0;background:var(--bg-soft)}
[data-template="pastelle"] .card__icon{border-radius:18px;background:rgba(var(--brand-rgb),.16);border:0;color:var(--brand-deep)}
[data-template="pastelle"] .card h3{color:var(--ink)}
[data-template="pastelle"] .card__price{color:var(--ink)}
[data-template="pastelle"] .card__link{color:var(--brand-deep)}
[data-template="pastelle"] .area-service-card,[data-template="pastelle"] .article-card{background:#fff;border:0;border-radius:28px;box-shadow:0 16px 40px rgba(var(--brand-rgb),.12)}
[data-template="pastelle"] .area-service-card::after{display:none}
[data-template="pastelle"] .area-service-card:hover,[data-template="pastelle"] .article-card:hover{transform:translateY(-6px);border-color:transparent;box-shadow:0 26px 56px rgba(var(--brand-rgb),.22)}
[data-template="pastelle"] .area-service-card__media,[data-template="pastelle"] .article-card__media,[data-template="pastelle"] .article-featured__media{border-bottom:0;background:var(--bg-soft)}
[data-template="pastelle"] .area-service-card__body h3,[data-template="pastelle"] .article-card__body h3,[data-template="pastelle"] .area-service-card__price{color:var(--ink)}
[data-template="pastelle"] .area-service-card__cta,[data-template="pastelle"] .article-card__cta,[data-template="pastelle"] .article-featured__cta{color:var(--brand-deep)}
[data-template="pastelle"] .article-featured{background:#fff;border:0;border-radius:32px;box-shadow:0 20px 48px rgba(var(--brand-rgb),.14)}
[data-template="pastelle"] .article-featured__body h2{color:var(--ink)}
[data-template="pastelle"] .article-badge--onmedia{background:#fff;color:var(--brand-deep);border-radius:999px}
[data-template="pastelle"] .faq__item{background:#fff;border:0;border-radius:22px;box-shadow:0 10px 30px rgba(var(--brand-rgb),.1);margin-bottom:14px}
[data-template="pastelle"] .faq__q{background:#fff;color:var(--ink)}
[data-template="pastelle"] .faq__icon{background:rgba(var(--brand-rgb),.16);color:var(--brand-deep)}
[data-template="pastelle"] .faq__a p{color:var(--ink-2)}
[data-template="pastelle"] .btn--primary{background:var(--brand);color:#fff;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:0 12px 28px rgba(var(--brand-rgb),.36)}
[data-template="pastelle"] .btn--primary .btn__arrow{background:#fff;color:var(--brand-deep)}
[data-template="pastelle"] .btn--ghost{background:#fff;color:var(--ink);border:0;border-radius:999px;box-shadow:0 8px 22px rgba(var(--brand-rgb),.12)}
[data-template="pastelle"] .btn--ghost .btn__arrow{background:var(--brand);color:#fff}
[data-template="pastelle"] .form-card{background:#fff;border:0;border-radius:30px;box-shadow:0 20px 48px rgba(var(--brand-rgb),.14);padding:34px}
[data-template="pastelle"] .field input,[data-template="pastelle"] .field textarea,[data-template="pastelle"] .field select,[data-template="pastelle"] .postal-check__row input{background:var(--bg);border:1px solid var(--line-2);border-radius:16px;color:var(--ink)}
[data-template="pastelle"] .field input::placeholder,[data-template="pastelle"] .postal-check__row input::placeholder{color:var(--muted)}
[data-template="pastelle"] .field input:focus,[data-template="pastelle"] .field textarea:focus,[data-template="pastelle"] .field select:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(var(--brand-rgb),.18)}
[data-template="pastelle"] .field label,[data-template="pastelle"] .form-step__name,[data-template="pastelle"] .form-pane__title{color:var(--ink)}
[data-template="pastelle"] .form-step__bubble{background:#fff;border:2px solid var(--line-2);color:var(--muted)}
[data-template="pastelle"] .file-drop{background:var(--bg);border:1.5px dashed var(--line-2);border-radius:18px;color:var(--ink-2)}
[data-template="pastelle"] .file-drop:hover,[data-template="pastelle"] .file-drop.is-drag{border-color:var(--brand);background:rgba(var(--brand-rgb),.06);color:var(--brand-deep)}
[data-template="pastelle"] .postal-check{background:#fff;border:0;border-radius:26px;box-shadow:0 16px 40px rgba(var(--brand-rgb),.14)}
[data-template="pastelle"] .postal-check__title{color:var(--ink)}
[data-template="pastelle"] .postal-check__row{background:var(--bg);border:1px solid var(--line-2);border-radius:18px}
[data-template="pastelle"] .review-card__avatar{background:linear-gradient(135deg,var(--brand),var(--brand-deep))}
[data-template="pastelle"] .review-card blockquote,[data-template="pastelle"] .review-card__author,[data-template="pastelle"] .case-card__quote{color:var(--ink)}
[data-template="pastelle"] .reviews-carousel__card{background:#fff;border:0;border-radius:26px;box-shadow:0 14px 36px rgba(var(--brand-rgb),.12);padding:22px}
[data-template="pastelle"] .process__step{background:#fff;border:0;border-radius:24px;box-shadow:0 12px 32px rgba(var(--brand-rgb),.1)}
[data-template="pastelle"] .process__step h3{color:var(--ink)}
[data-template="pastelle"] .process__check{background:rgba(var(--brand-rgb),.16);color:var(--brand-deep)}
[data-template="pastelle"] .trusted{background:var(--bg-soft);border:0;border-radius:32px}
[data-template="pastelle"] .trusted__label,[data-template="pastelle"] .reviews-source-label{color:var(--muted)}
[data-template="pastelle"] .price-table{background:#fff;border:0;border-radius:24px;box-shadow:0 14px 36px rgba(var(--brand-rgb),.12);overflow:hidden}
[data-template="pastelle"] .price-table th{background:var(--bg-soft);color:var(--ink)}
[data-template="pastelle"] .price-table td{color:var(--ink-2)}
[data-template="pastelle"] .pagination__btn{background:#fff;border:0;border-radius:14px;box-shadow:0 6px 18px rgba(var(--brand-rgb),.1);color:var(--ink-2)}
[data-template="pastelle"] .pagination__btn.is-active{background:var(--brand);color:#fff}
[data-template="pastelle"] .sitemap-block{background:#fff;border:0;border-radius:26px;box-shadow:0 14px 36px rgba(var(--brand-rgb),.1)}
[data-template="pastelle"] .sitemap-block h2{color:var(--ink)}
[data-template="pastelle"] .sitemap-block__icon{background:rgba(var(--brand-rgb),.16);border:0;color:var(--brand-deep)}
[data-template="pastelle"] .sitemap-block a{color:var(--ink-2)}
[data-template="pastelle"] .sitemap-block a:hover{color:var(--brand-deep)}
[data-template="pastelle"] .cta-strip{background:radial-gradient(620px 320px at 18% 0%,rgba(255,255,255,.5),transparent 60%),linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%);color:#fff;border-radius:36px;box-shadow:0 30px 70px rgba(var(--brand-rgb),.3)}
[data-template="pastelle"] .cta-strip h2{color:#fff}
[data-template="pastelle"] .cta-strip p{color:rgba(255,255,255,.9)}
[data-template="pastelle"] .cta-strip .btn--primary{background:#fff;color:var(--brand-deep);border-color:#fff}
[data-template="pastelle"] .cta-strip .btn--primary .btn__arrow{background:var(--brand);color:#fff}
[data-template="pastelle"] .cta-strip .btn--ghost{background:rgba(255,255,255,.16);color:#fff;box-shadow:none}

/* — Animationer (Pastelle), reduced-motion-säkrade — */
@media (prefers-reduced-motion: no-preference){
  @keyframes pa-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
  [data-template="pastelle"] .card,[data-template="pastelle"] .area-service-card,[data-template="pastelle"] .article-card{transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s ease}
  [data-template="pastelle"] [data-reveal].in{animation:pa-rise .7s cubic-bezier(.2,.7,.3,1) both}
}


/* ═══ Pastelle — CHROME ═══ */
/* ═══════════════════════════════════════════════════════════════════════════
   PASTELLE — en HELT EGEN frontend-mall (header + hero + footer). Mjuk pastell
   skönhet/wellness/familj: cremvit/rosa bakgrund, stora squircle-kort, pill-
   knappar, varma toner, lekfullt rundat, luftigt. Renderas av
   components/templates/pastelle/* när siteSettings.activeTemplate === "pastelle".
   Klassnamn prefixas .ps- för att aldrig krocka med default/Aurora.
   Färg/typsnitt följer temats variabler (--brand, --brand-rgb, --brand-deep,
   --ink, --ff-heading m.fl.); strukturen är Pastelles egen.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── HEADER — centrerad flytande pill-kapsel, creme yta + mjuk pastellskugga ── */
.ps-header { position: sticky; top: 18px; z-index: 1000; padding: 0 20px; }
.ps-header__pill { max-width: 1200px; margin: 0 auto; display: flex; align-items: center; gap: 22px; padding: 12px 14px 12px 18px; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .14); border-radius: 999px; box-shadow: 0 18px 50px rgba(var(--brand-rgb), .16); }
.ps-logo { display: flex; align-items: center; gap: 11px; flex-shrink: 0; }
.ps-logo__chip { width: 40px; height: 40px; border-radius: 16px; display: grid; place-items: center; background: linear-gradient(135deg, rgba(var(--brand-rgb), .22), rgba(var(--brand-rgb), .42)); color: var(--brand-deep); font-family: var(--ff-heading); font-weight: 800; font-size: 19px; overflow: hidden; }
.ps-logo__chip img { width: 100%; height: 100%; object-fit: contain; }
.ps-logo__name { font-family: var(--ff-heading); font-weight: 800; font-size: 19px; letter-spacing: -.01em; color: var(--ink); }
.ps-nav { display: flex; align-items: center; gap: 4px; margin: 0 auto; }
.ps-nav__link { padding: 9px 16px; border-radius: 999px; font-size: 14.5px; font-weight: 600; color: var(--ink-2); transition: background .2s, color .2s; }
.ps-nav__link:hover { background: rgba(var(--brand-rgb), .14); color: var(--brand-deep); }
.ps-header__right { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.ps-header__phone { display: inline-flex; align-items: center; gap: 7px; padding: 10px 16px; border-radius: 999px; background: rgba(var(--brand-rgb), .1); color: var(--brand-deep); font-weight: 700; font-size: 14px; white-space: nowrap; transition: background .2s; }
.ps-header__phone:hover { background: rgba(var(--brand-rgb), .18); }
.ps-header__cta { display: inline-flex; align-items: center; gap: 10px; padding: 11px 12px 11px 22px; border-radius: 999px; background: linear-gradient(120deg, var(--brand) 0%, var(--brand-deep) 100%); color: #fff; font-weight: 700; font-size: 14.5px; white-space: nowrap; box-shadow: 0 10px 24px rgba(var(--brand-rgb), .34); transition: transform .2s, box-shadow .2s; }
.ps-header__cta:hover { transform: translateY(-1px); box-shadow: 0 14px 30px rgba(var(--brand-rgb), .42); }
.ps-header__cta-badge { width: 28px; height: 28px; border-radius: 999px; background: rgba(255, 255, 255, .22); display: grid; place-items: center; font-size: 15px; }
.ps-burger { display: none; width: 44px; height: 44px; border-radius: 14px; border: 1px solid rgba(var(--brand-rgb), .2); background: rgba(var(--brand-rgb), .08); color: var(--brand-deep); cursor: pointer; align-items: center; justify-content: center; }

.ps-drawer { max-width: 1200px; margin: 12px auto 0; padding: 14px; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .14); border-radius: 28px; box-shadow: 0 18px 50px rgba(var(--brand-rgb), .16); }
.ps-drawer__link { display: block; padding: 13px 16px; border-radius: 16px; font-weight: 600; color: var(--ink); font-size: 16px; }
.ps-drawer__link:hover { background: rgba(var(--brand-rgb), .12); }
.ps-drawer__phone { display: block; padding: 13px 16px; color: var(--brand-deep); font-weight: 700; }
.ps-drawer__cta { display: block; text-align: center; margin-top: 8px; padding: 14px; border-radius: 999px; background: linear-gradient(120deg, var(--brand) 0%, var(--brand-deep) 100%); color: #fff; font-weight: 700; }

/* ── HERO — kort-i-kort, text vänster + squircle-mediakort höger, pastell-blobbar ── */
.ps-hero { position: relative; overflow: hidden; padding: 56px 20px 80px; background: radial-gradient(70% 90% at 88% -10%, rgba(var(--brand-rgb), .24) 0%, transparent 60%), radial-gradient(60% 70% at 0% 8%, rgba(242, 166, 90, .14) 0%, transparent 55%), var(--bg); }
.ps-hero__blob { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .55; pointer-events: none; z-index: 0; }
.ps-hero__blob--a { width: 420px; height: 420px; top: -120px; right: -80px; background: rgba(var(--brand-rgb), .42); }
.ps-hero__blob--b { width: 360px; height: 360px; bottom: -140px; left: -100px; background: rgba(242, 166, 90, .3); }
.ps-hero__blob--c { width: 300px; height: 300px; top: 30%; left: 42%; background: rgba(var(--brand-rgb), .2); }
.ps-hero__inner { position: relative; z-index: 2; max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 1.05fr .95fr; gap: 56px; align-items: center; }
.ps-hero__copy { max-width: 560px; }
.ps-hero__rating { display: inline-flex; align-items: center; gap: 9px; padding: 8px 16px; border-radius: 999px; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .16); box-shadow: 0 8px 22px rgba(var(--brand-rgb), .12); color: var(--ink); font-weight: 600; font-size: 14px; }
.ps-hero__rating .hero__stars { color: var(--star); display: inline-flex; }
.ps-hero__title { font-family: var(--ff-heading); font-weight: 800; font-size: clamp(38px, 5.4vw, 70px); line-height: 1.05; letter-spacing: -.02em; color: var(--ink); margin: 22px 0 0; }
.ps-hero__title em { font-style: normal; color: var(--brand-deep); background: rgba(var(--brand-rgb), .18); border-radius: 16px; padding: 0 .22em; box-decoration-break: clone; -webkit-box-decoration-break: clone; }
.ps-hero__title strong { font-weight: 800; color: var(--brand-deep); }
.ps-hero__sub { font-size: 19px; line-height: 1.6; color: var(--ink-2); margin: 22px 0 0; }
.ps-hero__cta { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 30px; }
.ps-hero__facts { list-style: none; padding: 0; margin: 26px 0 0; display: flex; flex-wrap: wrap; gap: 10px; }
.ps-hero__fact { display: inline-flex; align-items: center; gap: 8px; padding: 8px 15px; border-radius: 999px; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .14); color: var(--ink-2); font-size: 13.5px; font-weight: 600; }
.ps-hero__fact svg { color: var(--brand); }
.ps-hero__postal { margin-top: 28px; max-width: 480px; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .14); border-radius: 26px; padding: 18px 20px; box-shadow: 0 14px 36px rgba(var(--brand-rgb), .1); }
.ps-hero__logos { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 26px; opacity: .85; }
.ps-hero__logos img { height: 26px; width: auto; }

.ps-hero__media { position: relative; }
.ps-hero__card { position: relative; border-radius: 36px; overflow: hidden; aspect-ratio: 4 / 5; background: linear-gradient(150deg, rgba(var(--brand-rgb), .26), rgba(242, 166, 90, .2)); box-shadow: 0 30px 70px rgba(var(--brand-rgb), .26); border: 6px solid #fffdfb; }
.ps-hero__video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ps-hero__media-fallback { position: absolute; inset: 0; background: radial-gradient(70% 70% at 30% 20%, rgba(255, 255, 255, .5), transparent 60%), linear-gradient(150deg, var(--brand), var(--brand-deep)); }
.ps-hero__veil { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(var(--brand-rgb), .28) 100%); pointer-events: none; }
.ps-hero__proof { position: absolute; left: -18px; bottom: 30px; display: inline-flex; align-items: center; gap: 9px; padding: 12px 18px; border-radius: 22px; background: #fffdfb; box-shadow: 0 16px 40px rgba(var(--brand-rgb), .22); color: var(--ink); font-weight: 700; font-size: 14px; animation: ps-float 4.5s ease-in-out infinite; }
.ps-hero__proof .hero__stars { color: var(--star); display: inline-flex; }
@keyframes ps-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }
@media (prefers-reduced-motion: reduce) { .ps-hero__proof { animation: none; } }

/* ── TRUST-band ── */
.ps-trust { background: var(--bg-soft); }
.ps-trust__inner { max-width: 1200px; margin: 0 auto; padding: 40px 24px; }

/* ── STATS — mjukt nyckeltals-band ── */
.ps-stats { padding: 0 20px; }
.ps-stats__inner { max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-around; padding: 44px 40px; background: linear-gradient(120deg, var(--brand) 0%, var(--brand-deep) 100%); border-radius: 36px; box-shadow: 0 22px 54px rgba(var(--brand-rgb), .26); text-align: center; }
.ps-stat__num { font-family: var(--ff-heading); font-weight: 800; font-size: clamp(36px, 4vw, 50px); color: #fff; line-height: 1; }
.ps-stat__lab { color: rgba(255, 255, 255, .9); margin-top: 8px; font-size: 14.5px; }

/* ── SEKTIONER ── */
.ps-section { max-width: 1200px; margin: 0 auto; padding: 88px 24px; }
.ps-section--tight { padding-top: 24px; padding-bottom: 24px; }
.ps-section__head { max-width: 720px; margin: 0 auto 52px; text-align: center; }
.ps-section__eyebrow { display: inline-block; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; font-weight: 700; color: var(--brand-deep); padding: 6px 14px; border-radius: 999px; background: rgba(var(--brand-rgb), .12); }
.ps-section__title { font-family: var(--ff-heading); font-weight: 800; font-size: clamp(28px, 3.6vw, 44px); letter-spacing: -.02em; color: var(--ink); margin: 16px 0 0; line-height: 1.1; }
.ps-section__intro { font-size: 18px; color: var(--ink-2); margin-top: 16px; line-height: 1.6; }

/* tjänste-kort i squircle */
.ps-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.ps-card { display: flex; flex-direction: column; background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .12); border-radius: 30px; overflow: hidden; box-shadow: 0 16px 40px rgba(var(--brand-rgb), .1); transition: transform .25s, box-shadow .25s; }
.ps-card:hover { transform: translateY(-6px); box-shadow: 0 26px 56px rgba(var(--brand-rgb), .2); }
.ps-card__media { aspect-ratio: 4 / 3; overflow: hidden; background: linear-gradient(150deg, rgba(var(--brand-rgb), .18), rgba(242, 166, 90, .14)); display: grid; place-items: center; }
.ps-card__media img { width: 100%; height: 100%; object-fit: cover; }
.ps-card__icon { color: var(--brand-deep); }
.ps-card__body { padding: 24px 24px 26px; display: flex; flex-direction: column; flex: 1; }
.ps-card__title { font-family: var(--ff-heading); font-weight: 800; font-size: 21px; color: var(--ink); letter-spacing: -.01em; margin: 0; }
.ps-card__text { font-size: 15px; color: var(--ink-2); line-height: 1.6; margin: 10px 0 0; }
.ps-card__price { display: inline-block; margin-top: 14px; font-weight: 700; color: var(--brand-deep); }
.ps-card__link { display: inline-flex; align-items: center; gap: 7px; margin-top: auto; padding-top: 18px; font-weight: 700; color: var(--brand-deep); font-size: 14.5px; }

/* om-oss */
.ps-about { max-width: 760px; margin: 0 auto; text-align: center; }
.ps-about__title { font-family: var(--ff-heading); font-weight: 800; font-size: clamp(26px, 3.2vw, 40px); letter-spacing: -.02em; color: var(--ink); margin: 14px 0 0; line-height: 1.12; }
.ps-about__intro { font-size: 18px; color: var(--ink-2); line-height: 1.7; margin: 18px 0 0; }

/* USP — mjuka kort */
.ps-usps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ps-usp { background: var(--bg-soft); border-radius: 28px; padding: 30px 26px; }
.ps-usp__icon { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 18px; background: #fffdfb; color: var(--brand-deep); box-shadow: 0 10px 24px rgba(var(--brand-rgb), .14); margin-bottom: 16px; }
.ps-usp__title { font-family: var(--ff-heading); font-weight: 800; font-size: 19px; color: var(--ink); margin: 0; }
.ps-usp__text { font-size: 15px; color: var(--ink-2); line-height: 1.6; margin: 9px 0 0; }

/* process-steg */
.ps-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.ps-step { background: #fffdfb; border: 1px solid rgba(var(--brand-rgb), .12); border-radius: 26px; padding: 28px 24px; box-shadow: 0 12px 30px rgba(var(--brand-rgb), .08); }
.ps-step__num { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 999px; background: linear-gradient(120deg, var(--brand), var(--brand-deep)); color: #fff; font-family: var(--ff-heading); font-weight: 800; font-size: 19px; margin-bottom: 16px; }
.ps-step__title { font-family: var(--ff-heading); font-weight: 800; font-size: 18px; color: var(--ink); margin: 0; }
.ps-step__text { font-size: 14.5px; color: var(--ink-2); line-height: 1.55; margin: 8px 0 0; }

/* ── FOOTER — ljus varm pastell, rundad topp, CTA-bubbla + kolumner ── */
.ps-footer { position: relative; overflow: hidden; margin-top: 60px; background: var(--bg-soft); border-radius: 40px 40px 0 0; }
.ps-footer__blob { position: absolute; border-radius: 50%; filter: blur(80px); opacity: .5; pointer-events: none; z-index: 0; }
.ps-footer__blob--a { width: 420px; height: 420px; top: -160px; right: -90px; background: rgba(var(--brand-rgb), .4); }
.ps-footer__blob--b { width: 340px; height: 340px; bottom: -120px; left: -80px; background: rgba(242, 166, 90, .26); }
.ps-footer__inner { position: relative; z-index: 2; max-width: 1200px; margin: 0 auto; padding: 64px 24px 36px; }
.ps-footer__cta { text-align: center; max-width: 760px; margin: 0 auto 64px; padding: 48px 40px; background: linear-gradient(135deg, rgba(var(--brand-rgb), .9), var(--brand-deep)); border-radius: 36px; box-shadow: 0 26px 60px rgba(var(--brand-rgb), .3); }
.ps-footer__cta-title { font-family: var(--ff-heading); font-weight: 800; font-size: clamp(26px, 3.4vw, 40px); color: #fff; letter-spacing: -.02em; margin: 0; }
.ps-footer__cta-sub { color: rgba(255, 255, 255, .9); font-size: 17px; line-height: 1.55; margin: 14px auto 0; max-width: 480px; }
.ps-footer__cta-actions { display: flex; gap: 16px; justify-content: center; align-items: center; flex-wrap: wrap; margin-top: 26px; }
.ps-footer__cta-btn { display: inline-flex; align-items: center; gap: 10px; padding: 14px 14px 14px 26px; border-radius: 999px; background: #fffdfb; color: var(--brand-deep); font-weight: 700; box-shadow: 0 12px 28px rgba(0, 0, 0, .14); transition: transform .2s; }
.ps-footer__cta-btn:hover { transform: translateY(-1px); }
.ps-footer__cta-badge { width: 28px; height: 28px; border-radius: 999px; background: rgba(var(--brand-rgb), .2); display: grid; place-items: center; font-size: 15px; }
.ps-footer__cta-phone { color: #fff; font-weight: 700; font-size: 17px; }
.ps-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 36px; padding-bottom: 40px; border-bottom: 1px solid var(--line); }
.ps-footer__logo { display: inline-flex; align-items: center; }
.ps-footer__logo img { height: 34px; width: auto; }
.ps-footer__logo-name { font-family: var(--ff-heading); font-weight: 800; font-size: 24px; letter-spacing: -.01em; color: var(--ink); }
.ps-footer__tagline { color: var(--ink-2); font-size: 15px; line-height: 1.6; margin: 16px 0 0; max-width: 320px; }
.ps-footer__address { color: var(--ink-2); font-size: 14.5px; line-height: 1.6; margin: 14px 0 0; }
.ps-footer__contact { display: flex; flex-direction: column; gap: 6px; margin-top: 14px; }
.ps-footer__contact a { color: var(--brand-deep); font-weight: 600; font-size: 14.5px; }
.ps-footer__social { display: flex; gap: 10px; margin-top: 18px; }
.ps-footer__social-btn { width: 40px; height: 40px; border-radius: 14px; display: grid; place-items: center; background: #fffdfb; color: var(--brand-deep); font-weight: 700; box-shadow: 0 8px 20px rgba(var(--brand-rgb), .12); transition: transform .2s; }
.ps-footer__social-btn:hover { transform: translateY(-2px); }
.ps-footer__col-head { font-family: var(--ff-heading); font-weight: 800; font-size: 16px; color: var(--ink); margin: 0 0 14px; }
.ps-footer__links { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.ps-footer__links a { color: var(--ink-2); font-size: 14.5px; transition: color .2s; }
.ps-footer__links a:hover { color: var(--brand-deep); }
.ps-footer__bottom { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; padding-top: 28px; color: var(--muted); font-size: 13.5px; }
.ps-footer__bottom-links { display: flex; gap: 18px; flex-wrap: wrap; }
.ps-footer__bottom-links a { color: var(--muted); }
.ps-footer__bottom-links a:hover { color: var(--brand-deep); }

/* ── RESPONSIVT ── */
@media (max-width: 1000px) {
  .ps-hero__inner { grid-template-columns: 1fr; gap: 40px; }
  .ps-hero__media { order: -1; max-width: 480px; margin: 0 auto; }
  .ps-hero__copy { max-width: none; }
  .ps-cards, .ps-usps { grid-template-columns: repeat(2, 1fr); }
  .ps-steps { grid-template-columns: repeat(2, 1fr); }
  .ps-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
  .ps-nav, .ps-header__phone { display: none; }
  .ps-burger { display: inline-flex; }
  .ps-header__cta { padding: 10px 18px; }
  .ps-hero { padding-top: 36px; }
  .ps-cards, .ps-usps, .ps-steps, .ps-footer__grid { grid-template-columns: 1fr; }
  .ps-section { padding: 64px 20px; }
  .ps-footer__cta { padding: 36px 24px; }
  .ps-footer__bottom { flex-direction: column; align-items: flex-start; }
}



/* ═══ QA-FIXAR (pastelle) — synlighet/placering/kontrast, brand-oberoende ═══ */
/* [medel] .mobile-call-bar .call */
[data-template="pastelle"] .mobile-call-bar{background:rgba(255,253,251,0.94);border-top:1px solid rgba(var(--brand-rgb),.16)} [data-template="pastelle"] .mobile-call-bar .call{background:var(--brand);color:#fff;border-radius:14px} [data-template="pastelle"] .mobile-call-bar .quote{background:#fffdfb;color:var(--ink);border:1px solid rgba(var(--brand-rgb),.18);border-radius:14px}
/* [låg] .trusted (inuti .ps-trust) */
[data-template="pastelle"] .ps-trust .trusted{background:transparent;border-radius:0;padding-top:0;padding-bottom:0;margin-top:0}
