/* Auditoria visual final: responsividade, acessibilidade e arte cromática dos presentes. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-wrap:break-word}
img{height:auto}
:is(button,.button,input,select,textarea,summary){font:inherit}
:is(.button,.main-nav a,.footer-legal a,.footer-legal button,.invite-sales-footer-link){min-height:44px}
.button{display:inline-flex;align-items:center;justify-content:center;text-align:center}
.site-header,.public-brandbar{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
.site-footer,.public-footer{padding-bottom:max(24px,env(safe-area-inset-bottom))}

/* Rodapé comercial claro, sem confundir suporte com o serviço de convites. */
.invite-sales-footer-link{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:10px 15px;border:1px solid #b8863d;border-radius:999px;
  color:#5f3047!important;background:#fffaf0;font-size:.78rem;font-weight:800;
  line-height:1.3;text-decoration:none!important;box-shadow:0 8px 22px rgba(83,45,65,.08)
}
.invite-sales-footer-link:hover{color:#fff!important;background:#5f3047}
.site-footer .invite-sales-footer-link,.public-footer .invite-sales-footer-link,.auth-commercial-footer .invite-sales-footer-link{color:#5f3047!important}
.site-footer .invite-sales-footer-link:hover,.public-footer .invite-sales-footer-link:hover,.auth-commercial-footer .invite-sales-footer-link:hover{color:#fff!important;background:#5f3047}
.invite-sales-footer-link .whatsapp-symbol{flex:0 0 auto}
.site-footer .footer-inner>.invite-sales-footer-link{width:100%;max-width:430px;margin-inline:auto}
.public-footer .public-footer-sales{grid-column:1/-1;grid-row:2;justify-self:center}
.auth-commercial-footer{display:flex;width:100%;justify-content:center;padding:2px 12px 20px}
.auth-commercial-footer .invite-sales-footer-link{width:min(100%,430px);background:rgba(255,250,240,.94)}

/* Etapas da home: sempre lado a lado no celular, com leitura preservada. */
.pl-step>img{display:block;width:58px;height:58px;margin:14px 0 10px;object-fit:contain;filter:drop-shadow(0 6px 9px rgba(83,45,65,.12))}
@media(max-width:780px){
  .pl-how{padding-block:3.7rem}
  .pl-how .pl-section-heading{margin-bottom:1.65rem}
  .pl-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pl-step{min-height:190px;padding:17px 14px;border-radius:18px}
  .pl-step:before{right:18px;left:18px}
  .pl-step>img{width:48px;height:48px;margin:11px 0 8px}
  .pl-step h3{margin:0;font-size:1.2rem;line-height:1.05}
  .pl-step p{display:-webkit-box;margin-top:7px;overflow:hidden;font-size:.76rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .pl-note{font-size:.82rem}
}
@media(max-width:380px){
  .pl-section{padding-inline:10px}
  .pl-steps{gap:7px}
  .pl-step{min-height:174px;padding:14px 11px}
  .pl-step>img{width:42px;height:42px;margin-block:8px 6px}
  .pl-step h3{font-size:1.05rem}
  .pl-step p{font-size:.7rem;-webkit-line-clamp:3}
}

/* Moldura bitmap real escolhida pela família de cor da lista. */
.pl-public .public-gift-image.is-catalog-art,.example-gift-image{position:relative;isolation:isolate;background-color:#fff}
.pl-public .public-gift-image.is-catalog-art:after,.example-gift-image:after{
  position:absolute;z-index:2;inset:2px;background:var(--theme-gift-frame-art) center/contain no-repeat;
  content:'';pointer-events:none
}
.pl-public .public-gift-image.is-catalog-art img,.example-gift-image img{position:relative;z-index:1;padding:12%;filter:saturate(1.04) contrast(1.02) drop-shadow(0 8px 12px rgba(45,30,40,.1))}
.example-list-products .example-gift-image{--theme-gift-frame-art:url('../img/xv-gift-frames/lilac-gift-frame-v1.webp')}
.example-list-fun .example-gift-image{--theme-gift-frame-art:url('../img/xv-gift-frames/midnight-gift-frame-v1.webp')}
.example-list-fun .example-gift-image img{padding:11%}
.palette-gift-preview{display:grid;grid-template-columns:minmax(0,1fr) 160px;align-items:center;gap:18px;margin:16px 0;padding:15px 18px;border:1px solid #e2cbd5;border-radius:18px;background:linear-gradient(135deg,#fff,#fff8fa)}
.palette-gift-preview strong{color:#5f3047;font:700 1.15rem var(--pl-serif)}
.palette-gift-preview p{margin:4px 0 0;color:#765f69;font-size:.76rem;line-height:1.5}
.palette-gift-preview-art{position:relative;display:grid;place-items:center;isolation:isolate;width:150px;aspect-ratio:1;margin-inline:auto;border-radius:18px;background:#fff}
.palette-gift-preview-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.palette-gift-preview-product{z-index:1;padding:24%}
.palette-gift-preview-frame{z-index:2}

/* A grade nunca cai para uma coluna em celulares estreitos. */
@media(max-width:360px){
  .example-gift-grid,.example-list-products .example-gift-grid,html[data-layout] .public-list-page .public-gift-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .example-gift-card>div:last-child{padding:10px 7px}
  .example-gift-card h3{min-height:0;font-size:.84rem;line-height:1.25}
  .example-gift-card p{display:-webkit-box;min-height:0;overflow:hidden;font-size:.68rem;-webkit-box-orient:vertical;-webkit-line-clamp:3}
  .example-gift-card strong{font-size:.9rem}
  .example-gift-card span{padding:6px 3px;font-size:.58rem}
  .public-list-page .public-gift-image,.list-type-fun .public-gift-image{height:auto!important;aspect-ratio:1}
  .public-list-page .public-gift-body,.list-type-fun .public-gift-body{padding:8px 5px!important}
  .public-list-page .public-gift-body h3{font-size:.72rem!important}
  .public-list-page .public-gift-body>p{display:none!important}
}

/* Pequenos acabamentos de clareza e foco. */
.public-gift-card,.example-gift-card,.pl-choice,.pl-step{contain:layout paint}
.public-gift-card:focus-within,.example-gift-card:focus-within,.pl-choice:focus-visible{outline:3px solid var(--theme-accent,#b8863d);outline-offset:3px}
.footer-legal{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:8px 16px}
.footer-legal button{padding:8px;border:0;color:inherit;background:transparent;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.sara-launcher,.sara-panel{margin-bottom:env(safe-area-inset-bottom)}

@media(max-width:620px){
  .footer-inner{align-items:center!important;text-align:center}
  .footer-inner>.brand{align-self:center}
  .footer-inner>p{width:100%;font-size:.78rem;line-height:1.55}
  .footer-legal{width:100%;order:5}
  .site-footer .invite-sales-footer-link{order:4}
  .public-footer{grid-template-columns:1fr!important;gap:16px;padding:28px 18px max(86px,env(safe-area-inset-bottom));text-align:center}
  .public-footer>*{grid-column:1!important;grid-row:auto!important;justify-self:center}
  .public-footer .invite-sales-footer-link{width:min(100%,360px);white-space:normal}
  .sara-panel{width:min(360px,calc(100vw - 20px))!important;max-height:min(680px,calc(100dvh - 24px))}
  .palette-gift-preview{grid-template-columns:minmax(0,1fr) 112px;gap:10px;padding:12px}
  .palette-gift-preview-art{width:106px}
}

@media(pointer:coarse){
  :is(a,button,summary,label,input[type=checkbox],input[type=radio]){touch-action:manipulation}
  .filter-chip,.public-page-nav a,.public-page-nav button{min-height:44px}
}

@media(prefers-reduced-motion:reduce){
  .pl-celestial-garland,.pl-butterfly-flight img,.pl-hero-card>img{animation:none!important}
  .public-gift-card,.example-gift-card,.pl-choice,.button{transform:none!important;transition:none!important}
}

@media(forced-colors:active){
  .invite-sales-footer-link,.pl-step,.public-gift-card,.example-gift-card{border:2px solid CanvasText}
  .pl-public .public-gift-image.is-catalog-art:after,.example-gift-image:after{display:none}
}
