/* Fughecementizie — design corporate / export
   Palette: blu navy + grigio ardesia, un solo accento ambra.
   Font: Poppins (titoli), Inter (testo), Noto Sans Arabic (arabo). */

:root{
  --navy:#0f2c46; --navy-dark:#081b2e; --slate:#4a5563; --slate-light:#eef1f4;
  --accent:#d98c2b; --accent-dark:#b96f18; --white:#fff; --text:#26313d;
  --border:#dfe4e9; --radius:6px; --maxw:1180px;
  --font-head:'Poppins',Arial,sans-serif;
  --font-body:'Inter',Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--text);background:var(--white)}
[dir="rtl"] body{font-family:'Noto Sans Arabic','Inter',Tahoma,Arial,sans-serif}
[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] .btn{font-family:'Noto Sans Arabic','Poppins',Tahoma,Arial,sans-serif}
h1,h2,h3,h4{font-family:var(--font-head);color:var(--navy);margin:0 0 .5em;line-height:1.25}
p{margin:0 0 1em}
a{color:var(--navy);text-decoration:none}
a:hover,a:focus-visible{color:var(--accent)}
img{max-width:100%;height:auto;display:block}
address{font-style:normal}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.section{padding:64px 0}
.section--gray{background:var(--slate-light)}
.section--navy{background:var(--navy);color:var(--white)}
.section--navy h1,.section--navy h2,.section--navy h3{color:var(--white)}
.text-center{text-align:center}
.eyebrow{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:600;color:var(--accent);margin-bottom:.6em}
[dir="rtl"] .eyebrow{letter-spacing:0}
.btn{display:inline-block;padding:.85em 1.8em;border:0;border-radius:var(--radius);background:var(--accent);color:var(--white)!important;font-weight:600;font-family:var(--font-head);font-size:1rem;cursor:pointer;transition:background .2s}
.btn:hover{background:var(--accent-dark)}
.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;inset-inline-start:8px;top:-60px;z-index:1000;background:var(--navy);color:var(--white);padding:10px 16px;border-radius:var(--radius)}
.skip-link:focus{top:8px;color:var(--white)}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:var(--white);border-bottom:1px solid var(--border)}
.header-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 28px;padding-top:12px;padding-bottom:12px}
.brand{display:block;line-height:0}
.logo{height:36px;width:auto;max-width:100%}
.nav-main{display:flex;flex-wrap:wrap;gap:8px 26px;align-items:center}
.nav-main a{font-weight:500;font-size:.95rem;padding:4px 0;border-bottom:2px solid transparent}
.nav-main a[aria-current="page"]{color:var(--accent);border-bottom-color:var(--accent)}
.lang-switch{display:flex;gap:4px}
.lang-switch a{font-size:.75rem;font-weight:600;padding:4px 8px;border:1px solid var(--border);border-radius:var(--radius);color:var(--slate)}
.lang-switch a[aria-current="true"]{background:var(--navy);border-color:var(--navy);color:var(--white)}
.lang-switch a:hover{border-color:var(--accent)}

/* Hero */
.hero{position:relative;display:flex;align-items:center;min-height:68vh;color:var(--white);text-align:center;
  background:linear-gradient(rgba(8,27,46,.66),rgba(8,27,46,.66)),url("../wp-content/uploads/2023/06/1.webp") center/cover no-repeat var(--navy-dark)}
