/** Shopify CDN: Minification failed

Line 12:33 Expected identifier but found "."
Line 113:72 Unterminated string token
Line 193:141 Unterminated string token
Line 208:94 Unterminated string token
Line 212:54 Unterminated string token
Line 228:50 Unterminated string token

**/

COSì è COME SI VEDE SUL MOBILE...
dobbiamo siewtemarlo perchè non è bello 

cosa proponi?

Sì, così su mobile è troppo lungo e troppo “a blocchi”. Il problema non sono i singoli elementi: è che sembrano cinque sezioni diverse messe una sotto l’altra.

La cosa che cambierei soprattutto è il prodotto in evidenza: sopra l’immagine, come avevamo provato, non funziona. Spezza completamente hero e visual.

Io farei questa struttura mobile:

Titolo + descrizione

CTA

Immagine grande del prodotto

dentro lo stesso visual mettiamo la card “Regime Ipoallergenico”

sovrapposta in basso all’immagine, tipo floating card

molto più piccola di quella attuale

Servizi

due card più compatte

icona a sinistra

titolo + massimo 2 righe

niente altezza enorme

Trust

niente mega-card verticale con quattro righe

farei una griglia 2 × 2 compatta.

Hero
Adesso hai:

titolo
testo
bottone
enorme card prodotto
immagine

Io invece farei visivamente:

Cane e Gatto
Cucciaio

Consapevolezza alimentare
al primo posto: per loro!

SCOPRI LO SHOP →

poi subito:

┌─────────────────────────────┐
│                             │
│        IMMAGINE PET         │
│        / PRODOTTO           │
│                             │
│   ┌─────────────────────┐   │
│   │ TRA I PIÙ SCELTI    │   │
│   │ Regime              │   │
│   │ Ipoallergenico      │   │
│   │ €45     Scopri →    │   │
│   └─────────────────────┘   │
└─────────────────────────────┘
Questa secondo me è molto più forte.

La card potrebbe essere larga circa 85-90% del visual, alta appena quanto serve, con:

TRA I PIÙ SCELTI
Regime Ipoallergenico
€45,00 · Scopri →

Non metterei su mobile il titolo completo:

Regime Ipoallergenico – Croccantini per Cani

perché è troppo lungo. Se prendiamo automaticamente il titolo Shopify, possiamo limitarlo visivamente oppure impostare un titolo breve dedicato alla hero.

Immagine
Anche l'immagine adesso mi sembra un po' sacrificata perché la card la spinge verso il basso.

La farei più protagonista:

visual alto circa 360–390px

prodotto leggermente più grande

blob dietro mantenuto

card floating nella zona inferiore

piccolo overlap della card sul bordo inferiore del visual

In pratica dovrebbe sembrare un'unica composizione, non card + immagine.

Servizi
Qui siamo già più vicini, ma li stringerei parecchio.

Adesso:

card molto alte

tanto padding

testo abbastanza lungo

icone grandi

Farei circa:

┌────────────────────────────┐
│  ◯   CONSULENZA            │
│      PERSONALIZZATA        │
│      Ti aiutiamo a trovare │
│      la scelta giusta.  →  │
└────────────────────────────┘
e subito sotto quella arancione.

Altezza circa 125-140 px, non quasi 180.

Inoltre metterei anche la freccia/link su mobile. Al momento sembrano più box informativi che elementi cliccabili.

Trust bar
Questa è la parte che cambierei maggiormente dopo il prodotto.

Adesso occupa quasi uno schermo intero.

Non serve.

Farei:

┌─────────────────┬─────────────────┐
│ ♡ Pagamenti     │ ♡ Assistenza    │
│   sicuri        │   dedicata      │
├─────────────────┼─────────────────┤
│ ♡ Qualità       │ ♡ Consegna      │
│   selezionata   │   locale        │
└─────────────────┴─────────────────┘
E su mobile toglierei completamente i sottotesti:

