/*
Theme Name: Aurestetica
Theme URI: https://example.com/aurestetica
Author: OpenAI
Author URI: https://openai.com
Description: Tema WordPress minimale ed editoriale per Aurestetica. Include landing page, articoli, pagine, archivio e personalizzazione base dal Customizer.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: aurestetica
*/

:root{
  --black:#111111;
  --charcoal:#1a1a1a;
  --ivory:#f4efe6;
  --ivory-soft:#e9dfcf;
  --white:#fafafa;
  --muted:rgba(244,239,230,.74);
  --muted-2:rgba(244,239,230,.60);
  --line:rgba(244,239,230,.15);
  --shadow:0 20px 60px rgba(0,0,0,.18);
  --radius:22px;
  --max:1200px;
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Georgia, "Times New Roman", serif;
  color:var(--ivory);
  line-height:1.7;
  background:
    radial-gradient(circle at top left, rgba(244,239,230,.06), transparent 30%),
    linear-gradient(180deg, #0d0d0d 0%, #141414 35%, #101010 100%);
  overflow-x:hidden;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.015), rgba(255,255,255,.015)),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.015) 0px,
      rgba(255,255,255,.015) 1px,
      transparent 1px,
      transparent 4px
    );
  mix-blend-mode:soft-light;
  opacity:.25;
}

img{
  max-width:100%;
  height:auto;
  display:block;
}

a{
  color:var(--ivory);
  transition:opacity .25s var(--ease), transform .25s var(--ease), color .25s var(--ease);
}

a:hover{ opacity:.9; }

.site-container,
.container{
  width:min(calc(100% - 40px), var(--max));
  margin:0 auto;
}

.screen-reader-text{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}

.skip-link:focus{
  position:fixed;
  left:16px;
  top:16px;
  z-index:999;
  width:auto;
  height:auto;
  background:#fff;
  color:#000;
  padding:10px 14px;
}

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  backdrop-filter: blur(12px);
  background:rgba(8,8,8,.58);
  border-bottom:1px solid rgba(255,255,255,.06);
}

.site-header-inner{
  width:min(calc(100% - 40px), var(--max));
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 0;
  gap:20px;
}

.branding{
  display:flex;
  align-items:center;
  gap:14px;
}

.custom-logo-link img{ max-height:44px; width:auto; }

.site-title{
  margin:0;
  font-size:.95rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-weight:500;
}

.site-title a{
  text-decoration:none;
  color:var(--ivory);
}

.site-tagline{
  margin:2px 0 0;
  font-size:.8rem;
  color:var(--muted-2);
  letter-spacing:.06em;
}

.main-navigation ul{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  gap:22px;
  flex-wrap:wrap;
}

.main-navigation a{
  text-decoration:none;
  color:rgba(244,239,230,.8);
  font-size:.92rem;
}

.main-navigation a:hover,
.main-navigation .current-menu-item > a{
  color:var(--white);
}

.site-main{ min-height:55vh; }

.hero{
  min-height:100svh;
  display:flex;
  align-items:center;
  position:relative;
  isolation:isolate;
  padding:88px 0 80px;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(5,5,5,.88) 0%, rgba(5,5,5,.62) 42%, rgba(5,5,5,.30) 100%),
    radial-gradient(circle at 70% 30%, rgba(244,239,230,.16), transparent 24%),
    radial-gradient(circle at 82% 58%, rgba(244,239,230,.08), transparent 18%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='1100' viewBox='0 0 1600 1100'%3E%3Crect width='1600' height='1100' fill='%23131313'/%3E%3Cg opacity='0.28'%3E%3Ccircle cx='1170' cy='550' r='290' fill='none' stroke='%23f4efe6' stroke-width='1.2'/%3E%3Ccircle cx='1170' cy='550' r='245' fill='none' stroke='%23e9dfcf' stroke-width='0.8'/%3E%3Ccircle cx='1170' cy='550' r='200' fill='none' stroke='%23f4efe6' stroke-width='0.8'/%3E%3Cline x1='1170' y1='290' x2='1170' y2='810' stroke='%23f4efe6' stroke-width='0.8'/%3E%3Cline x1='910' y1='550' x2='1430' y2='550' stroke='%23f4efe6' stroke-width='0.8'/%3E%3C/g%3E%3Cg opacity='0.12'%3E%3Crect x='1000' y='170' width='370' height='670' rx='20' fill='none' stroke='%23f4efe6'/%3E%3C/g%3E%3Cg opacity='0.22'%3E%3Cpath d='M180 850C300 700 430 710 560 605C650 532 705 435 775 330' fill='none' stroke='%23e9dfcf' stroke-width='1.4'/%3E%3Cpath d='M150 770C270 680 430 655 520 570C610 486 690 387 745 275' fill='none' stroke='%23f4efe6' stroke-width='0.9'/%3E%3C/g%3E%3C/svg%3E") center/cover no-repeat;
  z-index:-2;
}