@media (max-width:767px){
  .hero{min-height:56vh;background-image:linear-gradient(rgba(8,27,46,.66),rgba(8,27,46,.66)),url("../wp-content/uploads/2023/06/2.jpg")}
}
.hero .container{padding-top:72px;padding-bottom:72px}
.hero h1{color:var(--white);font-size:clamp(2.3rem,6.4vw,4.6rem);font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35em}
[dir="rtl"] .hero h1{letter-spacing:0;text-transform:none}
.hero .hero-sub{font-family:var(--font-head);font-size:clamp(1.05rem,2.2vw,1.6rem);font-weight:500;color:#f3d9b0;margin:0}

/* Intro + gallery */
.intro h2{text-align:center;font-size:clamp(1.4rem,3vw,2rem);max-width:900px;margin:0 auto}
.gallery{padding:0 0 56px}
/* Carosello */
.carousel{max-width:1400px;margin:0 auto;padding:0 24px}
.carousel-viewport{position:relative}
.carousel-track{display:flex;gap:16px;list-style:none;margin:0;padding:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-slide{flex:0 0 calc((100% - 32px)/3);scroll-snap-align:start;min-width:0}
.carousel-slide img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);background:var(--slate-light)}
.carousel-btn{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;align-items:center;justify-content:center;border:0;border-radius:50%;background:rgba(8,27,46,.78);color:var(--white);cursor:pointer;transition:background .2s}
.carousel-btn:hover,.carousel-btn:focus-visible{background:var(--accent)}
.carousel.is-ready .carousel-btn{display:flex}
.carousel-prev{inset-inline-start:12px}
.carousel-next{inset-inline-end:12px}
[dir="rtl"] .carousel-btn svg{transform:scaleX(-1)}
.carousel-controls{display:none;align-items:center;justify-content:center;gap:16px;margin-top:18px}
.carousel.is-ready .carousel-controls{display:flex}
.carousel-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
.carousel-dot{width:26px;height:26px;padding:0;border:0;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center}
.carousel-dot::before{content:"";width:10px;height:10px;border-radius:50%;background:#b7c0ca;transition:background .2s,transform .2s}
.carousel-dot[aria-current="true"]::before{background:var(--accent);transform:scale(1.25)}
.carousel-dot:hover::before{background:var(--navy)}
.carousel-pause{width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:var(--white);color:var(--navy);cursor:pointer;position:relative}
.carousel-pause::before{content:"";position:absolute;inset:0;margin:auto;width:12px;height:14px;background:linear-gradient(90deg,currentColor 0 4px,transparent 4px 8px,currentColor 8px 12px)}
.carousel-pause[aria-pressed="true"]::before{width:0;height:0;background:none;border-style:solid;border-width:7px 0 7px 12px;border-color:transparent transparent transparent currentColor}
[dir="rtl"] .carousel-pause[aria-pressed="true"]::before{border-width:7px 12px 7px 0;border-color:transparent currentColor transparent transparent}
.carousel-pause:hover,.carousel-pause:focus-visible{border-color:var(--accent);color:var(--accent)}
@media (max-width:1000px){.carousel-slide{flex-basis:calc((100% - 16px)/2)}}
@media (max-width:640px){.carousel{padding:0 12px}.carousel-slide{flex-basis:100%}.carousel-btn{width:42px;height:42px}}

/* Features */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.feature{background:var(--white);border-top:4px solid var(--accent);border-radius:var(--radius);padding:28px 26px;box-shadow:0 1px 3px rgba(15,44,70,.08)}
.feature h3{font-size:1.1rem}
.feature p{color:var(--slate);margin:0}

/* Split rows */
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-bottom:56px}
.split:last-child{margin-bottom:0}
.split img{border-radius:var(--radius);width:100%}
.split h2{font-size:clamp(1.5rem,3vw,2.1rem);text-transform:uppercase}
[dir="rtl"] .split h2{text-transform:none}
.split p{color:var(--slate)}

/* Partner links */
.partner-links{display:grid;grid-template-columns:1fr 1fr;gap:40px;text-align:center}
.partner-links p{color:var(--slate);margin-bottom:16px}
.partner-links img{margin:0 auto;max-height:110px;width:auto}

/* Pagine interne */
.page-title{text-align:center;margin-bottom:28px}
.lead{font-size:1.1rem;color:var(--slate)}
.feature-grid{display:grid;gap:36px;align-items:start}
.partners{display:grid;gap:28px}
.partner-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:20px;text-align:center}
.partner-card a{display:block}
.partner-card h3{font-size:1rem;margin-top:12px}

/* Footer */
.site-footer{background:var(--navy-dark);color:#cbd5df;padding:40px 0;font-size:.92rem}
.site-footer a{color:#f3d9b0}
.site-footer a:hover{color:var(--white)}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px 40px}
.footer-inner p{margin:0}
.footer-inner .copy{width:100%;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;font-size:.82rem;color:#93a3b3}

/* Responsive */
@media (max-width:900px){
  .features,.partner-links{grid-template-columns:1fr}
  .split{grid-template-columns:1fr;gap:24px}
  .section{padding:44px 0}
}
@media (max-width:640px){
  .header-inner{justify-content:center;text-align:center}
  .nav-main{justify-content:center}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.lang-switch,.skip-link{display:none}.hero{min-height:0;background:none;color:#000}.hero h1,.hero .hero-sub{color:#000}}

/* Form contatti */
.contact-form{display:flex;flex-direction:column;gap:16px}
.contact-form input,.contact-form textarea{width:100%;padding:13px 14px;border:1px solid var(--border);border-radius:var(--radius);font:inherit;color:var(--text);background:var(--white)}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);outline:2px solid rgba(217,140,43,.35)}
.contact-form textarea{resize:vertical}
.form-note{font-size:.85rem;color:var(--slate);text-align:center;margin:16px 0 0}

/* Griglie pagine interne */
.partners.cols-3{grid-template-columns:repeat(3,1fr)}
.partner-card h2{font-size:1.02rem;margin:14px 0 0}
.partner-card img{width:100%}
.lead.text-center p{margin-bottom:1.1em}
@media (max-width:820px){
  .feature-grid{grid-template-columns:1fr!important}
  .partners.cols-3{grid-template-columns:1fr}
  .feature-grid img{max-width:340px;margin:0 auto}
}

/* Pagina privacy */
.legal .legal-section{margin-top:32px}
.legal h2{font-size:1.15rem;margin-bottom:.6em}
.legal ul{padding-inline-start:1.3em;margin:0 0 1em}
.legal li{margin-bottom:.5em}
.legal a{text-decoration:underline}
@media (max-width:640px){.nav-main{gap:6px 16px}.nav-main a{font-size:.9rem}}