Transazioni protette

Sempre al tuo fianco

Solo prodotti scelti

Servizio sul territorio

Sono informazioni ridondanti rispetto al titolo.

Così la trust passa dagli attuali ~380 px di altezza a circa 170–190 px.

Quindi il risultato finale
La hero mobile diventerebbe molto più compatta:

Titolo
↓
Descrizione
↓
CTA
↓
Visual prodotto + floating product card
↓
2 servizi compatti
↓
Trust 2×2

E soprattutto sparisce quella sensazione attuale di:

card → card → immagine → card → card → card enorme

che è ciò che la fa sembrare poco raffinata.

Io sceglierei senza dubbio prodotto sovrapposto all'immagine + trust 2×2. È la modifica che secondo me fa fare il salto maggiore al mobile.


ok dimmi cosa ti serve

Mi servono solo 2 file, così te lo sistemo davvero bene senza andare a tentativi:

cg-hero.css attuale

è la cosa più importante, perché tutto quello che vediamo nello screenshot dipende soprattutto dalle regole responsive lì dentro.

cg-hero.liquid attualmente presente nel tema

solo se dopo il file che ti ho dato hai fatto altre modifiche.

Se è ancora esattamente l'ultima versione che abbiamo preparato, non serve che me lo rimandi.

Con questi posso fare direttamente:

prodotto in evidenza floating sull'immagine su mobile;

immagine più grande e proporzionata;

hero più compatta;

servizi più bassi e ordinati;

Trust bar 2×2;

sottotesti trust nascosti solo su mobile;

spaziature mobile completamente riviste;

tablet sistemato separatamente dal desktop;

mantenimento dell'attuale desktop senza sballarlo.

Mandami quindi cg-hero.css e, se è cambiato, anche cg-hero.liquid. Poi ti restituisco i file completi pronti da sostituire.



Pasted code(10).css
File

Pasted text (2)(10).txt
Documento
non modifichiamo epr ora desktop

Perfetto. Ho modificato solo lo smartphone ≤749 px.

Desktop resta identico e anche il tablet 750–989px mantiene il comportamento attuale. Nel CSS originale il mobile partiva proprio dal breakpoint max-width: 749px, quindi ho sostituito soltanto quella parte. 


Sul mobile ora hai:

titolo leggermente più compatto

CTA invariata ma con spaziature migliori

immagine prodotto più protagonista

Prodotto in evidenza floating nella parte bassa dell’immagine, non più come enorme card separata sopra

titolo prodotto massimo 2 righe

prezzo compatto a destra

servizi più bassi e compatti

icone servizi ridotte

meno padding inutile

Trust bar 2×2

sottotesti della trust nascosti su smartphone

trust molto più bassa rispetto a prima

Ho dovuto modificare anche una piccola parte del Liquid perché le regole responsive del prodotto erano inserite direttamente nello <style> con !important; altrimenti avrebbero continuato a vincere sul nuovo CSS. 


Lo schema resta valido: 40/40 settings.

Scarica il nuovo cg-hero.css

Scarica il nuovo cg-hero.liquid

Io adesso li proverei così senza toccare altro: dopo che mi mandi lo screenshot mobile aggiornato, facciamo il secondo passaggio solo su proporzioni e dettagli estetici. 


cg-hero.css
Codice


Libreria
/
cg-hero.css


/* ==========================================================
   CG COMMERCE HERO
   ========================================================== */

.cg-commerce-hero {
  display: block;
  width: 100%;

  padding:
    var(--cg-hero-padding-top)
    var(--cg-container-gutter, 24px)
    var(--cg-hero-padding-bottom);

  overflow: hidden;

  background: var(--cg-hero-bg);
  color: var(--cg-hero-text);

  font-family: var(--cg-font-ui, inherit);
}

.cg-commerce-hero *,
.cg-commerce-hero *::before,
.cg-commerce-hero *::after {
  box-sizing: border-box;
}

