/* Card Clone — site styles. Tokens come from theme.json presets. */
:root{
  --cc-ink:var(--wp--preset--color--ink);--cc-slate:var(--wp--preset--color--slate);
  --cc-line:var(--wp--preset--color--line);--cc-mist:var(--wp--preset--color--mist);
  --cc-paper:var(--wp--preset--color--paper);--cc-signal:var(--wp--preset--color--signal);
  --cc-led:var(--wp--preset--color--led);--cc-led-dark:var(--wp--preset--color--led-dark);
  --cc-mono:var(--wp--preset--font-family--mono);
  --cc-radius:14px;
}
body{font-family:var(--cc-body-font,var(--wp--preset--font-family--display));-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:where(h1,h2,h3){text-wrap:balance}
p{text-wrap:pretty}
img{height:auto;max-width:100%}
:focus-visible{outline:3px solid var(--cc-signal);outline-offset:3px;border-radius:4px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks>main,.cc-main{flex:1}

/* ---------- Mono label: the "fob number" voice ---------- */
.cc-eyebrow,.cc-label,.cc-meta,.cc-crumbs,.cc-proof li strong{font-family:var(--cc-mono);letter-spacing:.04em}
.cc-eyebrow,.cc-label{font-size:var(--wp--preset--font-size--xs);text-transform:uppercase;color:var(--cc-slate);margin:0 0 .75rem}
.cc-eyebrow::before{content:"";display:inline-block;width:.55rem;height:.55rem;border-radius:50%;background:var(--cc-led);box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-led) 22%,transparent);margin-right:.6rem;vertical-align:.05em}

/* ---------- Buttons ---------- */
.cc-btn,.wp-block-button.cc-wa .wp-block-button__link{display:inline-flex;align-items:center;gap:.55rem;background:var(--cc-ink);color:var(--cc-paper);font-weight:650;text-decoration:none;border-radius:999px;padding:.8rem 1.35rem;line-height:1.2;border:0;cursor:pointer;font-size:1rem;transition:background .15s ease,transform .15s ease}
.cc-btn:hover,.wp-block-button.cc-wa .wp-block-button__link:hover{background:var(--cc-signal);color:var(--cc-paper)}
.cc-btn:active{transform:translateY(1px)}
.cc-btn--wa,.wp-block-button.cc-wa .wp-block-button__link{background:var(--cc-led-dark)}
.cc-btn--wa:hover{background:var(--cc-ink)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--cc-ink);border:1.5px solid var(--cc-line)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{border-color:var(--cc-ink);background:transparent;color:var(--cc-ink)}
.cc-led{width:.55rem;height:.55rem;border-radius:50%;background:#3EF39A;box-shadow:0 0 0 3px rgba(62,243,154,.25);flex:none}
.cc-inline-cta{margin:1.75rem 0}

/* ---------- Header ---------- */
.cc-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--cc-paper) 92%,transparent);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--cc-line)}
.cc-header__bar{min-height:68px;gap:1rem}
.cc-brand{gap:.6rem;align-items:center}
.cc-brand__mark{display:inline-flex;color:var(--cc-signal)}
.cc-brand__name{margin:0;font-weight:780;font-size:1.0625rem;font-stretch:112%;letter-spacing:-.01em}
.cc-brand__name a{color:var(--cc-ink);text-decoration:none}
.cc-nav{margin-left:auto;font-weight:560;font-size:.975rem}
.cc-nav a{text-decoration:none;color:var(--cc-ink)}
.cc-nav a:hover{color:var(--cc-signal)}
.cc-header__cta{padding:.6rem 1rem;font-size:.9375rem}
@media (max-width:600px){.cc-header__cta{display:none}}

/* ---------- Main spacing ---------- */
.cc-main{padding-top:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--60)}
.cc-main--home{padding-top:0}
.cc-page-title,.cc-article__title{margin-top:0;margin-bottom:var(--wp--preset--spacing--30)}

