/* ============================================================
   MARINO PARRUCCHIERI — home.css
   Self-contained: tokens + base + pagina.
   Tutto scopato sotto body.sitiamo-page--home tranne
   :root, @keyframes, @font-face, @import.
   ============================================================ */

@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,400;1,500&family=Jost:wght@300;400;500;600&display=swap");

:root{
    --ink:#101216;
    --ink-soft:#23272e;
    --paper:#f5f6f8;
    --paper-pure:#ffffff;
    --azure:#2f9ec4;
    --azure-deep:#1d7c9e;
    --azure-soft:#e2eff4;
    --line:rgba(16,18,22,.12);
    --line-light:rgba(255,255,255,.16);
    --muted:#5b626c;
    --muted-light:rgba(255,255,255,.66);

    --serif:"Cormorant Garamond",Georgia,serif;
    --sans:"Jost",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

    --shell:1240px;
    --pad:24px;
    --ease:cubic-bezier(.22,1,.36,1);
}

@keyframes scrolldrip{
    0%{transform:translateY(-100%);}
    60%,100%{transform:translateY(260%);}
}

/* ---------- Reset base ---------- */
body.sitiamo-page--home *,
body.sitiamo-page--home *::before,
body.sitiamo-page--home *::after{box-sizing:border-box;}

html{-webkit-text-size-adjust:100%;}

body.sitiamo-page--home{
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:var(--sans);
    font-weight:400;
    font-size:16px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
}

body.sitiamo-page--home img{display:block;max-width:100%;height:auto;}
body.sitiamo-page--home a{color:inherit;text-decoration:none;}
body.sitiamo-page--home h1,
body.sitiamo-page--home h2,
body.sitiamo-page--home h3,
body.sitiamo-page--home p,
body.sitiamo-page--home ul,
body.sitiamo-page--home blockquote,
body.sitiamo-page--home figure{margin:0;}
body.sitiamo-page--home ul{list-style:none;padding:0;}
body.sitiamo-page--home em{font-style:italic;}

/* ---------- Shell ---------- */
body.sitiamo-page--home .shell{
    width:100%;
    max-width:var(--shell);
    margin-inline:auto;
    padding-inline:var(--pad);
}

/* ---------- Tipografia helper ---------- */
body.sitiamo-page--home .kicker{
    font-family:var(--sans);
    font-size:12px;
    font-weight:500;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:var(--azure-deep);
    display:inline-flex;
    align-items:center;
    gap:.7em;
    margin-bottom:24px;
}
body.sitiamo-page--home .kicker--light{color:var(--azure);}
body.sitiamo-page--home .kicker::before{
    content:"";
    width:30px;height:1px;
    background:currentColor;
    display:inline-block;
    opacity:.6;
}

body.sitiamo-page--home .sec-title{
    font-family:var(--serif);
    font-weight:400;
    font-size:clamp(34px,8vw,68px);
    line-height:1.02;
    letter-spacing:-.01em;
}
body.sitiamo-page--home .sec-title--light{color:var(--paper-pure);}

body.sitiamo-page--home .sec-head{margin-bottom:48px;}
body.sitiamo-page--home .sec-head--center{text-align:center;}
body.sitiamo-page--home .sec-head--center .kicker::before{display:none;}
body.sitiamo-page--home .sec-head__note{
    color:var(--muted);
    max-width:40ch;
    font-size:15px;
}

/* ---------- Bottoni ---------- */
body.sitiamo-page--home .btn{
    --bx:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 var(--bx);
    height:58px;
    border-radius:999px;
    font-family:var(--sans);
    font-size:13.5px;
    font-weight:500;
    letter-spacing:.12em;
    text-transform:uppercase;
    cursor:pointer;
    border:1px solid transparent;
    position:relative;
    overflow:hidden;
    transition:color .5s var(--ease),background .5s var(--ease),border-color .5s var(--ease),transform .35s var(--ease);
    will-change:transform;
}
body.sitiamo-page--home .btn span{position:relative;z-index:2;display:inline-block;}
body.sitiamo-page--home .btn--solid{background:var(--azure);color:var(--paper-pure);}
body.sitiamo-page--home .btn--solid::after{
    content:"";position:absolute;inset:0;z-index:1;
    background:var(--ink);
    transform:translateY(101%);
    transition:transform .5s var(--ease);
}
body.sitiamo-page--home .btn--solid:hover::after{transform:translateY(0);}
body.sitiamo-page--home .btn--invert{background:var(--paper-pure);color:var(--ink);}
body.sitiamo-page--home .btn--invert::after{background:var(--azure);}
body.sitiamo-page--home .btn--invert:hover{color:var(--paper-pure);}