.cg-commerce-hero svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cg-commerce-hero__inner {
  width: min(100%, var(--cg-hero-max-width));
  margin-inline: auto;
}


/* ==========================================================
   TOP FEATURES
   ========================================================== */

.cg-commerce-hero__features {
  display: flex;
  align-items: center;
  flex-wrap: wrap;

  gap: 12px 24px;

  margin-bottom: 20px;

  color: var(--cg-hero-text);
}

.cg-commerce-hero__feature {
  display: inline-flex;
  align-items: center;

  gap: 8px;

  color: var(--cg-hero-text);

  font-size: 12px;
  font-weight: 800;

  line-height: 1.2;

  letter-spacing: 0.02em;

  text-transform: uppercase;
}

.cg-commerce-hero__feature:not(:last-child)::after {
  width: 4px;
  height: 4px;

  margin-left: 16px;

  border-radius: 50%;

  background: var(--cg-hero-text);

  content: '';

  opacity: 0.8;
}

.cg-commerce-hero__feature-icon {
  display: flex;

  width: 24px;
  height: 24px;

  flex: 0 0 24px;

  align-items: center;
  justify-content: center;

  color: var(--cg-hero-text);
}

.cg-commerce-hero__feature-icon :is(svg, img) {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: contain;
}


/* ==========================================================
   MAIN HERO
   ========================================================== */

.cg-commerce-hero__main {
  position: relative;

  display: grid;

  grid-template-columns:
    minmax(0, calc(100% - var(--cg-hero-visual-width)))
    minmax(0, var(--cg-hero-visual-width));

  min-height: 530px;

  align-items: center;

  gap: clamp(30px, 4vw, 70px);
}


/* ==========================================================
   COPY
   ========================================================== */

.cg-commerce-hero__copy {
  position: relative;
  z-index: 5;

  min-width: 0;

  /*
   * IMPORTANTE
   *
   * Spostiamo il blocco titolo/descrizione/CTA
   * leggermente verso il centro della hero.
   */

  padding:
    30px 0
    30px
    clamp(55px, 5.4vw, 92px);
}

.cg-commerce-hero__kicker {
  margin: 0 0 15px;

  color: var(--cg-hero-accent);

  font-size: 12px;
  font-weight: 900;

  line-height: 1.2;

  letter-spacing: 0.06em;

  text-transform: uppercase;
}

.cg-commerce-hero__title {
  max-width: 500px;

  margin: 0;

  color: var(--cg-color-text-strong, #3b2419);

  font-family: var(--font-h2--family);

  font-size: min(var(--cg-hero-title-size), 90px);

  font-style: var(--font-h2--style);

  font-weight: 800;

  line-height: 0.95;

  letter-spacing: -0.04em;

  text-transform: var(--font-h2--case);
}

.cg-commerce-hero__title p {
  margin: 0;
}

.cg-commerce-hero__title strong {
  color: var(--cg-hero-accent);

  font-weight: 900;
}

.cg-commerce-hero__description {
  max-width: 430px;

  margin-top: 24px;

  color: var(--cg-hero-muted);

  font-size:
    var(--cg-hero-description-size);

  font-weight: 500;

  line-height: 1.45;
}


/* ==========================================================
   ACTIONS
   ========================================================== */

.cg-commerce-hero__actions {
  display: flex;

  align-items: center;

  flex-wrap: wrap;

  gap: 18px;

  margin-top: 28px;
}

.cg-commerce-hero__button {
  display: inline-flex;

  min-height: 54px;

  padding: 0 28px;

  align-items: center;
  justify-content: center;

  gap: 18px;

  border: 0;

  border-radius: 999px;

  background: var(--cg-hero-accent);

  color: #ffffff;

  box-shadow:
    0 10px 24px
    color-mix(
      in srgb,
      var(--cg-hero-accent) 22%,
      transparent
    );

  font-size: 14px;
  font-weight: 900;

  line-height: 1;

  text-decoration: none;

  transition:
    transform 160ms ease,
    filter 160ms ease,
    box-shadow 160ms ease;
}

a.cg-commerce-hero__button:hover {
  transform: translateY(-2px);

  filter: brightness(0.97);

  box-shadow:
    0 14px 30px
    color-mix(
      in srgb,
      var(--cg-hero-accent) 28%,
      transparent
    );
}

.cg-commerce-hero__button svg {
  width: 20px;
  height: 20px;
}

.cg-commerce-hero__button--inactive {
  cursor: default;
}


/* ==========================================================
   SOCIAL PROOF
   ========================================================== */

.cg-commerce-hero__social-proof {
  display: flex;

  align-items: center;

  gap: 10px;
}

.cg-commerce-hero__social-proof-image {
  width: 82px;
  height: 42px;

  flex: 0 0 82px;

  overflow: hidden;

  border-radius: 999px;
}

.cg-commerce-hero__social-proof-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}

