/* ============ SOBRE ============ */
.section-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:4.5rem;align-items:center}
.about-media{position:relative}
.photo-card{position:relative;z-index:1;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/5;background:var(--grad);box-shadow:var(--shadow-lg)}
.photo-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#fff;font-size:.95rem;font-weight:500;text-align:center;padding:2rem}
.photo-placeholder .ic{width:44px;height:44px;stroke-width:1.3}
.frame-accent{position:absolute;inset:1.6rem -1.6rem -1.6rem 1.6rem;border:2px solid var(--rose-200);border-radius:var(--r-lg)}
.exp-badge{position:absolute;z-index:2;right:-14px;top:-18px;background:#fff;border-radius:18px;padding:.9rem 1.2rem;box-shadow:var(--shadow-md);display:flex;flex-direction:column;text-align:center;animation:bob 6s ease-in-out infinite}
.exp-badge strong{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--primary);line-height:1}
.exp-badge span{font-size:.68rem;color:var(--muted);max-width:110px}
.about-copy>p{color:var(--muted);margin-bottom:1.15rem}
.credentials{display:grid;gap:.85rem;margin:1.7rem 0 2rem}
.credentials li{display:flex;align-items:center;gap:.75rem;font-weight:500}
.credentials .ic{width:24px;height:24px;padding:5px;background:var(--rose-100);border-radius:50%;color:var(--primary);box-sizing:border-box}
.signature{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:2rem;color:var(--primary)}

/* ============ SERVIÇOS ============ */
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}
.service-card{background:#fff;border-radius:var(--r-md);padding:2rem 1.6rem;box-shadow:var(--shadow-sm);border:1px solid #F6E3EB;overflow:hidden;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.service-card::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.service-card{position:relative}
.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-md)}
.service-card:hover::before{transform:scaleX(1)}
.icon-wrap{width:58px;height:58px;border-radius:18px;background:var(--rose-50);color:var(--primary);display:grid;place-items:center;font-size:1.65rem;margin-bottom:1.35rem;transition:all .45s var(--ease)}
.service-card:hover .icon-wrap{background:var(--grad);color:#fff;transform:rotate(-6deg) scale(1.06)}
.service-card h3{font-size:1.45rem;margin-bottom:.7rem}
.service-card p{font-size:.93rem;color:var(--muted);margin-bottom:1.4rem}
.card-link{font-size:.88rem;font-weight:600;color:var(--primary)}
.card-link:hover span{transform:translateX(4px)}
.card-link span{display:inline-block;transition:transform .3s var(--ease)}

/* ============ PASSOS ============ */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.step{position:relative;padding:0 1.8rem 0 0}
.step-num{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff;font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:700;font-style:italic;color:var(--primary);box-shadow:var(--shadow-sm),inset 0 0 0 2px var(--rose-200);margin-bottom:1.2rem;transition:all .4s var(--ease)}
.step:hover .step-num{background:var(--grad);color:#fff;transform:translateY(-4px)}
.step h3{font-size:1.4rem;margin-bottom:.55rem}
.step p{color:var(--muted);font-size:.94rem}
.step:not(:last-child)::before{content:"";position:absolute;top:32px;left:84px;right:0;height:2px;background:repeating-linear-gradient(90deg,var(--rose-200) 0 8px,transparent 8px 16px)}