
.aircooled-access{display:flex;justify-content:flex-end;margin:10px auto 2px}
.aircooled-trigger{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;max-width:100%;padding:9px 14px;cursor:pointer;font-size:11px;font-weight:700;line-height:1.35;font-family:inherit;letter-spacing:.06em;text-align:center}
.aircooled-trigger svg{flex:0 0 27px;width:27px;height:16px}
.aircooled-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:30px;border:1px solid var(--ink,#242424);color:var(--ink,#242424);background:var(--paper,#f7f5ef);overflow:auto;overscroll-behavior:contain}
.aircooled-dialog::backdrop{background:rgba(0,0,0,.5)}
.aircooled-dialog .aircooled-close{display:block;margin:0 0 14px auto;min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font:28px/1 Arial;cursor:pointer}
.aircooled-dialog .aircooled-label{margin:0 0 13px;font-size:11px;font-weight:700;line-height:1.5;font-family:inherit;letter-spacing:.1em}
.aircooled-dialog h2{margin:0 0 16px;font-size:28px;line-height:1.15;letter-spacing:0}
.aircooled-dialog p{margin:0 0 17px;font-size:15px;line-height:1.65}
.aircooled-dialog .aircooled-join{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;background:var(--ink,#242424);color:var(--paper,#f7f5ef);font-size:12px;font-weight:700;line-height:1.4;font-family:inherit;letter-spacing:.06em;text-align:center;text-decoration:none}
.aircooled-trigger:focus-visible,.aircooled-close:focus-visible,.aircooled-join:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:560px){.aircooled-dialog{padding:20px}.aircooled-dialog h2{font-size:25px}.aircooled-access{justify-content:center}.aircooled-trigger{font-size:10px}}
.aircooled-trigger{border:1.5px solid var(--ink);background:var(--yellow);color:var(--ink);font-family:"League Spartan",sans-serif;box-shadow:2px 2px 0 var(--ink)}.aircooled-dialog{border:2px solid var(--ink);background:var(--cream);font-family:inherit}.aircooled-dialog h2{font-family:"Bangers",sans-serif}.aircooled-dialog .aircooled-label{font-family:"League Spartan",sans-serif}.aircooled-dialog .aircooled-join{background:var(--red);color:var(--cream);font-family:"League Spartan",sans-serif}
/* Original Käfer identity: softly faded logo and mascot portrait. */
.aircooled-dialog{isolation:isolate;border-radius:4px;box-shadow:0 22px 70px rgba(0,0,0,.24)}
.aircooled-dialog::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url("assets/kafer-2027-logo-transparent.png") center 20%/94% auto no-repeat;opacity:.14;-webkit-mask-image:linear-gradient(to bottom,transparent 1%,#000 16%,rgba(0,0,0,.6) 46%,transparent 79%);mask-image:linear-gradient(to bottom,transparent 1%,#000 16%,rgba(0,0,0,.6) 46%,transparent 79%)}
.aircooled-dialog>*{position:relative;z-index:1}
.aircooled-mascot-head{display:block;flex:0 0 40px;width:40px;height:43px;background:url("assets/kafi-mascota-firma-oficial.webp") 57% 0/210% auto no-repeat;-webkit-mask-image:linear-gradient(#000 85%,transparent);mask-image:linear-gradient(#000 85%,transparent);pointer-events:none}
.aircooled-trigger{gap:9px;min-height:48px;padding:4px 14px 4px 7px;border-radius:3px;transition:background .18s,box-shadow .18s,transform .18s}
.aircooled-trigger .aircooled-mascot-head{flex-basis:35px;width:35px;height:40px}
.aircooled-dialog .aircooled-join{gap:12px;padding:5px 14px;min-height:58px;border-radius:3px;box-shadow:3px 3px 0 var(--ink,#242424);transition:transform .18s,box-shadow .18s}
.aircooled-join-arrow{margin-left:auto;font-size:22px;font-weight:400}
.aircooled-dialog .aircooled-join:hover{transform:translate(1px,1px);box-shadow:2px 2px 0 var(--ink,#242424)}
.aircooled-trigger:hover{transform:translateY(-1px)}
@media(max-width:560px){.aircooled-dialog::before{background-size:115% auto;background-position:center 17%;opacity:.12}.aircooled-dialog .aircooled-join{gap:9px;font-size:11px}.aircooled-join .aircooled-mascot-head{flex-basis:35px;width:35px;height:40px}.aircooled-join-arrow{font-size:18px}}
@media(prefers-reduced-motion:reduce){.aircooled-trigger,.aircooled-dialog .aircooled-join{transition:none}.aircooled-trigger:hover,.aircooled-dialog .aircooled-join:hover{transform:none}}

.aircooled-trigger{background:var(--cream);border-color:var(--red);color:var(--ink);box-shadow:2px 2px 0 var(--red)}.aircooled-trigger:hover{background:var(--yellow)}

/* Only the circular VW emblem from the original logo. */
.aircooled-dialog::before{display:none}
.aircooled-dialog .aircooled-vw-watermark{position:absolute;z-index:0;top:105px;left:50%;width:114%;max-width:560px;transform:translateX(-50%);opacity:.095;pointer-events:none;-webkit-mask-image:linear-gradient(#000 10%,rgba(0,0,0,.75) 60%,transparent 100%);mask-image:linear-gradient(#000 10%,rgba(0,0,0,.75) 60%,transparent 100%)}
.aircooled-vw-watermark svg{display:block;width:100%;height:auto}
@media(max-width:560px){.aircooled-dialog .aircooled-vw-watermark{top:115px;width:120%;opacity:.09}}

/* VW badge replaces the mascot on both community links. */
.aircooled-trigger .aircooled-vw-icon{display:block;flex:0 0 32px;width:32px;height:32px;filter:none}
.aircooled-dialog .aircooled-join .aircooled-vw-icon{display:block;flex:0 0 38px;width:38px;height:38px;filter:none}
@media(max-width:560px){.aircooled-trigger .aircooled-vw-icon{flex-basis:30px;width:30px;height:30px}.aircooled-dialog .aircooled-join .aircooled-vw-icon{flex-basis:35px;width:35px;height:35px}}

/* A quiet row of four classic Aircooled sketches beside the close control. */
.aircooled-dialog .aircooled-dialog-heading{display:flex;align-items:center;gap:12px;margin:0 0 18px;min-height:44px}
.aircooled-dialog-heading .aircooled-sketches{display:block;flex:1 1 auto;min-width:0;width:calc(100% - 56px);max-height:56px;color:var(--ink,#242424);opacity:.72}
.aircooled-dialog .aircooled-dialog-heading .aircooled-close{flex:0 0 44px;margin:0;padding:0;align-self:flex-start}
@media(max-width:560px){.aircooled-dialog .aircooled-dialog-heading{gap:8px;margin-bottom:16px}.aircooled-dialog-heading .aircooled-sketches{max-height:48px}}

/* Detailed graphite illustrations replace the rejected pictograms. */
.aircooled-dialog-heading .aircooled-sketch-strip{position:relative;display:block;flex:1 1 auto;min-width:0;aspect-ratio:5.4;overflow:hidden}
.aircooled-dialog-heading .aircooled-sketch-strip .aircooled-sketches{position:absolute;top:50%;left:0;display:block;width:100%;height:auto;max-height:none;transform:translateY(-50%);opacity:1;filter:none;margin:0;pointer-events:none}
