/*
Theme Name: TTS Roma
Theme URI: https://www.traslochittsroma.it
Author: Developer
Description: Custom theme for TTS Roma S.r.l. — Traslochi a Roma dal 2004
Version: 1.1.2
Text Domain: tts-roma
License: Private
*/
 /* ══════════════════════════════════════════════════════════════ VARIABLES & RESET ══════════════════════════════════════════════════════════════ */:root{--navy:#0f1d2f;--navy-mid:#162840;--navy-light:#1e3654;--copper:#c17f42;--copper-light:#d9a46a;--copper-dark:#a06830;--copper-glow:rgba(193,127,66,0.3);--olive:#5a7a5e;--cream:#f5f0e8;--cream-dark:#e0d6c8;--white:#ffffff;--charcoal:#1a1a1a;--text:#3d3d3d;--text-light:#6b7280;--border:#e2ddd4;--font-display:'DM Serif Display', Georgia, serif;--font-body:'Outfit', system-ui, sans-serif;--ease-out-expo:cubic-bezier(0.16, 1, 0.3, 1);--ease-spring:cubic-bezier(0.22, 1.36, 0.42, 1);--radius:16px;--radius-lg:24px}*, *::before, *::after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-body);color:var(--text);background:var(--cream);overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;font-family:inherit;background:none}ul{list-style:none}.container{max-width:1340px;margin:0 auto;padding:0 2rem}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--copper);border-radius:3px}/* ══════════════════════════════════════════════════════════════ SWIPER — minimal CSS (fade + pagination + grab) ══════════════════════════════════════════════════════════════ */ .swiper{overflow:hidden;position:relative;list-style:none;padding:0;z-index:1}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-grab{cursor:grab}.swiper-grab.swiper-grabbing{cursor:grabbing}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination-bullet{width:8px;height:8px;display:inline-block;border-radius:50%;background:#000;opacity:.2;cursor:pointer}.swiper-pagination-bullet-active{opacity:1}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,10px);left:0;width:100%}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-bullets.swiper-pagination-horizontal .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}/* ══════════════════════════════════════════════════════════════ CUSTOM CURSOR — скрываем штатный на десктопе ══════════════════════════════════════════════════════════════ */ @media (hover:hover) and (pointer:fine){*{cursor:none !important}}.cursor-dot{position:fixed;top:0;left:0;width:6px;height:6px;background:#fff;border-radius:50%;pointer-events:none;z-index:99999;mix-blend-mode:difference;will-change:transform}.cursor-ring{position:fixed;top:0;left:0;width:40px;height:40px;border:1.5px solid rgba(255,255,255,0.5);border-radius:50%;pointer-events:none;z-index:99998;mix-blend-mode:difference;will-change:transform;transition:width 0.35s ease, height 0.35s ease, border-color 0.3s}.cursor-ring.active{width:64px;height:64px;border-color:var(--copper)}@media (hover:none){.cursor-dot, .cursor-ring{display:none !important}}/* ══════════════════════════════════════════════════════════════ LOADER ══════════════════════════════════════════════════════════════ */ .loader{position:fixed;inset:0;z-index:10000;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity 0.6s ease 0.2s;will-change:opacity}.loader.hidden{opacity:0;visibility:hidden;pointer-events:none}.loader-logo{display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:clamp(2.2rem, 5vw, 3.8rem);color:var(--white);width:550px;height:117px}.loader-logo img{width:100%;height:100%;object-fit:contain}.loader.logo span{color:var(--copper)}.logo-img{height:60px;width:auto;display:block;transition:transform 0.3s ease}.header.scrolled .logo-img{height:36px}.loader-bar{width:180px;height:2px;background:rgba(255,255,255,0.1);margin-top:2rem;border-radius:2px;overflow:hidden}.loader-bar::after{content:'';display:block;height:100%;width:100%;background:var(--copper);transform:scaleX(0);transform-origin:left;animation:loadFill 1.2s var(--ease-out-expo) forwards;will-change:transform}@keyframes loadFill{to{transform:scaleX(1)}}/* ══════════════════════════════════════════════════════════════ TOP BAR ══════════════════════════════════════════════════════════════ */ .topbar{background:var(--navy);color:rgba(255,255,255,0.6);font-size:0.78rem;padding:0.45rem 0;letter-spacing:0.02em}.topbar .container{display:flex;justify-content:space-between;align-items:center}.topbar-left{display:flex;align-items:center;gap:0.5rem}.topbar-left svg{width:13px;height:13px;flex-shrink:0}.topbar-right{display:flex;gap:1rem;align-items:center}.topbar-right a{color:rgba(255,255,255,0.5);display:flex;align-items:center;transition:color 0.3s, transform 0.3s}.topbar-right a:hover{color:var(--copper);transform:translateY(-1px)}.topbar-right svg{width:15px;height:15px}/* ══════════════════════════════════════════════════════════════ HEADER ══════════════════════════════════════════════════════════════ */ .header{position:sticky;top:0;z-index:999;background:rgba(245,240,232,0.85);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(0,0,0,0.04);transition:padding 0.4s ease, box-shadow 0.4s ease;padding:0.9rem 0}.header.scrolled{padding:0.5rem 0;box-shadow:0 4px 40px rgba(0,0,0,0.06);background:rgba(245,240,232,0.95)}.header .container{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-display);font-size:1.7rem;color:var(--navy);transition:transform 0.3s ease}.logo:hover{transform:scale(1.03)}.logo span{color:var(--copper)}.logo-img{height:60px;width:auto;display:block;transition:transform 0.3s ease}.header.scrolled .logo-img{height:36px}.nav{display:flex;gap:2.2rem;align-items:center}.nav a{font-size:0.85rem;font-weight:600;color:var(--text);position:relative;transition:color 0.3s}.nav a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--copper);transition:width 0.4s var(--ease-out-expo)}.nav a:hover{color:var(--copper)}.nav a:hover::after{width:100%}/* ══════════════════════════════════════════════════════════════ BUTTONS ══════════════════════════════════════════════════════════════ */ .btn{display:inline-flex;align-items:center;gap:0.5rem;font-weight:600;font-size:0.85rem;letter-spacing:0.02em;border-radius:50px;transition:all 0.4s var(--ease-out-expo);position:relative;overflow:hidden}.btn svg{width:16px;height:16px;flex-shrink:0}.btn-copper{background:#7a4e1f;color:#fff !important;padding:0.7rem 1.8rem}.btn-copper:hover{background:#5e3d16;transform:translateY(-2px);box-shadow:0 8px 25px var(--copper-glow)}.btn-navy{background:var(--navy);color:#fff;padding:0.7rem 1.8rem}.btn-navy:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(15,29,47,0.3)}.btn-outline-navy{border:1.5px solid var(--navy);color:var(--navy);padding:0.65rem 1.8rem}.btn-outline-navy:hover{background:var(--navy);color:#fff;transform:translateY(-2px)}.btn-outline-white{border:1.5px solid rgba(255,255,255,0.3);color:#fff;padding:0.65rem 1.8rem}.btn-outline-white:hover{border-color:#fff;background:rgba(255,255,255,0.08);transform:translateY(-2px)}.btn-white{background:#fff;color:var(--copper);padding:0.8rem 2.2rem;font-weight:700}.btn-white:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,0.12)}.btn-ghost-white{border:2px solid rgba(255,255,255,0.35);color:#fff;padding:0.75rem 2rem}.btn-ghost-white:hover{border-color:#fff;background:rgba(255,255,255,0.08);transform:translateY(-2px)}/* ══════════════════════════════════════════════════════════════ BURGER + MOBILE NAV ══════════════════════════════════════════════════════════════ */ .burger{display:none;padding:8px;z-index:1001}.burger-lines{width:26px;height:18px;position:relative}.burger-lines span{display:block;position:absolute;left:0;width:100%;height:2px;background:var(--navy);transition:all 0.4s var(--ease-out-expo)}.burger-lines span:nth-child(1){top:0}.burger-lines span:nth-child(2){top:8px;width:70%}.burger-lines span:nth-child(3){top:16px}.burger.active .burger-lines span:nth-child(1){top:8px;transform:rotate(45deg)}.burger.active .burger-lines span:nth-child(2){opacity:0;width:0}.burger.active .burger-lines span:nth-child(3){top:8px;transform:rotate(-45deg)}.mobile-nav{position:fixed;inset:0;z-index:998;background:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;clip-path:circle(0% at calc(100% - 3rem) 2.5rem);transition:clip-path 0.7s var(--ease-out-expo)}.mobile-nav.active{clip-path:circle(150% at calc(100% - 3rem) 2.5rem)}.mobile-nav a{font-family:var(--font-display);font-size:clamp(1.6rem, 4vw, 2.2rem);color:#fff;opacity:0;transform:translateY(30px);transition:opacity 0.4s ease, transform 0.5s var(--ease-out-expo), color 0.3s}.mobile-nav.active a{opacity:1;transform:translateY(0)}.mobile-nav.active a:nth-child(1){transition-delay:0.15s}.mobile-nav.active a:nth-child(2){transition-delay:0.2s}.mobile-nav.active a:nth-child(3){transition-delay:0.25s}.mobile-nav.active a:nth-child(4){transition-delay:0.3s}.mobile-nav.active a:nth-child(5){transition-delay:0.35s}.mobile-nav.active a:nth-child(6){transition-delay:0.4s}.mobile-nav.active a:nth-child(7){transition-delay:0.45s}.mobile-nav a:hover{color:var(--copper)}/* ══════════════════════════════════════════════════════════════ SECTION UTILITIES ══════════════════════════════════════════════════════════════ */ .section-tag{display:inline-flex;align-items:center;gap:0.6rem;font-size:0.75rem;font-weight:600;color:var(--copper);letter-spacing:0.14em;text-transform:uppercase;margin-bottom:1rem}.section-tag::before{content:'';width:28px;height:2px;background:var(--copper)}.section-header{text-align:center;max-width:660px;margin:0 auto 4rem}.section-header .section-tag{justify-content:center}.section-header h2{font-family:var(--font-display);font-size:clamp(2rem, 3.5vw, 2.8rem);color:var(--navy);line-height:1.2;margin-bottom:1rem}.section-header h2 em{font-style:italic;color:var(--copper)}.section-header p{color:var(--text-light);font-size:1rem;line-height:1.7}/* ══════════════════════════════════════════════════════════════ REVEAL ANIMATIONS ══════════════════════════════════════════════════════════════ */ .reveal{opacity:0;transform:translateY(50px);transition:opacity 0.9s var(--ease-out-expo), transform 0.9s var(--ease-out-expo)}.reveal.vis{opacity:1;transform:translateY(0)}.reveal-l{opacity:0;transform:translateX(-60px);transition:opacity 0.9s var(--ease-out-expo), transform 0.9s var(--ease-out-expo)}.reveal-l.vis{opacity:1;transform:translateX(0)}.reveal-r{opacity:0;transform:translateX(60px);transition:opacity 0.9s var(--ease-out-expo), transform 0.9s var(--ease-out-expo)}.reveal-r.vis{opacity:1;transform:translateX(0)}.reveal-s{opacity:0;transform:scale(0.92);transition:opacity 0.9s var(--ease-out-expo), transform 0.9s var(--ease-out-expo)}.reveal-s.vis{opacity:1;transform:scale(1)}[data-delay="1"]{transition-delay:0.1s !important}[data-delay="2"]{transition-delay:0.2s !important}[data-delay="3"]{transition-delay:0.3s !important}[data-delay="4"]{transition-delay:0.4s !important}/* ══════════════════════════════════════════════════════════════ HERO SLIDER ══════════════════════════════════════════════════════════════ */ .hero{position:relative;height:100vh;min-height:650px;background:var(--navy);overflow:hidden}.hero .swiper{height:100%}.hero-slide{position:relative;display:flex;align-items:center}.hero-slide-bg{position:absolute;inset:0;overflow:hidden;background:var(--navy-mid)}.hero-slide-bg img{width:100%;height:100%;object-fit:cover;transition:transform 6s linear}.swiper-slide-active .hero-slide-bg img{transform:scale(1.08)}.hero-slide-overlay{position:absolute;inset:0;background:linear-gradient(135deg, rgba(15,29,47,0.88) 0%, rgba(15,29,47,0.55) 50%, rgba(15,29,47,0.78) 100%)}.hero-grain{position:absolute;inset:0;z-index:1;opacity:0.03;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px}.hero-orb{position:absolute;border-radius:50%;filter:blur(90px);animation:orbDrift 14s ease-in-out infinite;z-index:1}.hero-orb-1{width:500px;height:500px;background:radial-gradient(circle, rgba(193,127,66,0.25), transparent 70%);top:-5%;right:0}.hero-orb-2{width:350px;height:350px;background:radial-gradient(circle, rgba(90,122,94,0.2), transparent 70%);bottom:-5%;left:15%;animation-delay:-5s}@keyframes orbDrift{0%, 100%{transform:translate(0, 0) scale(1)}33%{transform:translate(25px, -35px) scale(1.08)}66%{transform:translate(-15px, 20px) scale(0.95)}}.hero-content{position:relative;z-index:3;max-width:720px;padding:0 2rem}.hero-badge{display:inline-flex;align-items:center;gap:0.5rem;background:rgba(193,127,66,0.12);border:1px solid rgba(193,127,66,0.25);border-radius:50px;padding:0.45rem 1.1rem;font-size:0.75rem;color:var(--copper-light);font-weight:600;letter-spacing:0.1em;text-transform:uppercase;margin-bottom:1.5rem}.hero-badge-dot{width:6px;height:6px;background:var(--copper);border-radius:50%;animation:dotPulse 2s ease infinite}@keyframes dotPulse{0%,100%{opacity:1}50%{opacity:0.3}}.hero h1, .hero .hero-heading{font-family:var(--font-display);font-size:clamp(2.6rem, 5.5vw, 4.5rem);color:#fff;line-height:1.1;margin-bottom:1.3rem}.hero h1 em, .hero .hero-heading em{font-style:normal;color:var(--copper-light)}.hero-sub{font-size:1.1rem;color:rgba(255,255,255,0.65);line-height:1.75;margin-bottom:2.2rem;max-width:540px;font-weight:400}.hero-btns{display:flex;gap:1rem;flex-wrap:wrap}.hero-btns .btn{padding:0.9rem 2.2rem;font-size:0.9rem}.hero-trust{display:flex;gap:2rem;margin-top:3rem}.hero-trust-item{display:flex;align-items:center;gap:0.5rem;color:rgba(255,255,255,0.5);font-size:0.78rem}.hero-trust-item svg{width:16px;height:16px;color:var(--copper);flex-shrink:0}.hero .swiper-pagination{bottom:3rem !important}.hero .swiper-pagination-bullet{width:32px;height:3px;border-radius:3px;background:rgba(255,255,255,0.25);opacity:1;transition:all 0.4s}.hero .swiper-pagination-bullet-active{width:56px;background:var(--copper)}.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);z-index:5;display:flex;flex-direction:column;align-items:center;gap:0.4rem;color:rgba(255,255,255,0.35);font-size:0.68rem;letter-spacing:0.15em;text-transform:uppercase}.hero-scroll-line{width:1px;height:36px;background:linear-gradient(to bottom, var(--copper), transparent);animation:scrollLine 2s ease infinite}@keyframes scrollLine{0%,100%{opacity:1}50%{opacity:0.2}}/* ══════════════════════════════════════════════════════════════ USP STRIP ══════════════════════════════════════════════════════════════ */ .usp{position:relative;z-index:10;margin-top:-4rem;padding-bottom:2rem}.usp-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--white);border-radius:var(--radius-lg);box-shadow:0 20px 60px rgba(0,0,0,0.07);overflow:hidden}.usp-card{padding:2.5rem 1.8rem;text-align:center;position:relative;transition:background 0.4s}.usp-card:not(:last-child)::after{content:'';position:absolute;right:0;top:18%;bottom:18%;width:1px;background:var(--border)}.usp-card:hover{background:var(--cream)}.usp-card-icon{width:50px;height:50px;margin:0 auto 1rem;background:linear-gradient(135deg, var(--copper), var(--copper-light));border-radius:13px;display:flex;align-items:center;justify-content:center;color:#fff;transition:transform 0.5s var(--ease-spring), box-shadow 0.4s}.usp-card:hover .usp-card-icon{transform:translateY(-4px) rotate(-4deg);box-shadow:0 8px 20px var(--copper-glow)}.usp-card-icon svg{width:22px;height:22px}.usp-card h3{font-family:var(--font-display);font-size:1.15rem;color:var(--navy);margin-bottom:0.3rem}.usp-card p{font-size:0.8rem;color:var(--text-light);line-height:1.5}/* ══════════════════════════════════════════════════════════════ ABOUT ══════════════════════════════════════════════════════════════ */ .about{padding:7rem 0;position:relative;overflow:hidden}.about::before{content:'TTS';position:absolute;top:-0.2em;right:-0.05em;font-family:var(--font-display);font-size:25vw;color:rgba(193,127,66,0.03);line-height:1;pointer-events:none}.about .container{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.about-gallery{position:relative;height:520px}.about-img{position:absolute;border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,0.08)}.about-img img, .about-img-placeholder{width:100%;height:100%;object-fit:cover;transition:transform 0.6s var(--ease-out-expo)}.about-img-placeholder{display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.3);font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase}.about-img-1{width:60%;height:68%;top:0;left:0;z-index:2;background:var(--navy-mid)}.about-img-2{width:52%;height:52%;bottom:0;right:0;z-index:1;background:var(--olive)}.about-img:hover img, .about-img:hover .about-img-placeholder{transform:scale(1.06)}.about-badge{position:absolute;z-index:3;bottom:36%;left:40%;background:var(--copper);color:#fff;padding:1.5rem;border-radius:var(--radius);text-align:center;box-shadow:0 12px 30px var(--copper-glow)}.about-badge-num{font-family:var(--font-display);font-size:2.6rem;line-height:1}.about-badge-label{font-size:0.72rem;letter-spacing:0.08em;text-transform:uppercase;margin-top:0.2rem;opacity:0.85}.about-text h2{font-family:var(--font-display);font-size:clamp(2rem, 3.2vw, 2.6rem);color:var(--navy);line-height:1.2;margin-bottom:1.5rem}.about-text h2 em{font-style:italic;color:var(--copper)}.about-text p{color:var(--text-light);line-height:1.8;margin-bottom:1rem;font-size:0.95rem}.about-checks{display:grid;grid-template-columns:1fr 1fr;gap:0.8rem;margin:1.8rem 0}.about-check{display:flex;align-items:center;gap:0.6rem;font-size:0.88rem;font-weight:500;color:var(--charcoal)}.about-check-icon{width:26px;height:26px;flex-shrink:0;background:rgba(193,127,66,0.1);border-radius:7px;display:flex;align-items:center;justify-content:center;color:var(--copper)}.about-check-icon svg{width:13px;height:13px}/* ══════════════════════════════════════════════════════════════ SERVICES ══════════════════════════════════════════════════════════════ */ .services{padding:7rem 0;background:var(--white)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem}.srv-card{background:var(--cream);border-radius:var(--radius-lg);padding:2.5rem 2rem;position:relative;overflow:hidden;border:1px solid transparent;transition:transform 0.5s var(--ease-out-expo), box-shadow 0.5s, border-color 0.4s}.srv-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--copper);transform:scaleX(0);transform-origin:left;transition:transform 0.5s var(--ease-out-expo)}.srv-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px rgba(0,0,0,0.07);border-color:rgba(193,127,66,0.12)}.srv-card:hover::before{transform:scaleX(1)}.srv-icon{width:54px;height:54px;background:var(--white);border-radius:13px;display:flex;align-items:center;justify-content:center;color:var(--copper);margin-bottom:1.4rem;transition:all 0.5s var(--ease-spring)}.srv-card:hover .srv-icon{background:var(--copper);color:#fff;transform:rotate(-5deg) scale(1.06)}.srv-icon svg{width:24px;height:24px}.srv-card h3{font-family:var(--font-display);font-size:1.3rem;color:var(--navy);margin-bottom:0.7rem;transition:color 0.3s}.srv-card:hover h3{color:var(--copper)}.srv-card p{font-size:0.85rem;color:var(--text-light);line-height:1.7;margin-bottom:1.4rem}.srv-link{font-size:0.82rem;font-weight:600;color:var(--copper);display:inline-flex;align-items:center;gap:0.4rem;transition:gap 0.3s;position:static}.srv-link::after{content:'';position:absolute;inset:0;z-index:1}.srv-card:hover .srv-link{gap:0.8rem}.srv-link svg{width:15px;height:15px}/* ══════════════════════════════════════════════════════════════ PROCESS STEPS ══════════════════════════════════════════════════════════════ */ .process{padding:7rem 0;background:var(--navy);position:relative;overflow:hidden}.process::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%, rgba(193,127,66,0.06),transparent 50%), radial-gradient(ellipse at 85% 80%, rgba(90,122,94,0.08),transparent 40%)}.process .container{position:relative;z-index:2}.process .section-header h2{color:#fff}.process .section-header p{color:rgba(255,255,255,0.55)}.process .section-tag{color:var(--copper-light)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;position:relative}.steps::before{content:'';position:absolute;top:42px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,transparent,rgba(193,127,66,0.25),rgba(193,127,66,0.25),transparent)}.step{text-align:center;position:relative;z-index:2}.step-num{width:84px;height:84px;margin:0 auto 1.3rem;border-radius:50%;background:var(--navy-mid);border:2px solid rgba(193,127,66,0.25);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.8rem;color:var(--copper);transition:all 0.5s var(--ease-spring)}.step:hover .step-num{background:var(--copper);color:#fff;border-color:var(--copper);transform:scale(1.12);box-shadow:0 0 35px var(--copper-glow)}.step h3{font-family:var(--font-display);font-size:1.15rem;color:#fff;margin-bottom:0.5rem}.step p{font-size:0.83rem;color:rgba(255,255,255,0.5);line-height:1.6;max-width:200px;margin:0 auto}/* ══════════════════════════════════════════════════════════════ VIDEO SECTION + MODAL ══════════════════════════════════════════════════════════════ */ .video-section{padding:7rem 0;background:var(--cream)}.video-wrap{position:relative;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16/7;background:var(--navy-mid);cursor:pointer;box-shadow:0 20px 60px rgba(0,0,0,0.1)}.video-wrap img, .video-placeholder{width:100%;height:100%;object-fit:cover;transition:transform 0.6s var(--ease-out-expo)}.video-placeholder{display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.2);font-size:1rem;letter-spacing:0.1em;text-transform:uppercase}.video-wrap:hover img, .video-wrap:hover .video-placeholder{transform:scale(1.04)}.video-overlay{position:absolute;inset:0;background:rgba(15,29,47,0.4);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem}.video-play{position:relative;width:80px;height:80px;border-radius:50%;background:var(--copper);display:flex;align-items:center;justify-content:center;color:#fff;transition:transform 0.3s, background 0.3s}.video-play::before{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(193,127,66,0.4);animation:playPulse 2.5s ease infinite;will-change:transform, opacity;z-index:-1}.video-wrap:hover .video-play{transform:scale(1.1);background:var(--copper-dark)}.video-play svg{width:28px;height:28px;margin-left:3px}@keyframes playPulse{0%{transform:scale(1);opacity:1}70%{transform:scale(1.5);opacity:0}100%{transform:scale(1.5);opacity:0}}.video-label{color:#fff;font-size:0.85rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase}.video-modal{position:fixed;inset:0;z-index:10001;background:rgba(0,0,0,0.92);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.4s, visibility 0.4s}.video-modal.active{opacity:1;visibility:visible}.video-modal-close{position:absolute;top:1.5rem;right:1.5rem;color:#fff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,0.1);transition:background 0.3s;z-index:2}.video-modal-close:hover{background:rgba(255,255,255,0.2)}.video-modal-close svg{width:22px;height:22px}.video-modal-body{width:90%;max-width:960px;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;transform:scale(0.9);transition:transform 0.5s var(--ease-out-expo)}.video-modal.active .video-modal-body{transform:scale(1)}.video-modal-body video{width:100%;height:100%;border-radius:var(--radius);background:#000}/* ══════════════════════════════════════════════════════════════ QUOTE ══════════════════════════════════════════════════════════════ */ .quote{padding:6rem 0;background:linear-gradient(135deg, var(--navy), var(--navy-mid));text-align:center;position:relative;overflow:hidden}.quote .container{position:relative;z-index:2;max-width:850px}.quote-mark{font-family:var(--font-display);font-size:7rem;line-height:1;color:rgba(193,127,66,0.12);margin-bottom:-1.5rem}.quote blockquote{font-family:var(--font-display);font-size:clamp(1.5rem, 3.2vw, 2.4rem);color:#fff;line-height:1.4;font-style:italic}.quote blockquote span{color:var(--copper-light)}/* ══════════════════════════════════════════════════════════════ STATS ══════════════════════════════════════════════════════════════ */ .stats{padding:5rem 0;background:var(--white)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat{text-align:center;padding:1.5rem;transition:transform 0.4s var(--ease-out-expo)}.stat:hover{transform:translateY(-5px)}.stat-val{font-family:var(--font-display);font-size:clamp(2.5rem, 4vw, 3.2rem);color:var(--navy);line-height:1}.stat-val .suffix{color:var(--copper)}.stat-bar{width:28px;height:3px;background:var(--copper);border-radius:3px;margin:0.7rem auto}.stat-label{font-size:0.88rem;color:var(--text-light);font-weight:500}/* ══════════════════════════════════════════════════════════════ TESTIMONIALS SLIDER ══════════════════════════════════════════════════════════════ */ .testimonials{padding:7rem 0;background:var(--cream);overflow:hidden}.testimonials .swiper{padding:1rem 0 4rem;overflow:hidden}.testi-card{background:var(--white);border-radius:var(--radius-lg);padding:2.5rem 2rem;position:relative;transition:transform 0.4s, box-shadow 0.4s}.testi-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,0.06)}.testi-stars{display:flex;gap:3px;margin-bottom:1rem;color:#f59e0b}.testi-stars svg{width:16px;height:16px}.testi-card blockquote{font-size:0.92rem;color:var(--text);line-height:1.7;font-style:italic;margin-bottom:1.5rem}.testi-author{display:flex;align-items:center;gap:0.8rem}.testi-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg, var(--copper), var(--copper-light));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:0.9rem}.testi-name{font-weight:600;color:var(--navy);font-size:0.9rem}.testi-role{font-size:0.78rem;color:var(--text-light)}.testi-quote-mark{position:absolute;top:1.5rem;right:1.8rem;font-family:var(--font-display);font-size:4rem;color:rgba(193,127,66,0.08);line-height:1}.testimonials .swiper-pagination-bullet{width:10px;height:10px;background:var(--border);opacity:1;transition:all 0.3s}.testimonials .swiper-pagination-bullet-active{background:var(--copper);width:28px;border-radius:5px}/* ══════════════════════════════════════════════════════════════ GALLERY ══════════════════════════════════════════════════════════════ */ .gallery{padding:7rem 0;background:var(--white)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:1rem}.gallery-item{border-radius:var(--radius);overflow:hidden;position:relative;cursor:pointer;aspect-ratio:4/3;background:var(--navy-mid)}.gallery-item:nth-child(1){grid-column:span 2;grid-row:span 2;aspect-ratio:auto}.gallery-item img, .gal-placeholder{width:100%;height:100%;object-fit:cover;transition:transform 0.6s var(--ease-out-expo)}.gal-placeholder{display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.2);font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase}.gallery-item:hover img, .gallery-item:hover .gal-placeholder{transform:scale(1.08)}.gallery-item-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(15,29,47,0.7), transparent 50%);opacity:0;transition:opacity 0.4s;display:flex;align-items:flex-end;padding:1.2rem}.gallery-item:hover .gallery-item-overlay{opacity:1}.gallery-item-overlay span{color:#fff;font-size:0.82rem;font-weight:500}.gallery-item-zoom{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:48px;height:48px;border-radius:50%;background:var(--copper);display:flex;align-items:center;justify-content:center;color:#fff;transition:transform 0.4s var(--ease-spring)}.gallery-item:hover .gallery-item-zoom{transform:translate(-50%,-50%) scale(1)}.gallery-item-zoom svg{width:20px;height:20px}/* ══════════════════════════════════════════════════════════════ MAP ZONE ══════════════════════════════════════════════════════════════ */ .zone{padding:7rem 0;background:var(--cream)}.zone .container{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.zone-text h2{font-family:var(--font-display);font-size:clamp(2rem, 3vw, 2.4rem);color:var(--navy);line-height:1.2;margin-bottom:1.2rem}.zone-text h2 em{font-style:italic;color:var(--copper)}.zone-text p{color:var(--text-light);line-height:1.8;margin-bottom:1.2rem;font-size:0.95rem}.zone-tags{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.5rem}.zone-tag{background:var(--white);border:1px solid var(--border);border-radius:50px;padding:0.45rem 1.1rem;font-size:0.8rem;font-weight:500;color:var(--charcoal);transition:all 0.3s}.zone-tag:hover{background:var(--copper);color:#fff;border-color:var(--copper);transform:translateY(-2px)}.zone-map{border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,0.08);height:420px;background:var(--navy-mid)}.zone-map iframe{width:100%;height:100%;border:0;filter:saturate(0.85) contrast(1.05);transition:filter 0.4s}.zone-map:hover iframe{filter:saturate(1) contrast(1)}/* ══════════════════════════════════════════════════════════════ CTA FINAL ══════════════════════════════════════════════════════════════ */ .cta-final{padding:6rem 0;background:var(--copper);position:relative;overflow:hidden}.cta-final::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 10% 50%, rgba(255,255,255,0.1),transparent 50%), radial-gradient(circle at 90% 20%, rgba(0,0,0,0.1),transparent 40%)}.cta-final .container{text-align:center;position:relative;z-index:2;max-width:800px}.cta-final h2{font-family:var(--font-display);font-size:clamp(2rem, 4vw, 2.8rem);color:#fff;line-height:1.2;margin-bottom:1rem}.cta-final p{font-size:1.02rem;color:rgba(255,255,255,0.85);line-height:1.7;margin-bottom:2.5rem}.cta-final-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}/* ══════════════════════════════════════════════════════════════ FOOTER ══════════════════════════════════════════════════════════════ */ .footer{background:var(--navy);color:rgba(255,255,255,0.65);padding:4.5rem 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:4rem;padding-bottom:3rem}.footer .logo{display:inline-block;margin-bottom:1rem}.footer .logo-img{height:57px;width:auto}.footer-desc{font-size:0.88rem;line-height:1.7;margin-bottom:1.5rem;max-width:300px}.footer-socials{display:flex;gap:0.7rem}.footer-soc{width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,0.05);display:flex;align-items:center;justify-content:center;transition:all 0.3s}.footer-soc:hover{background:var(--copper);transform:translateY(-3px)}.footer-soc svg{width:17px;height:17px;color:rgba(255,255,255,0.6)}.footer-soc:hover svg{color:#fff}.footer-heading{font-family:var(--font-display);font-size:1.1rem;color:#fff;margin-bottom:1.3rem;display:block}.footer-links li{margin-bottom:0.7rem}.footer-links a{font-size:0.86rem;display:inline-flex;align-items:center;gap:0.3rem;transition:color 0.3s, transform 0.3s}.footer-links a::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--copper);opacity:0;transform:scale(0);transition:all 0.3s}.footer-links a:hover{color:var(--copper);transform:translateX(4px)}.footer-links a:hover::before{opacity:1;transform:scale(1)}.footer-contact-row{display:flex;align-items:flex-start;gap:0.7rem;margin-bottom:0.9rem;font-size:0.86rem}.footer-contact-row svg{width:16px;height:16px;color:var(--copper);flex-shrink:0;margin-top:3px}.footer-contact-row a{transition:color 0.3s}.footer-contact-row a:hover{color:var(--copper)}.footer-phones{display:flex;flex-direction:column;gap:0.4rem}.footer-phones a{display:block;padding:0.35rem 0;min-height:44px;line-height:1.8}.footer-bottom{border-top:1px solid rgba(255,255,255,0.07);padding:1.3rem 0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.8rem;font-size:0.75rem;color:rgba(255,255,255,0.55)}.footer-legal{display:flex;gap:1.2rem}.footer-legal a{color:rgba(255,255,255,0.55);transition:color 0.3s}.footer-legal a:hover{color:var(--copper)}/* ══════════════════════════════════════════════════════════════ FLOATING ELEMENTS ══════════════════════════════════════════════════════════════ */ .wa-float{position:fixed;bottom:1.8rem;right:1.8rem;width:54px;height:54px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;z-index:900;box-shadow:0 4px 18px rgba(37,211,102,0.3);transition:transform 0.3s var(--ease-spring), box-shadow 0.3s;animation:waBounce 3s ease-in-out infinite}.wa-float:hover{transform:scale(1.12);animation:none;box-shadow:0 6px 28px rgba(37,211,102,0.45)}.wa-float svg{width:26px;height:26px}@keyframes waBounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.call-float{display:none;position:fixed;bottom:1.8rem;left:1.8rem;width:54px;height:54px;background:var(--copper);border-radius:50%;align-items:center;justify-content:center;color:#fff;z-index:900;box-shadow:0 4px 18px var(--copper-glow);transition:transform 0.3s var(--ease-spring), box-shadow 0.3s;animation:waBounce 3s ease-in-out infinite}.call-float:hover{transform:scale(1.12);animation:none;box-shadow:0 6px 28px var(--copper-glow)}.call-float svg{width:24px;height:24px}@media (max-width:1024px){.call-float{display:flex}}.btt{position:fixed;bottom:calc(1.8rem + 54px + 0.8rem);right:1.8rem;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:900;opacity:0;visibility:hidden;transform:translateY(10px);transition:all 0.4s var(--ease-out-expo);box-shadow:0 4px 15px rgba(0,0,0,0.15)}.btt.vis{opacity:1;visibility:visible;transform:translateY(0)}.btt:hover{transform:translateY(-3px);box-shadow:0 6px 22px rgba(0,0,0,0.2)}.btt.btt-light{background:var(--white);color:var(--navy)}.btt.btt-light:hover{background:var(--copper);color:#fff}.btt.btt-dark{background:var(--navy);color:#fff}.btt.btt-dark:hover{background:var(--copper);color:#fff}.btt svg{width:18px;height:18px}/* ══════════════════════════════════════════════════════════════ 404 PAGE ══════════════════════════════════════════════════════════════ */ .page-404{padding:8rem 0;text-align:center}.page-404-inner{max-width:560px;margin:0 auto}.page-404-icon{margin-bottom:1rem}.page-404-code{font-family:var(--font-display);font-size:clamp(6rem, 15vw, 12rem);color:var(--copper);line-height:1;opacity:0.15;margin-bottom:-1.5rem}.page-404 h1{font-family:var(--font-display);font-size:clamp(1.8rem, 4vw, 2.6rem);color:var(--navy);margin-bottom:1rem}.page-404 p{color:var(--text-light);line-height:1.7;margin-bottom:2rem;font-size:1rem}.page-404-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem}.page-404-links{border-top:1px solid var(--border);padding-top:2rem}.page-404-links p{font-size:0.88rem;color:var(--text-light);margin-bottom:1rem}.page-404-nav{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.page-404-nav a{font-size:0.88rem;font-weight:600;color:var(--navy);transition:color 0.3s}.page-404-nav a:hover{color:var(--copper)}/* ══════════════════════════════════════════════════════════════ GUTENBERG DEFAULT PAGE STYLES ══════════════════════════════════════════════════════════════ */ .page-content{padding:5rem 0}.page-content .container{max-width:800px}.page-content h1{font-family:var(--font-display);font-size:clamp(2rem, 4vw, 3rem);color:var(--navy);margin-bottom:2rem}.page-content h2{font-family:var(--font-display);font-size:1.8rem;color:var(--navy);margin:2rem 0 1rem}.page-content h3{font-family:var(--font-display);font-size:1.4rem;color:var(--navy);margin:1.5rem 0 0.8rem}.page-content p{line-height:1.8;margin-bottom:1.2rem}.page-content img{border-radius:var(--radius);margin:2rem 0}.page-content ul, .page-content ol{margin:1rem 0 1rem 1.5rem}.page-content li{margin-bottom:0.5rem;line-height:1.7}/* ══════════════════════════════════════════════════════════════ BREADCRUMBS ══════════════════════════════════════════════════════════════ */ .breadcrumbs{background:var(--white);border-bottom:1px solid var(--border);padding:0.9rem 0;font-size:0.82rem}.breadcrumbs .container{display:flex;align-items:center;gap:0;flex-wrap:wrap}.breadcrumbs a{color:var(--text-light);transition:color 0.3s}.breadcrumbs a:hover{color:var(--copper)}.bc-sep{margin:0 0.5rem;color:var(--border);font-size:0.9rem}.bc-current{color:var(--navy);font-weight:500}/* ══════════════════════════════════════════════════════════════ FORMS — Contact Form 7 ══════════════════════════════════════════════════════════════ */ .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-size:0.85rem;font-weight:500;color:var(--navy);margin-bottom:0.4rem}.form-group .required{color:var(--copper);font-weight:700}.form-group-full{grid-column:1 / -1}.form-submit{margin-top:0.5rem}/* CF7 input fields */ .wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"], .wpcf7 input[type="url"], .wpcf7 input[type="date"], .wpcf7 input[type="number"], .wpcf7 select, .wpcf7 textarea{width:100%;padding:0.75rem 1rem;border:1.5px solid var(--border);border-radius:10px;background:var(--white);font-family:var(--font-body);font-size:0.9rem;color:var(--charcoal);transition:border-color 0.3s, box-shadow 0.3s;-webkit-appearance:none;appearance:none}.wpcf7 input:focus, .wpcf7 select:focus, .wpcf7 textarea:focus{outline:none;border-color:var(--copper);box-shadow:0 0 0 3px var(--copper-glow)}.wpcf7 input::placeholder, .wpcf7 textarea::placeholder{color:var(--text-light);opacity:0.6}.wpcf7 textarea{min-height:130px;resize:vertical;line-height:1.6}.wpcf7 select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='7'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236b7280' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.wpcf7 input[type="date"]{cursor:pointer}/* Acceptance checkbox */ .wpcf7-acceptance{display:flex;align-items:flex-start;gap:0.6rem}.wpcf7-acceptance input[type="checkbox"]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:var(--copper);cursor:pointer}.wpcf7-acceptance .wpcf7-list-item-label{font-size:0.82rem;line-height:1.5;color:var(--text-light)}.wpcf7-acceptance a{color:var(--copper);text-decoration:underline}.wpcf7-acceptance a:hover{color:var(--copper-dark)}/* Submit button — uses .btn.btn-copper from global buttons */ .wpcf7 input[type="submit"], .wpcf7 button[type="submit"]{display:inline-flex;align-items:center;gap:0.5rem;font-weight:600;font-size:0.85rem;letter-spacing:0.02em;border-radius:50px;padding:0.8rem 2rem;background:#7a4e1f;color:#fff;border:none;font-family:var(--font-body);cursor:pointer;transition:all 0.4s var(--ease-out-expo)}.wpcf7 input[type="submit"]:hover, .wpcf7 button[type="submit"]:hover{background:#5e3d16;transform:translateY(-2px);box-shadow:0 8px 25px var(--copper-glow)}/* CF7 validation messages */ .wpcf7-not-valid{border-color:#ef4444 !important}.wpcf7-not-valid-tip{font-size:0.78rem;color:#ef4444;margin-top:0.3rem}.wpcf7-response-output{border-radius:10px !important;padding:1rem 1.2rem !important;font-size:0.88rem;margin:1.5rem 0 0 !important;border:1.5px solid var(--border)}.wpcf7 form.sent .wpcf7-response-output{display:none !important}.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output{display:block !important;border-color:#ef4444 !important;color:#ef4444;background:rgba(239,68,68,0.04)}.wpcf7-spinner{display:none !important}/* ══════════════════════════════════════════════════════════════ RESPONSIVE ══════════════════════════════════════════════════════════════ */ @media (max-width:1024px){.nav{display:none}.burger{display:block}.usp-row{grid-template-columns:repeat(2,1fr)}.usp-card:nth-child(2)::after{display:none}.about .container{grid-template-columns:1fr;gap:3rem}.about-gallery{height:380px}.services-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.steps::before{display:none}.stats-row{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item:nth-child(1){grid-column:span 2}.zone .container{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:640px){.loader-logo{width:90vw;height:20vw}.logo-img{height:40px}.topbar .container{flex-direction:column;gap:0.2rem;font-size:0.72rem}.usp-row{grid-template-columns:1fr}.usp-card::after{display:none !important}.about-gallery{height:300px}.about-checks{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr;gap:2rem}.stats-row{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item:nth-child(1){grid-column:span 2}.hero-btns{flex-direction:column}.hero-btns .btn{width:100%;justify-content:center}.hero-trust{flex-direction:column;gap:0.8rem}.cta-final-btns{flex-direction:column;align-items:center}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;text-align:center}.form-grid{grid-template-columns:1fr}}.legal-page{max-width:800px;margin:0 auto}.legal-page h2{font-family:var(--font-display);font-size:1.5rem;color:var(--navy);margin:2.5rem 0 1rem;padding-top:1rem;border-top:1px solid var(--border)}.legal-page h2:first-of-type{border-top:none;padding-top:0}.legal-page h3{font-family:var(--font-display);font-size:1.15rem;color:var(--navy);margin:1.5rem 0 0.6rem}.legal-page p{line-height:1.8;margin-bottom:1rem;font-size:0.92rem;color:var(--text)}.legal-page a{color:var(--copper);text-decoration:underline}.legal-page a:hover{color:var(--copper-dark)}.legal-page table{width:100%;border-collapse:collapse;margin:1.2rem 0 1.5rem;font-size:0.85rem}.legal-page th,.legal-page td{padding:0.65rem 0.8rem;border:1px solid var(--border);text-align:left}.legal-page th{background:var(--cream);font-weight:600;color:var(--navy);font-size:0.82rem;text-transform:uppercase;letter-spacing:0.03em}.legal-page td{color:var(--text);line-height:1.5}@media (max-width:640px){.legal-page table{font-size:0.78rem}.legal-page th,.legal-page td{padding:0.5rem}}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--navy);color:rgba(255,255,255,0.8);padding:1.2rem 0;transform:translateY(100%);transition:transform 0.5s var(--ease-out-expo);box-shadow:0 -4px 30px rgba(0,0,0,0.15)}.cookie-banner.vis{transform:translateY(0)}.cookie-banner-inner{max-width:1340px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.cookie-banner-inner p{flex:1;min-width:280px;font-size:0.85rem;line-height:1.6;margin:0}.cookie-banner-inner a{color:var(--copper-light);text-decoration:underline}.cookie-banner-inner a:hover{color:var(--copper)}.cookie-btns{display:flex;gap:0.7rem;flex-shrink:0}.cookie-accept{padding:0.6rem 1.5rem !important;font-size:0.82rem !important}.cookie-reject{padding:0.6rem 1.5rem !important;font-size:0.82rem !important;border-color:rgba(255,255,255,0.25) !important;color:#fff !important}.cookie-reject:hover{border-color:#fff !important;background:rgba(255,255,255,0.08) !important}@media (max-width:640px){.cookie-banner-inner{flex-direction:column;text-align:center}.cookie-btns{width:100%;justify-content:center}.about-badge{bottom:22%;left:6%}}
/* ══════════════════════════════════════════════════════════════ CONTATTI PAGE ══════════════════════════════════════════════════════════════ */
.page-wide .page-content .container{max-width:1200px}
.contatti-page{max-width:1100px;margin:0 auto}
.contatti-hero{text-align:center;max-width:700px;margin:0 auto 3.5rem}
.contatti-hero h1{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--navy);line-height:1.2;margin-bottom:1rem}
.contatti-hero h1 em{font-style:italic;color:var(--copper)}
.contatti-hero p{color:var(--text-light);line-height:1.7;font-size:0.95rem}
.contatti-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;margin-bottom:4rem;align-items:start}
.contatti-info h2,.contatti-form-wrap h2,.contatti-map-section h2{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.8rem);color:var(--navy);margin-bottom:1.2rem}
.contatti-info h2 em,.contatti-form-wrap h2 em,.contatti-map-section h2 em{font-style:italic;color:var(--copper)}
.contatti-card{display:flex;align-items:flex-start;gap:0.9rem;padding:0.9rem 0;border-bottom:1px solid var(--border)}
.contatti-card:last-of-type{border-bottom:none}
.contatti-card-icon{width:40px;height:40px;min-width:40px;min-height:40px;background:rgba(193,127,66,0.08);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.contatti-card-icon svg{width:18px;height:18px;flex-shrink:0}
.contatti-card > div:last-child{display:flex;flex-direction:column;gap:0.15rem;padding-top:0.15rem}
.contatti-card strong{font-size:0.88rem;color:var(--navy);line-height:1.3}
.contatti-card span{font-size:0.85rem;color:var(--text);line-height:1.5}
.contatti-card a{font-size:0.85rem;color:var(--copper);line-height:1.5;transition:color 0.3s}
.contatti-card a:hover{color:var(--copper-dark)}
.contatti-muted{font-size:0.8rem !important;color:var(--text-light) !important}
.contatti-social{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}
.contatti-social strong{display:block;font-size:0.88rem;color:var(--navy);margin-bottom:0.6rem}
.contatti-social-icons{display:flex;gap:0.5rem}
.contatti-social-icons a{width:42px;height:42px;border-radius:10px;background:var(--navy);display:flex;align-items:center;justify-content:center;color:#fff;transition:all 0.3s}
.contatti-social-icons a:hover{background:var(--copper);transform:translateY(-2px)}
.contatti-social-icons svg{width:18px;height:18px}
.contatti-map-mini{margin-top:1.5rem;border-radius:var(--radius);overflow:hidden;height:220px;box-shadow:0 6px 20px rgba(0,0,0,0.06)}
.contatti-map-mini iframe{width:100%;height:100%;border:0;filter:saturate(0.85) contrast(1.05);transition:filter 0.4s}
.contatti-map-mini:hover iframe{filter:saturate(1) contrast(1)}
.contatti-form-wrap{background:var(--white);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:0 8px 40px rgba(0,0,0,0.05);border:1px solid var(--border)}
.contatti-form-wrap p{color:var(--text-light);font-size:0.9rem;margin-bottom:1.5rem;line-height:1.6}
.contatti-form-wrap .form-grid-contact{display:flex;flex-direction:column;gap:1rem}
.contatti-form-wrap .wpcf7-acceptance{display:flex;align-items:flex-start;gap:0.5rem;margin-top:0.3rem}
.contatti-form-wrap .wpcf7-acceptance input[type="checkbox"]{width:16px;height:16px;min-width:16px;margin-top:3px;accent-color:var(--copper)}
.contatti-form-wrap .wpcf7-acceptance .wpcf7-list-item-label{font-size:0.8rem;line-height:1.5;color:var(--text-light)}
.contatti-cta{text-align:center;background:var(--navy);color:#fff;padding:3.5rem 2rem;border-radius:var(--radius-lg);margin-bottom:1rem}
.contatti-cta h2{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);color:#fff;margin-bottom:0.8rem}
.contatti-cta p{color:rgba(255,255,255,0.7);margin-bottom:2rem;font-size:0.95rem}
.contatti-cta-btns{display:flex;gap:0.8rem;justify-content:center;flex-wrap:wrap}
.btn-wa{background:#25d366;color:#fff !important;padding:0.7rem 1.8rem;border-radius:50px}
.btn-wa:hover{background:#1da851;transform:translateY(-2px);box-shadow:0 8px 25px rgba(37,211,102,0.3)}
@media (max-width:768px){.contatti-grid{grid-template-columns:1fr;gap:2rem}.contatti-form-wrap{padding:1.5rem;order:-1}.contatti-cta{padding:2.5rem 1.5rem}.contatti-cta-btns{flex-direction:column;align-items:center}}

/* ══════════════════════════════════════════════════════════════ SUCCESS MODAL ══════════════════════════════════════════════════════════════ */
.success-modal{position:fixed;inset:0;z-index:10001;background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.4s,visibility 0.4s}.success-modal.active{opacity:1;visibility:visible}.success-modal-box{background:var(--white);border-radius:var(--radius-lg);padding:3rem 2.5rem;text-align:center;max-width:420px;width:90%;position:relative;transform:scale(0.85) translateY(20px);transition:transform 0.5s var(--ease-out-expo)}.success-modal.active .success-modal-box{transform:scale(1) translateY(0)}.success-modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border-radius:50%;background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--text-light);transition:all 0.3s;cursor:pointer;border:none}.success-modal-close:hover{background:var(--border);color:var(--navy)}.success-modal-close svg{width:18px;height:18px}.success-modal-icon{width:72px;height:72px;margin:0 auto 1.5rem;border-radius:50%;background:linear-gradient(135deg,var(--olive),#6fa775);display:flex;align-items:center;justify-content:center;color:#fff;animation:successPop 0.5s var(--ease-spring) 0.2s both}.success-modal-icon svg{width:32px;height:32px}@keyframes successPop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.success-modal-box h3{font-family:var(--font-display);font-size:1.5rem;color:var(--navy);margin-bottom:0.6rem}.success-modal-box p{color:var(--text-light);font-size:0.92rem;line-height:1.6;margin-bottom:1.8rem}.success-modal-box .btn{padding:0.7rem 2.2rem}

/* ══════════════════════════════════════════════════════════════ PREVENTIVO PAGE ══════════════════════════════════════════════════════════════ */
.preventivo-page{max-width:1100px;margin:0 auto}
.prev-hero{text-align:center;max-width:700px;margin:0 auto 3rem}
.prev-hero h1{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--navy);line-height:1.2;margin-bottom:1rem}
.prev-hero h1 em{font-style:italic;color:var(--copper)}
.prev-hero p{color:var(--text-light);line-height:1.7;font-size:0.95rem}
.prev-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:start}
.prev-form-wrap{background:var(--white);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:0 8px 40px rgba(0,0,0,0.05);border:1px solid var(--border)}
.prev-form-header{display:flex;gap:1rem;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
.prev-form-icon{width:48px;height:48px;min-width:48px;background:rgba(193,127,66,0.08);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.prev-form-icon svg{width:22px;height:22px}
.prev-form-header h2{font-family:var(--font-display);font-size:1.4rem;color:var(--navy);margin-bottom:0.2rem}
.prev-form-header p{font-size:0.85rem;color:var(--text-light);margin:0}
.prev-sidebar{display:flex;flex-direction:column;gap:1.5rem}
.prev-card{background:var(--white);border-radius:var(--radius-lg);padding:2rem;box-shadow:0 4px 20px rgba(0,0,0,0.04);border:1px solid var(--border)}
.prev-card h3{font-family:var(--font-display);font-size:1.2rem;color:var(--navy);margin-bottom:1.2rem}
.prev-card h3 em{font-style:italic;color:var(--copper)}
.prev-card > p{font-size:0.88rem;color:var(--text-light);line-height:1.6;margin-bottom:1rem}
.prev-benefit{display:flex;gap:0.8rem;align-items:flex-start;padding:0.7rem 0;border-bottom:1px solid rgba(0,0,0,0.04)}
.prev-benefit:last-of-type{border-bottom:none}
.prev-benefit-icon{width:36px;height:36px;min-width:36px;background:rgba(193,127,66,0.08);border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.prev-benefit-icon svg{width:16px;height:16px}
.prev-benefit strong{display:block;font-size:0.88rem;color:var(--navy);margin-bottom:0.1rem}
.prev-benefit span{font-size:0.8rem;color:var(--text-light);line-height:1.4}
.prev-contact-row{display:flex;align-items:center;gap:0.7rem;padding:0.5rem 0}
.prev-contact-row svg{width:18px;height:18px;flex-shrink:0;color:var(--copper)}
.prev-contact-row a{font-size:0.9rem;color:var(--copper);font-weight:500;transition:color 0.3s}
.prev-contact-row a:hover{color:var(--copper-dark)}
.prev-card-dark{background:var(--navy);color:#fff;text-align:center;border-color:transparent}
.prev-trust-num{font-family:var(--font-display);font-size:2.8rem;color:var(--copper-light);line-height:1;margin-bottom:0.3rem}
.prev-trust-label{font-size:1rem;font-weight:600;margin-bottom:0.6rem}
.prev-card-dark span{font-size:0.78rem;color:rgba(255,255,255,0.55);line-height:1.4}
.prev-form-wrap .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.2rem}
.prev-form-wrap .form-group-full{grid-column:1 / -1}
@media (max-width:768px){.prev-grid{grid-template-columns:1fr}.prev-form-wrap{padding:1.5rem}.prev-form-wrap .form-grid{grid-template-columns:1fr}}

/* ══════════════════════════════════════════════════════════════ INNER PAGES (universal) ══════════════════════════════════════════════════════════════ */
.inner-page{max-width:1000px;margin:0 auto}
.inner-hero{text-align:center;max-width:740px;margin:0 auto 3.5rem}
.inner-hero .section-tag{justify-content:center}
.inner-hero h1{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--navy);line-height:1.2;margin-bottom:1rem}
.inner-hero h1 em{font-style:italic;color:var(--copper)}
.inner-hero p{color:var(--text-light);line-height:1.7;font-size:0.95rem;max-width:600px;margin:0 auto}
.inner-hero-btns{display:flex;gap:0.8rem;justify-content:center;flex-wrap:wrap;margin-top:1.8rem}
.inner-section{padding:3rem 0;border-bottom:1px solid var(--border)}
.inner-section:last-of-type{border-bottom:none}
.inner-section-alt{background:var(--white);margin:0 -2rem;padding:3rem 2rem;border-radius:var(--radius-lg)}
.inner-section h2{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.8rem);color:var(--navy);margin-bottom:1.5rem;text-align:center}
.inner-section h2 em{font-style:italic;color:var(--copper)}
.inner-two-col{display:grid;grid-template-columns:1.3fr 1fr;gap:3rem;align-items:center}
.inner-two-col p{color:var(--text-light);line-height:1.8;font-size:0.92rem;margin-bottom:1rem}
.inner-two-col h2{text-align:left}
.inner-highlights{display:flex;flex-direction:column;gap:1.2rem}
.inner-highlight{background:var(--white);border-radius:var(--radius);padding:1.5rem;text-align:center;border:1px solid var(--border)}
.inner-highlight-num{display:block;font-family:var(--font-display);font-size:2.4rem;color:var(--copper);line-height:1}
.inner-highlight-label{display:block;font-weight:600;font-size:0.9rem;color:var(--navy);margin:0.3rem 0 0.2rem}
.inner-highlight-desc{display:block;font-size:0.78rem;color:var(--text-light)}
.inner-checklist{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:800px;margin:0 auto}
.inner-check-item{display:flex;gap:0.8rem;align-items:flex-start;padding:1rem;background:var(--cream);border-radius:var(--radius);transition:transform 0.3s}
.inner-check-item:hover{transform:translateY(-2px)}
.inner-check-icon{width:32px;height:32px;min-width:32px;background:rgba(193,127,66,0.1);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.inner-check-icon svg{width:15px;height:15px}
.inner-check-item strong{display:block;font-size:0.88rem;color:var(--navy);margin-bottom:0.15rem}
.inner-check-item span{font-size:0.8rem;color:var(--text-light);line-height:1.4}
.inner-cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.inner-card{background:var(--white);border-radius:var(--radius-lg);padding:2rem 1.5rem;text-align:center;border:1px solid var(--border);transition:transform 0.4s var(--ease-out-expo),box-shadow 0.4s}
.inner-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(0,0,0,0.06)}
.inner-card-icon{width:52px;height:52px;margin:0 auto 1rem;background:rgba(193,127,66,0.08);border-radius:13px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.inner-card-icon svg{width:24px;height:24px}
.inner-card h3{font-family:var(--font-display);font-size:1.1rem;color:var(--navy);margin-bottom:0.5rem}
.inner-card p{font-size:0.83rem;color:var(--text-light);line-height:1.6}
.inner-tags{display:flex;flex-wrap:wrap;gap:0.5rem;justify-content:center;max-width:700px;margin:0 auto}
.inner-tag{background:var(--cream);border:1px solid var(--border);border-radius:50px;padding:0.5rem 1.2rem;font-size:0.82rem;font-weight:500;color:var(--charcoal);transition:all 0.3s}
.inner-tag:hover{background:var(--copper);color:#fff;border-color:var(--copper);transform:translateY(-2px)}
.inner-cta{text-align:center;background:var(--navy);color:#fff;padding:3.5rem 2rem;border-radius:var(--radius-lg);margin-top:3rem}
.inner-cta h2{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,2rem);color:#fff;margin-bottom:0.8rem}
.inner-cta p{color:rgba(255,255,255,0.7);margin-bottom:2rem;font-size:0.95rem}
.inner-cta-btns{display:flex;gap:0.8rem;justify-content:center;flex-wrap:wrap}
@media (max-width:768px){.inner-two-col{grid-template-columns:1fr}.inner-checklist{grid-template-columns:1fr}.inner-cards-row{grid-template-columns:1fr}.inner-hero-btns{flex-direction:column;align-items:center}.inner-cta-btns{flex-direction:column;align-items:center}.inner-section-alt{margin:0 -1rem;padding:2.5rem 1rem}}
/* ═══ SERVIZI PAGE — Service Cards Grid ═══ */
.serv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}
.serv-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 1.5rem;transition:all 0.3s;text-decoration:none;color:inherit;display:flex;flex-direction:column}
a.serv-card:hover{border-color:var(--copper);transform:translateY(-4px);box-shadow:0 12px 40px rgba(0,0,0,0.08)}
.serv-card-icon{width:48px;height:48px;border-radius:12px;background:var(--cream);display:flex;align-items:center;justify-content:center;margin-bottom:1.2rem;transition:all 0.3s}
.serv-card-icon svg{width:24px;height:24px;color:var(--copper)}
a.serv-card:hover .serv-card-icon{background:var(--copper)}
a.serv-card:hover .serv-card-icon svg{color:#fff}
.serv-card h3{font-family:var(--font-display);font-size:1.1rem;color:var(--navy);margin-bottom:0.6rem}
.serv-card p{font-size:0.85rem;color:var(--text-light);line-height:1.6;flex-grow:1}
.serv-card-link{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.82rem;font-weight:600;color:var(--copper);margin-top:1rem;transition:gap 0.3s}
a.serv-card:hover .serv-card-link{gap:0.7rem}
/* ═══ FAQ Accordion ═══ */
.faq-list{max-width:800px;margin:2rem auto 0;display:flex;flex-direction:column;gap:0}
.faq-item{border-bottom:1px solid var(--border);overflow:hidden}
.faq-item:first-child{border-top:1px solid var(--border)}
.faq-question{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1.2rem 0;cursor:pointer;list-style:none;font-family:var(--font-display);font-size:1rem;color:var(--navy);transition:color 0.3s}
.faq-question::-webkit-details-marker{display:none}
.faq-question::marker{display:none;content:""}
.faq-question span{flex:1;padding-right:1rem}
.faq-chevron{width:20px;height:20px;flex-shrink:0;color:var(--copper);transition:transform 0.3s}
.faq-item[open] .faq-chevron{transform:rotate(180deg)}
.faq-item[open] .faq-question{color:var(--copper)}
.faq-answer{padding:0 0 1.2rem}
.faq-answer p{font-size:0.9rem;color:var(--text-light);line-height:1.7;margin:0}
/* ═══ Responsive — Servizi ═══ */
@media (max-width:768px){.serv-grid{grid-template-columns:1fr}}
@media (min-width:769px) and (max-width:1024px){.serv-grid{grid-template-columns:repeat(2,1fr)}}
/* ══════════════════════════════════════════════════════════════ PREZZI PAGE — Listino & Tabelle ══════════════════════════════════════════════════════════════ */
.prezzi-page{max-width:1040px;margin:0 auto}
.prezzi-intro{text-align:center;max-width:680px;margin:0.6rem auto 0;color:var(--text-light);font-size:0.95rem;line-height:1.7}
.inner-section > h2 + .prezzi-intro{margin-bottom:0.5rem}
/* ─── In-content links ─── */
.prezzi-page .inner-section p a,.prezzi-page .prezzi-disclaimer a{color:var(--copper-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;transition:color 0.3s}
.prezzi-page .inner-section p a:hover,.prezzi-page .prezzi-disclaimer a:hover{color:var(--copper)}
/* ─── Footnote ─── */
.prezzi-note{text-align:center;font-size:0.8rem;color:var(--text-light);margin-top:1.4rem;font-style:italic;line-height:1.5;max-width:640px;margin-left:auto;margin-right:auto}
/* ─── Tier cards ─── */
.prezzi-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.2rem;align-items:stretch}
.prezzi-tier{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem 1.7rem;display:flex;flex-direction:column;transition:transform 0.4s var(--ease-out-expo),box-shadow 0.4s,border-color 0.4s}
.prezzi-tier:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(0,0,0,0.08);border-color:rgba(193,127,66,0.25)}
.prezzi-tier-featured{border:1.5px solid var(--copper);box-shadow:0 14px 38px var(--copper-glow)}
.prezzi-tier-featured:hover{border-color:var(--copper)}
.prezzi-tier-badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:#7a4e1f;color:#fff;font-size:0.66rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:0.4rem 1.1rem;border-radius:50px;white-space:nowrap;box-shadow:0 4px 12px var(--copper-glow)}
.prezzi-tier-name{font-family:var(--font-display);font-size:1.5rem;color:var(--navy)}
.prezzi-tier-desc{font-size:0.83rem;color:var(--text-light);line-height:1.55;margin:0.5rem 0 1.3rem;min-height:3.4em}
.prezzi-tier-price{display:flex;align-items:baseline;gap:0.4rem;margin-bottom:1.4rem;padding-bottom:1.4rem;border-bottom:1px solid var(--border)}
.prezzi-tier-price .from{font-size:0.8rem;color:var(--text-light);font-weight:500}
.prezzi-tier-price .amount{font-family:var(--font-display);font-size:2.7rem;color:var(--copper);line-height:1}
.prezzi-tier-features{display:flex;flex-direction:column;gap:0.7rem;margin-bottom:1.7rem;flex-grow:1}
.prezzi-tier-feature{display:flex;align-items:flex-start;gap:0.6rem;font-size:0.86rem;color:var(--text);line-height:1.45}
.prezzi-tier-feature svg{width:16px;height:16px;color:var(--olive);flex-shrink:0;margin-top:2px}
.prezzi-tier .btn{justify-content:center;width:100%}
/* ─── Price tables ─── */
.prezzi-block{margin-top:1.8rem}
.prezzi-block-head{display:flex;align-items:center;gap:0.9rem;margin-bottom:0.9rem;flex-wrap:wrap}
.prezzi-block-head h3{font-family:var(--font-display);font-size:1.2rem;color:var(--navy);margin:0;line-height:1.3}
.prezzi-block-pill{display:inline-flex;align-items:center;font-size:0.7rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:0.35rem 0.85rem;border-radius:50px;white-space:nowrap}
.prezzi-pill-economy{background:rgba(90,122,94,0.12);color:var(--olive)}
.prezzi-pill-classic{background:rgba(193,127,66,0.14);color:var(--copper-dark)}
.prezzi-pill-comfort{background:rgba(15,29,47,0.08);color:var(--navy)}
.prezzi-table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border);-webkit-overflow-scrolling:touch}
.prezzi-table{width:100%;border-collapse:collapse;font-size:0.9rem;background:#fff;min-width:360px}
.prezzi-table thead th{background:var(--navy);color:#fff;font-weight:600;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;text-align:left;padding:0.85rem 1.2rem}
.prezzi-table thead th:last-child{text-align:right;width:1%;white-space:nowrap}
.prezzi-table tbody td{padding:0.8rem 1.2rem;border-top:1px solid var(--border);color:var(--text);line-height:1.4}
.prezzi-table tbody tr:nth-child(even){background:var(--cream)}
.prezzi-table tbody td:last-child{text-align:right;font-weight:700;white-space:nowrap}
.prezzi-price-tag{color:var(--copper);font-family:var(--font-display);font-size:1.05rem}
.prezzi-muted{color:var(--text-light);font-size:0.8rem;font-weight:400}
/* ─── Comparison table (appartamenti) ─── */
.prezzi-compare{width:100%;border-collapse:collapse;font-size:0.88rem;background:#fff;min-width:540px}
.prezzi-compare thead th{padding:0.95rem 1rem;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.04em;background:var(--navy);color:#fff;text-align:center;font-weight:600}
.prezzi-compare thead th:first-child{text-align:left;background:var(--navy-mid)}
.prezzi-compare thead th.col-feat{background:#7a4e1f}
.prezzi-compare tbody td{padding:0.9rem 1rem;border-top:1px solid var(--border);text-align:center;color:var(--navy);font-family:var(--font-display);font-size:1.02rem}
.prezzi-compare tbody td:first-child{text-align:left;font-family:var(--font-body);font-size:0.88rem;font-weight:500;color:var(--text)}
.prezzi-compare tbody td.col-feat{background:rgba(193,127,66,0.07);color:var(--copper-dark)}
.prezzi-compare tbody tr:nth-child(even) td:first-child{background:var(--cream)}
/* ─── Extra services ─── */
.prezzi-extra{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.8rem}
.prezzi-extra-item{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.3rem;transition:border-color 0.3s,transform 0.3s}
.prezzi-extra-item:hover{border-color:rgba(193,127,66,0.3);transform:translateY(-2px)}
.prezzi-extra-icon{width:44px;height:44px;min-width:44px;background:rgba(193,127,66,0.1);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.prezzi-extra-icon svg{width:20px;height:20px}
.prezzi-extra-item h4{font-size:0.92rem;color:var(--navy);margin:0 0 0.15rem;font-weight:600}
.prezzi-extra-item span{font-size:0.8rem;color:var(--text-light);line-height:1.4}
.prezzi-extra-price{margin-left:auto;font-family:var(--font-display);color:var(--copper);font-size:1.15rem;white-space:nowrap;padding-left:0.6rem}
/* ─── Single services two columns ─── */
.prezzi-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;align-items:start}
.prezzi-cols .prezzi-block{margin-top:0}
/* ─── Disclaimer ─── */
.prezzi-disclaimer{display:flex;gap:0.8rem;align-items:flex-start;background:var(--cream);border:1px dashed var(--cream-dark);border-radius:var(--radius);padding:1.1rem 1.3rem;margin-top:1.8rem;font-size:0.83rem;color:var(--text-light);line-height:1.65}
.prezzi-disclaimer svg{width:18px;height:18px;color:var(--copper);flex-shrink:0;margin-top:2px}
.prezzi-disclaimer strong{color:var(--navy);font-weight:600}
/* ─── Responsive ─── */
@media (max-width:860px){.prezzi-tiers{grid-template-columns:1fr;gap:2rem;margin-top:2.4rem}.prezzi-tier-desc{min-height:0}.prezzi-extra{grid-template-columns:1fr}.prezzi-cols{grid-template-columns:1fr;gap:1.8rem}}
@media (max-width:640px){.prezzi-extra-item{padding:1rem}.prezzi-extra-price{font-size:1.02rem}.prezzi-table thead th,.prezzi-table tbody td{padding:0.7rem 0.9rem}}
