:root{--white:#ffffff;--black:#1a1a1a;--orange:#FF6600;--orange-dark:#e65100;--blue:#007BFF;--blue-dark:#0056b3;--gray-light:#f8f9fa;--gray:#e9ecef;--dark:#212529;--accent:#FF6600;--text:#2d3748;--border:#dee2e6}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;background:var(--white);color:var(--text);line-height:1.7;font-size:16px;overflow-x:hidden}
.container{max-width:1200px}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit;transition:all 0.3s ease}

/* Header */
.header{background:rgba(255,255,255,0.98);backdrop-filter:blur(10px);box-shadow:0 2px 15px rgba(0,0,0,0.08);z-index:1000;transition:all 0.3s ease}
.header-inner{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 0}
.logo-img{height:50px;width:auto;display:block}
.logo-text{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,var(--blue),var(--blue-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.main-nav{display:flex;gap:2.5rem;align-items:center}
.nav-item{color:var(--text);font-weight:500;font-size:1rem;position:relative;padding:0.5rem 0;transition:color 0.3s ease}
.nav-item:hover,.nav-item:focus{color:var(--accent)}
.nav-item::after{content:'';position:absolute;width:0;height:2px;bottom:0;left:50%;background:var(--accent);transition:all 0.3s ease;transform:translateX(-50%)}
.nav-item:hover::after{width:100%}

/* Mobile Menu */
.menu-toggle{background:none;border:none;color:var(--text);cursor:pointer;padding:0.5rem;transition:color 0.3s}
.menu-toggle:hover{color:var(--accent)}
.mobile-menu{position:fixed;top:0;right:-100%;width:85%;max-width:320px;height:100vh;background:white;box-shadow:-5px 0 30px rgba(0,0,0,0.15);transition:right 0.4s cubic-bezier(0.16,1,0.3,1);z-index:2000;padding:2rem}
.mobile-menu.active{right:0}
.menu-close{background:none;border:none;position:absolute;top:1.5rem;right:1.5rem;color:var(--text);cursor:pointer;padding:0.5rem;transition:color 0.3s}
.menu-close:hover{color:var(--accent)}
.mobile-nav{display:flex;flex-direction:column;gap:2rem;margin-top:4rem}
.mobile-nav a{font-size:1.4rem;font-weight:500;color:var(--text);padding:0.5rem 0;border-bottom:1px solid var(--gray);transition:all 0.3s}
.mobile-nav a:hover{color:var(--accent);padding-left:0.5rem}

/* Hero */
.hero{position:relative;min-height:100vh;background:linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.7)),url('/t/i/roman-0002.jpg') center/cover no-repeat fixed;display:flex;align-items:center;justify-content:center;color:white}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.2),rgba(0,0,0,0.6));pointer-events:none;z-index:1}
.hero .container{position:relative;z-index:2}
.hero-title{font-size:clamp(2.5rem,8vw,5rem);font-weight:800;line-height:1.1;margin-bottom:2rem;text-shadow:2px 2px 20px rgba(0,0,0,0.5)}
.text-accent{color:var(--accent);display:inline-block}
.hero-text{max-width:991px;margin:0 auto}
.hero-text .lead{font-size:clamp(1.1rem,2.5vw,1.5rem);margin-bottom:0.8rem;text-shadow:1px 1px 10px rgba(0,0,0,0.5)}
.btn-hero{background:linear-gradient(135deg,var(--accent),var(--orange-dark));color:white;border:none;font-size:1.3rem;font-weight:600;padding:1rem 3rem;border-radius:50px;transition:all 0.4s ease;box-shadow:0 10px 30px rgba(255,102,0,0.4)}
.btn-hero:hover{transform:translateY(-4px);box-shadow:0 15px 40px rgba(255,102,0,0.6);color:white}