.hero.has-image::before{
  background:
    linear-gradient(90deg, rgba(5,5,5,.88) 0%, rgba(5,5,5,.62) 42%, rgba(5,5,5,.28) 100%),
    var(--hero-image) center/cover no-repeat;
}

.hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:180px;
  background:linear-gradient(180deg, transparent, rgba(12,12,12,.96));
  z-index:-1;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:40px;
  width:100%;
  align-items:end;
}

.eyebrow{
  display:inline-flex;
  gap:10px;
  align-items:center;
  border:1px solid rgba(244,239,230,.20);
  background:rgba(255,255,255,.03);
  padding:10px 14px;
  border-radius:999px;
  font-size:.82rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:18px;
  color:var(--ivory-soft);
}

.hero-title{
  margin:0 0 18px;
  font-size:clamp(3rem, 7vw, 6rem);
  line-height:.92;
  letter-spacing:-.03em;
  font-weight:500;
  max-width:10ch;
}

.hero-copy{
  margin:0;
  max-width:650px;
  font-size:clamp(1rem, 1.5vw, 1.16rem);
  color:rgba(244,239,230,.82);
}

.hero-actions{
  margin-top:28px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.button,
.wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 20px;
  border-radius:999px;
  text-decoration:none;
  border:1px solid transparent;
  font-size:.95rem;
  letter-spacing:.03em;
  transition:transform .3s var(--ease), background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}

.button:hover,
.wp-block-button__link:hover{
  transform:translateY(-2px);
}

.button--primary{ background:var(--ivory); color:var(--black); }
.button--secondary{ background:transparent; color:var(--ivory); border-color:rgba(244,239,230,.24); }

.hero-panel,
.surface{
  width:min(100%, 430px);
  padding:28px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(244,239,230,.13);
  box-shadow:var(--shadow);
}

.hero-panel h2,
.surface h2{
  margin:0 0 8px;
  font-size:1rem;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:var(--ivory-soft);
  font-weight:500;
}

.hero-panel p,
.surface p{
  color:rgba(244,239,230,.76);
  margin:0;
}

.stats{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}

.stat{
  padding:14px 12px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(244,239,230,.12);
}

.stat strong{
  display:block;
  font-size:1.2rem;
  font-weight:500;
  color:var(--white);
}

.stat span{
  display:block;
  font-size:.83rem;
  color:rgba(244,239,230,.68);
}

.section{
  padding:84px 0;
  position:relative;
}

.section-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
}

.section-head h2,
.entry-title,
.archive-title{
  margin:0;
  font-size:clamp(1.9rem, 4vw, 3rem);
  font-weight:500;
  letter-spacing:-.02em;
  line-height:1.05;
}

.section-head p,
.entry-summary,
.archive-description,
.entry-content,
.page-content{
  margin:0;
  color:rgba(244,239,230,.72);
}

.cards{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:22px;
}

.card{
  position:relative;
  overflow:hidden;
  padding:28px;
  min-height:370px;
  border-radius:var(--radius);
  border:1px solid rgba(244,239,230,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow:var(--shadow);
  transition:transform .45s var(--ease), border-color .45s var(--ease);
}

.card:hover,
.post-card:hover{ transform:translateY(-6px); border-color:rgba(244,239,230,.24); }

.card::before,
.post-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(244,239,230,.12), transparent 30%);
  pointer-events:none;
}

.card-number{
  display:inline-flex;
  width:42px;
  height:42px;
  border-radius:999px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(244,239,230,.18);
  font-size:.95rem;
  color:var(--ivory-soft);
  margin-bottom:22px;
  background:rgba(255,255,255,.02);
}

.card h3{
  margin:0 0 12px;
  font-size:1.65rem;
  line-height:1.05;
  font-weight:500;
}

.card p{
  margin:0 0 18px;
  color:rgba(244,239,230,.76);
  max-width:34ch;
}

