/* IMGENYA home · clear routes, real interfaces and deliberate decisions. */
.home-refresh { --home-navy:#071422; --home-line:#293f54; --home-soft:#c2cede; --home-paper:#f4f7fa; --home-ink:#14263b; --home-muted:#4b6075; --home-cyan:#50c9df; --home-copper:#e4b56a; }
.home-refresh .wrap { width:100%; max-width:1264px; padding-inline:32px; }
.home-refresh :is(h1,h2,h3,p,figure) { margin:0; }
.home-refresh :is(h2,h3) { font-family:var(--font-title); letter-spacing:-.035em; }
.home-refresh h2 { font-size:clamp(2rem,3.5vw,2.9rem); line-height:1.17; font-weight:800; }
.home-refresh h3 { font-size:1.3rem; line-height:1.35; font-weight:750; }
.home-refresh p { line-height:1.65; }
.home-refresh .home-kicker { margin-bottom:14px; color:var(--home-cyan); font:700 12px/1.4 var(--font-title); letter-spacing:.1em; text-transform:uppercase; }
.home-refresh .home-section { padding-block:80px; }
.home-refresh .home-section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:32px; }
.home-section-head>div { flex:1 1 55%; }
.home-section-head>p { max-width:440px; flex:1 1 40%; color:var(--home-soft); font-size:16px; }
.home-refresh .home-actions { display:flex; flex-wrap:wrap; gap:12px; }
.home-refresh .home-actions .btn { min-height:52px; font-size:14px; padding-inline:22px; }
.home-refresh :is(a,button,summary) { touch-action:manipulation; }
.home-refresh :is(a,button,summary):focus-visible { outline:3px solid #2995b3; outline-offset:5px; }
.home-refresh .home-text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; font-size:14px; font-weight:700; color:var(--home-cyan); }
.home-refresh .home-text-link:hover { text-decoration:underline; text-underline-offset:5px; }
.home-hero { position:relative; overflow:hidden; background:var(--home-navy); border-bottom:1px solid var(--home-line); padding-top:168px; }
.home-hero::before { content:""; pointer-events:none; position:absolute; inset:0; background-image:linear-gradient(#2140571a 1px,transparent 1px),linear-gradient(90deg,#2140571a 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(180deg,#000,transparent); }
.home-hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.03fr); align-items:center; gap:56px; padding-bottom:60px; }
.home-hero .eyebrow { margin-bottom:22px; font-size:12px; letter-spacing:.055em; line-height:1.6; }
.home-hero h1 { font:800 clamp(2.65rem,4.5vw,4.25rem)/1.1 var(--font-title); letter-spacing:-.055em; }
.home-hero h1>span { display:block; }
.home-hero h1 .home-hero-accent { color:var(--home-copper); margin-top:8px; }
.home-hero-desc { margin-top:24px!important; margin-bottom:28px!important; max-width:550px; color:var(--home-soft); font-size:17px; }
.home-hero-platforms { display:flex; flex-wrap:wrap; gap:24px; margin-top:26px; }
.home-hero-platforms>span { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--home-soft); }
.home-hero-platforms img { object-fit:contain; }
.home-product-preview { overflow:hidden; border:1px solid #3d5369; border-radius:16px; background:#0d1c30; box-shadow:0 24px 48px #00000026; }
.home-preview-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 20px; border-bottom:1px solid #3d5369; }
.home-preview-head>span { display:flex; align-items:center; gap:10px; }
.home-preview-head strong { font:700 14px/1.4 var(--font-title); }
.home-preview-head small { color:var(--home-soft); font-size:12px; }
.home-preview-image { display:block; width:100%; height:auto; object-fit:contain; background:#e8eef3; }
.home-product-preview figcaption { display:flex; gap:16px; align-items:start; justify-content:space-between; padding:20px; }
.home-product-preview figcaption>div { flex:1; }
.home-product-preview figcaption strong { display:block; color:#f5f8fc; font-size:14px; line-height:1.5; }
.home-product-preview figcaption p { color:var(--home-soft); font-size:12px; margin-top:5px; }
.home-product-preview figcaption>a { display:flex; gap:8px; align-items:center; min-height:44px; color:var(--home-cyan); font-size:12px; font-weight:700; flex:0 0 112px; }
.home-hero-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid var(--home-line); padding-block:22px; position:relative; }
.home-hero-bottom>span { display:flex; align-items:center; gap:10px; color:var(--home-soft); font-size:13px; }
.home-hero-bottom .eng-icon { color:var(--home-cyan); width:20px; height:20px; }
.home-needs { background:#0b1929; }
.home-needs-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.home-need { display:flex; flex-direction:column; gap:16px; background:#102338; padding:28px; border:1px solid #30445a; border-radius:14px; color:#f5f8fc; transition:border-color 180ms,background-color 180ms; }
.home-need:hover { border-color:#50c9df; background:#142b42; }
.home-need-icon { display:grid; width:48px; height:48px; align-items:center; justify-content:center; border-radius:12px; border:1px solid #36536b; color:var(--home-cyan); background:#152d43; }
.home-need-icon .eng-icon { width:25px; height:25px; }
.home-need p { color:var(--home-soft); font-size:15px; flex:1; }
.home-need .home-text-link { margin-top:4px; }
.home-refresh #catalogo-rapido { background:#f4f7fa; }
.home-catalog .home-kicker { color:#075d75; }
.home-catalog .quick-shop-head { gap:32px; }
.home-catalog .quick-shop-head>div { max-width:790px; }
.home-catalog .quick-shop-head .sec-title { font-size:clamp(2rem,3.5vw,2.9rem); }
.home-catalog .quick-shop-head .sec-sub { margin-top:16px; }
.home-catalog .quick-shop-catalog { min-height:48px; font-size:14px; }
.home-catalog .quick-product { box-shadow:none; border-radius:14px; gap:16px; }
.home-catalog .quick-product-featured { border-color:#b58743; }
.home-catalog .quick-product h3 { margin:0 0 10px; font-size:20px; line-height:1.35; }
.home-catalog .quick-product p { font-size:14px; line-height:1.65; }
.home-catalog .quick-product-top { margin:0; }
.home-catalog .quick-product-meta { font-size:12px; line-height:1.5; }
.home-catalog .home-catalog-art { height:112px; width:calc(100% + 44px); margin:-22px -22px 4px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; border-bottom:1px solid #d7e1e8; border-radius:13px 13px 0 0; background:#eaf1f5; }
.home-catalog .home-catalog-art img { max-height:55px; width:auto; object-fit:contain; }
.home-catalog .home-catalog-art .eng-icon { width:44px; height:44px; color:#075d75; }
.home-catalog .home-catalog-art span { font:700 10px/1.4 var(--font-title); color:#3c586e; letter-spacing:.05em; }
.home-catalog .home-art-pack { background:#faf4eb; }
.home-catalog .home-art-pack .eng-icon { color:#92520c; }
.home-catalog .home-art-custom { background:#f0f4f7; }
.home-product-detail { margin-top:auto; }
.home-product-detail a { color:#075d75; display:flex; align-items:center; gap:8px; min-height:44px; font-size:12px; font-weight:700; }
.home-product-detail a:hover { text-decoration:underline; text-underline-offset:4px; }
.home-catalog .quick-product-bottom { margin:0; flex-wrap:wrap; gap:12px; align-items:end; padding-top:16px; }
.home-catalog .quick-product-bottom>div { flex:1 0 auto; }
.home-catalog .quick-product-bottom small { font-size:12px; }
.home-catalog .quick-product-bottom strong { font-size:30px; line-height:1.2; }
.home-catalog .quick-buy { min-height:48px; font-size:12px; padding:12px; white-space:normal; }
.home-catalog .quick-product-custom>.btn { min-height:48px; margin-top:auto; font-size:13px; justify-content:space-between; }
.home-catalog .quick-tags { margin-block:0 12px; }
.home-catalog .quick-tags span { font-size:12px; }
.home-catalog-note { margin-top:26px; display:flex; gap:10px; align-items:start; padding:16px 20px; background:#eaf0f5; border-radius:10px; color:var(--home-muted); }
.home-catalog-note .eng-icon { flex:none; width:22px; height:22px; color:#075d75; margin-top:2px; }
.home-catalog-note p { font-size:14px; }
.home-software { background:#071422; }
.home-evidence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.home-evidence { border:1px solid #30445a; border-radius:14px; overflow:hidden; background:#102338; }
.home-evidence>a { display:block; background:#e8eef3; }
.home-evidence img { width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; display:block; }
.home-evidence>div { padding:28px; }
.home-evidence h3 { margin-block:10px 12px; }
.home-evidence p { color:var(--home-soft); font-size:15px; }
.home-evidence .home-text-link { margin-top:18px; }
.home-guide { background:#0d1c30; border-block:1px solid #293f54; }
.home-guide-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:80px; align-items:center; }
.home-guide-grid>div>p:not(.home-kicker) { color:var(--home-soft); font-size:16px; margin-block:20px 24px; }
.home-guide-grid>div>.btn { min-height:52px; font-size:13px; padding:14px 20px; white-space:normal; }
.home-decision-list { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:26px; }
.home-decision-list>li { display:grid; grid-template-columns:44px minmax(0,1fr); gap:18px; }
.home-decision-list>li>span { display:grid; place-items:center; width:44px; height:44px; border:1px solid #39546b; border-radius:12px; color:var(--home-cyan); font:700 14px var(--font-title); }
.home-decision-list h3 { font-size:17px; letter-spacing:-.02em; }
.home-decision-list p { color:var(--home-soft); font-size:14px; margin-top:6px; }
.home-learn { background:#071422; }
.home-learn-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.home-learn-card { display:grid; grid-template-columns:48px minmax(0,1fr) 20px; align-items:start; gap:18px; padding:28px; border:1px solid #30445a; border-radius:14px; color:#f5f8fc; background:#0d1c30; transition:border-color 180ms; }
.home-learn-card:hover { border-color:#50c9df; }
.home-learn-card>span { display:grid; width:48px; height:48px; place-items:center; background:#152d43; color:var(--home-cyan); border:1px solid #36536b; border-radius:12px; }
.home-learn-card p { color:var(--home-soft); font-size:14px; margin-top:10px; }
.home-learn-card>i { color:var(--home-cyan); padding-top:15px; }
.home-academic-link { display:inline-flex; align-items:center; gap:12px; margin-top:24px; min-height:44px; color:var(--home-soft); font-size:13px; }
.home-academic-link:hover { color:var(--home-cyan); text-decoration:underline; text-underline-offset:4px; }
.home-faq { background:#f4f7fa; color:var(--home-ink); color-scheme:light; }
.home-faq-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:72px; }
.home-faq .home-kicker { color:#075d75; }
.home-faq-grid>div:first-child>p:last-child { margin-top:20px; color:var(--home-muted); font-size:16px; }
.home-faq-list { border-top:1px solid #cdd8e2; }
.home-faq-item { border-bottom:1px solid #cdd8e2; }
.home-faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:72px; padding:20px 0; font:700 16px/1.5 var(--font-title); cursor:pointer; list-style:none; }
.home-faq-item summary::-webkit-details-marker { display:none; }
.home-faq-item summary>i { flex:none; font-size:14px; color:#075d75; transition:transform 180ms; }
.home-faq-item[open] summary>i { transform:rotate(45deg); }
.home-faq-item>div { padding:0 32px 24px 0; color:var(--home-muted); }
.home-faq-item p { font-size:15px; }
.home-final { padding-block:64px; background:#0d1c30; border-bottom:1px solid #30445a; }
.home-final-inner { display:flex; gap:40px; align-items:center; justify-content:space-between; }
.home-final h2 { font-size:clamp(1.8rem,3vw,2.4rem); }
.home-final p { margin-top:14px; color:var(--home-soft); font-size:16px; }
.home-final .home-actions { flex:none; }
@media (max-width:1199px) {
  .home-hero-grid { gap:32px; }
  .home-hero h1 { font-size:clamp(2.8rem,5vw,3.7rem); }
  .home-guide-grid,.home-faq-grid { gap:40px; }
  .home-catalog .quick-shop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-final-inner { align-items:start; }
  .home-final .home-actions { flex-basis:280px; }
}
@media (max-width:900px) {
  .home-hero { padding-top:118px; }
  .home-hero-grid { grid-template-columns:1fr; gap:32px; padding-bottom:40px; }
  .home-hero h1 { max-width:660px; font-size:clamp(2.6rem,6vw,3.8rem); }
  .home-hero-desc { max-width:660px; }
  .home-product-preview { max-width:700px; }
  .home-hero-bottom { flex-wrap:wrap; gap:16px 28px; }
  .home-refresh .home-section-head { align-items:start; gap:20px; flex-direction:column; }
  .home-section-head>p { max-width:650px; }
  .home-needs-grid { gap:14px; }
  .home-need { padding:20px; gap:14px; }
  .home-need h3 { font-size:18px; }
  .home-guide-grid,.home-faq-grid { grid-template-columns:1fr; }
  .home-guide-grid { gap:36px; }
  .home-faq-grid { gap:28px; }
  .home-learn-card { padding:22px; gap:14px; }
  .home-final-inner { flex-direction:column; gap:24px; }
  .home-final .home-actions { flex-basis:auto; }
}
@media (max-width:600px) {
  .home-refresh .home-section { padding-block:48px; }
  .home-refresh .wrap { padding-inline:20px; }
  .home-refresh h2 { font-size:30px; }
  .home-hero { padding-top:106px; }
  .home-hero .eyebrow { font-size:11px; margin-bottom:18px; gap:7px; }
  .home-hero h1 { font-size:clamp(2.1rem,8.4vw,2.7rem); line-height:1.13; }
  .home-hero-desc { font-size:16px; margin-top:20px!important; margin-bottom:24px!important; }
  .home-hero .home-actions { flex-direction:column; gap:10px; }
  .home-hero .home-actions>.btn { width:100%; justify-content:center; }
  .home-hero-platforms { margin-top:22px; gap:18px; }
  .home-hero-platforms>span { font-size:12px; }
  .home-preview-head { padding:14px; }
  .home-preview-head small { font-size:11px; max-width:90px; text-align:right; }
  .home-preview-head strong { font-size:13px; }
  .home-product-preview figcaption { flex-direction:column; padding:16px; gap:6px; }
  .home-product-preview figcaption>a { flex-basis:auto; min-height:44px; }
  .home-hero-bottom { flex-direction:column; gap:14px; padding-block:22px; }
  .home-hero-bottom>span { font-size:12px; }
  .home-needs-grid,.home-evidence-grid,.home-learn-grid { grid-template-columns:1fr; }
  .home-need { padding:24px; }
  .home-need h3 { font-size:20px; }
  .home-refresh .home-section-head { margin-bottom:24px; }
  .home-catalog .quick-shop-grid { grid-template-columns:1fr; gap:20px; }
  .home-catalog .quick-product { padding:20px; }
  .home-catalog .home-catalog-art { width:calc(100% + 40px); margin:-20px -20px 0; height:96px; }
  .home-catalog .quick-product h3 { font-size:22px; }
  .home-catalog .quick-product p { font-size:15px; }
  .home-catalog .quick-buy { font-size:14px; min-height:48px; padding:12px 16px; }
  .home-catalog .quick-product-bottom strong { font-size:32px; }
  .home-catalog-note { padding:16px; }
  .home-evidence>div { padding:24px; }
  .home-decision-list>li { gap:14px; }
  .home-learn-card { grid-template-columns:40px minmax(0,1fr) 16px; padding:20px; }
  .home-learn-card>span { width:40px; height:40px; }
  .home-learn-card h3 { font-size:20px; }
  .home-learn-card>i { font-size:13px; }
  .home-academic-link { align-items:start; font-size:13px; gap:12px; }
  .home-academic-link>i { margin-top:5px; }
  .home-faq-item summary { font-size:15px; gap:20px; }
  .home-faq-item>div { padding-right:0; }
  .home-final { padding-block:48px; }
  .home-final .home-actions { flex-direction:column; width:100%; }
  .home-final .home-actions>.btn { width:100%; justify-content:center; }
}
@media (prefers-reduced-motion:reduce) {
  .home-refresh *, .home-refresh *::before, .home-refresh *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; }
}
