/* Hallmark · shape: hardware index · genre: modern-minimal · theme: brand · redesign: full
 * paper: #101416 · accent: #b6ee87 · display: Manrope · body: Manrope · hero: custom · nav: product index with disclosures · footer: enquiry desk · signature: actual IQDuino boards and model specifications
 * axes: dark/geometric-sans/chromatic-green · posture: restrained · v2.0.0
 * Theme Name: IQduino
 * Author: IQLab
 * Version: 2.0.1
 */
/* Hallmark · pre-emit critique: P4 H4 E3 S4 R4 V4 · weakest: E, long technical pages need accessible disclosures and model details */
/* Hallmark · waive 44c · product controls sit beside the image and hardware index leads with a separate title band · IQDuino selection controls count as hero content; no artificial full-screen padding */
/* Hallmark · waive 77 · long-document supplementary reference and expandable platform description · IQDuino preserves technical paragraphs without adding decorative imagery to fill a screen */
/* Hallmark · waive 78 · Long Document reference headings inside native disclosures · IQDuino port documentation uses compact titles so readers can scan multiple sections */
/* Hallmark · waive 49b · real RF documentation link can wrap to two readable lines · IQDuino retains complete manufacturer reference labels rather than clipping them */
/* Hallmark · answered F4 · variant buttons indicate selected hardware, not competing calls to action */
/* Hallmark · reworded "Вы пишете код. Платформа уже готова." to "Своя прошивка. Готовая плата." · 19 names generic opener */
/* Hallmark · reworded "От идеи — к работающему устройству." to "Подберём платформу под вашу задачу" · 19 names generic opener */
/* Hallmark · copy: verbatim · reworded "Ваш проект. Наше железо." to "Контроллеры и RFID для ваших устройств" · 19 names generic marketing copy */
/* Hallmark · waive 83 · gallery of the manufacturer's own hardware · every supplied IQDuino product photo is required by the owner */
@import url("./tokens.css");
@import url("./base.css");
@font-face{font-family:Manrope;src:url(assets/fonts/Manrope.woff2) format('woff2');font-weight:200 800;font-display:swap}
html{color-scheme:dark;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-lg));overflow-x:clip}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.65;overflow-x:clip}*{box-sizing:border-box}a{color:inherit;text-decoration:none}a:hover{color:var(--color-accent)}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:var(--color-transparent)}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure{margin:0}p{margin:0 0 var(--space-lg);color:var(--color-muted)}h1,h2,h3{margin:0 0 var(--space-lg);font-family:var(--font-display);font-weight:500;letter-spacing:var(--tracking-display);line-height:1.12;overflow-wrap:break-word;min-width:0;text-wrap:balance;color:var(--color-ink)}h1{font-size:var(--text-display-s)}h2{font-size:var(--text-section)}h3{font-size:var(--text-title)}.wrap{width:calc(100% - var(--gutter)*2);max-width:var(--container);margin-inline:auto}.section{padding-block:var(--section-gap)}.skip{position:fixed;top:calc(-1 * var(--space-4xl));left:var(--space-md);z-index:var(--z-toast);background:var(--color-accent);color:var(--color-accent-ink);padding:var(--space-md)}.skip:focus-visible{top:var(--space-md)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}button:disabled,[aria-disabled=true]{opacity:.55;cursor:not-allowed}button:active,.button:active{transform:translateY(1px)}::selection{background:var(--color-accent);color:var(--color-accent-ink)}input,textarea{caret-color:var(--color-accent)}html{scrollbar-color:var(--color-muted) var(--color-paper)}
.top{position:sticky;top:0;z-index:var(--z-sticky-nav);background:var(--color-paper);border-bottom:1px solid var(--color-rule)}.navrow{min-height:var(--header-height);display:flex;gap:var(--space-lg);align-items:center}.brand{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.brand-symbol{width:var(--brand-width);height:var(--brand-height);object-fit:contain}.brand b{font-size:var(--text-xl);font-weight:800;letter-spacing:var(--tracking-display)}.navrow>nav{display:flex;gap:var(--space-lg);align-items:center;margin-left:auto;font-size:var(--text-sm)}.navrow>nav>a,.nav-parent>a{display:flex;align-items:center;min-height:44px;white-space:nowrap}.nav-group{position:relative}.nav-parent{display:flex;align-items:center}.submenu-toggle{display:flex;align-items:center;justify-content:center;min-width:32px;min-height:44px;border:0;background:var(--color-transparent);color:var(--color-accent);padding:0}.submenu-toggle span{transition:transform var(--dur-micro)}.submenu-toggle[aria-expanded=true] span{transform:rotate(180deg)}.submenu{position:absolute;top:100%;left:calc(-1 * var(--space-md));min-width:320px;background:var(--color-paper-2);border:1px solid var(--color-rule);padding:var(--space-xs);z-index:var(--z-dropdown)}.submenu[hidden]{display:none}.submenu a{display:block;padding:var(--space-md);border-bottom:1px solid var(--color-rule)}.submenu a:last-child{border:0}.submenu a:hover{background:var(--color-paper-3)}.submenu strong{display:block;font-size:var(--text-md);font-weight:500}.submenu small{display:block;color:var(--color-muted);font-size:var(--text-xs);margin-top:var(--space-2xs)}.languages{display:flex;align-items:center;gap:var(--space-2xs);font-size:var(--text-xs)}.languages a{display:grid;place-items:center;min-width:32px;min-height:44px}.languages .current{color:var(--color-accent);text-decoration:underline;text-underline-offset:var(--space-xs)}.navcontact{font-size:var(--text-sm);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-accent)}.menu-toggle{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);font-size:var(--text-sm);font-weight:700;border:1px solid var(--color-accent);border-radius:var(--radius-card);white-space:nowrap}.button:hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-accent-ink)}.actions{display:flex;gap:var(--space-lg);flex-wrap:wrap;align-items:center}.textlink,.cardlink{font-size:var(--text-sm);text-decoration:underline;text-underline-offset:var(--space-xs);color:var(--color-ink)}.textlink{display:inline-flex;align-items:center;min-height:44px}.hero{padding-block:var(--space-2xl)}.herohead{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--gap-columns);align-items:start;margin-bottom:var(--space-xl)}.herohead h1{max-width:18ch;margin-bottom:0}.herohead p{max-width:52ch}.hardware-stage{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:var(--gap-columns)}.heroimage{background:var(--color-paper-2);position:relative}.heroimage img{width:100%;height:var(--hero-image-height);object-fit:contain}.heroimage figcaption{display:flex;justify-content:space-between;gap:var(--space-md);font-size:var(--text-xs);color:var(--color-muted);padding:var(--space-sm) var(--space-lg);border-top:1px solid var(--color-rule)}.family-index{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--color-rule)}.family-index>a{padding:var(--space-lg) 0;border-bottom:1px solid var(--color-rule);display:flex;flex-direction:column;justify-content:center}.family-index h2{font-size:var(--text-2xl);margin-bottom:var(--space-sm)}.family-index p{max-width:52ch;margin-bottom:var(--space-sm);font-size:var(--text-md)}.family-index span{color:var(--color-accent);font-size:var(--text-xs)}.family-index a:hover h2{color:var(--color-accent)}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:var(--gap-columns);margin-bottom:var(--space-xl)}.sectionhead h2{margin:0}.sectionhead>a{font-size:var(--text-sm);min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:var(--space-xs)}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-columns)}.card{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--color-rule);padding-top:var(--space-lg)}.card img{width:100%;height:280px;object-fit:contain;background:var(--color-paper-2);margin-bottom:var(--space-lg)}.card h3{margin-bottom:var(--space-sm)}.card p{font-size:var(--text-sm);max-width:58ch}.card dl{margin:0 0 var(--space-lg)}.card dl>div{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:var(--space-md);padding-block:var(--space-xs);border-top:1px solid var(--color-rule);font-size:var(--text-sm)}dt{color:var(--color-muted)}dd{margin:0;color:var(--color-ink);overflow-wrap:break-word}.cardlink{display:inline-flex;align-items:center;min-height:44px}.reader-section{background:var(--color-paper-2)}.reader-section .card img{background:var(--color-paper)}.card:hover h3{color:var(--color-accent)}.platform-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-columns)}.platform-section p{max-width:56ch}.platform-facts>div{padding-block:var(--space-lg);border-top:1px solid var(--color-rule)}.platform-facts h3{font-size:var(--text-lg);margin-bottom:var(--space-xs)}.platform-facts p{margin:0}.home-document{padding-top:0}.home-document details{border-top:1px solid var(--color-rule);padding-top:var(--space-lg)}.home-document h2{font-size:var(--text-2xl)}summary{cursor:pointer}summary::marker{color:var(--color-accent)}summary h2{display:inline}.home-document .prose{margin-top:var(--space-lg);max-width:70ch}
.pagehero{padding-block:var(--space-2xl);display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap-columns)}.pagehero.producthero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.crumb{display:inline-block;color:var(--color-muted);font-size:var(--text-sm);margin-bottom:var(--space-xl)}.lead{font-size:var(--text-md);max-width:62ch}.pagehero h1{max-width:24ch}.productimage img{width:100%;height:420px;object-fit:contain;background:var(--color-paper-2)}.variant-control{margin-block:var(--space-lg)}.field-label{display:block;font-size:var(--text-sm);color:var(--color-muted);margin-bottom:var(--space-xs)}.variant-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.variant-list button{min-height:44px;padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);background:var(--color-paper-2);border:1px solid var(--color-field-edge);color:var(--color-ink);border-radius:var(--radius-card);white-space:nowrap}.variant-list button:hover{background:var(--color-paper-3)}.variant-list button[aria-pressed=true]{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.model-detail{margin:var(--space-md) 0 var(--space-2xs);color:var(--color-ink);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.model-hint{font-size:var(--text-xs);margin-bottom:0}.quickspec{border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding-block:var(--space-xl)}.quickspec h2{font-size:var(--text-lg);margin-bottom:var(--space-lg)}.quickspec dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap-columns);margin:0}.quickspec dt{font-size:var(--text-sm);margin-bottom:var(--space-xs)}.quickspec dd{font-size:var(--text-md)}.comparison{margin-top:var(--space-2xl)}.comparison h2{margin-bottom:var(--space-xl)}table{width:100%;border-collapse:collapse;text-align:left;font-size:var(--text-sm)}td,th{padding:var(--space-md);vertical-align:top;border-bottom:1px solid var(--color-rule);overflow-wrap:break-word}th{font-weight:500;color:var(--color-ink)}thead th{color:var(--color-muted);font-size:var(--text-sm)}.comparison th a{text-decoration:underline;text-underline-offset:var(--space-2xs)}.article{display:grid;grid-template-columns:240px minmax(0,1fr);gap:var(--gap-columns)}.toc{align-self:start;position:sticky;top:calc(var(--header-height) + var(--space-lg))}.toc>span{display:block;color:var(--color-ink);font-size:var(--text-sm);margin-bottom:var(--space-lg)}.toc nav{display:grid;gap:var(--space-sm);font-size:var(--text-sm);max-height:calc(100dvh - var(--header-height) - var(--space-3xl));overflow-y:auto;padding:var(--space-2xs)}.toc a{color:var(--color-muted)}.toc a:hover{color:var(--color-accent)}.prose{min-width:0}.prose p,.prose li{max-width:70ch}.prose p{font-size:var(--text-md);line-height:1.75}.prose li{margin-bottom:var(--space-sm);color:var(--color-muted)}.prose h2{font-size:var(--text-2xl);margin-block:var(--space-xl) var(--space-lg)}.prose h3{font-size:var(--text-xl);margin-top:var(--space-xl)}.prose a{text-decoration:underline;text-underline-offset:var(--space-2xs)}.prose figure{margin-block:var(--space-lg)}.prose figure>img{width:100%;height:auto}.prose figcaption{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-xs)}.prose .wp-block-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap-columns)}.prose .wp-block-gallery figure{margin:0}.prose .wp-block-gallery img{aspect-ratio:1.4;object-fit:contain;background:var(--color-paper-2)}.docsection{border-top:1px solid var(--color-rule);padding-block:var(--space-lg)}.docsection summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg)}.docsection summary::-webkit-details-marker{display:none}.docsection summary::after{content:'+';color:var(--color-accent);font-size:var(--text-xl);flex-shrink:0}.docsection[open] summary::after{content:'−'}.docsection summary h2{margin:0;font-size:var(--text-xl);line-height:1.35}.docbody{padding-top:var(--space-lg)}.docbody>:last-child{margin-bottom:0}.photozoom{padding:0;border:0;display:block;background:var(--color-transparent);width:100%;cursor:zoom-in}.iq-photo-dialog{position:fixed;inset:0;margin:auto;height:fit-content;max-width:95%;max-height:95dvh;padding:var(--space-xl) var(--space-lg) var(--space-lg);background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-field-edge)}.iq-photo-dialog::backdrop{background:var(--color-backdrop)}.iq-photo-dialog img{max-height:80dvh;max-width:100%;object-fit:contain}.iq-photo-dialog button{position:absolute;right:var(--space-xs);top:var(--space-xs);min-width:44px;min-height:44px;font-size:var(--text-xl);color:var(--color-ink);background:var(--color-paper-2);border:0}
.contact{background:var(--color-paper-2)}.contactgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-columns)}.contact h2{max-width:18ch}.contact p{max-width:55ch}.email{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-lg);color:var(--color-accent);margin-bottom:var(--space-md)}.contact label{display:block;font-size:var(--text-sm);margin-bottom:var(--space-xs)}.contact input,.contact textarea{width:100%;display:block;min-height:48px;background:var(--color-paper);color:var(--color-ink);border:1px solid var(--color-field-edge);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-card);outline:2px solid var(--color-transparent);outline-offset:2px;margin-bottom:var(--space-lg)}.contact input:focus-visible,.contact textarea:focus-visible{outline-color:var(--color-focus)}.contact input:user-invalid,.contact textarea:user-invalid{border-color:var(--color-error)}.contact textarea{min-height:144px;resize:vertical}.contact button{min-height:48px}.contact button[aria-busy=true]{cursor:progress}.form-note{font-size:var(--text-sm);min-height:1lh}.hp{position:absolute;inset:auto;width:1px;height:1px;overflow:clip;clip-path:inset(50%);white-space:nowrap}.hp input{min-height:0;margin:0;padding:0}.success{border-top:1px solid var(--color-accent);padding-block:var(--space-lg);color:var(--color-accent)}.footer{padding-block:var(--space-xl);border-top:1px solid var(--color-rule);font-size:var(--text-sm);color:var(--color-muted)}.footer .wrap{display:flex;align-items:center;gap:var(--space-lg);flex-wrap:wrap}.footer small{margin-left:auto;font-size:var(--text-xs)}
@media(max-width:1200px){.navrow{gap:var(--space-md)}.navrow>nav{gap:var(--space-md)}.navcontact{display:none}.brand b{font-size:var(--text-lg)}}
@media(max-width:1000px){:root{--header-height:80px}.menu-toggle{display:grid;place-items:center;min-width:44px;min-height:44px;margin-left:auto;background:var(--color-paper-2);border:1px solid var(--color-field-edge);color:var(--color-accent);order:3}.navrow>nav{display:none;position:absolute;top:100%;left:0;width:100%;background:var(--color-paper);padding:var(--space-lg) var(--gutter);border-bottom:1px solid var(--color-rule);max-height:calc(100dvh - var(--header-height));overflow:auto}.navrow>nav.open{display:grid;gap:var(--space-sm)}.nav-parent{justify-content:space-between}.nav-parent>a{flex:1}.submenu-toggle{min-width:44px}.submenu{position:static;min-width:0;padding:var(--space-xs);margin-bottom:var(--space-md)}.languages{margin-left:auto}.article{grid-template-columns:200px minmax(0,1fr)}.herohead h1{font-size:var(--text-3xl)}.family-index h2{font-size:var(--text-xl)}}
@media(max-width:760px){:root{--gutter:20px;--header-height:120px;--brand-width:48px;--brand-height:44px;--hero-image-height:280px;--section-gap:64px}.navrow{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:0;min-height:var(--header-height);padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.brand{grid-column:1;grid-row:1}.menu-toggle{grid-column:2;grid-row:1;order:initial}.languages{grid-column:1 / -1;grid-row:2;margin:0;justify-content:flex-start;gap:var(--space-xs)}.languages a{min-width:44px;min-height:36px;font-size:var(--text-sm)}.hero{padding-block:var(--space-xl)}.herohead,.hardware-stage,.platform-section,.pagehero.producthero,.contactgrid{grid-template-columns:minmax(0,1fr)}.herohead{margin-bottom:var(--space-lg);gap:var(--space-lg)}.herohead h1{font-size:var(--text-3xl);max-width:16ch}.herohead p{margin-bottom:var(--space-md)}.actions{gap:var(--space-sm) var(--space-lg)}.actions .button{width:100%}.hardware-stage{gap:var(--space-lg)}.heroimage{order:0}.heroimage img{height:var(--hero-image-height)}.family-index h2{font-size:var(--text-2xl)}.family-index>a{padding-block:var(--space-lg)}.sectionhead{display:block;margin-bottom:var(--space-lg)}.sectionhead h2{margin-bottom:var(--space-sm)}.cards{grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}.card img{height:240px}.card dl>div{grid-template-columns:minmax(0,.65fr) minmax(0,1fr)}.platform-section{gap:var(--space-xl)}.pagehero{padding-block:var(--space-xl)}.pagehero h1{font-size:var(--text-3xl)}.crumb{margin-bottom:var(--space-lg)}.productimage img{height:280px}.quickspec dl{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.quickspec dl>div{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:var(--space-md)}.quickspec dt{margin:0}.article{display:block}.toc{position:static;margin-bottom:var(--space-xl)}.toc nav{max-height:240px;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xs)}.toc a{display:flex;align-items:center;min-height:44px}.prose td,.prose th{padding:var(--space-sm);font-size:var(--text-sm)}.prose table{table-layout:fixed}.prose .wp-block-gallery{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.docsection summary h2{font-size:var(--text-lg)}.comparison thead{display:none}.comparison tr{display:block;padding-block:var(--space-md);border-bottom:1px solid var(--color-rule)}.comparison th,.comparison td{display:block;padding:var(--space-xs) 0;border:0}.comparison td::before{content:attr(data-label);display:block;color:var(--color-muted);font-size:var(--text-xs)}.contact h2{max-width:20ch}.contactgrid{gap:var(--space-xl)}.contact button{width:100%}.footer .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}.footer small{margin:0}.home-document{padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.pagehero:not(.producthero)+.section{padding-top:var(--space-xl)}.platform-facts table th,.platform-facts table td{padding:var(--space-lg) 0}.platform-facts table td{color:var(--color-ink)}.reader-section,.heroimage{color:var(--color-ink)}@media(max-width:1100px){.article{grid-template-columns:minmax(0,1fr)}.toc{position:static;margin-bottom:var(--space-xl)}.toc nav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.toc a{min-height:44px;display:flex;align-items:center}}@media(max-width:760px){.toc nav{grid-template-columns:minmax(0,1fr);max-height:240px}.pagehero:not(.producthero)+.section{padding-top:var(--space-lg)}}

.herohead .hero-slogan{color:var(--color-accent);font-size:var(--text-lg);line-height:1.4;margin-bottom:var(--space-md)}

.arduino-section{padding-block:var(--space-xl);border-block:1px solid var(--color-rule)}.arduino-section h2,.card .arduino-label{color:var(--color-accent)}.arduino-section p{max-width:75ch}.arduino-section .arduino-note{font-size:var(--text-sm);margin-bottom:0}.card .arduino-label{font-size:var(--text-sm);margin-top:var(--space-md)}
