:root { --ink:var(--color-text); --muted:var(--color-text-secondary); --line:var(--color-border); --teal:var(--color-accent); }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:#fff; color:var(--ink); font-family:var(--app-font-family); letter-spacing:0; } button,a { -webkit-tap-highlight-color:transparent; } a { color:var(--teal); } button { font:inherit; cursor:pointer; } .public-header { max-width:1280px; margin:auto; padding:24px 32px; display:flex; justify-content:space-between; align-items:center; gap:24px; border-bottom:1px solid var(--line); } .public-brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--ink); font-weight:700; font-size:19px; min-width:0; overflow-wrap:anywhere; } .public-brand img { max-width:100px; height:40px; object-fit:contain; } .public-header nav { display:flex; gap:24px; font-size:14px; flex-wrap:wrap; } .public-header nav a { text-decoration:none; } .public-content { max-width:1280px; margin:auto; padding:32px; } .public-heading { display:flex; justify-content:space-between; gap:24px; align-items:center; margin-bottom:26px; } .public-heading > div { min-width:0; } .public-code,.public-category { color:var(--muted); font-size:13px; } h1 { font-size:32px; line-height:1.2; margin:10px 0; overflow-wrap:anywhere; } .public-heading p { color:var(--muted); margin:0; } .public-share { display:flex; gap:8px; align-items:center; flex-wrap:wrap; flex-shrink:0; max-width:210px; } .icon-tool { width:40px; height:40px; display:inline-grid; place-items:center; flex:0 0 40px; background:#fff; border:1px solid var(--line); border-radius:6px; color:var(--ink); text-decoration:none; } .icon-tool:hover { border-color:var(--teal); color:var(--teal); } [hidden] { display:none !important; } [data-share-status] { font-size:12px; flex-basis:100%; } .public-main { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr); gap:36px; align-items:start; } .public-main-photo { position:relative; aspect-ratio:3/2; background:var(--color-image-background); } .public-main-photo > button:first-child { display:block; width:100%; height:100%; padding:0; border:0; background:none; } .public-main-photo img { width:100%; height:100%; object-fit:contain; display:block; } .photo-expand { position:absolute; bottom:14px; right:14px; } .public-thumbnails { display:flex; gap:10px; overflow-x:auto; padding:12px 0; } .public-thumbnails button { flex:0 0 94px; width:94px; height:68px; padding:2px; border:2px solid transparent; border-radius:4px; background:var(--color-tint); } .public-thumbnails button[aria-pressed=true] { border-color:var(--teal); } .public-thumbnails img { display:block; width:100%; height:100%; object-fit:cover; } .public-offer { border-top:3px solid var(--teal); padding:24px 0; } .public-price { margin:24px 0; } .public-price > span { display:block; color:var(--muted); font-size:14px; margin-bottom:6px; } .public-price strong { font-size:28px; overflow-wrap:anywhere; } .interest-button { display:block; padding:16px; text-align:center; background:var(--teal); border-radius:6px; color:white; text-decoration:none; font-weight:650; } .public-key-features { display:flex; gap:30px; margin:28px 0 0; flex-wrap:wrap; } dt { color:var(--muted); font-size:13px; } dd { margin:5px 0 0; font-size:20px; font-weight:650; } .public-section { padding:30px 0; border-top:1px solid var(--line); scroll-margin-top:20px; } h2 { font-size:21px; margin:0 0 22px; } .public-specs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin:0; } .public-specs dd { font-size:18px; overflow-wrap:anywhere; } .public-features { display:flex; flex-wrap:wrap; gap:12px 28px; list-style-position:inside; padding:0; margin:28px 0 0; } .public-description { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.8; max-width:900px; margin:0; } .public-footer { padding:26px 32px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; text-align:center; } .public-no-photo { min-height:300px; display:grid; place-items:center; background:var(--color-image-background); color:var(--muted); } #public-lightbox { width:min(1100px,96%); max-width:96%; max-height:96dvh; padding:16px; border:0; background:var(--color-primary-dark); color:white; } #public-lightbox::backdrop { background:#000c; } .lightbox-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:12px; } .lightbox-stage { display:grid; grid-template-columns:40px minmax(0,1fr) 40px; gap:10px; align-items:center; } .lightbox-stage img { width:100%; height:75dvh; object-fit:contain; } :focus-visible { outline:3px solid var(--color-accent); outline-offset:3px; }
@media(max-width:760px) { .public-header { padding:18px; align-items:flex-start; flex-direction:column; gap:14px; } .public-header nav { gap:20px; } .public-content { padding:24px 18px; } .public-heading { align-items:flex-start; flex-direction:column; gap:16px; } h1 { font-size:27px; } .public-main { grid-template-columns:1fr; gap:8px; } .public-offer { padding:22px 0; } .public-specs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 18px; } .public-main-photo { aspect-ratio:4/3; } .public-price strong { font-size:26px; } .lightbox-stage { grid-template-columns:32px minmax(0,1fr) 32px; gap:4px; } .lightbox-stage .icon-tool { width:32px; height:38px; min-width:0; } #public-lightbox { padding:10px; } .lightbox-stage img { height:65dvh; } }
.social-icon { width:20px; height:20px; flex:0 0 20px; }
.public-brand-text { display:flex; flex-direction:column; gap:4px; min-width:0; }
.public-brand-text > span { font-size:14px; font-weight:500; }
.public-brand-text small { font-size:12px; font-weight:500; color:var(--muted); }
.public-professional { margin-top:24px; padding-top:22px; border-top:1px solid var(--line); scroll-margin-top:20px; }
.professional-heading { display:flex; align-items:center; gap:14px; min-width:0; }
.professional-heading > div { min-width:0; }
.professional-heading h2 { font-size:19px; line-height:1.35; margin:0 0 4px; overflow-wrap:anywhere; }
.professional-heading p { font-size:13px; color:var(--muted); margin:3px 0; overflow-wrap:anywhere; }
.professional-photo { width:56px; height:56px; object-fit:contain; flex:0 0 56px; }
.professional-email { display:inline-block; margin-top:14px; font-size:13px; overflow-wrap:anywhere; max-width:100%; }
.public-social-links { display:flex; flex-wrap:wrap; gap:12px; margin:18px 0; }
.social-link { display:inline-flex; align-items:center; gap:10px; padding:10px 12px; text-decoration:none; color:var(--ink); border:1px solid var(--line); border-radius:6px; min-height:42px; }
.social-link:hover { color:var(--teal); border-color:var(--teal); }
.social-link strong { font-size:13px; font-weight:650; }
.social-link small { display:block; margin-top:4px; color:var(--muted); font-size:12px; }
.professional-no-phone { color:var(--muted); font-size:13px; margin-top:18px; }
.public-whatsapp-action { margin-top:20px; }
@media(max-width:760px) { .has-whatsapp { padding-bottom:90px; } .has-whatsapp .public-whatsapp-action { position:fixed; bottom:0; left:0; right:0; padding:12px 18px calc(12px + env(safe-area-inset-bottom)); margin:0; background:#fff; border-top:1px solid var(--line); z-index:20; } .public-professional { padding-bottom:12px; } }