body.sitiamo-page--home .btn--line{
    background:var(--paper);
    color:var(--ink);
    border-color:transparent;
}
body.sitiamo-page--home .btn--line::after{
    content:"";position:absolute;inset:0;z-index:1;
    background:var(--ink);
    transform:translateY(101%);
    transition:transform .5s var(--ease);
}
body.sitiamo-page--home .btn--line:hover{color:var(--paper-pure);border-color:transparent;}
body.sitiamo-page--home .btn--line:hover::after{transform:translateY(0);}
body.sitiamo-page--home .btn--line-light{background:transparent;color:var(--paper-pure);border-color:var(--line-light);}
body.sitiamo-page--home .btn--line-light::after{background:var(--paper-pure);}
body.sitiamo-page--home .btn--line-light:hover{color:var(--ink);border-color:var(--paper-pure);}

/* ============================================================
   HERO
   ============================================================ */
body.sitiamo-page--home .hero{
    position:relative;
    min-height:90svh;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:var(--pad);
    padding-bottom:54px;
    color:var(--paper-pure);
    overflow:hidden;
    isolation:isolate;
}
body.sitiamo-page--home .hero__media{position:absolute;inset:0;z-index:-2;overflow:hidden;}
body.sitiamo-page--home .hero__img{
    display:block;
    width:100%;height:120%;
    object-fit:cover;object-position:center 28%;
    position:absolute;top:-10%;left:0;
}
body.sitiamo-page--home .hero__veil{
    position:absolute;inset:0;z-index:1;
    background:
        linear-gradient(180deg,
            rgba(16,18,22,.50) 0%,
            rgba(16,18,22,.08) 28%,
            rgba(16,18,22,.55) 58%,
            rgba(16,18,22,.96) 100%
        ),
        rgba(16,18,22,.20);
}
body.sitiamo-page--home .hero__content{
    position:relative;
    width:100%;
    max-width:var(--shell);
    margin-inline:auto;
}
body.sitiamo-page--home .hero__eyebrow{
    font-size:12px;font-weight:500;letter-spacing:.34em;text-transform:uppercase;
    display:flex;align-items:center;gap:.8em;margin-bottom:22px;color:rgba(255,255,255,.85);
}
body.sitiamo-page--home .hero__eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--azure);box-shadow:0 0 14px var(--azure);}
body.sitiamo-page--home .hero__title{
    font-family:var(--serif);
    font-weight:300;
    font-size:clamp(52px,15vw,150px);
    line-height:.92;
    letter-spacing:-.02em;
}
body.sitiamo-page--home .hero__title em{
    font-weight:500;
    color:transparent;
    -webkit-text-stroke:1px rgba(255,255,255,.9);
}
body.sitiamo-page--home .hero__lede{
    margin-top:26px;
    max-width:46ch;
    font-size:16.5px;
    line-height:1.65;
    color:rgba(255,255,255,.82);
}
body.sitiamo-page--home .hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px;}
body.sitiamo-page--home .hero__scroll{
    position:absolute;right:var(--pad);bottom:46px;
    display:none;flex-direction:column;align-items:center;gap:12px;
    font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.7);
}
body.sitiamo-page--home .hero__scrollline{width:1px;height:54px;background:rgba(255,255,255,.4);position:relative;overflow:hidden;}
body.sitiamo-page--home .hero__scrollline::after{content:"";position:absolute;top:0;left:0;width:100%;height:40%;background:var(--azure);animation:scrolldrip 2.2s var(--ease) infinite;}

/* ============================================================
   MANIFESTO
   ============================================================ */
body.sitiamo-page--home .manifesto{padding:96px 0;background:var(--paper);}
body.sitiamo-page--home .manifesto__head{
    font-family:var(--serif);
    font-weight:400;
    font-size:clamp(28px,6.4vw,58px);
    line-height:1.12;
    letter-spacing:-.01em;
    max-width:20ch;
}
body.sitiamo-page--home .manifesto__foot{
    margin-top:48px;
    display:flex;
    flex-direction:column;
    gap:32px;
}
body.sitiamo-page--home .manifesto__body{color:var(--muted);max-width:54ch;font-size:16px;}
body.sitiamo-page--home .manifesto__mark{align-self:flex-start;}
body.sitiamo-page--home .manifesto__mark img{
    width:140px;height:auto;
    mix-blend-mode:multiply;
    filter:grayscale(1) contrast(1.05);
    opacity:.9;
}

