.cc-hero{position:relative;height:100vh;min-height:600px;background-image:url('../images/cookingClass/chef_sfoglia_pasta.webp');background-size:cover;background-position:center top;display:flex;align-items:center;justify-content:center;text-align:center;}.cc-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(28,20,16,.55) 0%,rgba(28,20,16,.75) 100%);}.cc-hero-content{position:relative;z-index:2;color:var(--color-white);padding:2rem;max-width:700px;}.cc-hero-eyebrow{font-family:var(--font-sans);font-size:0.8rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--color-gold);margin-bottom:1rem;}.cc-hero-title{font-family:var(--font-display);font-size:clamp(3.5rem,8vw,6rem);font-weight:700;letter-spacing:0.08em;color:var(--color-white);line-height:1;margin-bottom:0.75rem;}.cc-hero-subtitle{font-family:var(--font-serif);font-size:clamp(1.2rem,3vw,1.7rem);font-style:italic;color:var(--color-gold-light);margin-bottom:1.5rem;}.cc-hero-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:1.5rem auto;}.cc-hero-divider span{width:60px;height:1px;background:var(--color-gold);display:block;}.cc-hero-divider i{width:7px;height:7px;background:var(--color-gold);transform:rotate(45deg);display:block;flex-shrink:0;}.cc-hero-desc{font-family:var(--font-serif);font-size:1.15rem;color:rgba(255,255,255,.85);margin-bottom:2.5rem;line-height:1.7;}.cc-btn-primary{display:inline-block;background:var(--color-gold);color:var(--color-black);font-family:var(--font-sans);font-size:0.85rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;padding:1rem 2.5rem;text-decoration:none;border:none;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);}.cc-btn-primary:hover{background:var(--color-gold-dark);transform:translateY(-2px);}.cc-btn-outline{display:inline-block;background:transparent;color:var(--color-gold);font-family:var(--font-sans);font-size:0.85rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;padding:1rem 2.5rem;text-decoration:none;border:1.5px solid var(--color-gold);cursor:pointer;transition:all var(--transition-fast);}.cc-btn-outline:hover{background:var(--color-gold);color:var(--color-black);}.cc-btn-large{font-size:1rem;padding:1.2rem 3rem;}.cc-section{padding:5rem 0;}.cc-container{max-width:1200px;margin:0 auto;padding:0 2rem;}.cc-container-narrow{max-width:800px;}.cc-section-header{text-align:center;margin-bottom:4rem;}.cc-eyebrow{font-family:var(--font-sans);font-size:0.78rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--color-gold);margin-bottom:0.75rem;}.cc-divider{display:flex;align-items:center;justify-content:center;gap:8px;margin:1.5rem auto;}.cc-divider span{width:50px;height:1px;background:var(--color-beige-dark);display:block;}.cc-divider i{width:6px;height:6px;background:var(--color-gold);transform:rotate(45deg);display:block;flex-shrink:0;}.cc-section-desc{font-family:var(--font-serif);font-size:1.15rem;color:var(--color-gray);line-height:1.8;max-width:650px;margin:0 auto;}.cc-experience{background:var(--color-cream);}.cc-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;}.cc-feature{text-align:center;padding:2rem 1.5rem;border:1px solid var(--color-beige-dark);background:var(--color-white-soft);transition:transform var(--transition-fast),box-shadow var(--transition-fast);}.cc-feature:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}.cc-feature-icon{font-size:2.5rem;margin-bottom:1rem;}.cc-feature h3{font-family:var(--font-display);font-size:1.1rem;color:var(--color-wood-dark);margin-bottom:0.75rem;letter-spacing:0.03em;}.cc-feature p{font-family:var(--font-serif);font-size:1rem;color:var(--color-gray);line-height:1.7;}.cc-gallery-section{background:var(--color-beige);}.cc-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:260px;gap:8px;}.cc-gallery-item{position:relative;overflow:hidden;background:var(--color-beige-dark);}.cc-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow);}.cc-gallery-item:hover img{transform:scale(1.06);}.cc-gallery-large{grid-column:span 2;grid-row:span 2;}.cc-gallery-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(28,20,16,.7));color:white;font-family:var(--font-serif);font-style:italic;font-size:0.9rem;padding:2rem 1rem 0.75rem;opacity:0;transition:opacity var(--transition-fast);}.cc-gallery-item:hover .cc-gallery-caption{opacity:1;}.cc-program{background:var(--color-cream);}.cc-timeline{position:relative;padding-left:2rem;}.cc-timeline::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--color-gold-light);}.cc-timeline-item{display:flex;gap:2rem;margin-bottom:2.5rem;position:relative;}.cc-timeline-item::before{content:'';position:absolute;left:-2.35rem;top:0.4rem;width:10px;height:10px;background:var(--color-gold);transform:rotate(45deg);flex-shrink:0;}.cc-timeline-time{font-family:var(--font-display);font-size:1rem;color:var(--color-gold);font-weight:600;letter-spacing:0.05em;min-width:55px;padding-top:0.15rem;}.cc-timeline-content h3{font-family:var(--font-display);font-size:1.1rem;color:var(--color-wood-dark);margin-bottom:0.4rem;}.cc-timeline-content p{font-family:var(--font-serif);font-size:1rem;color:var(--color-gray);line-height:1.7;}.cc-packages{background:var(--color-wood-dark);color:var(--color-white);}.cc-packages .cc-section-header h2,.cc-packages .cc-eyebrow{color:var(--color-gold-light);}.cc-packages .cc-divider span{background:var(--color-gold-dark);}.cc-packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;align-items:start;}.cc-package{background:rgba(255,255,255,.06);border:1px solid rgba(201,169,97,.3);padding:2.5rem 2rem;position:relative;transition:transform var(--transition-fast),border-color var(--transition-fast);}.cc-package:hover{transform:translateY(-4px);border-color:var(--color-gold);}.cc-package-featured{background:rgba(201,169,97,.15);border-color:var(--color-gold);transform:scale(1.03);}.cc-package-featured:hover{transform:scale(1.03) translateY(-4px);}.cc-package-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--color-gold);color:var(--color-black);font-family:var(--font-sans);font-size:0.72rem;font-weight:700;letter-spacing:0.15em;text-transform:uppercase;padding:0.35rem 1.2rem;}.cc-package-header h3{font-family:var(--font-display);font-size:1.4rem;color:var(--color-gold-light);margin-bottom:0.3rem;}.cc-package-tagline{font-family:var(--font-serif);font-style:italic;font-size:0.95rem;color:rgba(255,255,255,.6);margin-bottom:1.5rem;}.cc-package-price{border-top:1px solid rgba(201,169,97,.3);border-bottom:1px solid rgba(201,169,97,.3);padding:1.2rem 0;margin-bottom:1.5rem;text-align:center;}.cc-price{font-family:var(--font-display);font-size:2.2rem;color:var(--color-gold);font-weight:600;display:block;}.cc-price-per{font-family:var(--font-sans);font-size:0.8rem;color:rgba(255,255,255,.5);letter-spacing:0.1em;}.cc-package-includes{list-style:none;margin-bottom:2rem;}.cc-package-includes li{font-family:var(--font-serif);font-size:0.95rem;color:rgba(255,255,255,.8);padding:0.4rem 0;border-bottom:1px solid rgba(255,255,255,.08);line-height:1.5;}.cc-booking{background:var(--color-beige);}.cc-form{background:var(--color-white-soft);padding:3rem;border:1px solid var(--color-beige-dark);margin-bottom:2.5rem;}.cc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;}.cc-form-full{margin-bottom:1.5rem;}.cc-form-group{display:flex;flex-direction:column;gap:0.5rem;}.cc-form-group label{font-family:var(--font-sans);font-size:0.78rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--color-wood-medium);}.cc-form-group input,.cc-form-group select,.cc-form-group textarea{font-family:var(--font-serif);font-size:1rem;color:var(--color-gray-dark);background:white;border:1px solid var(--color-beige-dark);padding:0.8rem 1rem;outline:none;transition:border-color var(--transition-fast);-webkit-appearance:none;}.cc-form-group input:focus,.cc-form-group select:focus,.cc-form-group textarea:focus{border-color:var(--color-gold);}.cc-form-submit{text-align:center;margin-top:0.5rem;}.cc-contact-direct{text-align:center;display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap;}.cc-contact-direct p{font-family:var(--font-serif);font-style:italic;color:var(--color-gray);font-size:1.05rem;}.cc-phone-link,.cc-email-link{font-family:var(--font-sans);font-size:0.9rem;font-weight:600;color:var(--color-gold-dark);text-decoration:none;letter-spacing:0.05em;transition:color var(--transition-fast);}.cc-phone-link:hover,.cc-email-link:hover{color:var(--color-wood-dark);}@media (max-width:1024px){.cc-features-grid{grid-template-columns:repeat(2,1fr);}.cc-packages-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto;}.cc-package-featured{transform:scale(1);}.cc-gallery-grid{grid-template-columns:repeat(2,1fr);}.cc-gallery-large{grid-column:span 2;}}@media (max-width:768px){.cc-section{padding:3.5rem 0;}.cc-features-grid{grid-template-columns:1fr;}.cc-form{padding:2rem 1.5rem;}.cc-form-row{grid-template-columns:1fr;}.cc-gallery-grid{grid-template-columns:1fr;}.cc-gallery-large{grid-column:span 1;grid-row:span 1;}.cc-gallery-grid{grid-auto-rows:220px;}.cc-hero-title{font-size:3rem;}}