.cg-commerce-hero__social-proof p {
  max-width: 150px;

  margin: 0;

  color: var(--cg-hero-text);

  font-size: 12px;
  font-weight: 700;

  line-height: 1.3;
}


/* ==========================================================
   HERO VISUAL
   ========================================================== */

.cg-commerce-hero__visual {
  position: relative;

  display: flex;

  min-width: 0;
  min-height: 500px;

  align-items: flex-end;
  justify-content: center;

  isolation: isolate;
}

.cg-commerce-hero__visual-blob {
  position: absolute;
  z-index: -2;

  top: 50%;
  left: 50%;

  width: 88%;

  aspect-ratio: 1;

  border-radius:
    44% 56% 54% 46%
    /
    50% 42% 58% 50%;

  background:
    color-mix(
      in srgb,
      var(--cg-hero-soft) 82%,
      transparent
    );

  transform:
    translate(-48%, -50%)
    rotate(-5deg);
}

.cg-commerce-hero__visual picture {
  display: contents;
}

.cg-commerce-hero__image {
  position: relative;
  z-index: 2;

  display: block;

  width: min(100%, 850px);

  max-height: 560px;

  object-fit: contain;
  object-position: center bottom;
}

.cg-commerce-hero__placeholder {
  width: min(100%, 800px);
  height: 500px;
}


/* ==========================================================
   FEATURED PRODUCT FLOATING CARD
   ========================================================== */

.cg-commerce-hero__featured-product {
  position: absolute;
  z-index: 6;

  right: 488px;
  bottom: 48px;

  display: flex;

  width: min(210px, 34%);

  padding: 20px;

  flex-direction: column;

  gap: 8px;

  border:
    1px solid
    var(--cg-hero-border);

  border-radius:
    min(
      var(--cg-hero-radius),
      22px
    );

  background: var(--cg-hero-card-bg);

  color: var(--cg-hero-text);

  box-shadow:
    0 16px 34px
    color-mix(
      in srgb,
      var(--cg-hero-text) 10%,
      transparent
    );

  text-decoration: none;

  transition:
    transform 160ms ease,
    box-shadow 160ms ease;
}

.cg-commerce-hero__featured-product:hover {
  transform: translateY(-3px);

  box-shadow:
    0 20px 42px
    color-mix(
      in srgb,
      var(--cg-hero-text) 14%,
      transparent
    );
}

.cg-commerce-hero__featured-product-kicker {
  color: var(--cg-hero-accent);

  font-size: 10px;
  font-weight: 900;

  line-height: 1.2;

  letter-spacing: 0.04em;

  text-transform: uppercase;
}

.cg-commerce-hero__featured-product-title {
  color: var(--cg-hero-text);

  font-size: 17px;
  font-weight: 900;

  line-height: 1.15;
}