/* Scroll Indicator */
.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);z-index:2;color:white;opacity:0.8;animation:bounce 2s infinite;transition:opacity 0.3s}
.scroll-indicator:hover{opacity:1;color:var(--accent)}
@keyframes bounce{0%,20%,50%,80%,100%{transform:translate(-50%,0)}40%{transform:translate(-50%,-15px)}60%{transform:translate(-50%,-8px)}}

/* Floating Buttons */
.call-btn{position:fixed;bottom:30px;right:30px;width:75px;height:75px;background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 25px rgba(0,123,255,0.4);z-index:999;transition:all 0.3s ease}
.call-btn:hover{transform:scale(1.1);box-shadow:0 12px 35px rgba(0,123,255,0.5);color:white}
.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(0,123,255,0.7)}70%{box-shadow:0 0 0 20px rgba(0,123,255,0)}100%{box-shadow:0 0 0 0 rgba(0,123,255,0)}}

.back-to-top{position:fixed;bottom:120px;right:30px;width:50px;height:50px;background:var(--accent);color:white;border-radius:50%;display:none;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(255,102,0,0.3);z-index:998;transition:all 0.3s ease}
.back-to-top:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(255,102,0,0.5);color:white}

/* Sections */
.section-padding{padding:5rem 0}
.section-title{font-size:clamp(1.2rem,2vw,3rem);font-weight:700;color:var(--dark);margin-bottom:1rem;line-height: 110%;text-transform:uppercase;}
.section-subtitle{font-size:clamp(1rem,2.5vw,1.25rem);color:#6c757d;max-width:700px;margin:0 auto}
.content-text{font-size:1.125rem;line-height:1.8}
.content-text p{margin-bottom:0.8rem}
.content-text p:last-child{margin-bottom:0}
.highlight-text{color:var(--accent);font-weight:600;font-size:1.2rem;padding:1rem;background:rgba(255,102,0,0.05);border-left:4px solid var(--accent);border-radius:1.4rem;margin-top:1.5rem}

/* Images */
.image-wrapper{position:relative;overflow:hidden;border-radius:1.4rem;box-shadow:0 10px 40px rgba(0,0,0,0.15)}
.image-wrapper img{transition:transform 0.5s ease}
.image-wrapper:hover img{transform:scale(1.05)}
.rounded-lg{border-radius:1.4rem}

/* Service Cards */
.service-card{background:white;border-radius:1.4rem;overflow:hidden;box-shadow:0 5px 25px rgba(0,0,0,0.08);transition:all 0.4s ease;height:100%}
.service-card:hover{transform:translateY(-8px);box-shadow:0 15px 40px rgba(0,0,0,0.15)}
.service-image{height:240px;overflow:hidden;position:relative}
.service-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease}
.service-card:hover .service-image img{transform:scale(1.1)}
.service-body{padding:1.8rem}
.service-title{font-size:1.5rem;font-weight:700;color:var(--dark);margin-bottom:0.8rem}
.service-desc{color:#6c757d;font-size:1.05rem;line-height:1.6;margin:0}

/* Info Box */
.info-box{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:2rem;border-radius:1.4rem;border-left:5px solid var(--blue);font-size:1.05rem;line-height:1.8}
.info-box strong{color:var(--dark);font-weight:600}

/* Advantage Cards */
.advantage-card{text-align:center;padding:2rem 1.5rem;background:white;border-radius:1.4rem;box-shadow:0 4px 20px rgba(0,0,0,0.06);transition:all 0.4s ease;height:100%}
.advantage-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px rgba(0,0,0,0.12)}
.advantage-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:linear-gradient(135deg,var(--accent),var(--orange-dark));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:0 6px 20px rgba(255,102,0,0.3)}
.advantage-title{font-size:1.3rem;font-weight:700;color:var(--dark);margin-bottom:0.8rem}
.advantage-text{color:#6c757d;font-size:1rem;line-height:1.6;margin:0}

/* Portfolio */
.portfolio-item{position:relative;overflow:hidden;border-radius:1.4rem;box-shadow:0 5px 25px rgba(0,0,0,0.1);transition:all 0.4s ease}
.portfolio-item:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,0.2)}
.portfolio-item img{width:100%;height:auto;display:block;transition:transform 0.5s ease}
.portfolio-item:hover img{transform:scale(1.08)}
.portfolio-caption{padding:1rem;text-align:center}
.portfolio-caption p{margin:0;font-size:1.05rem;color:#495057;font-weight:500}

.portfolio-highlight{max-width:900px;margin:0 auto;text-align:center}
.portfolio-highlight img{border-radius:1.4rem;box-shadow:0 10px 40px rgba(0,0,0,0.15);width:100%}

.note-text{font-size:1.15rem;color:#6c757d;font-style:italic}

/* Process */
.process-list{background:white;border-radius:1.4rem;padding:2rem;box-shadow:0 5px 25px rgba(0,0,0,0.08)}
.process-item{display:flex;gap:1.5rem;padding:1.8rem 0;border-bottom:1px solid var(--gray)}
.process-item:last-child{border-bottom:none}
.process-number{flex-shrink:0;width:50px;height:50px;background:linear-gradient(135deg,var(--blue),var(--blue-dark));color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;box-shadow:0 4px 15px rgba(0,123,255,0.3)}
.alert-item .process-number{background:linear-gradient(135deg,#dc3545,#c82333)}
.process-content h5{font-size:1.25rem;font-weight:700;color:var(--dark);margin-bottom:0.5rem}
.process-content p{margin:0;color:#6c757d;font-size:1.05rem;line-height:1.6}

.cta-box{background:linear-gradient(135deg,var(--accent),var(--orange-dark));color:white;padding:2rem;border-radius:1.4rem;font-size:1.3rem;font-weight:600;text-align:center;box-shadow:0 8px 25px rgba(255,102,0,0.3)}

/* Footer */
.footer-section{background:linear-gradient(135deg,var(--dark),#1a1a1a);color:white;padding:4rem 0 2rem}
.footer-title{font-size:clamp(1.8rem,4vw,2.5rem);font-weight:700;color:white}
.contact-info{margin:2rem 0}
.phone-link{font-size:clamp(1.5rem,4vw,2.5rem);color:var(--accent);font-weight:700;transition:all 0.3s ease;display:inline-block}
.phone-link:hover{color:var(--orange-dark);transform:scale(1.05)}
.footer-text{font-size:1.15rem;color:#adb5bd;margin:0 auto}
.footer-bottom{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.1);color:#6c757d;font-size:0.95rem}

/* Animations */
.fade-in{opacity:0;transform:translateY(40px);transition:all 0.8s ease-out}
.fade-in.visible{opacity:1;transform:translateY(0)}

/* Backgrounds */
.bg-light{background:var(--gray-light)!important}

/* Responsive */
@media(max-width:991px){
.section-padding{padding:3.5rem 0}
.hero-title{font-size:3rem}
.advantage-card{margin-bottom:1rem}
}

@media(max-width:767px){
.section-padding{padding:3rem 0}
.hero{min-height:90vh}
.hero-title{font-size:2.5rem}
.call-btn{width:65px;height:65px;bottom:20px;right:20px}
.back-to-top{width:45px;height:45px;bottom:100px;right:20px}
.service-image{height:200px}
.advantage-icon{width:65px;height:65px;font-size:1.6rem}
.process-number{width:45px;height:45px;font-size:1.3rem}
.image-wrapper{margin-bottom:2rem}
}



.price-banner{background:linear-gradient(135deg,var(--accent),var(--orange-dark));color:white;padding:2rem 2.5rem;border-radius:12px;display:flex;align-items:center;gap:1.5rem;box-shadow:0 8px 25px rgba(255,102,0,0.3)}
.price-icon{width:70px;height:70px;background:rgba(255,255,255,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}
.price-content{flex:1}
.price-label{font-size:1rem;opacity:0.95;margin-bottom:0.3rem;font-weight:500}
.price-value{font-size:2.5rem;font-weight:700;line-height:1}