/* ---------- HERO (signature: RFID read-field rings) ---------- */
.cc-hero{position:relative;isolation:isolate;padding:clamp(3.5rem,9vw,7.5rem) 0 clamp(3rem,7vw,5.5rem);overflow:hidden}
.cc-hero::before{content:"";position:absolute;z-index:-1;inset:auto;right:-14vmax;top:50%;width:62vmax;height:62vmax;transform:translateY(-50%);border-radius:50%;
  background:repeating-radial-gradient(circle at center,transparent 0 46px,color-mix(in srgb,var(--cc-signal) 15%,transparent) 46px 47.5px);
  -webkit-mask:radial-gradient(circle at center,#000 18%,transparent 70%);mask:radial-gradient(circle at center,#000 18%,transparent 70%)}
.cc-hero::after{content:"";position:absolute;z-index:-1;right:calc(17vmax - 34px);top:50%;width:68px;height:68px;margin-top:-34px;border-radius:50%;background:radial-gradient(circle,var(--cc-signal) 0 30%,transparent 31%);opacity:.9}
.cc-hero>*{max-width:44rem}
body .cc-hero.cc-hero{padding-left:max(var(--wp--style--root--padding-left,1.25rem),calc((100% - 1160px)/2 + var(--wp--style--root--padding-left,0px)));padding-right:var(--wp--style--root--padding-right,1.25rem)}
body .cc-hero.is-layout-constrained>*{margin-left:0!important;margin-right:auto!important}
.cc-hero__title{font-size:var(--wp--preset--font-size--xxl);font-stretch:118%;font-weight:800;line-height:1.02;letter-spacing:-.03em;margin:.25rem 0 1.25rem}
.cc-hero__lede{font-size:var(--wp--preset--font-size--lg);line-height:1.5;color:var(--cc-slate);max-width:38rem}
.cc-hero__actions{margin-top:2rem;gap:.75rem}
.cc-proof{list-style:none;padding:0;margin:2.75rem 0 0;display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--cc-line);max-width:38rem}
.cc-proof li{flex:1 1 9rem;padding:1rem 1.25rem 0 0;color:var(--cc-slate);font-size:var(--wp--preset--font-size--sm);line-height:1.35}
.cc-proof li strong{display:block;color:var(--cc-ink);font-size:1.5rem;font-weight:500;letter-spacing:0;margin-bottom:.15rem}
@media (prefers-reduced-motion:no-preference){
  .cc-hero::before{animation:cc-pulse 6s ease-in-out infinite}
  @keyframes cc-pulse{0%,100%{opacity:.85}50%{opacity:1}}
}
@media (max-width:780px){.cc-hero::before{right:-40vmax;opacity:.55}.cc-hero::after{display:none}}

/* ---------- Sections ---------- */
.cc-section{padding:var(--wp--preset--spacing--50) 0;border-top:1px solid var(--cc-line)}
.cc-section>h2{margin-top:0;max-width:30ch}
.cc-section>p{max-width:42rem;color:var(--cc-slate)}

/* Systems — fob cards */
ul.cc-cards{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem}
ul.cc-cards li{position:relative;background:var(--cc-mist);border-radius:var(--cc-radius);padding:1.4rem 1.4rem 1.4rem 1.4rem;line-height:1.5;color:var(--cc-slate);font-size:var(--wp--preset--font-size--sm)}
ul.cc-cards li strong{display:block;color:var(--cc-ink);font-size:1.125rem;font-stretch:108%;margin-bottom:.35rem}
ul.cc-cards li a{text-decoration:none;color:inherit}
ul.cc-cards li a::after{content:"";position:absolute;inset:0;border-radius:var(--cc-radius)}
ul.cc-cards li:has(a):hover{background:#E3E9F1}
ul.cc-cards li:has(a)::after{content:"→";position:absolute;right:1.2rem;top:1.25rem;color:var(--cc-signal);font-weight:700}

/* Steps — real sequence, so numbered */
ol.cc-steplist{list-style:none;counter-reset:step;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.25rem}
ol.cc-steplist li{counter-increment:step;position:relative;padding-top:2.75rem;color:var(--cc-slate);font-size:var(--wp--preset--font-size--sm);line-height:1.55}
ol.cc-steplist li::before{content:counter(step,decimal-leading-zero);position:absolute;top:0;left:0;font-family:var(--cc-mono);font-size:.875rem;color:var(--cc-signal);padding:.2rem .5rem;border:1.5px solid currentColor;border-radius:6px}
ol.cc-steplist li strong{display:block;color:var(--cc-ink);font-size:1.0625rem;margin-bottom:.3rem}

/* Why — tick list */
ul.cc-ticks{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.25rem 2rem}
ul.cc-ticks li{position:relative;padding-left:2rem;color:var(--cc-slate);line-height:1.55}
ul.cc-ticks li::before{content:"";position:absolute;left:0;top:.35rem;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--cc-led) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
ul.cc-ticks li strong{color:var(--cc-ink)}

/* FAQ — details */
.cc-faq,.entry-content{--x:0}
details,.wp-block-details{border-bottom:1px solid var(--cc-line);padding:0}
details:first-of-type{border-top:1px solid var(--cc-line)}
details summary{cursor:pointer;list-style:none;padding:1.15rem 2.5rem 1.15rem 0;font-weight:650;position:relative;font-size:1.0625rem;line-height:1.4}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"";position:absolute;right:.25rem;top:50%;width:.7rem;height:.7rem;border-right:2px solid var(--cc-signal);border-bottom:2px solid var(--cc-signal);transform:translateY(-70%) rotate(45deg);transition:transform .2s ease}
details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
details>p,details>.wp-block-paragraph{margin:0 0 1.25rem;color:var(--cc-slate);max-width:44rem}
.cc-faq details{max-width:52rem}

/* Directory */
.cc-directory h3{font-family:var(--cc-mono);font-weight:500;font-size:var(--wp--preset--font-size--xs);text-transform:uppercase;letter-spacing:.06em;color:var(--cc-slate);margin-top:2rem}
ul.cc-dir{list-style:none;padding:0;columns:3 16rem;column-gap:2rem;font-size:var(--wp--preset--font-size--sm);color:var(--cc-slate)}
ul.cc-dir li{break-inside:avoid;padding:.45rem 0;border-bottom:1px dashed var(--cc-line)}

/* ---------- Article ---------- */
.cc-crumbs{gap:.5rem;font-size:var(--wp--preset--font-size--xs);color:var(--cc-slate);margin-bottom:1rem}
.cc-crumbs a{color:var(--cc-slate);text-decoration:none}
.cc-crumbs a:hover{color:var(--cc-signal)}
.cc-meta{gap:1rem;font-size:var(--wp--preset--font-size--xs);color:var(--cc-slate);margin-bottom:1.5rem}
.cc-meta p{margin:0}
.cc-article__img img{border-radius:var(--cc-radius);background:var(--cc-mist)}
.cc-article .wp-block-post-content h2{margin-top:2.75rem}
.cc-article .wp-block-post-content h3{margin-top:2rem}
.cc-figure{margin:2rem 0}
.cc-figure img{border-radius:var(--cc-radius);background:var(--cc-mist);margin-inline:auto;display:block;max-height:460px;width:auto}
.cc-answer:not(.cc-hero__lede){background:var(--cc-mist);border-left:4px solid var(--cc-signal);border-radius:0 var(--cc-radius) var(--cc-radius) 0;padding:1.1rem 1.35rem;margin:0 0 2rem}
.cc-answer:not(.cc-hero__lede) p{margin:0}
.cc-langs{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center;margin:3rem 0 0;padding-top:1.25rem;border-top:1px solid var(--cc-line);font-size:var(--wp--preset--font-size--sm)}
.cc-langs .cc-label{margin:0 .25rem 0 0}
.cc-endcta{margin:2.5rem 0 0;padding:1.75rem;border-radius:var(--cc-radius);background:var(--cc-ink);color:#C9D3E1}
.cc-endcta__title{color:#fff;font-weight:760;font-size:1.3rem;margin:0 0 .4rem}
.cc-endcta p{margin:0 0 1.25rem}

/* ---------- Guides grid ---------- */
.cc-listhead{margin-bottom:var(--wp--preset--spacing--40)}
.cc-lede{font-size:var(--wp--preset--font-size--lg);color:var(--cc-slate)}
.cc-card{border:1px solid var(--cc-line);border-radius:var(--cc-radius);overflow:hidden;background:var(--cc-paper);height:100%;transition:border-color .15s}
.cc-card:hover{border-color:var(--cc-signal)}
.cc-card .wp-block-post-featured-image{margin:0}
.cc-card .wp-block-post-featured-image img{background:var(--cc-mist);object-fit:contain!important}
.cc-card__title,.cc-card .wp-block-post-title{font-size:1.125rem;line-height:1.3;margin:1.1rem 1.25rem .5rem}
.cc-card .wp-block-post-title a{text-decoration:none;color:var(--cc-ink)}
.cc-card .wp-block-post-excerpt{margin:0 1.25rem 1.25rem;font-size:var(--wp--preset--font-size--sm);color:var(--cc-slate)}
.cc-card .wp-block-post-excerpt__more-text{display:none}

/* ---------- Contact ---------- */
dl.cc-nap{display:grid;gap:.1rem;margin:0}
dl.cc-nap>div{display:grid;grid-template-columns:6.5rem 1fr;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--cc-line)}
dl.cc-nap dt{font-family:var(--cc-mono);font-size:var(--wp--preset--font-size--xs);text-transform:uppercase;letter-spacing:.05em;color:var(--cc-slate);padding-top:.2rem}
dl.cc-nap dd{margin:0}
.cc-nap{margin:2rem 0}
.cc-form{display:grid;gap:1.1rem;margin:1.5rem 0 2.5rem;padding:1.75rem;border:1px solid var(--cc-line);border-radius:var(--cc-radius);background:var(--cc-paper)}
.cc-form__row{display:grid;gap:.4rem}
.cc-form__row--half{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1.1rem}
.cc-form__row--half>div{display:grid;gap:.4rem}
.cc-form label{font-weight:600;font-size:var(--wp--preset--font-size--sm)}
.cc-form input,.cc-form select,.cc-form textarea{font:inherit;font-size:1rem;padding:.75rem .9rem;border:1.5px solid var(--cc-line);border-radius:10px;background:#fff;color:var(--cc-ink);width:100%;box-sizing:border-box}
.cc-form input:focus,.cc-form select:focus,.cc-form textarea:focus{outline:none;border-color:var(--cc-signal);box-shadow:0 0 0 3px color-mix(in srgb,var(--cc-signal) 20%,transparent)}
.cc-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cc-form__fine{font-size:var(--wp--preset--font-size--xs);color:var(--cc-slate);margin:0}
.cc-form .cc-btn{justify-self:start}
.cc-notice{padding:1rem 1.25rem;border-radius:10px;margin:1rem 0}
.cc-notice--ok{background:#E7F8EF;color:#05603A}
.cc-notice--err{background:#FDECEC;color:#912018}

/* ---------- Footer ---------- */
.cc-footer{background:var(--cc-ink);color:#B6C2D3;padding-top:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--40);margin-top:0;font-size:var(--wp--preset--font-size--sm)}
.cc-footer a{color:#fff;text-decoration:none}
.cc-footer a:hover{color:#9DB8FF;text-decoration:underline}
.cc-footer .cc-label{color:#8090A6}
.cc-footer__grid{gap:2.5rem}
.cc-footer__name{font-weight:780;font-size:1.125rem;font-stretch:112%;margin:0 0 .75rem}
.cc-footer__name a{color:#fff}
.cc-footer__about{max-width:22rem}
.cc-footer dl.cc-nap>div{border-color:rgba(255,255,255,.1);grid-template-columns:5.5rem 1fr}
.cc-footer dl.cc-nap dt{color:#8090A6}
ul.cc-footer__links{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.cc-footer__legal{margin-top:var(--wp--preset--spacing--40);padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.1);font-size:var(--wp--preset--font-size--xs);color:#8090A6}
.cc-footer__legal p{margin:0}

/* ---------- Mobile sticky WhatsApp ---------- */
.cc-sticky{display:none}
@media (max-width:600px){
  .cc-sticky{display:flex;align-items:center;justify-content:center;gap:.6rem;position:fixed;left:.75rem;right:.75rem;bottom:.75rem;z-index:60;background:var(--cc-led-dark);color:#fff;font-weight:650;text-decoration:none;padding:.95rem 1rem;border-radius:999px;box-shadow:0 8px 24px rgba(14,23,38,.25)}
  body{padding-bottom:4.5rem}
}

/* 404 */
.cc-404 h1{margin-top:0}

/* Print */
@media print{.cc-header,.cc-footer,.cc-sticky,.cc-endcta{display:none}}