.cg-commerce-hero__featured-product-price {
  color: var(--cg-hero-muted);

  font-size: 13px;
  font-weight: 800;
}

.cg-commerce-hero__featured-product-link {
  display: inline-flex;

  align-items: center;

  gap: 6px;

  margin-top: 8px;

  color: var(--cg-hero-accent);

  font-size: 12px;
  font-weight: 900;
}

.cg-commerce-hero__featured-product-link svg {
  width: 16px;
  height: 16px;
}


/* ==========================================================
   SERVICE CARDS
   ========================================================== */

.cg-commerce-hero__services {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: 35px;
  margin-top: 10px;
}

.cg-commerce-hero__service-card {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 120px;
  padding: 15px;
  grid-template-columns:
    96px
    minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  overflow: hidden;
  border:
    1px solid
    var(--cg-hero-border);

  border-radius:
    var(--cg-hero-radius);

  background:
    color-mix(
      in srgb,
      var(--cg-hero-card-bg) 88%,
      var(--cg-hero-soft)
    );

  box-shadow:
    0 10px 24px
    color-mix(
      in srgb,
      var(--cg-hero-text) 5%,
      transparent
    );
}

.cg-commerce-hero__service-card--accent {
  background:
    color-mix(
      in srgb,
      var(--cg-hero-bg) 55%,
      #ffffff
    );
}

.cg-commerce-hero__service-icon {
  display: flex;

  width: 90px;
  height: 90px;

  padding: 19px;

  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    color-mix(
      in srgb,
      var(--cg-hero-soft) 65%,
      #ffffff
    );

  color:
    var(--cg-hero-text);
}

.cg-commerce-hero__service-icon--accent {
  background:
    var(--cg-hero-accent);

  color: #ffffff;
}

.cg-commerce-hero__service-icon :is(svg, img) {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: contain;
}

.cg-commerce-hero__service-copy {
  position: relative;
  z-index: 2;

  min-width: 0;
}

.cg-commerce-hero__service-copy h2 {
  margin: 0;

  color: var(--cg-hero-text);

  font-family:
    var(--cg-font-display, inherit);

  font-size: 21px;
  font-weight: 900;

  line-height: 1.05;

  letter-spacing: -0.025em;
}

.cg-commerce-hero__service-card--accent
.cg-commerce-hero__service-copy h2 {
  color:
    var(--cg-hero-accent);
}

.cg-commerce-hero__service-copy p {
  max-width: 520px;

  margin: 10px 0 0;

  color: var(--cg-hero-muted);

  font-size: 14px;

  line-height: 1.45;
}

.cg-commerce-hero__service-copy a {
  display: inline-flex;

  align-items: center;

  gap: 8px;

  margin-top: 15px;

  color: var(--cg-hero-text);

  font-size: 12px;
  font-weight: 900;

  text-decoration: none;

  text-transform: uppercase;
}

.cg-commerce-hero__service-card--accent
.cg-commerce-hero__service-copy a {
  color:
    var(--cg-hero-accent);
}

.cg-commerce-hero__service-copy a svg {
  width: 17px;
  height: 17px;
}


/* ==========================================================
   DELIVERY DECORATION
   ========================================================== */

.cg-commerce-hero__service-decoration {
  position: absolute;

  right: 18px;
  bottom: -8px;

  width: 185px;
  height: 150px;

  opacity: 0.9;

  pointer-events: none;
}

.cg-commerce-hero__service-decoration img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: contain;
  object-position: right bottom;
}

.cg-commerce-hero__service-card--accent
.cg-commerce-hero__service-copy {
  padding-right: 145px;
}


/* ==========================================================
   TRUST BAR
   ========================================================== */

