/* Reference CSS is verbatim. These rules connect the production form and media.
   Layers: product stack 1–6; privacy 20; native dialogs use the browser top layer. */
:root { color-scheme: dark; }
[hidden] { display:none !important; }
.skip-link { position:fixed;top:8px;left:8px;transform:translateY(-150%);z-index:30;background:#fcf8ec;color:#17140e;padding:12px; }
.skip-link:focus { transform:none; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid #d9ad60;outline-offset:4px; }
body.body-modal-open { overflow:hidden; }
dialog:not([open]) { display:none; }
.fallback-backdrop { position:fixed;inset:0;z-index:35;background:#000c; }
.legacy-dialog #vip-popup[open] { display:block;z-index:40;top:50%;left:50%;right:auto;bottom:auto;margin:0;transform:translate(-50%,-50%); }
.demo-fallback[open] { display:block;z-index:40; }
dialog { color-scheme:light; }
#vip-popup { position:fixed;inset:0;margin:auto;width:calc(100% - 24px);max-width:512px;max-height:95dvh;padding:28px;border:0;border-radius:12px;background:var(--sheet,#fcf8ec);color:var(--sheet-foreground,#17140e);overflow:auto;box-shadow:0 24px 80px #0007; }
#vip-popup::backdrop,#product-demo::backdrop { background:#000c; }
#vip-popup h2 { margin:0 0 24px;padding-right:48px;font:900 30px/1.25 Outfit,sans-serif;letter-spacing:-.025em; }
.popup-close,.demo-close { position:absolute;top:16px;right:16px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #c8bdac;background:#eee1cb;color:#201b14;font:26px/1 Outfit,sans-serif;cursor:pointer; }
#capture-form { display:grid;grid-template-columns:108px minmax(0,1fr);column-gap:8px; }
#capture-form label { grid-column:1/-1;font-size:14px;font-weight:700;line-height:20px;margin:0 0 6px; }
#capture-form input:not([type=hidden]),#capture-form select { min-width:0;width:100%;height:54px;border:1px solid var(--sheet-border,#c7c0b3);border-radius:12px;background:var(--sheet-field,#fffdf5);color:var(--sheet-foreground,#332e26);padding:0 16px;font:400 16px/1.5 Manrope,sans-serif; }
#capture-form input::placeholder { color:#514a40;opacity:1; }
#capture-form #name,#capture-form #email { grid-column:1/-1; }
#capture-form label[for=phone] { grid-row:7; }
#capture-form #phone-country { grid-row:8;grid-column:1;padding-inline:12px;font-size:14px; }
#capture-form #phone { grid-row:8;grid-column:2; }
#capture-form .country-label { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
#capture-form .field-error { grid-column:1/-1;min-height:16px;font-size:13px;line-height:1.4;color:#a12b25; }
#capture-form .field-error:empty { min-height:16px; }
#capture-form #error-phone { grid-row:9; }
#capture-form::before { content:attr(data-dial);grid-row:8;grid-column:1;align-self:center;justify-self:center;pointer-events:none;z-index:1;color:#332e26;font-size:14px;font-weight:600;padding-right:12px; }
#capture-form #phone-country { color:transparent; }
#capture-form #phone-country option { color:#332e26; }
#capture-form[data-country=BR]::before { background:url(assets/br.png) no-repeat left center/22px 16px;padding-left:30px;padding-right:16px; }
#capture-form::after { content:'⌄';grid-row:8;grid-column:1;align-self:center;justify-self:end;margin-right:12px;color:var(--sheet-muted,#514a40);pointer-events:none;z-index:1; }
#capture-form input[aria-invalid=true] { border-color:#a12b25; }
.honeypot { position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden; }
#capture-form .button { grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin-top:8px;padding:20px 32px;border:0;border-radius:999px;background:var(--gradient-cta,linear-gradient(180deg,#659f30,#417b20));box-shadow:var(--shadow-cta,0 10px 28px #659f3033);color:#faf7ef;font:800 16px/24px Manrope,sans-serif;cursor:pointer; }
#capture-form .button svg { order:-1;width:20px;height:20px;flex:none; }
#capture-form .button:disabled { opacity:.6;cursor:wait; }
#capture-consent { grid-column:1/-1;margin-top:16px;font-size:12px;line-height:1.5;color:#514a40; }
.popup-terms { text-decoration:underline;text-underline-offset:2px; }
#form-status { grid-column:1/-1;font-size:13px;line-height:1.5;margin-top:10px; }
#form-status:empty { display:none; }
.form-footnote { grid-column:1/-1;text-align:center;font-size:12px;line-height:1.5;color:#514a40;margin-top:22px; }
.production-legal { max-width:1152px;margin:16px auto 0;font-size:12px;line-height:1.7; }
.legal-details summary { cursor:pointer; }
.footer-notices { text-align:left;padding-top:16px; }
.footer-notices p+p { margin-top:12px; }
.footer-links { display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;margin-top:10px; }
.footer-links a,.footer-control,.motion-toggle { text-decoration:underline;text-underline-offset:3px;cursor:pointer; }
#privacy-status { margin-top:8px; }
.privacy-notice { position:fixed;z-index:20;bottom:16px;left:16px;right:16px;max-width:1000px;margin:auto;display:flex;gap:24px;align-items:center;padding:20px 24px;border:1px solid #57462c;border-radius:16px;background:#15120ff5;color:#eee6da;box-shadow:0 8px 40px #0008;font-size:13px;line-height:1.5; }
.privacy-notice h2 { font:700 16px/1.4 Outfit,sans-serif;margin-bottom:6px; }
.privacy-notice a { text-decoration:underline; }
.privacy-actions { display:flex;flex:none;gap:8px; }
.privacy-actions button { border:1px solid #9a7a44;border-radius:99px;padding:12px;cursor:pointer;font-size:11px;font-weight:700; }
#privacy-accept { background:#d5ad67;color:#17140e; }
.product-reference .reference-media { position:relative; }
.product-demo-trigger { position:absolute;inset:0;width:100%;height:100%;cursor:pointer;border:0;border-radius:inherit;background:transparent; }
.product-demo-trigger:focus-visible { outline-offset:-5px; }
#product-demo { position:fixed;inset:0;margin:auto;width:calc(100% - 32px);max-width:920px;max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #5b4729;border-radius:24px;padding:28px;background:#13110e;color:#f3eddf; }
#product-demo h2 { font:700 28px/1.2 Outfit,sans-serif;color:#dbb66e;margin:0 42px 20px 0; }
#product-demo video { display:block;width:100%;height:auto;max-height:65dvh;object-fit:contain;background:#0d0a08; }
#demo-content { display:grid;gap:16px; }
#demo-content video+video { max-height:220px; }
#demo-status { margin-top:12px;font-size:13px; }
.testimonial-frame { display:block;width:100%;height:100%;border:0; }
.motion-paused .animate-marquee { animation-play-state:paused!important; }
.motion-paused .sticky { position:relative!important;top:0!important; }
@media(max-width:600px) {
 #vip-popup { padding:24px;border-radius:24px; }
 #vip-popup h2 { font-size:24px; }
 #capture-form { grid-template-columns:108px minmax(0,1fr); }
 #capture-form .button { font-size:14px;line-height:20px; }
 #capture-form #phone-country { font-size:12px;padding-inline:8px; }
 .privacy-notice { display:block;padding:16px;bottom:8px;left:8px;right:8px; }
 .privacy-actions { margin-top:12px;justify-content:flex-end; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
 .sticky { position:relative;top:0!important; }
}
