/* Variantes públicas: classes fechadas e tokens gerados pelo backend. */
.public-profile-body{background:var(--profile-background,#f7f4ee);color:var(--profile-text,#222);font-family:var(--profile-font-body,Inter,system-ui,sans-serif);font-size:calc(1rem * var(--profile-body-scale,1));line-height:var(--profile-line-height,1.6)}.profile-card{background:var(--profile-background,#f7f4ee);color:var(--profile-text,#222)}.profile-card h1,.profile-card h2,.profile-card h3{font-family:var(--profile-font-heading,Inter,system-ui,sans-serif);font-weight:var(--profile-heading-weight,700)}.profile-card h1,.profile-card h2{font-size:calc(1em * var(--profile-heading-scale,1))}.profile-content{background:var(--profile-background,#f7f4ee)}.profile-section,.profile-detail,.profile-service,.profile-share-card,.profile-qr-card{background-color:var(--profile-surface,#fff);color:var(--profile-text,#222)}.profile-section-heading span,.profile-detail small,.profile-service p,.profile-share-copy p{color:var(--profile-muted,#777)}.profile-card a:focus-visible,.profile-card button:focus-visible{outline:3px solid color-mix(in srgb,var(--profile-primary),#fff 20%);outline-offset:3px}.header-centered .profile-hero{text-align:center}.header-split .profile-hero{display:grid;grid-template-columns:1.2fr .8fr}.header-minimal .profile-cover{display:none}.header-card .profile-hero{margin:16px;border-radius:20px;overflow:hidden}.header-hero-full .profile-cover{min-height:310px}.logo-circle .profile-avatar{border-radius:50%}.logo-transparent .profile-avatar{background:transparent;border-color:transparent}.logo-bordered .profile-avatar{border:4px solid var(--profile-primary)}.cards-flat .profile-section,.cards-flat .profile-detail,.cards-flat .profile-service{box-shadow:none;border-color:transparent}.cards-outlined .profile-section,.cards-outlined .profile-detail,.cards-outlined .profile-service{box-shadow:none;border:1px solid color-mix(in srgb,var(--profile-text),transparent 78%)}.cards-glass .profile-section{background:color-mix(in srgb,var(--profile-surface),transparent 12%);backdrop-filter:blur(8px)}.cards-luxury .profile-section{border:1px solid color-mix(in srgb,var(--profile-primary),transparent 45%);box-shadow:0 12px 35px color-mix(in srgb,var(--profile-secondary),transparent 88%)}.cards-elevated .profile-section{box-shadow:0 16px 38px color-mix(in srgb,var(--profile-secondary),transparent 84%)}.buttons-pill .profile-action,.buttons-pill .profile-primary-action{border-radius:999px}.buttons-square .profile-action,.buttons-square .profile-primary-action{border-radius:3px}.buttons-outline .profile-primary-action{background:transparent!important;color:var(--profile-primary)!important;border:2px solid var(--profile-primary)!important}.buttons-soft .profile-primary-action{background:color-mix(in srgb,var(--profile-primary),#fff 74%)!important;color:var(--profile-secondary)!important}.buttons-luxury .profile-primary-action{background:linear-gradient(135deg,var(--profile-primary),color-mix(in srgb,var(--profile-primary),#000 24%))!important;color:var(--profile-secondary)!important;box-shadow:0 8px 24px color-mix(in srgb,var(--profile-primary),transparent 65%)}.button-size-medium .profile-action{min-height:44px}.button-layout-full .profile-action-grid{grid-template-columns:1fr}.gallery-masonry .profile-gallery{columns:2;display:block}.gallery-masonry .profile-gallery-item{break-inside:avoid;margin-bottom:10px}.gallery-featured .profile-gallery-item:first-child{grid-column:1/-1}.gallery-portfolio .profile-gallery{grid-template-columns:repeat(3,1fr)}.gallery-horizontal-scroll .profile-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.gallery-horizontal-scroll .profile-gallery-item{flex:0 0 76%;scroll-snap-align:start}.gallery-slider .profile-gallery{display:flex;overflow-x:auto}.gallery-slider .profile-gallery-item{flex:0 0 100%}.background-gradient{background-image:linear-gradient(145deg,var(--profile-background),color-mix(in srgb,var(--profile-primary),var(--profile-background) 88%))}.background-subtle-pattern{background-image:radial-gradient(color-mix(in srgb,var(--profile-primary),transparent 88%) 1px,transparent 1px);background-size:18px 18px}.background-dark{--profile-background:#111;--profile-surface:#1b1b1b;--profile-text:#fff;--profile-muted:#bbb}.background-light{--profile-background:#fafafa;--profile-surface:#fff}.spacing-compact .profile-section{margin-top:10px}.spacing-spacious .profile-section{margin-top:28px;padding:clamp(22px,5vw,40px)}.radius-none .profile-section,.radius-none .profile-detail{border-radius:0}.radius-small .profile-section,.radius-small .profile-detail{border-radius:8px}.radius-medium .profile-section,.radius-medium .profile-detail{border-radius:14px}.radius-large .profile-section,.radius-large .profile-detail{border-radius:22px}.shadow-none .profile-section{box-shadow:none}.shadow-medium .profile-section{box-shadow:0 14px 36px rgba(0,0,0,.13)}.shadow-strong .profile-section{box-shadow:0 20px 55px rgba(0,0,0,.2)}.branding-compact{opacity:.72;font-size:.72rem}.template-beauty-chic .profile-section-heading span,.template-luxury-gold .profile-section-heading span{letter-spacing:.12em}.template-automotive-bold .profile-card h1{text-transform:uppercase;letter-spacing:-.04em}.template-photographer-portfolio .profile-gallery-item img{filter:saturate(.8)}
@media(max-width:640px){.header-split .profile-hero{display:block}.gallery-portfolio .profile-gallery{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){.profile-card *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.background-image{background-image:linear-gradient(color-mix(in srgb,var(--profile-background),transparent 8%),color-mix(in srgb,var(--profile-background),transparent 8%)),var(--profile-background-image);background-size:cover;background-position:center;background-attachment:fixed}
.logo-circle .profile-logo{border-radius:50%}.logo-transparent .profile-logo{background:transparent;border-color:transparent}.logo-bordered .profile-logo{border:4px solid var(--profile-primary)}
.buttons-pill .profile-save-contact{border-radius:999px}.buttons-square .profile-save-contact{border-radius:3px}.buttons-outline .profile-save-contact{background:transparent!important;color:var(--profile-primary)!important;border:2px solid var(--profile-primary)!important}.buttons-soft .profile-save-contact{background:color-mix(in srgb,var(--profile-primary),#fff 74%)!important;color:var(--profile-secondary)!important}.buttons-luxury .profile-save-contact{background:linear-gradient(135deg,var(--profile-primary),color-mix(in srgb,var(--profile-primary),#000 24%))!important;color:var(--profile-secondary)!important}