.cg-commerce-hero__trust {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  margin-top: 18px;

  padding: 18px 20px;

  border:
    1px solid
    var(--cg-hero-border);

  border-radius:
    min(
      var(--cg-hero-radius),
      18px
    );

  background:
    color-mix(
      in srgb,
      var(--cg-hero-card-bg) 92%,
      var(--cg-hero-bg)
    );

  box-shadow:
    0 8px 20px
    color-mix(
      in srgb,
      var(--cg-hero-text) 4%,
      transparent
    );
}

.cg-commerce-hero__trust-item {
  display: flex;

  min-width: 0;

  align-items: center;

  gap: 13px;

  padding-inline: 18px;
}

.cg-commerce-hero__trust-item:not(:last-child) {
  border-right:
    1px solid
    var(--cg-hero-border);
}

.cg-commerce-hero__trust-icon {
  display: flex;

  width: 42px;
  height: 42px;

  flex: 0 0 42px;

  align-items: center;
  justify-content: center;

  color: var(--cg-hero-muted);
}

.cg-commerce-hero__trust-icon :is(svg, img) {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: contain;
}

.cg-commerce-hero__trust-item > div {
  display: flex;

  min-width: 0;

  flex-direction: column;

  gap: 3px;
}

.cg-commerce-hero__trust-item strong {
  color: var(--cg-hero-text);

  font-size: 13px;
  font-weight: 900;

  line-height: 1.2;
}

.cg-commerce-hero__trust-item
span:not(.cg-commerce-hero__trust-icon) {
  color: var(--cg-hero-muted);

  font-size: 11px;

  line-height: 1.3;
}


/* ==========================================================
   LARGE DESKTOP
   ========================================================== */

@media screen and (min-width: 1500px) {

  .cg-commerce-hero__copy {
    padding-left:
      clamp(78px, 5.2vw, 100px);
  }

}


/* ==========================================================
   DESKTOP MEDIUM
   ========================================================== */

@media screen and (max-width: 1200px) {

  .cg-commerce-hero__main {
    min-height: 480px;

    gap: 28px;
  }

  .cg-commerce-hero__copy {
    padding-left:
      clamp(35px, 4vw, 58px);
  }

  .cg-commerce-hero__title {
    font-size:
      clamp(
        46px,
        5.3vw,
        var(--cg-hero-title-size)
      );
  }

  .cg-commerce-hero__visual {
    min-height: 460px;
  }

  .cg-commerce-hero__image {
    max-height: 510px;
  }

  .cg-commerce-hero__featured-product {
    right: 0;
    bottom: 28px;

    width: 190px;

    padding: 17px;
  }

  .cg-commerce-hero__service-card {
    padding: 24px;

    grid-template-columns:
      78px
      minmax(0, 1fr);

    gap: 20px;
  }

  .cg-commerce-hero__service-icon {
    width: 76px;
    height: 76px;

    padding: 16px;
  }

  .cg-commerce-hero__service-decoration {
    width: 155px;
  }

  .cg-commerce-hero__service-card--accent
  .cg-commerce-hero__service-copy {
    padding-right: 115px;
  }

}


/* ==========================================================
   TABLET
   ========================================================== */

@media screen and (max-width: 989px) {

  .cg-commerce-hero {
    padding-inline:
      var(--cg-container-gutter, 20px);
  }

  .cg-commerce-hero__features {
    margin-bottom: 10px;
  }

  .cg-commerce-hero__feature:not(:last-child)::after {
    display: none;
  }

  .cg-commerce-hero__main {
    grid-template-columns:
      minmax(0, 0.9fr)
      minmax(0, 1.1fr);

    min-height: 440px;

    gap: 18px;
  }

  .cg-commerce-hero__copy {
    padding:
      24px 0
      24px 22px;
  }

  .cg-commerce-hero__title {
    font-size:
      clamp(42px, 6vw, 60px);
  }

  .cg-commerce-hero__description {
    font-size:
      min(
        var(--cg-hero-description-size),
        17px
      );
  }

  .cg-commerce-hero__visual {
    min-height: 420px;
  }

  .cg-commerce-hero__image {
    max-height: 460px;
  }

  .cg-commerce-hero__featured-product {
    display: none;
  }

  .cg-commerce-hero__services {
    grid-template-columns:
      minmax(0, 1fr);
  }

  .cg-commerce-hero__service-card {
    min-height: 150px;
  }

  .cg-commerce-hero__trust {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 18px 0;
  }

  .cg-commerce-hero__trust-item:nth-child(2) {
    border-right: 0;
  }

  .cg-commerce-hero__trust-item:nth-child(-n + 2) {
    padding-bottom: 15px;

    border-bottom:
      1px solid
      var(--cg-hero-border);
  }

}