/* ============================================================
   SERVIZI (dark)
   ============================================================ */
body.sitiamo-page--home .servizi{background:var(--ink);color:var(--paper-pure);padding:96px 0;}
body.sitiamo-page--home .sec-head--split{display:flex;flex-direction:column;gap:26px;}
body.sitiamo-page--home .serv-list{border-top:1px solid var(--line-light);}
body.sitiamo-page--home .serv-row{
    position:relative;
    display:grid;
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"num name arrow" "num desc arrow";
    column-gap:18px;
    align-items:start;
    padding:26px 0;
    border-bottom:1px solid var(--line-light);
    cursor:pointer;
    transition:padding-left .5s var(--ease);
}
body.sitiamo-page--home .serv-row__num{
    grid-area:num;
    font-family:var(--serif);
    font-size:18px;
    color:var(--azure);
    padding-top:6px;
    min-width:34px;
}
body.sitiamo-page--home .serv-row__name{
    grid-area:name;
    font-family:var(--serif);
    font-weight:400;
    font-size:clamp(28px,6vw,46px);
    line-height:1;
    letter-spacing:-.01em;
    display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;
    transition:color .4s var(--ease);
}
body.sitiamo-page--home .serv-row__tag{
    font-family:var(--sans);
    font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;
    color:var(--ink);background:var(--azure);
    padding:4px 10px;border-radius:999px;transform:translateY(-3px);
}
body.sitiamo-page--home .serv-row__desc{
    grid-area:desc;
    color:var(--muted-light);
    max-width:52ch;
    font-size:15px;
    margin-top:14px;
    max-height:0;opacity:0;overflow:hidden;
    transition:max-height .55s var(--ease),opacity .45s var(--ease),margin-top .45s var(--ease);
}
body.sitiamo-page--home .serv-row__arrow{
    grid-area:arrow;
    align-self:center;
    font-size:24px;color:var(--azure);
    opacity:0;transform:translateX(-12px);
    transition:opacity .45s var(--ease),transform .45s var(--ease);
}
body.sitiamo-page--home .serv-row:hover{padding-left:18px;}
body.sitiamo-page--home .serv-row:hover .serv-row__desc{max-height:120px;opacity:1;margin-top:14px;}
body.sitiamo-page--home .serv-row:hover .serv-row__arrow{opacity:1;transform:translateX(0);}
body.sitiamo-page--home .serv-row:hover .serv-row__name{color:var(--azure);}

/* ============================================================
   SPECIALITÀ
   ============================================================ */
body.sitiamo-page--home .spec{background:var(--paper);padding:96px 0;}
body.sitiamo-page--home .spec__grid{display:grid;gap:42px;}
body.sitiamo-page--home .spec-card__media{overflow:hidden;border-radius:2px;}
body.sitiamo-page--home .spec-card__media img{
    width:100%;aspect-ratio:4/5;object-fit:cover;
    transition:transform 1.1s var(--ease);
}
body.sitiamo-page--home .spec-card:hover .spec-card__media img{transform:scale(1.045);}
body.sitiamo-page--home .spec-card__body{padding-top:24px;max-width:42ch;}
body.sitiamo-page--home .spec-card__title{
    font-family:var(--serif);font-weight:400;font-size:34px;line-height:1;margin-bottom:12px;
}
body.sitiamo-page--home .spec-card__body p{color:var(--muted);font-size:15.5px;}
body.sitiamo-page--home .spec__quote{margin-top:72px;text-align:center;}
body.sitiamo-page--home .spec__line{display:block;width:min(560px,80%);height:2px;margin:0 auto 40px;}
body.sitiamo-page--home .spec__line path{fill:none;stroke:var(--azure);stroke-width:2;}
body.sitiamo-page--home .spec__quote blockquote{
    font-family:var(--serif);font-weight:400;
    font-size:clamp(26px,5.4vw,48px);line-height:1.18;letter-spacing:-.01em;
    max-width:18ch;margin-inline:auto;
}
body.sitiamo-page--home .spec__quote em{color:var(--azure-deep);}