.card-meta{
  position:absolute;
  bottom:24px;
  left:28px;
  right:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  color:var(--ivory-soft);
  font-size:.88rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.line{
  flex:1;
  height:1px;
  background:rgba(244,239,230,.16);
}

.articles-wrap{
  border:1px solid rgba(244,239,230,.10);
  border-radius:30px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  padding:22px;
  box-shadow:var(--shadow);
}

.articles-grid,
.post-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.post-card,
.article-card{
  position:relative;
  padding:24px;
  border-radius:22px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(244,239,230,.10);
  transition:transform .35s var(--ease), border-color .35s var(--ease);
}

.entry-meta,
.post-date{
  display:block;
  margin-bottom:12px;
  color:rgba(244,239,230,.62);
  font-size:.85rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.post-card h3,
.article-card h2{
  margin:0 0 12px;
  font-weight:500;
  font-size:1.28rem;
  line-height:1.2;
}

.post-card h3 a,
.article-card h2 a{
  text-decoration:none;
  color:var(--ivory);
}

.post-card p,
.article-card .excerpt{
  margin:0 0 16px;
  color:rgba(244,239,230,.74);
}

.text-link{
  text-decoration:none;
  position:relative;
  display:inline-block;
}

.text-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-3px;
  width:100%;
  height:1px;
  background:currentColor;
  transform-origin:left;
  transform:scaleX(.35);
  transition:transform .35s var(--ease);
}

.text-link:hover::after{ transform:scaleX(1); }

.content-area{
  padding:72px 0;
}

.content-shell{
  width:min(calc(100% - 40px), 900px);
  margin:0 auto;
}

.page-header,
.entry-header{
  margin-bottom:28px;
}

.entry-content > *:first-child,
.page-content > *:first-child{ margin-top:0; }

.entry-content a,
.page-content a{ text-decoration:underline; }

.entry-content img,
.page-content img{
  border-radius:20px;
  margin:18px 0;
}

.wp-block-image img{ border-radius:20px; }

.wp-block-quote{
  margin:28px 0;
  padding:18px 24px;
  border-left:2px solid rgba(244,239,230,.35);
  color:var(--ivory-soft);
  background:rgba(255,255,255,.02);
  border-radius:0 16px 16px 0;
}

.pagination,
.nav-links{
  margin-top:28px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.page-numbers,
.nav-links a,
.nav-links span{
  display:inline-flex;
  min-width:42px;
  min-height:42px;
  padding:0 14px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(244,239,230,.16);
  text-decoration:none;
  color:var(--ivory);
}

.page-numbers.current{ background:var(--ivory); color:var(--black); }

.site-footer{
  padding:34px 0 46px;
  color:rgba(244,239,230,.62);
  font-size:.92rem;
}

.site-footer-inner{
  width:min(calc(100% - 40px), var(--max));
  margin:0 auto;
  padding-top:20px;
  border-top:1px solid rgba(244,239,230,.10);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
}

.reveal{
  opacity:1;
  transform:translateY(0);
  transition:opacity .8s var(--ease), transform .8s var(--ease);
}
.reveal.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media (max-width: 980px){
  .hero-grid,
  .cards,
  .articles-grid,
  .post-grid{
    grid-template-columns:1fr;
  }

  .hero{
    min-height:auto;
  }

  .stats{
    grid-template-columns:repeat(3,1fr);
  }
}

@media (max-width: 700px){
  .site-header-inner{
    align-items:flex-start;
    flex-direction:column;
  }

  .hero{
    padding:72px 0 62px;
  }

  .stats{
    grid-template-columns:1fr;
  }

  .hero-panel,
  .surface,
  .card,
  .post-card,
  .article-card{
    padding:22px;
  }

  .section,
  .content-area{
    padding:64px 0;
  }
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *, *::before, *::after{
    transition:none !important;
    animation:none !important;
  }
  .reveal{
    opacity:1;
    transform:none;
  }
}


/* v1.2 dynamic editorial */
.section-label{
  display:inline-block;
  margin-bottom:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.84rem;
  color:rgba(244,239,230,.72);
}
.hero-subtitle{
  margin:10px 0 0;
  font-size:1rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(244,239,230,.68);
}
.hero-text{
  max-width:44rem;
}
.editorial-hero.has-custom-hero{
  background-size:cover;
  background-position:center center;
}
.card{
  position:relative;
}
.card-link-overlay{
  position:absolute;
  inset:0;
  z-index:1;
}
.card h3, .card p, .card .meta, .card .card-number{
  position:relative;
  z-index:2;
}
.card h3 a,
.article h3 a{
  color:inherit;
  text-decoration:none;
}
.card h3 a:hover,
.article h3 a:hover{
  color:var(--white);
}
.article-empty{
  opacity:.92;
}
.entry-content .wp-block-gallery,
.entry-content .blocks-gallery-grid{
  margin:2rem 0;
}
.entry-content .wp-block-image img{
  height:auto;
}

/* v1.3 Journal carousel */
.journal-slider{
  --journal-gap:18px;
  position:relative;
  overflow:hidden;
  padding:28px;
  border-radius:30px;
}

.journal-track{
  display:flex;
  gap:var(--journal-gap);
  will-change:transform;
}

.journal-card{
  min-height:360px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(244,239,230,.10);
  background:rgba(255,255,255,.025);
  display:flex;
  flex-direction:column;
  flex:0 0 calc((100% - (var(--journal-gap) * 2)) / 3);
  min-width:calc((100% - (var(--journal-gap) * 2)) / 3);
}

.journal-slider.is-animated .journal-track{
  flex-wrap:nowrap;
}

.journal-image-link{
  display:block;
  text-decoration:none;
}

.journal-image{
  height:190px;
  background-size:cover;
  background-position:center;
  background-color:rgba(255,255,255,.03);
  border-bottom:1px solid rgba(244,239,230,.08);
}

.journal-image.no-image{
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(244,239,230,.56);
  font-size:.92rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.journal-body{
  padding:20px 20px 24px;
}

.journal-date{
  margin-bottom:10px;
  color:rgba(244,239,230,.62);
  font-size:.82rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.journal-card h3{
  margin:0 0 12px;
  font-size:1.38rem;
  line-height:1.18;
}

.journal-card h3 a{
  color:inherit;
  text-decoration:none;
}

.journal-card h3 a:hover{
  color:var(--white);
}

.journal-card p{
  margin:0;
  color:rgba(244,239,230,.74);
  font-size:.98rem;
}

.journal-dots{
  display:none;
}

.journal-empty-state{
  padding:28px 0 6px;
}

.journal-empty-box{
  min-height:160px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:24px;
  border-radius:22px;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(244,239,230,.08);
}

.journal-empty-box strong{
  display:block;
  margin-bottom:10px;
  font-size:1.2rem;
}

@media (max-width: 767px){
  .journal-slider{
    --journal-gap:14px;
    overflow:hidden;
    -webkit-overflow-scrolling:touch;
  }

  .journal-track{
    gap:var(--journal-gap);
    flex-wrap:nowrap;
    width:max-content;
    will-change:transform;
  }

  .journal-card{
    flex:0 0 min(100%, calc(100vw - 96px));
    min-width:min(100%, calc(100vw - 96px));
  }
}

/* v1.5 page hubs */
.page-hub-main{
  padding-bottom: 20px;
}
.page-hub-hero{
  padding: 110px 0 40px;
  border-bottom:1px solid rgba(244,239,230,.08);
}
.page-hub-hero-grid{
  display:grid;
  grid-template-columns:1fr;
}
.page-hub-copy h1{
  margin:0 0 14px;
  font-size:clamp(2.6rem, 6vw, 5rem);
  line-height:.95;
  letter-spacing:-.03em;
}
.page-hub-intro{
  max-width:780px;
  font-size:1.08rem;
  color:rgba(244,239,230,.76);
}
.page-content-section{
  padding-top:36px;
  padding-bottom:24px;
}
.page-body-copy{
  max-width:860px;
}
.page-hub-archive{
  padding-top:28px;
}
.hub-featured-card{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:0;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(244,239,230,.10);
  background:rgba(255,255,255,.025);
  box-shadow:var(--shadow);
  margin-bottom:22px;
}
.hub-featured-image{
  min-height:430px;
  background-size:cover;
  background-position:center;
  background-color:rgba(255,255,255,.03);
}
.hub-featured-image.no-image,
.hub-card-image.no-image{
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(244,239,230,.56);
  font-size:.9rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hub-featured-body{
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.hub-kicker{
  margin-bottom:12px;
  color:rgba(244,239,230,.64);
  font-size:.82rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.hub-featured-body h3,
.hub-card-body h3{
  margin:0 0 14px;
  font-size:clamp(1.5rem, 2vw, 2.3rem);
  line-height:1.08;
}
.hub-featured-body h3 a,
.hub-card-body h3 a{
  color:inherit;
  text-decoration:none;
}
.hub-featured-body h3 a:hover,
.hub-card-body h3 a:hover{
  color:var(--white);
}
.hub-featured-body p,
.hub-card-body p{
  margin:0;
  color:rgba(244,239,230,.74);
}
.hub-readmore{
  margin-top:20px;
  color:var(--ivory);
  text-decoration:none;
  display:inline-block;
}
.hub-readmore:hover{
  color:var(--white);
}
.hub-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}
.hub-card{
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(244,239,230,.10);
  background:rgba(255,255,255,.025);
  box-shadow:var(--shadow);
  transition:transform .35s var(--ease), border-color .35s var(--ease);
}
.hub-card:hover{
  transform:translateY(-4px);
  border-color:rgba(244,239,230,.22);
}
.hub-card-image{
  height:250px;
  background-size:cover;
  background-position:center;
  background-color:rgba(255,255,255,.03);
}
.hub-card-body{
  padding:22px;
}
@media (max-width: 1100px){
  .hub-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 980px){
  .hub-featured-card{
    grid-template-columns:1fr;
  }
  .hub-featured-image{
    min-height:320px;
  }
}
@media (max-width: 720px){
  .hub-grid{
    grid-template-columns:1fr;
  }
  .hub-featured-body,
  .hub-card-body{
    padding:22px;
  }
  .hub-card-image{
    height:220px;
  }
}

/* Spaziatura contenuto hero lato sinistro */
.hero-left {
  padding-left: 60px;
}

@media (max-width: 1024px) {
  .hero-left {
      padding-left: 30px;
      padding-right: 20px;
  }
}

/* STEP animazioni home allo scroll */
.hero-panel .stat{
  opacity:0;
  transform:translateY(20px);
}

.hero-panel.is-visible .stat{
  animation: statReveal .8s ease forwards;
}

.hero-panel.is-visible .stat:nth-child(1){ animation-delay: .2s; }
.hero-panel.is-visible .stat:nth-child(2){ animation-delay: .5s; }
.hero-panel.is-visible .stat:nth-child(3){ animation-delay: .8s; }
.hero-panel.is-visible .stat:nth-child(4){ animation-delay: 1.1s; }

@keyframes statReveal{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

/* FIX mobile Journal - rimuove box esterno */
@media (max-width: 767px){

  .journal-slider{
    padding:0;
    border:none;
    background:transparent;
    box-shadow:none;
  }

}
/* Footer Aurestetic definitivo */
.aurestetic-footer{
  margin-top:80px;
  padding:64px 0 36px;
  color:rgba(244,239,230,.72);
  background:
    radial-gradient(circle at 12% 10%, rgba(244,239,230,.08), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.025), rgba(0,0,0,.18));
  border-top:1px solid rgba(244,239,230,.10);
}

.aurestetic-footer .site-footer-inner,
.aurestetic-footer-inner{
  width:min(calc(100% - 40px), var(--max));
  margin:0 auto;
  padding-top:0;
  border-top:none;
  display:block;
}

.aurestetic-footer-grid{
  display:grid;
  grid-template-columns:minmax(0, .92fr) minmax(360px, 1.08fr);
  gap:26px;
  align-items:start;
}

.aurestetic-footer-brand,
.aurestetic-footer-contact,
.aurestetic-footer-collab{
  border:1px solid rgba(244,239,230,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
  border-radius:28px;
  box-shadow:var(--shadow);
}

.aurestetic-footer-brand{ padding:30px; }
.aurestetic-footer-contact{ padding:30px; }

.aurestetic-footer-brand h2{
  margin:0 0 6px;
  font-size:clamp(2.05rem, 4vw, 3.5rem);
  line-height:.92;
  letter-spacing:-.035em;
  font-weight:500;
  color:var(--ivory);
}

.aurestetic-footer-brand h3,
.aurestetic-footer-contact h3{
  margin:0 0 12px;
  color:var(--ivory);
  font-weight:500;
  line-height:1.08;
}

.aurestetic-footer-contact h3{ font-size:clamp(1.55rem, 2.6vw, 2.35rem); }

.aurestetic-footer-subtitle,
.aurestetic-footer-section-title{
  margin:0 0 18px;
  font-size:.82rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(244,239,230,.66);
}

.aurestetic-footer-text,
.aurestetic-footer-contact p,
.aurestetic-footer-collab p{
  margin:0;
  max-width:48ch;
  color:rgba(244,239,230,.70);
}

.aurestetic-footer-collab{
  margin-top:18px;
  padding:24px;
  box-shadow:none;
  background:rgba(255,255,255,.022);
}

.aurestetic-footer-collab h3{ font-size:1.18rem; }

.aurestetic-footer-collab ul{
  display:grid;
  gap:8px;
  margin:18px 0 0;
  padding:0;
  list-style:none;
}

.aurestetic-footer-collab li{
  position:relative;
  padding-left:18px;
  color:rgba(244,239,230,.76);
  font-size:.96rem;
}

.aurestetic-footer-collab li::before{
  content:"";
  position:absolute;
  left:0;
  top:.78em;
  width:7px;
  height:1px;
  background:rgba(244,239,230,.48);
}

.aurestetic-footer-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:20px;
  color:var(--ivory);
  text-decoration:none;
  font-size:.88rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.aurestetic-footer-cta::after{ content:"→"; transform:translateY(-1px); }
.aurestetic-footer-cta:hover{ opacity:1; transform:translateX(2px); }

.aurestetic-footer-form{ margin-top:22px; }

.aurestetic-footer-form .fluentform_wrapper input,
.aurestetic-footer-form .fluentform_wrapper textarea,
.aurestetic-footer-form .fluentform_wrapper select,
.aurestetic-footer-form .ff-el-form-control{
  width:100%;
  padding:14px 16px;
  background:rgba(255,255,255,.025) !important;
  border:1px solid rgba(244,239,230,.14) !important;
  border-radius:14px !important;
  color:var(--ivory) !important;
  font-family:inherit;
  box-shadow:none !important;
}

.aurestetic-footer-form .fluentform_wrapper textarea,
.aurestetic-footer-form textarea.ff-el-form-control{ min-height:132px; }

.aurestetic-footer-form .fluentform_wrapper label,
.aurestetic-footer-form .ff-el-input--label label{
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(244,239,230,.62) !important;
  font-weight:400 !important;
}

.aurestetic-footer-form .ff-btn-submit,
.aurestetic-footer-form button[type="submit"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 20px !important;
  border-radius:999px !important;
  border:1px solid transparent !important;
  background:var(--ivory) !important;
  color:var(--black) !important;
  font-family:inherit;
  cursor:pointer;
  transition:transform .28s var(--ease), opacity .28s var(--ease);
}

.aurestetic-footer-form .ff-btn-submit:hover,
.aurestetic-footer-form button[type="submit"]:hover{ transform:translateY(-2px); opacity:.95; }

.aurestetic-footer-partners{
  margin-top:26px;
  padding:22px 0;
  border-top:1px solid rgba(244,239,230,.09);
  border-bottom:1px solid rgba(244,239,230,.09);
  overflow:hidden;
}

.aurestetic-partner-slider{
  position:relative;
  overflow:hidden;
  mask-image:linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
}

.aurestetic-partner-track{
  display:flex;
  gap:16px;
  width:max-content;
  animation:auresteticPartnerSlide 36s linear infinite;
}

.aurestetic-partner-slider:hover .aurestetic-partner-track{ animation-play-state:paused; }

.aurestetic-partner-item{
  min-width:160px;
  height:78px;
  padding:12px 16px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  text-align:center;
  text-decoration:none;
  border:1px solid rgba(244,239,230,.10);
  border-radius:18px;
  background:rgba(255,255,255,.025);
  color:rgba(244,239,230,.78);
}

.aurestetic-partner-item img{
  max-width:82px;
  max-height:34px;
  object-fit:contain;
  filter:grayscale(1);
  opacity:.74;
}

.aurestetic-partner-item span{
  font-size:.8rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.aurestetic-partner-item:hover{
  border-color:rgba(244,239,230,.24);
  color:var(--ivory);
  opacity:1;
}

@keyframes auresteticPartnerSlide{
  from{ transform:translate3d(0,0,0); }
  to{ transform:translate3d(-50%,0,0); }
}

.aurestetic-footer-meta{
  margin-top:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}

.aurestetic-footer-social,
.aurestetic-footer-legal{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.aurestetic-footer-social a{
  width:40px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(244,239,230,.14);
  background:rgba(255,255,255,.02);
  color:rgba(244,239,230,.78);
  text-decoration:none;
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.aurestetic-footer-social a:hover{
  border-color:rgba(244,239,230,.30);
  color:var(--ivory);
  transform:translateY(-2px);
}

.aurestetic-footer-legal a,
.aurestetic-footer-legal button{
  appearance:none;
  border:1px solid rgba(244,239,230,.14);
  background:rgba(255,255,255,.02);
  color:rgba(244,239,230,.78);
  text-decoration:none;
  font:inherit;
  font-size:.82rem;
  line-height:1;
  border-radius:999px;
  padding:12px 14px;
  cursor:pointer;
}

.aurestetic-footer-legal a:hover,
.aurestetic-footer-legal button:hover{
  color:var(--ivory);
  border-color:rgba(244,239,230,.30);
  opacity:1;
}

.aurestetic-footer-bottom{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(244,239,230,.08);
  color:rgba(244,239,230,.52);
  font-size:.86rem;
  letter-spacing:.04em;
}

@media (max-width: 980px){
  .aurestetic-footer-grid{ grid-template-columns:1fr; }
  .aurestetic-footer-contact{ padding:26px; }
}

@media (max-width: 700px){
  .aurestetic-footer{ margin-top:56px; padding:48px 0 30px; }

  .aurestetic-footer-brand,
  .aurestetic-footer-contact{ padding:22px; border-radius:24px; }

  .aurestetic-footer-collab{ padding:20px; }

  .aurestetic-footer-meta{
    align-items:flex-start;
    flex-direction:column;
  }

  .aurestetic-footer-legal{
    width:100%;
    align-items:stretch;
    flex-direction:column;
  }

  .aurestetic-footer-legal a,
  .aurestetic-footer-legal button{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .aurestetic-partner-item{ min-width:140px; }
}

/* Footer Aurestetic v2 - richieste utente: layout minimale, senza box interni */
.aurestetic-footer-brand,
.aurestetic-footer-contact,
.aurestetic-footer-collab{
  border:none;
  background:transparent;
  box-shadow:none;
  border-radius:0;
}

.aurestetic-footer-brand,
.aurestetic-footer-contact{
  padding:0;
}

.aurestetic-footer-collab{
  margin-top:34px;
  padding:26px 0 0;
  border-top:1px solid rgba(244,239,230,.10);
}

.aurestetic-footer-grid{
  gap:54px;
}

.aurestetic-collab-slider{
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  margin:22px 0 2px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(244,239,230,.12);
  background:rgba(255,255,255,.025);
  isolation:isolate;
}

.aurestetic-collab-slides,
.aurestetic-collab-slide{
  position:absolute;
  inset:0;
}

.aurestetic-collab-slide{
  opacity:0;
  transition:opacity .7s var(--ease);
}

.aurestetic-collab-slide.is-active{
  opacity:1;
}

.aurestetic-collab-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.aurestetic-collab-slider::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 55%, rgba(0,0,0,.28));
  pointer-events:none;
  z-index:1;
}

.aurestetic-collab-arrow{
  position:absolute;
  top:50%;
  z-index:2;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(244,239,230,.22);
  background:rgba(10,10,10,.34);
  color:var(--ivory);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.7rem;
  line-height:1;
  cursor:pointer;
  opacity:0;
  transform:translateY(-50%);
  transition:opacity .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease);
}

.aurestetic-collab-prev{ left:12px; }
.aurestetic-collab-next{ right:12px; }

.aurestetic-collab-slider:hover .aurestetic-collab-arrow,
.aurestetic-collab-arrow:focus-visible{
  opacity:1;
}

.aurestetic-collab-arrow:hover{
  background:rgba(10,10,10,.62);
  border-color:rgba(244,239,230,.40);
}

.aurestetic-footer-social a{
  min-width:40px;
  width:auto;
  padding:0 12px;
}

@media (max-width: 700px){
  .aurestetic-footer-grid{ gap:42px; }

  .aurestetic-footer-brand,
  .aurestetic-footer-contact{
    padding:0;
    border-radius:0;
  }

  .aurestetic-footer-collab{ padding:24px 0 0; }

  .aurestetic-collab-arrow{ opacity:1; }
}

/* FIX Journal - rimuove box esterno, mantiene solo le card in scorrimento */
.journal-slider.articles-wrap{
  padding:0;
  border:none;
  background:transparent;
  box-shadow:none;
  border-radius:0;
}

.journal-slider.articles-wrap::before{
  display:none;
}

@media (max-width: 767px){
  .journal-slider.articles-wrap{
    padding:0;
    border:none;
    background:transparent;
    box-shadow:none;
    border-radius:0;
  }
}


/* FIX Percorsi - 4 card in una sola riga desktop */
@media (min-width: 981px){
  #percorsi .cards{
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }

  #percorsi .card{
    min-height:350px;
  }

  #percorsi .card h3{
    font-size:clamp(1.28rem, 1.65vw, 1.65rem);
  }

  #percorsi .card p{
    font-size:.96rem;
  }
}

@media (min-width: 981px) and (max-width: 1180px){
  #percorsi .cards{
    gap:16px;
  }

  #percorsi .card{
    padding:24px;
  }
}


/* v7 Hero metriche - 2 colonne cliccabili */
.hero-panel .metrics-stats{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.hero-panel .metric-stat{
  min-height:88px;
  padding:18px 16px;
  text-decoration:none;
  color:inherit;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}

.hero-panel .metric-stat:hover{
  opacity:1;
  transform:translateY(-3px);
  border-color:rgba(244,239,230,.28);
  background:rgba(255,255,255,.045);
}

.hero-panel .metric-stat strong{
  font-size:1.55rem;
  line-height:1;
  margin-bottom:8px;
}

.hero-panel .metric-stat span{
  font-size:.9rem;
}

#percorso-gabriele-dannunzio,
#percorso-galleria-orologi,
#percorso-area-editoriale,
#percorso-arte-varia{
  scroll-margin-top:110px;
}

@media (max-width: 700px){
  .hero-panel .metrics-stats{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .hero-panel .metric-stat{
    min-height:76px;
    padding:14px 12px;
  }
}



/* v8 Header menu dropdown + social indipendenti */
.aurestetic-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;position:relative;}
.aurestetic-header-menu{position:relative;}
.aurestetic-header-menu summary{list-style:none;}
.aurestetic-header-menu summary::-webkit-details-marker{display:none;}
.aurestetic-header-menu-trigger{display:inline-flex;align-items:center;gap:10px;cursor:pointer;color:var(--ivory);font-size:.86rem;letter-spacing:.16em;text-transform:uppercase;user-select:none;padding:10px 0;}
.aurestetic-header-menu-trigger::after{content:"";width:28px;height:1px;background:rgba(244,239,230,.72);box-shadow:0 7px 0 rgba(244,239,230,.72),0 -7px 0 rgba(244,239,230,.72);transition:transform .28s var(--ease),opacity .28s var(--ease);}
.aurestetic-header-menu[open] .aurestetic-header-menu-trigger::after{transform:rotate(90deg);opacity:.82;}
.aurestetic-header-dropdown{position:absolute;top:calc(100% + 18px);right:0;min-width:260px;padding:18px;border-radius:22px;border:1px solid rgba(244,239,230,.12);background:rgba(12,12,12,.94);backdrop-filter:blur(14px);box-shadow:0 22px 70px rgba(0,0,0,.34);z-index:300;}
.aurestetic-header-dropdown ul,.aurestetic-header-dropdown .menu{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;}
.aurestetic-header-dropdown a{display:block;padding:11px 12px;border-radius:14px;color:rgba(244,239,230,.78);text-decoration:none;font-size:.95rem;}
.aurestetic-header-dropdown a:hover,.aurestetic-header-dropdown .current-menu-item > a{color:var(--ivory);background:rgba(255,255,255,.045);}
.aurestetic-header-socials{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.aurestetic-header-socials a{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 9px;border-radius:999px;border:1px solid rgba(244,239,230,.13);color:rgba(244,239,230,.72);text-decoration:none;font-size:.72rem;letter-spacing:.12em;line-height:1;}
.aurestetic-header-socials a:hover{color:var(--ivory);border-color:rgba(244,239,230,.34);background:rgba(255,255,255,.035);}
@media (max-width:980px){.aurestetic-header-actions{width:100%;justify-content:space-between;}.aurestetic-header-dropdown{right:auto;left:0;}}
@media (max-width:700px){.aurestetic-header-actions{gap:12px;align-items:flex-start;}.aurestetic-header-socials{max-width:210px;}.aurestetic-header-dropdown{min-width:min(280px,calc(100vw - 40px));}}

/* v9 Atlante visivo Pinterest */
.aurestetica-atlas-section{padding-top:40px;padding-bottom:84px;}
.aurestetica-atlas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.aurestetica-atlas-item{position:relative;display:block;min-height:360px;border-radius:24px;overflow:hidden;border:1px solid rgba(244,239,230,.10);background:rgba(255,255,255,.025);text-decoration:none;box-shadow:var(--shadow);transition:transform .4s var(--ease),border-color .4s var(--ease),opacity .4s var(--ease);}
.aurestetica-atlas-item:nth-child(2n){margin-top:34px;}
.aurestetica-atlas-item:hover{transform:translateY(-5px);border-color:rgba(244,239,230,.24);opacity:1;}
.aurestetica-atlas-image{position:absolute;inset:0;display:block;background-size:cover;background-position:center;transform:scale(1.01);transition:transform .6s var(--ease),filter .6s var(--ease);}
.aurestetica-atlas-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;}
.aurestetica-atlas-item:hover .aurestetica-atlas-image{transform:scale(1.06);filter:saturate(.92) contrast(1.04);}
.aurestetica-atlas-item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.72));pointer-events:none;}
.aurestetica-atlas-caption{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;color:rgba(244,239,230,.88);font-size:.9rem;line-height:1.35;letter-spacing:.02em;}
.aurestetica-atlas-cta{margin-top:26px;display:flex;justify-content:flex-end;}
@media (max-width:1100px){.aurestetica-atlas-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:720px){.aurestetica-atlas-section{padding-top:28px;padding-bottom:64px;}.aurestetica-atlas-grid{grid-template-columns:1fr;gap:16px;}.aurestetica-atlas-item,.aurestetica-atlas-item:nth-child(2n){min-height:420px;margin-top:0;}.aurestetica-atlas-cta{justify-content:flex-start;}}