/* ==========================================================
   MOBILE
   Solo smartphone: il desktop e il tablet restano invariati.
   ========================================================== */

@media screen and (max-width: 749px) {

  .cg-commerce-hero {
    padding-top: 28px;
    padding-right: var(--cg-container-gutter, 16px);
    padding-bottom: 24px;
    padding-left: var(--cg-container-gutter, 16px);
  }

  .cg-commerce-hero__main {
    display: flex;
    min-height: 0;
    flex-direction: column;
    gap: 0;
  }

  .cg-commerce-hero__copy {
    width: 100%;
    padding: 0;
    order: 1;
  }

  .cg-commerce-hero__kicker {
    margin-bottom: 9px;
  }

  .cg-commerce-hero__title {
    max-width: 100%;
    font-size: clamp(38px, 10.5vw, 48px);
    line-height: 0.98;
    letter-spacing: -0.045em;
  }

  .cg-commerce-hero__description {
    max-width: 34ch;
    margin-top: 16px;
    font-size: min(var(--cg-hero-description-size), 16px);
    line-height: 1.42;
  }

  .cg-commerce-hero__actions {
    width: 100%;
    margin-top: 20px;
    gap: 0;
  }

  .cg-commerce-hero__button {
    width: 100%;
    min-height: 54px;
    padding-inline: 22px;
  }


  /* ========================================================
     VISUAL + PRODOTTO IN EVIDENZA
     ======================================================== */

  .cg-commerce-hero__visual {
    position: relative;
    width: 100%;
    min-height: 355px;
    margin-top: 18px;
    padding: 0 0 44px;
    order: 2;
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }

  .cg-commerce-hero__visual-blob {
    top: 46%;
    width: 92%;
    max-width: 390px;
  }

  .cg-commerce-hero__image {
    width: 100%;
    max-height: 330px;
    object-position: center bottom;
  }

  .cg-commerce-hero__featured-product {
    position: absolute !important;
    z-index: 7;
    top: auto !important;
    right: 10px !important;
    bottom: 0 !important;
    left: 10px !important;
    inset: auto 10px 0 10px !important;

    display: grid !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 13px 16px !important;

    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "kicker kicker"
      "title price"
      "link link";
    column-gap: 12px;
    row-gap: 4px;
    align-items: end;

    border-radius: 18px !important;

    box-shadow:
      0 14px 30px
      color-mix(
        in srgb,
        var(--cg-hero-text) 10%,
        transparent
      );

    transform: none !important;
  }

  .cg-commerce-hero__featured-product-kicker {
    grid-area: kicker;
    font-size: 9px;
    line-height: 1.1;
  }

  .cg-commerce-hero__featured-product-title {
    grid-area: title;
    min-width: 0;
    overflow: hidden;

    font-size: 15px;
    line-height: 1.16;

    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .cg-commerce-hero__featured-product-price {
    grid-area: price;
    align-self: center;
    white-space: nowrap;
    font-size: 12px;
  }

  .cg-commerce-hero__featured-product-link {
    grid-area: link;
    margin-top: 3px;
    font-size: 11px;
  }

  .cg-commerce-hero__featured-product-link svg {
    width: 14px;
    height: 14px;
  }


  /* ========================================================
     SERVICES
     ======================================================== */

  .cg-commerce-hero__services {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 22px;
    gap: 10px;
    padding: 10px;
  }

  .cg-commerce-hero__service-card {
    min-height: 0;
    padding: 16px;

    grid-template-columns:
      50px
      minmax(0, 1fr);

    gap: 14px;

    border-radius:
      min(
        var(--cg-hero-radius),
        18px
      );
  }

  .cg-commerce-hero__service-icon {
    width: 50px;
    height: 50px;
    padding: 10px;
  }

  .cg-commerce-hero__service-copy h2 {
    font-size: 17px;
    line-height: 1.02;
  }

  .cg-commerce-hero__service-copy p {
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.35;
  }

  .cg-commerce-hero__service-copy a {
    margin-top: 8px;
    font-size: 10px;
  }

  .cg-commerce-hero__service-decoration {
    display: none;
  }

  .cg-commerce-hero__service-card--accent
  .cg-commerce-hero__service-copy {
    padding-right: 0;
  }


  /* ========================================================
     TRUST — griglia 2 × 2 compatta
     ======================================================== */

  .cg-commerce-hero__trust {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 0;

    margin-top: 12px;
    padding: 6px 8px;

    border-radius:
      min(
        var(--cg-hero-radius),
        18px
      );
  }

  .cg-commerce-hero__trust-item {
    min-height: 72px;
    padding: 12px 9px;

    gap: 8px;

    border-right: 0 !important;
    border-bottom: 0 !important;
  }

  .cg-commerce-hero__trust-item:nth-child(odd) {
    border-right:
      1px solid
      var(--cg-hero-border) !important;
  }

  .cg-commerce-hero__trust-item:nth-child(-n + 2) {
    padding-bottom: 12px;

    border-bottom:
      1px solid
      var(--cg-hero-border) !important;
  }

  .cg-commerce-hero__trust-icon {
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
  }

  .cg-commerce-hero__trust-item strong {
    font-size: 12px;
    line-height: 1.15;
  }

  .cg-commerce-hero__trust-item
  span:not(.cg-commerce-hero__trust-icon) {
    display: none;
  }

}


/* ==========================================================
   SMALL MOBILE
   ========================================================== */

@media screen and (max-width: 430px) {

  .cg-commerce-hero__title {
    font-size: clamp(36px, 10.8vw, 46px);
  }

  .cg-commerce-hero__visual {
    min-height: 335px;
    padding-bottom: 42px;
  }

  .cg-commerce-hero__image {
    max-height: 310px;
  }

  .cg-commerce-hero__featured-product {
    right: 6px !important;
    left: 6px !important;
    inset: auto 6px 0 6px !important;
  }

  .cg-commerce-hero__service-card {
    padding: 15px 14px;
  }

  .cg-commerce-hero__service-copy h2 {
    font-size: 16px;
  }

  .cg-commerce-hero__trust-item {
    min-height: 68px;
    padding-inline: 7px;
  }

  .cg-commerce-hero__trust-icon {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
  }

  .cg-commerce-hero__trust-item strong {
    font-size: 11px;
  }

}

/* Main section title: aligned with the configured CG Prodotti amati reference. */
.cg-commerce-hero__title {
  font-size: min(var(--cg-hero-title-size), 90px);
  line-height: 0.95;
  letter-spacing: -0.04em;
}

@media screen and (max-width: 749px) {
  .cg-commerce-hero__title {
    font-size: min(var(--cg-hero-title-size), 52px);
  }
}


/* ==========================================================
   ACCESSIBILITY
   ========================================================== */

.cg-commerce-hero a:focus-visible {
  outline:
    3px solid
    color-mix(
      in srgb,
      var(--cg-hero-accent) 45%,
      transparent
    );

  outline-offset: 3px;
}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

  .cg-commerce-hero__button,
  .cg-commerce-hero__featured-product {
    transition: none;
  }

}