/* ============================================================
   PRODOTTI (placeholder WooCommerce)
   ============================================================ */
body.sitiamo-page--home .prodotti{background:var(--paper);padding:0 0 96px;}
body.sitiamo-page--home .prod-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px 14px;
}
body.sitiamo-page--home .prod-card{list-style:none;}
body.sitiamo-page--home .prod-card__link{display:flex;flex-direction:column;height:100%;}
body.sitiamo-page--home .prod-card__media,
body.sitiamo-page--home .prod-card__link > span.prod-card__media{
    position:relative;
    display:block;
    overflow:hidden;
    border-radius:2px;
    background:var(--azure-soft);
    aspect-ratio:4/5;
}
body.sitiamo-page--home .prod-card__media img{
    width:100%;height:100%;object-fit:cover;display:block;
    transition:transform 1s var(--ease);
}
body.sitiamo-page--home .prod-card:hover .prod-card__media img{transform:scale(1.05);}
body.sitiamo-page--home .prod-card__ph{
    position:absolute;inset:0;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;
    background:
        repeating-linear-gradient(-45deg,transparent 0 14px,rgba(47,158,196,.05) 14px 15px),
        var(--azure-soft);
    color:var(--azure-deep);
}
body.sitiamo-page--home .prod-card__ph svg{width:42px;height:auto;opacity:.85;transition:transform 1s var(--ease);}
body.sitiamo-page--home .prod-card:hover .prod-card__ph svg{transform:translateY(-4px) scale(1.04);}
body.sitiamo-page--home .prod-card__phtxt{
    font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;opacity:.7;
}
body.sitiamo-page--home .prod-card__badge{
    position:absolute;top:12px;left:12px;
    font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;
    color:var(--paper-pure);background:var(--ink);
    padding:6px 11px;border-radius:999px;
}
body.sitiamo-page--home .prod-card__badge--soft{background:var(--azure);color:var(--ink);}
body.sitiamo-page--home .prod-card__cart{
    position:absolute;left:12px;right:12px;bottom:12px;
    width:calc(100% - 24px);
    display:flex;align-items:center;justify-content:center;
    height:46px;
    font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
    color:var(--paper-pure);background:var(--ink);
    border-radius:999px;
    opacity:0;transform:translateY(12px);
    transition:opacity .4s var(--ease),transform .4s var(--ease),background-color .4s var(--ease);
}
body.sitiamo-page--home .prod-card:hover .prod-card__cart{opacity:1;transform:translateY(0);}
body.sitiamo-page--home .prod-card__cart:hover{background:var(--azure);color:var(--ink);}
body.sitiamo-page--home .prod-card__body{
    display:flex;flex-direction:column;gap:5px;
    padding-top:16px;
}
body.sitiamo-page--home .prod-card__cat{
    font-size:10.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;
    color:var(--azure-deep);
}
body.sitiamo-page--home .prod-card__name{
    font-family:var(--serif);font-weight:500;
    font-size:22px;line-height:1.1;letter-spacing:-.01em;
}
body.sitiamo-page--home .prod-card__price{font-size:15px;color:var(--muted);margin-top:2px;}
body.sitiamo-page--home .prod-foot{margin-top:48px;display:flex;justify-content:center;}

@media (hover:none){
    body.sitiamo-page--home .prod-card__cart{opacity:1;transform:none;}
}

/* ============================================================
   GALLERIA
   ============================================================ */
body.sitiamo-page--home .galleria{background:var(--paper);padding:40px 0 0;}
body.sitiamo-page--home .gallery-wrap{width:100%;height:100svh;overflow:hidden;}
body.sitiamo-page--home .gallery{
    display:grid;
    position:relative;
    width:100%;height:100%;
    gap:8px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:repeat(3,minmax(0,1fr));
}
body.sitiamo-page--home .gallery__item{position:relative;overflow:hidden;border-radius:2px;background:var(--azure-soft);min-width:0;min-height:0;}
body.sitiamo-page--home .gallery__item img{width:100%;height:100%;object-fit:cover;display:block;}

