/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/*AGGIUNTO*/
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
color: #1d1d1f;
background: #fff;
overflow-x: hidden;
}

.apple-section {
padding: 80px 20px;
max-width: 1200px;
margin: 0 auto;
}

/* Hero Section in stile Apple */
.apple-hero {
min-height: 90vh;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
background: #000;
color: #f5f5f7;
padding: 100px 20px;
position: relative;
overflow: hidden;
}

.apple-hero::before {
content: '';
position: absolute;
width: 150%;
height: 150%;
background: radial-gradient(circle at 50% 50%, rgba(29, 29, 31, 0.8) 0%, #000 70%);
animation: pulse 15s ease-in-out infinite;
}

@keyframes pulse {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.1); }
}

.apple-hero-content {
position: relative;
z-index: 1;
}

.apple-hero h1 {
font-size: clamp(3rem, 8vw, 6rem);
font-weight: 600;
letter-spacing: -0.015em;
line-height: 1.05;
margin-bottom: 20px;
background: linear-gradient(90deg, #f5f5f7 0%, #86868b 50%, #f5f5f7 100%);
background-size: 200% auto;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
animation: gradient 3s ease infinite;
}

@keyframes gradient {
0%, 100% { background-position: 0% center; }
50% { background-position: 100% center; }
}

.apple-hero .subtitle {
font-size: clamp(1.5rem, 3vw, 2.5rem);
font-weight: 300;
letter-spacing: -0.01em;
margin-bottom: 10px;
color: #a1a1a6;
}

.apple-hero .description {
font-size: 1.25rem;
font-weight: 400;
color: #86868b;
margin: 30px auto 50px;
max-width: 600px;
line-height: 1.4;
}

.apple-cta {
display: inline-flex;
gap: 20px;
margin-top: 20px;
}

.apple-btn {
padding: 12px 28px;
font-size: 17px;
font-weight: 400;
border-radius: 980px;
text-decoration: none;
transition: all 0.3s ease;
cursor: pointer;
border: none;
}

.apple-btn-primary {
background: #0071e3;
color: #fff;
}

.apple-btn-primary:hover {
background: #0077ed;
transform: scale(1.02);
}

.apple-btn-secondary {
background: transparent;
color: #2997ff;
border: 1px solid #2997ff;
}

.apple-btn-secondary:hover {
background: rgba(41, 151, 255, 0.1);
}

/* About Section */
.apple-about {
padding: 120px 20px;
background: #f5f5f7;
}

.section-title {
font-size: clamp(2.5rem, 5vw, 4rem);
font-weight: 600;
letter-spacing: -0.015em;
text-align: center;
margin-bottom: 80px;
color: #1d1d1f;
}

.about-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: center;
max-width: 1200px;
margin: 0 auto;
}

.about-text p {
font-size: 1.25rem;
line-height: 1.6;
color: #1d1d1f;
margin-bottom: 30px;
font-weight: 400;
}

.skills-card {
background: #fff;
padding: 50px;
border-radius: 18px;
box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.skills-card h3 {
font-size: 1.75rem;
font-weight: 600;
margin-bottom: 30px;
color: #1d1d1f;
}

.skills-card ul {
list-style: none;
}

.skills-card li {
font-size: 1.1rem;
color: #1d1d1f;
padding: 12px 0;
border-bottom: 1px solid #d2d2d7;
font-weight: 400;
}

.skills-card li:last-child {
border-bottom: none;
}

/* Services Section */
.apple-services {
padding: 120px 20px;
background: #000;
color: #f5f5f7;
}

.apple-services .section-title {
color: #f5f5f7;
}

.services-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
max-width: 1200px;
margin: 0 auto;
}

.service-card {
background: rgba(255,255,255,0.05);
padding: 60px 40px;
border-radius: 18px;
text-align: center;
backdrop-filter: blur(10px);
border: 1px solid rgba(255,255,255,0.1);
transition: all 0.3s ease;
}

.service-card:hover {
background: rgba(255,255,255,0.08);
transform: translateY(-5px);
border-color: rgba(255,255,255,0.2);
}

.service-icon {
font-size: 3.5rem;
margin-bottom: 30px;
filter: grayscale(0.3);
}

.service-card h3 {
font-size: 1.75rem;
font-weight: 600;
margin-bottom: 20px;
color: #f5f5f7;
}

.service-card p {
font-size: 1.05rem;
color: #a1a1a6;
line-height: 1.5;
font-weight: 400;
}

/* Portfolio Section */
.apple-portfolio {
padding: 120px 20px;
background: #fbfbfd;
}

.portfolio-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
max-width: 1200px;
margin: 0 auto;
}

.portfolio-item {
aspect-ratio: 4/3;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
border-radius: 18px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.25rem;
color: #fff;
font-weight: 500;
transition: all 0.3s ease;
cursor: pointer;
position: relative;
overflow: hidden;
}

.portfolio-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0,0,0,0.2);
opacity: 0;
transition: opacity 0.3s ease;
}

.portfolio-item:hover::before {
opacity: 1;
}

.portfolio-item:hover {
transform: scale(1.02);
}

.portfolio-item:nth-child(2) {
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
}

.portfolio-item:nth-child(3) {
background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
}

/* Testimonials Section */
.apple-testimonials {
padding: 120px 20px;
background: #f5f5f7;
}

.testimonials-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 40px;
max-width: 1200px;
margin: 0 auto;
}

.testimonial-card {
background: #fff;
padding: 50px;
border-radius: 18px;
box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.testimonial-card p {
font-size: 1.25rem;
line-height: 1.6;
color: #1d1d1f;
margin-bottom: 30px;
font-weight: 400;
}

.testimonial-author {
font-size: 1rem;
font-weight: 600;
color: #1d1d1f;
}

/* Contact Section */
.apple-contact {
padding: 120px 20px;
background: #000;
color: #f5f5f7;
text-align: center;
}

.apple-contact .section-title {
color: #f5f5f7;
margin-bottom: 30px;
}

.apple-contact .description {
font-size: 1.5rem;
color: #a1a1a6;
max-width: 700px;
margin: 0 auto 50px;
line-height: 1.4;
font-weight: 400;
}

/* Responsive */
@media (max-width: 1024px) {
.about-grid,
.services-grid,
.portfolio-grid,
.testimonials-grid {
grid-template-columns: 1fr;
gap: 30px;
}

.apple-hero h1 {
font-size: 3.5rem;
}
}

@media (max-width: 768px) {
.apple-section {
padding: 60px 20px;
}

.apple-hero {
min-height: 70vh;
}

.section-title {
font-size: 2.5rem;
}
}