:root { --cert-green:#006e3c; --cert-ink:#1d1d1f; --cert-mist:#eff8f2; --cert-line:#d8dfda; }
.desktop-links .cert-nav-link,.mobile-menu .cert-nav-link { color:var(--cert-green); font-weight:750; }
.cert-shell { width:min(1180px, calc(100% - 48px)); margin:0 auto; }
.cert-hero { position:relative; min-height:690px; overflow:hidden; display:flex; align-items:center; background:linear-gradient(128deg,#f8fbf8 0%,#edf9f1 49%,#d8f1df 100%); }
.cert-hero .cert-shell { position:relative; z-index:2; padding:104px 0 116px; }
.cert-eyebrow { margin:0 0 18px; color:var(--cert-green); font-size:12px; font-weight:800; letter-spacing:.19em; text-transform:uppercase; }
.cert-hero h1,.cert-intro h2,.cert-section-heading h2,.cert-product h2,.cert-note h2 { margin:0; color:var(--cert-ink); font-size:clamp(56px,7.4vw,110px); line-height:.88; letter-spacing:-.075em; font-weight:800; }
.cert-hero h1 em { display:block; color:var(--cert-green); font-style:normal; }
.cert-lead { max-width:520px; margin:34px 0 25px; color:#5e675f; font-size:20px; line-height:1.45; }
.cert-hero-link,.cert-button { color:#087ace; font-weight:700; font-size:17px; text-decoration:none; }
.cert-hero-link b,.cert-button b { display:inline-block; margin-left:7px; font-size:21px; line-height:0; }
.cert-hero-graphic { position:absolute; right:max(6vw,48px); bottom:0; width:min(46vw,650px); height:82%; display:grid; place-items:end center; }
.cert-hero-graphic img { position:relative; z-index:1; width:min(78%,445px); filter:drop-shadow(0 28px 24px rgba(5,49,28,.25)); transform:translateY(20px); }
.cert-orb { position:absolute; width:94%; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 34% 31%,#fbfffc 0%,#c4efd2 39%,#69c38c 100%); box-shadow:inset 0 0 42px rgba(255,255,255,.9); }
.cert-logo-cluster { display:block; }
.cert-logo { position:absolute; z-index:2; display:flex; align-items:center; justify-content:center; flex-direction:column; margin:0; padding:22px; width:235px; min-height:164px; border:1px solid rgba(255,255,255,.88); border-radius:24px; background:rgba(255,255,255,.92); box-shadow:0 18px 36px rgba(6,65,34,.16); }
.cert-logo img { width:100%; max-height:100px; object-fit:contain; filter:none; transform:none; }
.cert-logo figcaption { margin-top:9px; color:#126b41; font-size:11px; font-weight:800; letter-spacing:.16em; }
.cert-logo-haccp { left:6%; bottom:12%; transform:rotate(-5deg); }
.cert-logo-vaa { right:1%; top:15%; transform:rotate(5deg); }
.cert-intro { padding:138px 0 118px; background:#fff; }
.cert-intro-grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr); gap:11vw; align-items:end; }
.cert-intro h2,.cert-section-heading h2,.cert-product h2,.cert-note h2 { font-size:clamp(46px,5.7vw,82px); }
.cert-intro-grid > p { margin:0 0 5px; color:#6b6f70; font-size:19px; line-height:1.5; }
.cert-documents { padding:116px 0 132px; background:#f5f7f5; }
.cert-section-heading { margin-bottom:48px; }
.cert-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.cert-card { position:relative; min-height:380px; overflow:hidden; padding:34px; border-radius:30px; background:#fff; box-shadow:0 12px 34px rgba(30,44,35,.08); }
.cert-card-green { background:linear-gradient(143deg,#0b8d50,#0c5d39); color:#fff; }
.cert-card-top { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.cert-number { color:#626a65; font-weight:700; font-size:15px; }
.cert-status { color:#147d4a; font-weight:800; font-size:10px; letter-spacing:.16em; }
.cert-card-green .cert-number { color:#a7e2bd; }.cert-card-green .cert-status { color:#e0f7e8; }
.cert-card-logo { position:relative; z-index:1; display:block; width:146px; height:100px; margin:30px 0 16px; object-fit:contain; object-position:left center; }
.cert-card h3 { position:relative; z-index:1; margin:0 0 8px; font-size:56px; line-height:.9; letter-spacing:-.065em; }
.cert-card-sub { position:relative; z-index:1; max-width:315px; margin:0 0 22px; color:#6a726d; font-weight:700; font-size:16px; line-height:1.25; }.cert-card-green .cert-card-sub{color:#d7f3e2;}
.cert-card > p:last-of-type { position:relative; z-index:1; max-width:420px; margin:0; color:#656d68; font-size:16px; line-height:1.48; }.cert-card-green > p:last-of-type{color:#e8f8ed;}
.cert-all-line { padding:122px 0; background:#fff; }.cert-all-line .cert-intro-grid{align-items:center;}.cert-all-line p:not(.cert-eyebrow){margin:0 0 28px;color:#6b6f70;font-size:19px;line-height:1.5;}
.cert-product { padding:140px 0; overflow:hidden; background:#fff; }.cert-product-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.9fr);gap:8vw;align-items:center;}.cert-product-visual{position:relative;min-height:510px;display:grid;place-items:center;}.cert-product-circle{position:absolute;width:min(100%,510px);aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,#edfff4,#a7e9bf);}.cert-product-visual img{position:relative;width:min(78%,365px);filter:drop-shadow(0 28px 22px rgba(8,61,36,.25));}.cert-product-copy>p:not(.cert-eyebrow){margin:28px 0 30px;max-width:500px;color:#6b6f70;font-size:18px;line-height:1.5;}.cert-button{display:inline-flex;align-items:center;gap:8px;padding:15px 19px;border-radius:999px;background:#edf6ee;color:#126b41;}
.cert-note { padding:105px 0; background:linear-gradient(118deg,#fbfdfb,#e4f7e9); }.cert-note h2{max-width:800px;}.cert-note > .cert-shell > p:last-child{max-width:580px;margin:28px 0 0;color:#647068;font-size:18px;line-height:1.5;}
@media (max-width:800px){.cert-shell{width:min(100% - 40px,620px)}.cert-hero{min-height:740px;align-items:flex-start}.cert-hero .cert-shell{padding-top:74px}.cert-hero h1{font-size:66px}.cert-lead{max-width:390px;font-size:18px}.cert-hero-graphic{right:50%;bottom:-8px;width:min(100%,390px);height:315px;transform:translateX(50%)}.cert-logo{width:168px;min-height:118px;padding:14px;border-radius:18px}.cert-logo img{max-height:68px}.cert-logo-haccp{left:2%;bottom:13%}.cert-logo-vaa{right:2%;top:11%}.cert-intro,.cert-documents,.cert-all-line{padding:82px 0}.cert-intro-grid{grid-template-columns:1fr;gap:32px}.cert-grid{grid-template-columns:1fr}.cert-card{min-height:342px;padding:28px;border-radius:25px}.cert-card-logo{width:130px;height:85px;margin:25px 0 12px}.cert-card h3{font-size:54px}.cert-note{padding:76px 0}.cert-note h2,.cert-intro h2,.cert-section-heading h2,.cert-all-line h2{font-size:54px}.site-header{position:relative}}

/* Stessa gerarchia, con lettere equilibrate. */
.cert-hero h1,.cert-intro h2,.cert-section-heading h2,.cert-product h2,.cert-note h2{letter-spacing:.004em;line-height:1.03}
.cert-card h3{letter-spacing:.002em;line-height:1.07}