body.sitiamo-page--home .gallery__item:nth-child(1){grid-area:1 / 2 / 4 / 4;z-index:3;}
body.sitiamo-page--home .gallery__item:nth-child(2){grid-area:1 / 1 / 2 / 2;}
body.sitiamo-page--home .gallery__item:nth-child(3){grid-area:1 / 4 / 2 / 5;}
body.sitiamo-page--home .gallery__item:nth-child(4){grid-area:2 / 1 / 4 / 2;}
body.sitiamo-page--home .gallery__item:nth-child(5){grid-area:2 / 4 / 3 / 5;}
body.sitiamo-page--home .gallery__item:nth-child(6){grid-area:3 / 4 / 4 / 5;}

body.sitiamo-page--home .gallery--final .gallery__item:nth-child(1){grid-area:1 / 1 / 4 / 5;}

body.sitiamo-page--home .gallery-outro{
    padding:96px var(--pad) 96px;
    text-align:center;
}
body.sitiamo-page--home .gallery-outro__text{
    font-family:var(--serif);
    font-weight:400;
    font-size:clamp(24px,4.4vw,40px);
    line-height:1.22;
    letter-spacing:-.01em;
    max-width:22ch;
    margin:0 auto;
}
body.sitiamo-page--home .gallery-outro__text em{color:var(--azure-deep);}

/* ============================================================
   AUTORE / MARINO
   ============================================================ */
body.sitiamo-page--home .autore{background:var(--paper);padding:0 0 96px;}
body.sitiamo-page--home .autore__grid{display:grid;gap:48px;}
body.sitiamo-page--home .autore__media{position:relative;}
body.sitiamo-page--home .autore__portrait{
    width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:2px;
    filter:grayscale(1) contrast(1.04);
}
body.sitiamo-page--home .autore__diploma{
    position:absolute;right:-6px;bottom:-26px;width:46%;
    border:6px solid var(--paper);border-radius:2px;
    box-shadow:0 24px 50px -22px rgba(16,18,22,.5);
    overflow:hidden;
}
body.sitiamo-page--home .autore__diploma img{width:100%;aspect-ratio:4/3;object-fit:cover;}
body.sitiamo-page--home .autore__text{padding-top:8px;}
body.sitiamo-page--home .autore__body{color:var(--muted);font-size:16px;margin-bottom:18px;max-width:50ch;}
body.sitiamo-page--home .autore__body strong{color:var(--ink);font-weight:500;}
body.sitiamo-page--home .autore__facts{margin-top:34px;border-top:1px solid var(--line);}
body.sitiamo-page--home .autore__facts li{
    display:flex;flex-direction:column;gap:4px;
    padding:18px 0;border-bottom:1px solid var(--line);
    font-family:var(--serif);font-size:20px;
}
body.sitiamo-page--home .autore__facts span{
    font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.24em;
    text-transform:uppercase;color:var(--azure-deep);
}

/* ============================================================
   CONTATTI (dark, immagine salone)
   ============================================================ */
body.sitiamo-page--home .contatti{position:relative;color:var(--paper-pure);padding:104px 0 110px;overflow:hidden;isolation:isolate;}
body.sitiamo-page--home .contatti__bg{position:absolute;inset:0;z-index:-2;overflow:hidden;}
body.sitiamo-page--home .contatti__bg img{width:100%;height:118%;object-fit:cover;position:absolute;top:-9%;left:0;}
body.sitiamo-page--home .contatti__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,18,22,.86),rgba(16,18,22,.74));}
body.sitiamo-page--home .contatti__head{
    font-family:var(--serif);font-weight:400;
    font-size:clamp(40px,9vw,82px);line-height:.98;letter-spacing:-.02em;margin-bottom:22px;
}
body.sitiamo-page--home .contatti__lede{color:rgba(255,255,255,.78);max-width:42ch;font-size:16.5px;}
body.sitiamo-page--home .contatti__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;}
body.sitiamo-page--home .contatti__info{
    display:grid;grid-template-columns:1fr;gap:28px;
    margin-top:64px;padding-top:36px;border-top:1px solid var(--line-light);
}
body.sitiamo-page--home .contatti__label{font-size:11px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--azure);margin-bottom:10px;}
body.sitiamo-page--home .contatti__val{font-family:var(--serif);font-size:21px;line-height:1.45;color:rgba(255,255,255,.92);}

/* ============================================================
   CURSORE CUSTOM
   ============================================================ */
body.sitiamo-page--home .cursor,
body.sitiamo-page--home .cursor-dot{display:none;}
body.sitiamo-page--home.has-cursor .cursor{
    display:block;position:fixed;top:0;left:0;z-index:9999;pointer-events:none;
    width:46px;height:46px;margin:-23px 0 0 -23px;border:1px solid rgba(47,158,196,.8);border-radius:50%;
    transition:width .3s var(--ease),height .3s var(--ease),margin .3s var(--ease),background-color .3s var(--ease),opacity .3s var(--ease);
}
body.sitiamo-page--home.has-cursor .cursor-dot{
    display:block;position:fixed;top:0;left:0;z-index:9999;pointer-events:none;
    width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--azure);
}
body.sitiamo-page--home.has-cursor.cursor-hover .cursor{width:74px;height:74px;margin:-37px 0 0 -37px;background:rgba(47,158,196,.12);}
body.sitiamo-page--home.has-cursor.cursor-hover .cursor-dot{opacity:0;}
body.sitiamo-page--home.has-cursor *{cursor:none !important;}

/* ============================================================
   BREAKPOINT 768
   ============================================================ */
@media(min-width:768px){
    :root{--pad:48px;}
    body.sitiamo-page--home{font-size:17px;}
    body.sitiamo-page--home .hero{padding-bottom:64px;}
    body.sitiamo-page--home .hero__scroll{display:flex;}
    body.sitiamo-page--home .hero__actions{margin-top:42px;}

    body.sitiamo-page--home .manifesto{padding:128px 0;}
    body.sitiamo-page--home .manifesto__foot{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:64px;}
    body.sitiamo-page--home .manifesto__body{font-size:17px;}

    body.sitiamo-page--home .servizi,
    body.sitiamo-page--home .spec{padding:128px 0;}
    body.sitiamo-page--home .galleria{padding:48px 0 0;}
    body.sitiamo-page--home .gallery{gap:12px;}
    body.sitiamo-page--home .gallery-outro{padding:128px var(--pad);}
    body.sitiamo-page--home .sec-head--split{flex-direction:row;justify-content:space-between;align-items:flex-end;}
    body.sitiamo-page--home .sec-head__note{text-align:right;}

    body.sitiamo-page--home .spec__grid{grid-template-columns:1fr 1fr;gap:56px;}
    body.sitiamo-page--home .spec-card--offset{margin-top:96px;}

    body.sitiamo-page--home .prodotti{padding-bottom:128px;}
    body.sitiamo-page--home .prod-grid{grid-template-columns:repeat(4,1fr);gap:24px 22px;}
    body.sitiamo-page--home .prod-card__name{font-size:24px;}

    body.sitiamo-page--home .autore{padding-bottom:140px;}
    body.sitiamo-page--home .autore__grid{grid-template-columns:1fr 1fr;align-items:center;gap:80px;}
    body.sitiamo-page--home .autore__diploma{width:42%;right:-30px;bottom:-40px;}

    body.sitiamo-page--home .contatti{padding:140px 0 150px;}
    body.sitiamo-page--home .contatti__info{grid-template-columns:1fr 1fr;gap:48px;}
}

/* ============================================================
   BREAKPOINT 1200
   ============================================================ */
@media(min-width:1200px){
    :root{--pad:64px;}
    body.sitiamo-page--home .manifesto{padding:160px 0;}
    body.sitiamo-page--home .servizi,
    body.sitiamo-page--home .spec{padding:160px 0;}
    body.sitiamo-page--home .autore__grid{gap:110px;}
    body.sitiamo-page--home .serv-row{column-gap:32px;}
    body.sitiamo-page--home .spec-card--offset{margin-top:128px;}
}

/* ============================================================
   REDUCED MOTION
   ============================================================ */
@media(prefers-reduced-motion:reduce){
    body.sitiamo-page--home *,
    body.sitiamo-page--home *::before,
    body.sitiamo-page--home *::after{animation:none !important;transition:none !important;}
    body.sitiamo-page--home .hero__img,
    body.sitiamo-page--home .contatti__bg img{position:static;height:auto;transform:none;}
    body.sitiamo-page--home .hero__img{aspect-ratio:16/10;object-position:center 30%;}
}

/* SEO content block — visibile a Yoast e Google, non a schermo */
body.sitiamo-page--home .seo-content{
    position:absolute;width:1px;height:1px;padding:0;
    margin:-1px;overflow:hidden;clip:rect(0,0,0,0);
    white-space:nowrap;border:0;
}
