@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";.header{position:sticky;top:0;left:0;right:0;z-index:var(--z-sticky);background-color:var(--color-white);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.header-scrolled{box-shadow:var(--shadow-lg)}.header .header-content{display:flex;align-items:center;justify-content:space-between;padding:0}.logo{display:flex;align-items:center;height:100px;transition:transform var(--transition-base);margin:0}.logo:hover{transform:scale(1.05)}.logo img{height:100%;width:auto;object-fit:contain;display:block}.nav{display:flex;align-items:center;gap:var(--spacing-8)}.lang-toggle{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--font-heading);font-size:var(--text-sm);color:var(--color-gray-600);border:1px solid var(--color-gray-200);border-radius:var(--radius-full);padding:4px 10px}.lang-option{background:none;border:none;font-weight:600;color:inherit;cursor:pointer;padding:0}.lang-option.active{color:var(--color-primary)}.lang-sep{color:var(--color-gray-300)}.nav-link{font-family:var(--font-heading);font-size:var(--text-base);font-weight:600;color:var(--color-gray-700);text-decoration:none;padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);transition:all var(--transition-fast);position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) scaleX(0);width:80%;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transition:transform var(--transition-base)}.nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{transform:translate(-50%) scaleX(1)}.nav-link.active{color:var(--color-primary)}.nav-link.active:after{transform:translate(-50%) scaleX(1)}.nav-phone{display:inline-flex;align-items:center;gap:8px;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-full);font-size:var(--text-base);font-weight:700;transition:all var(--transition-base);margin-left:var(--spacing-4);white-space:nowrap}.nav-phone-inline{display:none;align-items:center;justify-content:center;padding:6px 10px;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700;color:var(--color-white);background:var(--color-primary);text-decoration:none;white-space:nowrap;margin-left:auto;transition:transform var(--transition-base),box-shadow var(--transition-base)}.nav-phone-inline:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.nav-phone:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.mobile-actions{display:flex;align-items:center;gap:0}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:var(--spacing-2);z-index:var(--z-fixed)}.hamburger span{display:block;width:28px;height:3px;background-color:var(--color-secondary);border-radius:var(--radius-full);transition:all var(--transition-base)}.hamburger:hover span{background-color:var(--color-primary)}.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:all var(--transition-base);z-index:var(--z-fixed)}.nav-overlay.active{opacity:1;visibility:visible}@media(max-width:768px){.header .header-content{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:var(--spacing-2)}.logo{height:56px;order:1}.hamburger{display:flex}.nav{position:fixed;top:0;right:-100%;width:280px;height:100vh;background-color:var(--color-white);flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12) var(--spacing-6);gap:var(--spacing-4);box-shadow:-10px 0 30px #0000001a;transition:right var(--transition-base);z-index:var(--z-modal)}.nav-open{right:0}.nav-link{width:100%;text-align:center;font-size:var(--text-lg);padding:var(--spacing-3)}.nav-link:after{display:none}.lang-toggle{margin-top:var(--spacing-3)}.nav-phone{margin-left:0;width:100%;justify-content:center;margin-top:var(--spacing-4)}.nav-phone-inline{display:inline-flex;margin:0}.mobile-actions{order:3;gap:var(--spacing-2);margin-left:auto}.hamburger{margin-left:0}}.footer{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-gray-900) 100%);color:var(--color-white);padding:var(--spacing-8) 0 var(--spacing-4);margin-top:0;position:relative;overflow:hidden}.footer.has-bg:before{content:"";position:absolute;inset:0;background-image:var(--footer-bg);background-size:cover;background-position:var(--footer-pos, center);opacity:.4;z-index:0}.footer .container{position:relative;z-index:1}.footer-content{display:grid;grid-template-columns:1.1fr .9fr 1fr 1fr;gap:var(--spacing-4);margin-bottom:var(--spacing-6);justify-content:center;max-width:1000px;margin-left:auto;margin-right:auto}.footer-section h4{color:var(--color-white);font-size:var(--text-base);margin-bottom:var(--spacing-2);position:relative;padding-bottom:4px}.footer-section h4:after{content:"";position:absolute;bottom:0;left:0;width:30px;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full)}.footer-logo{max-width:140px;margin-bottom:0;filter:brightness(0) invert(1);display:block}.footer-tagline{font-size:var(--text-xs);color:var(--color-gray-300);margin-top:2px;margin-bottom:0;line-height:1.2}.footer-subtitle{font-size:10px;color:var(--color-gray-400);line-height:1.2;margin-top:2px;margin-bottom:var(--spacing-2)}.footer-links,.footer-contact,.footer-services{list-style:none;padding:0;margin:0}.footer-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--spacing-5);row-gap:4px;max-width:360px;margin-left:auto;margin-right:auto}.footer-section:has(.footer-services) h4{text-align:center}.footer-section:has(.footer-services) h4:after{left:50%;transform:translate(-50%)}.footer-section:has(.footer-services) .footer-services{justify-items:start}.footer-links li,.footer-services li{margin-bottom:0}.footer-links a,.footer-services a{color:var(--color-gray-300);text-decoration:none;transition:color var(--transition-fast);font-size:12px;display:block;white-space:normal;line-height:1.3}.footer-links a:hover,.footer-services a:hover{color:var(--color-primary)}.footer-contact li{margin-bottom:var(--spacing-3);font-size:var(--text-sm);color:var(--color-gray-300);line-height:1.2}.footer-contact strong{color:var(--color-white);display:block;margin-bottom:0;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.footer-contact a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.footer-contact a:hover{color:var(--color-primary-light)}.footer-services li{font-size:var(--text-sm);color:var(--color-gray-300);padding-left:12px;position:relative}.footer-services li:before{content:"•";position:absolute;left:0;color:var(--color-primary);font-size:12px;line-height:1;top:.35em}.footer-bottom{border-top:1px solid var(--color-gray-700);padding-top:var(--spacing-3);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-2)}.footer-bottom p{font-size:12px;color:var(--color-gray-400);margin:0}.footer-credit{font-size:12px;color:var(--color-gray-400)}.footer-credit a{text-decoration:none;color:inherit;transition:color var(--transition-fast)}.footer-credit a:hover{color:var(--color-primary)}.footer-credit strong{color:var(--color-white);font-weight:600}.footer-credit a:hover strong{color:var(--color-primary)}.footer-social{display:flex;gap:var(--spacing-2);margin-top:var(--spacing-2)}.social-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:#ffffff1a;color:var(--color-white);border-radius:var(--radius-md);transition:all var(--transition-base);font-size:14px;text-decoration:none}.social-icon:hover{background-color:var(--color-primary);color:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 8px #dc143c4d}@media(max-width:1024px){.footer-content{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.footer{padding:var(--spacing-6) 0 var(--spacing-3);text-align:left}.footer-content{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--spacing-2);overflow-x:visible;padding-bottom:0}.footer-section h4:after{left:0;transform:none}.footer-section h4{font-size:13px}.footer-logo{margin:0;max-width:90px}.footer-social{justify-content:flex-start}.footer-services li{padding-left:10px}.footer-section:has(.footer-services){text-align:left;display:block}.footer-services{grid-template-columns:1fr;justify-items:start;max-width:100%;width:100%;display:grid;margin-left:0;margin-right:0}.footer-services li,.footer-services a{text-align:left;width:100%}.footer-links a,.footer-services a,.footer-contact li,.footer-contact strong{font-size:10px;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.footer-contact li{margin-bottom:var(--spacing-2)}.footer-bottom{flex-direction:column;text-align:center;gap:4px}}.whatsapp-button{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#25d366;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:all var(--transition-base);z-index:var(--z-fixed);animation:pulse 2s infinite}.whatsapp-button:hover{transform:scale(1.1);background-color:#128c7e;box-shadow:0 6px 16px #0003}.whatsapp-button svg{width:32px;height:32px;color:#fff}.whatsapp-tooltip{position:absolute;right:75px;background-color:#075e54;color:#fff;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;box-shadow:0 2px 8px #0000001a}.whatsapp-tooltip:after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid #075E54;border-top:6px solid transparent;border-bottom:6px solid transparent}.whatsapp-button:hover .whatsapp-tooltip{opacity:1}@keyframes pulse{0%{box-shadow:0 0 #25d366b3}70%{box-shadow:0 0 0 15px #25d36600}to{box-shadow:0 0 #25d36600}}@media(max-width:768px){.whatsapp-button{width:64px;height:64px;bottom:20px;right:20px}.whatsapp-button svg{width:34px;height:34px}.whatsapp-tooltip{display:none}}.home-page{min-height:100vh}.hero{position:relative;min-height:90vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--color-primary)}.hero.has-image:before{content:"";position:absolute;inset:0;background-image:var(--hero-bg-image);background-position:var(--hero-bg-position, 50% 50%);background-size:cover;background-repeat:no-repeat;transform:translateY(var(--hero-parallax-offset, 0px));transition:transform .14s ease-out;will-change:transform;z-index:0}.hero-content{position:relative;z-index:2;text-align:center;max-width:900px;margin:0 auto;padding:var(--spacing-8)}.hero-content h1{font-size:var(--text-6xl);color:var(--color-white);margin-bottom:var(--spacing-6);text-shadow:2px 2px 4px rgba(0,0,0,.5);line-height:1.1}.hero-subtitle{font-size:var(--text-2xl);color:var(--color-white);margin-bottom:var(--spacing-8);text-shadow:1px 1px 2px rgba(0,0,0,.5);font-weight:300}.hero-actions{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4)}.hero-badges{display:flex;gap:var(--spacing-12);flex-wrap:wrap;justify-content:center;width:100%;margin-top:var(--spacing-12)}.google-widget,.yelp-widget{background-color:#fff;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--spacing-3);min-width:180px;transition:transform var(--transition-base)}.google-widget:hover,.yelp-widget:hover{transform:translateY(-2px)}.google-logo{width:32px;height:32px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 533.5 544.3'%3E%3Cpath d='M533.5 278.4c0-18.5-1.5-37.1-4.7-55.3H272.1v104.8h147c-6.1 33.8-25.7 63.7-54.4 82.7v68h87.7c51.5-47.4 81.1-117.4 81.1-200.2z' fill='%234285f4'/%3E%3Cpath d='M272.1 544.3c73.4 0 135.3-24.1 180.4-65.7l-87.7-68c-24.4 16.6-55.9 26-92.6 26-71 0-131.2-47.9-152.8-112.3H28.9v70.1c46.2 91.9 140.3 149.9 243.2 149.9z' fill='%2334a853'/%3E%3Cpath d='M119.3 324.3c-11.4-33.8-11.4-70.4 0-104.2V150H28.9c-38.6 76.9-38.6 167.5 0 244.4l90.4-70.1z' fill='%23fbbc04'/%3E%3Cpath d='M272.1 107.7c38.8.6 76.3 14 104.4 40.8l77.7-77.7C405 24.6 342.3-.3 272.1 0 169.2 0 75.1 58 28.9 150l90.4 70.1c21.5-64.2 81.8-112.4 152.8-112.4z' fill='%23ea4335'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center;flex-shrink:0}.yelp-logo{width:32px;height:32px;background-image:url("data:image/svg+xml,%3Csvg role='img' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3EYelp%3C/title%3E%3Cpath fill='%23d32323' d='m7.6885 15.1415-3.6715.8483c-.3769.0871-.755.183-1.1452.155-.2611-.0188-.5122-.0414-.7606-.213a1.179 1.179 0 0 1-.331-.3594c-.3486-.5519-.3656-1.3661-.3697-2.0004a6.2874 6.2874 0 0 1 .3314-2.0642 1.857 1.857 0 0 1 .1073-.2474 2.3426 2.3426 0 0 1 .1255-.2165 2.4572 2.4572 0 0 1 .1563-.1975 1.1736 1.1736 0 0 1 .399-.2831 1.082 1.082 0 0 1 .4592-.0837c.2355.0016.5139.052.91.1734.0555.0191.1237.0382.1856.0572.3277.1013.7048.2404 1.1499.3987.6863.2404 1.3663.487 2.0463.7397l1.2117.4423c.2217.0807.4363.18.6412.297.174.0984.3273.2298.4512.387a1.217 1.217 0 0 1 .192.4309 1.2205 1.2205 0 0 1-.872 1.4522c-.0468.0151-.0852.0239-.1085.0293l-1.105.2553-.0031-.001zM18.8208 7.565a1.8506 1.8506 0 0 0-.2042-.1754 2.4082 2.4082 0 0 0-.2077-.1394 2.3607 2.3607 0 0 0-.2269-.109 1.1705 1.1705 0 0 0-.482-.0796 1.0862 1.0862 0 0 0-.4498.1263c-.2107.1048-.4388.2732-.742.5551-.042.0417-.0947.0886-.142.133-.2502.2351-.5286.5252-.8599.863a114.6363 114.6363 0 0 0-1.5166 1.5629l-.8962.9293a4.1897 4.1897 0 0 0-.4466.5483 1.541 1.541 0 0 0-.2364.5459 1.2199 1.2199 0 0 0 .0107.4518l.0046.02a1.218 1.218 0 0 0 1.4184.923 1.162 1.162 0 0 0 .1105-.0213l4.7781-1.104c.3766-.087.7587-.1667 1.097-.3631.2269-.1316.4428-.262.5909-.5252a1.1793 1.1793 0 0 0 .1405-.4683c.0733-.6512-.2668-1.3908-.5403-1.963a6.2792 6.2792 0 0 0-1.2001-1.7103zM8.9703.0754a8.6724 8.6724 0 0 0-.83.1564c-.2754.066-.548.1383-.8146.2236-.868.2844-2.0884.8063-2.295 1.8065-.1165.5655.1595 1.1439.3737 1.66.2595.6254.614 1.1889.9373 1.7777.8543 1.5545 1.7245 3.0993 2.5922 4.6457.259.4617.5416 1.0464 1.043 1.2856a1.058 1.058 0 0 0 .1013.0383c.2248.0851.4699.1016.7041.0471a4.3015 4.3015 0 0 0 .0418-.0097 1.2136 1.2136 0 0 0 .5658-.3397 1.1033 1.1033 0 0 0 .079-.0822c.3463-.435.3454-1.0833.3764-1.6134.1042-1.771.2139-3.5423.3009-5.3142.0332-.6712.1055-1.3333.0655-2.0096-.0328-.5579-.0368-1.1984-.3891-1.6563-.6218-.8073-1.9476-.741-2.8523-.6158zm2.084 15.9505a1.1053 1.1053 0 0 0-1.2306-.4145 1.1398 1.1398 0 0 0-.1526.0633 1.4806 1.4806 0 0 0-.2171.1354c-.1992.1475-.3668.3392-.5196.5315-.0386.049-.074.1143-.12.1562l-.7686 1.0573a113.9168 113.9168 0 0 0-1.2913 1.789c-.278.3895-.5184.7184-.7083 1.0094-.036.0547-.0734.116-.1075.1647-.2277.3522-.3566.6092-.4228.8381a1.0945 1.0945 0 0 0-.046.4721c.0211.1655.0768.3246.1635.467.046.0715.0957.1406.1487.207a2.334 2.334 0 0 0 .1754.1825 1.843 1.843 0 0 0 .2108.1732c.5304.369 1.1112.6342 1.722.8391a6.0958 6.0958 0 0 0 1.5716.3004c.091.0046.1821.0025.2728-.006a2.3878 2.3878 0 0 0 .2506-.0351 2.3862 2.3862 0 0 0 .2447-.071 1.1927 1.1927 0 0 0 .4175-.2658c.1127-.113.1994-.249.2541-.3989.0889-.2214.1473-.5026.1857-.92.0034-.0593.0118-.1305.0177-.1958.0304-.3463.0443-.7531.0666-1.2315.0375-.7357.067-1.4681.0903-2.2026 0 0 .0495-1.3053.0494-1.306.0113-.3008.002-.6342-.0814-.9336a1.396 1.396 0 0 0-.1756-.4054zm8.6754 2.0439c-.1605-.176-.3878-.3514-.7462-.5682-.0518-.0288-.1124-.0674-.1684-.1009-.2985-.1795-.658-.3684-1.078-.5965a120.7615 120.7615 0 0 0-1.9427-1.042l-1.1515-.6107c-.0597-.0175-.1203-.0607-.1766-.0878-.2212-.1058-.4558-.2045-.6992-.2498a1.4915 1.4915 0 0 0-.2545-.0265 1.1527 1.1527 0 0 0-.1648.01 1.1077 1.1077 0 0 0-.9227.9133 1.4186 1.4186 0 0 0 .0159.439c.0563.3065.1932.6096.3346.875l.615 1.1526c.3422.65.6884 1.2963 1.0435 1.9406.229.4202.4196.7799.5982 1.078.0338.056.0721.1163.1011.1682.2173.3584.392.584.569.7458.1146.1107.252.195.4026.247.1583.0525.326.071.4919.0546a2.368 2.368 0 0 0 .251-.0435c.0817-.022.1622-.048.241-.0784a1.863 1.863 0 0 0 .2475-.1143 6.1018 6.1018 0 0 0 1.2818-.9597c.4596-.4522.8659-.9454 1.182-1.51.044-.08.0819-.163.1138-.2483a2.49 2.49 0 0 0 .0773-.2411c.0186-.083.033-.1669.0429-.2513a1.188 1.188 0 0 0-.0565-.491 1.0933 1.0933 0 0 0-.248-.4041z'/%3E%3C/svg%3E");background-size:80%;background-repeat:no-repeat;background-position:center;flex-shrink:0}.google-content,.yelp-content{display:flex;flex-direction:column;justify-content:center;text-align:left}.google-title,.yelp-title{font-size:13px;font-weight:500;color:#5f6368;margin:0}.google-review-row,.yelp-review-row{display:flex;align-items:center;gap:var(--spacing-1)}.google-rating-num,.yelp-rating-num{font-size:13px;font-weight:600;color:#3c4043}.stars{color:#fbbc04;font-size:12px;letter-spacing:1px}.yelp-review-row .stars{color:#d32323}.why-choose-us{background-color:var(--color-white);position:relative;overflow:hidden}.why-cards{gap:var(--spacing-6)}.why-card{text-align:center;padding:var(--spacing-8);border:2px solid transparent;transition:all var(--transition-base);background-color:#ffffffe6}.why-card:hover{border-color:var(--color-primary);transform:translateY(-8px);background-color:var(--color-white)}.why-icon.is-image{width:100%;height:260px;margin-bottom:var(--spacing-4);border-radius:var(--radius-lg);overflow:hidden}.why-icon.is-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.why-card:hover .why-icon.is-image img{transform:scale(1.02)}.why-card h3{font-size:var(--text-xl);color:var(--color-secondary);margin-bottom:var(--spacing-3)}.why-card p{font-size:var(--text-sm);color:var(--color-gray-600);line-height:1.6}.section-title .section-divider{display:block;width:120px;height:2px;margin:0 auto var(--spacing-4);background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);transform:scaleX(0);transform-origin:center;transition:transform .7s ease}.home-page .section-title h2:after{display:none}.section-title.is-visible .section-divider{transform:scaleX(1)}.services-preview{color:var(--color-white);position:relative;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:#1a1a1a}.services-preview.has-bg{background-size:cover;background-position:center;background-repeat:no-repeat}.services-bg-overlay{position:absolute;inset:0;background-color:#00000080;z-index:0}.services-preview .container{position:relative;z-index:1}.services-preview .section-title h2{color:var(--color-white)}.services-preview .section-title p{color:var(--color-gray-300)}.service-cards{gap:var(--spacing-6);margin-bottom:var(--spacing-8)}.service-card{display:block;text-decoration:none;overflow:hidden;transition:all var(--transition-base)}.service-card-img{width:100%;height:220px;background-size:cover;background-position:center;background-repeat:no-repeat;transition:transform var(--transition-slow)}.service-card:hover .service-card-img{transform:scale(1.1)}.service-card:hover .card-title{color:var(--color-primary)}.cta-section{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat;color:var(--color-white);text-align:center;padding:var(--spacing-20) 0;overflow:hidden;background-color:var(--color-primary)}.cta-section:before{content:"";position:absolute;inset:0;background-color:#dc143cb3;z-index:1}.cta-section .container{position:relative;z-index:2}.cta-content h2{color:var(--color-white);font-size:var(--text-4xl);margin-bottom:var(--spacing-4);text-shadow:1px 1px 3px rgba(0,0,0,.3)}.cta-content p{font-size:var(--text-xl);color:var(--color-white);margin-bottom:var(--spacing-8);opacity:1;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.cta-content .btn{background:var(--color-white);color:var(--color-primary);border:2px solid var(--color-white);font-weight:700}.cta-content .btn:hover{background-color:transparent;color:var(--color-white);transform:translateY(-2px)}.loading-container{min-height:80vh;display:flex;align-items:center;justify-content:center}@media(max-width:768px){.hero{min-height:70vh}.hero-content h1{font-size:var(--text-4xl)}.hero-subtitle{font-size:var(--text-lg)}.why-cards,.service-cards{grid-template-columns:repeat(2,1fr)}.hero-badges{gap:var(--spacing-4);margin-top:var(--spacing-8)}.why-icon.is-image{height:200px}}@media(max-width:480px){.hero{min-height:60vh}.hero-content h1{font-size:var(--text-3xl)}.hero-subtitle{font-size:var(--text-lg)}.why-cards,.service-cards{grid-template-columns:1fr}.why-icon.is-image{height:240px}}@media(max-width:768px),(prefers-reduced-motion:reduce){.hero.has-image:before{transform:translateY(0);transition:none}}.about-hero{position:relative;min-height:38vh;display:flex;align-items:center;justify-content:center;background-size:cover;background-position:center;background-color:var(--color-primary)}.about-hero .hero-content{position:relative;z-index:2;text-align:center;color:var(--color-white);padding:var(--spacing-4)}.about-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4)}.about-hero p{font-size:var(--text-xl);color:var(--color-white)}.mission-section{background-color:var(--color-white)}.mission-content{max-width:900px;margin:0 auto;text-align:center}.mission-content h2{font-size:var(--text-4xl);margin-bottom:var(--spacing-8);color:var(--color-secondary)}.mission-text{font-size:var(--text-lg);line-height:1.8;color:var(--color-gray-700);text-align:justify}.values-grid{gap:var(--spacing-6)}.value-card{text-align:center;padding:var(--spacing-8)}.value-card h3{font-size:var(--text-xl);color:var(--color-primary);margin-bottom:var(--spacing-3)}.value-card p{font-size:var(--text-sm);color:var(--color-gray-600)}.experience-content{text-align:center;max-width:900px;margin:0 auto}.experience-content h2{font-size:var(--text-4xl);margin-bottom:var(--spacing-6)}.experience-content>p{font-size:var(--text-lg);color:var(--color-gray-700);margin-bottom:var(--spacing-12);line-height:1.8}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-8);margin-top:var(--spacing-12)}.stat-card{text-align:center;padding:var(--spacing-6);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-radius:var(--radius-xl);color:var(--color-white);box-shadow:var(--shadow-lg);transition:transform var(--transition-base)}.stat-card:hover{transform:translateY(-4px)}.stat-number{font-size:var(--text-5xl);font-weight:800;font-family:var(--font-heading);margin-bottom:var(--spacing-2)}.stat-label{font-size:var(--text-base);font-weight:500;opacity:.95}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.about-hero{min-height:30vh}.about-hero h1{font-size:var(--text-3xl)}.about-hero p{font-size:var(--text-lg)}.values-grid,.stats-grid{grid-template-columns:1fr}.mission-text{text-align:left}}.services-hero{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-20) 0 var(--spacing-16);text-align:center}.services-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4)}.services-hero p{font-size:var(--text-xl);color:var(--color-white);opacity:.9}.category-filter{display:flex;justify-content:center;gap:var(--spacing-3);margin-bottom:var(--spacing-12);flex-wrap:wrap}.filter-btn{padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--text-sm);font-weight:600;color:var(--color-gray-700);cursor:pointer;transition:all var(--transition-fast)}.services-grid{gap:var(--spacing-8)}.service-card{display:block;text-decoration:none;overflow:hidden;animation:fadeIn .6s ease-out}.service-img{width:100%;height:250px;background-size:cover;background-position:center;position:relative;transition:transform var(--transition-slow)}.service-card:hover .service-img{transform:scale(1.05)}.service-category{position:absolute;top:var(--spacing-4);left:var(--spacing-4);background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600}@media(max-width:768px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.services-grid{grid-template-columns:1fr}.category-filter{gap:var(--spacing-2)}.filter-btn{font-size:var(--text-xs);padding:var(--spacing-2) var(--spacing-4)}}.breadcrumb{background-color:var(--color-gray-100);padding:var(--spacing-4) 0;font-size:var(--text-sm)}.breadcrumb a{color:var(--color-gray-600);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb span{color:var(--color-gray-800);font-weight:600}.service-hero{position:relative;min-height:60vh;display:flex;align-items:center;background-size:cover;background-position:center;background-color:var(--color-primary)}.service-hero.has-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000000a6,#00000059 45%,#00000026)}.service-hero .hero-content{position:relative;z-index:2;color:var(--color-white);padding:var(--spacing-6)}.service-hero.has-image .hero-content{background:#00000059;border-radius:var(--radius-lg);max-width:760px}.service-category-badge{display:inline-block;background-color:var(--color-accent);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;margin-bottom:var(--spacing-4)}.service-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4);text-shadow:0 6px 18px rgba(0,0,0,.35)}.service-hero p{font-size:var(--text-xl);color:var(--color-white);max-width:700px;text-shadow:0 4px 14px rgba(0,0,0,.35)}.service-description{background-color:var(--color-white)}.description-content{max-width:900px;margin:0 auto}.description-content h2{font-size:var(--text-3xl);margin-bottom:var(--spacing-6);color:var(--color-secondary)}.description-content p{font-size:var(--text-lg);line-height:1.8;color:var(--color-gray-700)}.benefits-grid{gap:var(--spacing-6)}.benefit-card{display:flex;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-6);background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.benefit-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.benefit-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);border-radius:50%;font-size:var(--text-xl);font-weight:700}.benefit-card p{font-size:var(--text-base);color:var(--color-gray-700);margin:0}.process-steps{max-width:800px;margin:0 auto}.process-step{display:flex;align-items:flex-start;gap:var(--spacing-6);margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-8);border-bottom:2px solid var(--color-gray-200)}.process-step:last-child{border-bottom:none}.step-number{flex-shrink:0;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);border-radius:50%;font-size:var(--text-2xl);font-weight:700;font-family:var(--font-heading)}.process-step p{font-size:var(--text-lg);color:var(--color-gray-700);margin:0;padding-top:var(--spacing-2)}.image-gallery{gap:var(--spacing-4)}.gallery-image{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--transition-base);cursor:pointer}.gallery-image .img-wrap{width:100%;height:100%;display:block;background-size:cover;background-position:center;filter:blur(14px);transform:scale(1.03);transition:filter .3s ease,transform .3s ease}.gallery-image .img-wrap.is-loaded{filter:blur(0);transform:scale(1)}.gallery-image img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1);transition:transform var(--transition-base)}.gallery-image .img-wrap:not(.is-loaded) img{opacity:0}.gallery-image:hover img{transform:scale(1.05)}.cta-section{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);text-align:center}.cta-content h2{color:var(--color-white);font-size:var(--text-4xl);margin-bottom:var(--spacing-4)}.cta-content p{font-size:var(--text-xl);color:var(--color-white);margin-bottom:var(--spacing-8)}.cta-content .btn{background-color:var(--color-white);color:var(--color-primary)}.cta-content .btn:hover{background-color:transparent;color:var(--color-white);border-color:var(--color-white)}.related-grid{gap:var(--spacing-6)}.service-img{width:100%;height:200px;background-size:cover;background-position:center;transition:transform var(--transition-slow)}.service-card:hover .service-img{transform:scale(1.1)}.service-link{color:var(--color-primary);font-weight:600;font-size:var(--text-sm);display:inline-flex;align-items:center;gap:var(--spacing-2);transition:gap var(--transition-fast)}.service-card:hover .service-link{gap:var(--spacing-3)}@media(max-width:768px){.service-hero{min-height:40vh}.service-hero h1{font-size:var(--text-3xl)}.service-hero p{font-size:var(--text-lg)}.benefits-grid,.image-gallery,.related-grid{grid-template-columns:1fr}.process-step{flex-direction:column;align-items:center;text-align:center}.gallery-image{aspect-ratio:4 / 3}}.gallery-hero{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-20) 0 var(--spacing-16);text-align:center}.gallery-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4)}.gallery-hero p{font-size:var(--text-xl);color:var(--color-white);opacity:.9}.gallery-grid{gap:var(--spacing-6)}.gallery-item{animation:fadeIn .6s ease-out;content-visibility:auto;contain-intrinsic-size:320px 240px}.gallery-thumb{width:100%;border:none;padding:0;background:transparent;border-radius:var(--radius-lg);position:relative;overflow:hidden;cursor:pointer;display:block;aspect-ratio:4 / 3}.gallery-thumb .img-wrap{width:100%;height:100%;display:block;background:linear-gradient(135deg,#1b1d24,#0f1015);background-size:cover;background-position:center;filter:blur(14px);transform:scale(1.03);transition:filter .3s ease,transform .3s ease}.gallery-thumb .img-wrap.is-loaded{filter:blur(0);transform:scale(1)}.gallery-thumb .img-wrap.is-error{background:linear-gradient(135deg,#2a2f3a,#16181f)}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;background:#111;transition:opacity .3s ease}.gallery-thumb .img-wrap:not(.is-loaded) img{opacity:0}.gallery-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-6)}.gallery-modal-content{position:relative;max-width:min(90vw,1100px);max-height:85vh;background:#0b0b0b;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #0006}.gallery-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:999px;border:none;background:#0009;color:#fff;font-size:24px;line-height:1;cursor:pointer;z-index:2}.gallery-modal-close:hover{background:#000000bf}.gallery-modal-content img{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain;background:#000}.gallery-modal-caption{padding:var(--spacing-4)}.gallery-modal-caption h3{color:var(--color-white);margin:0 0 var(--spacing-2);font-size:var(--text-lg)}.gallery-modal-caption p{color:var(--color-gray-300);margin:0;font-size:var(--text-sm)}.gallery-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,transparent 100%);padding:var(--spacing-6);transform:translateY(100%);transition:transform var(--transition-base)}.gallery-thumb:hover .gallery-overlay,.gallery-thumb:focus-visible .gallery-overlay{transform:translateY(0)}.gallery-overlay h3{color:var(--color-white);font-size:var(--text-lg);margin-bottom:var(--spacing-2)}.gallery-overlay p{color:var(--color-gray-300);font-size:var(--text-sm);margin:0}@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-overlay{transform:translateY(0)}}@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}}.reviews-hero{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-20) 0 var(--spacing-16);text-align:center}.reviews-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4)}.reviews-hero p{font-size:var(--text-xl);color:var(--color-white);opacity:.9}.reviews-embed{max-width:1000px;margin:0 auto;padding:var(--spacing-8);background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.reviews-embed iframe{width:100%;min-height:500px;border:none;border-radius:var(--radius-lg)}.reviews-manual .reviews-grid{gap:var(--spacing-6)}.review-card{padding:var(--spacing-6)}.review-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);margin-bottom:var(--spacing-4)}.review-card h3{font-size:var(--text-lg);margin:0}.review-service{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--spacing-1)}.review-rating{background:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:700;white-space:nowrap}.review-comment{font-size:var(--text-base);color:var(--color-gray-700);margin-bottom:var(--spacing-4);line-height:1.6}.review-date{font-size:var(--text-xs);color:var(--color-gray-500)}@media(max-width:768px){.reviews-manual .reviews-grid{grid-template-columns:1fr}}.contact-hero{background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-20) 0 var(--spacing-16);text-align:center}.contact-hero h1{color:var(--color-white);font-size:var(--text-5xl);margin-bottom:var(--spacing-4)}.contact-hero p{font-size:var(--text-xl);color:var(--color-white);opacity:.9}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-12);margin-bottom:var(--spacing-16)}.contact-info h2,.contact-form h2{font-size:var(--text-3xl);margin-bottom:var(--spacing-6);color:var(--color-secondary)}.contact-info>p{font-size:var(--text-base);color:var(--color-gray-600);margin-bottom:var(--spacing-8);line-height:1.6}.info-item{margin-bottom:var(--spacing-6)}.info-item h3{font-size:var(--text-lg);color:var(--color-secondary);margin-bottom:var(--spacing-2)}.info-item p{font-size:var(--text-base);color:var(--color-gray-700);margin:0}.info-item a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.info-item a:hover{color:var(--color-primary-dark)}.map-container-inline{margin-top:var(--spacing-8);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md)}.contact-form-container{background-color:var(--color-gray-50);padding:var(--spacing-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.contact-form .btn{width:100%}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--spacing-8)}}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-gray-900) 100%)}.login-container{width:100%;max-width:450px;padding:var(--spacing-6)}.login-card{background-color:var(--color-white);padding:var(--spacing-12);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);text-align:center}.login-card h1{font-size:var(--text-3xl);color:var(--color-secondary);margin-bottom:var(--spacing-2)}.login-card>p{color:var(--color-gray-600);margin-bottom:var(--spacing-8)}.error-message{background-color:#fee;color:#c00;padding:var(--spacing-3);border-radius:var(--radius-md);margin-bottom:var(--spacing-6);font-size:var(--text-sm)}.login-card form{text-align:left}.login-card .btn{width:100%;margin-top:var(--spacing-4)}.login-footer-links{margin-top:var(--spacing-6);display:flex;flex-direction:column;gap:var(--spacing-4);align-items:center}.login-note{font-size:var(--text-sm);color:var(--color-gray-500);margin:0}.back-to-site{display:inline-flex;align-items:center;gap:var(--spacing-2);color:var(--color-primary);font-weight:600;font-size:var(--text-sm);text-decoration:none;transition:all var(--transition-fast)}.back-to-site:hover{color:var(--color-primary-dark);transform:translate(-4px)}@media(max-width:480px){.login-container{padding:var(--spacing-4)}.login-card{padding:var(--spacing-8);border-radius:var(--radius-xl)}}.admin-dashboard{min-height:100vh;background-color:var(--color-gray-50)}.admin-header{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-gray-900) 100%);color:var(--color-white);padding:var(--spacing-8) 0;margin-bottom:var(--spacing-12)}.admin-header .container{display:flex;justify-content:space-between;align-items:center}.admin-header h1{color:var(--color-white);margin:0}.dashboard-content{padding:var(--spacing-8) 0}.dashboard-content h2{font-size:var(--text-3xl);margin-bottom:var(--spacing-4)}.dashboard-content>p{font-size:var(--text-lg);color:var(--color-gray-600);margin-bottom:var(--spacing-12)}.admin-cards{gap:var(--spacing-6);margin-bottom:var(--spacing-12)}.admin-card{text-align:center;padding:var(--spacing-8);cursor:pointer;transition:all var(--transition-base)}.admin-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.admin-card h3{font-size:var(--text-xl);margin-bottom:var(--spacing-3)}.admin-card p{font-size:var(--text-sm);color:var(--color-gray-600);margin-bottom:var(--spacing-3)}.card-link{color:var(--color-primary);font-weight:600;font-size:var(--text-sm);display:inline-block;background:none;border:none;padding:0;cursor:pointer}.card-hint{color:var(--color-gray-500);font-size:var(--text-xs);font-style:italic;display:inline-block}.card-actions-row{display:flex;justify-content:center;gap:var(--spacing-4);margin-top:var(--spacing-2)}.ml-4{margin-left:var(--spacing-4)}.admin-note{background-color:var(--color-white);padding:var(--spacing-8);border-radius:var(--radius-xl);border-left:4px solid var(--color-primary);box-shadow:var(--shadow-md)}.admin-note h3{font-size:var(--text-xl);margin-bottom:var(--spacing-4);color:var(--color-secondary)}.admin-note p{font-size:var(--text-base);color:var(--color-gray-700);line-height:1.6;margin-bottom:var(--spacing-3)}.admin-note p:last-child{margin-bottom:0}@media(max-width:768px){.admin-header .container{flex-direction:column;gap:var(--spacing-4)}.admin-header{padding:var(--spacing-6) 0;margin-bottom:var(--spacing-8)}.dashboard-content{padding:var(--spacing-6) 0}.dashboard-content>p{margin-bottom:var(--spacing-8)}.admin-card{padding:var(--spacing-6)}.card-actions-row{flex-direction:column;align-items:stretch}.card-actions-row .btn{width:100%;justify-content:center}.admin-cards{grid-template-columns:1fr}}.image-upload-component{width:100%}.upload-dropzone{border:3px dashed var(--color-gray-300);border-radius:var(--radius-xl);padding:var(--spacing-16);text-align:center;cursor:pointer;transition:all var(--transition-base);background-color:var(--color-gray-50)}.upload-dropzone:hover{border-color:var(--color-primary);background-color:var(--color-white)}.upload-dropzone.dragging{border-color:var(--color-primary);background-color:#dc143c0d;transform:scale(1.02)}.upload-icon{font-size:4rem;margin-bottom:var(--spacing-4)}.upload-text{font-size:var(--text-lg);font-weight:600;color:var(--color-secondary);margin-bottom:var(--spacing-2)}.upload-hint{font-size:var(--text-sm);color:var(--color-gray-500)}.upload-previews{margin-top:var(--spacing-8)}.upload-previews h3{font-size:var(--text-xl);margin-bottom:var(--spacing-4);color:var(--color-secondary)}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.preview-item{position:relative;border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;background-color:var(--color-white);transition:all var(--transition-base)}.preview-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg)}.preview-item img{width:100%;height:150px;object-fit:cover}.preview-info{padding:var(--spacing-3);background-color:var(--color-white)}.preview-name{font-size:var(--text-sm);font-weight:600;color:var(--color-secondary);margin-bottom:var(--spacing-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-size{font-size:var(--text-xs);color:var(--color-gray-500);margin:0}.preview-remove{position:absolute;top:var(--spacing-2);right:var(--spacing-2);width:28px;height:28px;border-radius:50%;background-color:var(--color-primary);color:var(--color-white);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:700;transition:all var(--transition-fast);opacity:0}.preview-item:hover .preview-remove{opacity:1}.preview-remove:hover{background-color:var(--color-primary-dark);transform:scale(1.1)}.upload-btn{width:100%;font-size:var(--text-lg);padding:var(--spacing-4)}@media(max-width:768px){.upload-dropzone{padding:var(--spacing-10)}.upload-text{font-size:var(--text-base)}.preview-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.preview-item img{height:130px}.upload-btn{font-size:var(--text-base)}}.image-manager-page{min-height:100vh;background-color:var(--color-gray-50)}.header-content{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);flex-wrap:wrap}.header-actions{display:flex;gap:var(--spacing-3);flex-wrap:wrap;align-items:center}.manager-content{padding:var(--spacing-8) 0}.upload-section,.gallery-section,.instructions-section{background-color:var(--color-white);padding:var(--spacing-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-8)}.upload-section h2,.gallery-section h2,.instructions-section h3{font-size:var(--text-2xl);margin-bottom:var(--spacing-6);color:var(--color-secondary)}.category-selector{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-6)}.category-selector label{font-weight:600;color:var(--color-secondary)}.form-select{padding:var(--spacing-3) var(--spacing-4);border:2px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--text-base);min-width:200px}.gallery-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-6);flex-wrap:wrap;gap:var(--spacing-4)}.category-filter{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.filter-btn{padding:var(--spacing-2) var(--spacing-4);background-color:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;color:var(--color-gray-700);cursor:pointer;transition:all var(--transition-fast)}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-btn.active{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-color:var(--color-primary);color:var(--color-white)}.empty-state{text-align:center;padding:var(--spacing-16);color:var(--color-gray-500)}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-6)}.image-card{border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base)}.image-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg)}.image-preview{width:100%;height:200px;background-color:var(--color-gray-100);display:flex;align-items:center;justify-content:center;overflow:hidden}.image-preview img{width:100%;height:100%;object-fit:cover}.storage-info-section{background-color:var(--color-white);padding:var(--spacing-6);border-radius:var(--radius-xl);border:2px solid var(--color-gray-200);margin-bottom:var(--spacing-8)}.storage-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-4)}.storage-header h3{margin:0;font-size:var(--text-lg);color:var(--color-secondary)}.storage-hint{font-size:var(--text-xs);color:var(--color-gray-500);margin:var(--spacing-1) 0 0 0}.storage-bar-container{height:10px;background-color:var(--color-gray-100);border-radius:var(--radius-full);overflow:hidden}.storage-bar{height:100%;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-accent) 100%);transition:width .5s ease}.storage-bar.critical{background:#dc3545}.btn-danger-outline{color:#dc3545;border-color:#dc3545;background:transparent}.btn-danger-outline:hover{background:#dc3545;color:var(--color-white)}.image-details{padding:var(--spacing-4)}.image-name{font-weight:600;color:var(--color-secondary);margin-bottom:var(--spacing-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-category{display:inline-block;background-color:var(--color-primary);color:var(--color-white);padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;margin-bottom:var(--spacing-2)}.image-path{font-size:var(--text-xs);color:var(--color-gray-500);font-family:monospace;background-color:var(--color-gray-50);padding:var(--spacing-2);border-radius:var(--radius-sm);margin-bottom:var(--spacing-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-actions{display:flex;gap:var(--spacing-2)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--text-sm)}.btn-danger{background-color:#dc3545;color:var(--color-white);border:2px solid #dc3545}.btn-danger:hover{background-color:#c82333;border-color:#c82333}.example-code{background-color:var(--color-gray-900);color:var(--color-white);padding:var(--spacing-4);border-radius:var(--radius-md);margin-top:var(--spacing-4)}.example-code p{margin-bottom:var(--spacing-2);font-weight:600}.example-code pre{margin:0;font-family:monospace;font-size:var(--text-sm);line-height:1.6;overflow-x:auto}@media(max-width:768px){.header-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.header-content .btn{width:100%;justify-content:center}.manager-content{padding:var(--spacing-6) 0}.upload-section,.gallery-section,.instructions-section,.storage-info-section{padding:var(--spacing-6);border-radius:var(--radius-lg)}.category-selector{flex-direction:column;align-items:flex-start;width:100%}.form-select{width:100%;min-width:0}.storage-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.storage-header .btn{width:100%;justify-content:center}.image-preview{height:160px}.image-actions{flex-direction:column}.image-actions .btn{width:100%}.image-path{white-space:normal;word-break:break-all}.gallery-header{flex-direction:column;align-items:flex-start}.image-grid{grid-template-columns:1fr}}.image-selector-overlay{position:fixed;inset:0;background-color:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.image-selector-modal{background-color:var(--color-white);width:90%;max-width:800px;max-height:80vh;border-radius:var(--radius-xl);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-2xl);animation:slideUp .3s ease-out}.selector-header{padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;align-items:center}.selector-header h3{margin:0;font-size:var(--text-lg);color:var(--color-secondary)}.close-btn{background:none;border:none;font-size:var(--text-xl);cursor:pointer;color:var(--color-gray-500);padding:var(--spacing-2)}.close-btn:hover{color:var(--color-primary)}.selector-filters{padding:var(--spacing-4) var(--spacing-6);display:flex;gap:var(--spacing-2);overflow-x:auto;border-bottom:1px solid var(--color-gray-100)}.filter-pill{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);border:1px solid var(--color-gray-300);background:#fff;font-size:var(--text-sm);cursor:pointer;white-space:nowrap}.filter-pill.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.selector-grid{padding:var(--spacing-6);overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-4)}.selector-item{border:2px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all .2s}.selector-item:hover{border-color:var(--color-primary);transform:translateY(-2px)}.selector-item.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.selector-item img{width:100%;height:160px;object-fit:cover;display:block}@media(max-width:720px){.selector-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.selector-item img{height:140px}}.selector-item .image-name{display:block;padding:var(--spacing-2);font-size:var(--text-xs);color:var(--color-gray-600);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;background-color:var(--color-gray-50)}.no-images{grid-column:1 / -1;text-align:center;padding:var(--spacing-8);color:var(--color-gray-500)}.btn-link{color:var(--color-primary);text-decoration:underline;margin-left:var(--spacing-2)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:600px){.image-selector-modal{width:95%;max-height:85vh}.selector-grid{padding:var(--spacing-4);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-3)}.selector-item img{height:130px}}.image-position-picker{margin-top:var(--spacing-4)}.picker-container{width:100%;height:200px;background-size:cover;border-radius:var(--radius-lg);position:relative;cursor:crosshair;border:2px solid var(--color-gray-200);overflow:hidden}.picker-overlay{position:absolute;inset:0;background:#0003}.picker-handle{position:absolute;width:20px;height:20px;background-color:var(--color-primary);border:2px solid white;border-radius:50%;transform:translate(-50%,-50%);box-shadow:var(--shadow-lg);pointer-events:none}.picker-hint{font-size:var(--text-xs);color:var(--color-gray-500);margin-top:var(--spacing-2);font-style:italic}.site-settings{background-color:var(--color-gray-50);min-height:100vh}.settings-form{padding:var(--spacing-8) 0;max-width:900px;margin:0 auto}.form-section{background:#fff;padding:var(--spacing-8);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-6)}.form-section h2{font-size:var(--text-xl);color:var(--color-secondary);margin-bottom:var(--spacing-6);border-bottom:2px solid var(--color-gray-100);padding-bottom:var(--spacing-2)}.form-group{margin-bottom:var(--spacing-5)}.form-group label{display:block;font-weight:600;margin-bottom:var(--spacing-2);color:var(--color-gray-700)}.form-group input,.form-group textarea{width:100%;padding:var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--text-base);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #dc143c1a}.form-group textarea{min-height:100px;resize:vertical}.image-input-group{display:flex;gap:var(--spacing-3)}.preview-thumb{margin-top:var(--spacing-3);height:60px;border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.form-actions{position:sticky;bottom:var(--spacing-6);background:#fff;padding:var(--spacing-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);text-align:right;border:1px solid var(--color-gray-200);z-index:100}@media(max-width:768px){.settings-form{padding:var(--spacing-6) 0}.form-section{padding:var(--spacing-6);border-radius:var(--radius-lg)}.image-input-group{flex-direction:column;align-items:stretch}.image-input-group .btn{width:100%;justify-content:center}.preview-thumb{height:72px}.form-actions{position:static;text-align:left;box-shadow:none;border:0;padding:0;margin-top:var(--spacing-6)}.form-actions .btn{width:100%}}.services-editor .editor-layout{display:grid;grid-template-columns:280px 1fr;gap:var(--spacing-8);margin-top:var(--spacing-8);min-height:80vh}.services-editor .services-sidebar{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-4);height:sticky;top:100px;align-self:start}.services-editor .sidebar-header{margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-2);border-bottom:2px solid var(--color-gray-100)}.services-editor .service-nav{list-style:none;padding:0;margin:0}.services-editor .service-nav li{padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--spacing-2);display:flex;flex-direction:column;font-weight:500}.services-editor .service-nav li:hover{background:var(--color-gray-50)}.services-editor .service-nav li.active{background:var(--color-primary);color:#fff}.services-editor .category-tag{font-size:10px;opacity:.7;text-transform:uppercase}.services-editor .service-form-container{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.services-editor .form-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-4);border-bottom:2px solid var(--color-gray-100)}.services-editor .preview-thumb-large{width:200px;height:120px;object-fit:cover;border-radius:var(--radius-md);margin-top:var(--spacing-2);border:1px solid var(--color-gray-200)}.services-editor .gallery-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-4);margin-top:var(--spacing-3)}.services-editor .gallery-item-preview{position:relative;border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:1}.services-editor .gallery-item-preview img{width:100%;height:100%;object-fit:cover}.services-editor .item-actions{position:absolute;bottom:0;left:0;right:0;background:#000000b3;display:flex;padding:2px}.services-editor .item-actions button{flex:1;font-size:9px;padding:2px;border:none;background:transparent;color:#fff;cursor:pointer}.services-editor .add-image-btn{aspect-ratio:1;border:2px dashed var(--color-gray-300);background:var(--color-gray-50);border-radius:var(--radius-sm);cursor:pointer;font-size:12px}.services-editor .list-edit-row{display:flex;gap:var(--spacing-2);margin-bottom:var(--spacing-2);align-items:center}.services-editor .step-num{background:var(--color-gray-100);width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:700}.services-editor .btn-add-item{background:transparent;border:1px dashed var(--color-gray-400);padding:var(--spacing-2);width:100%;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm)}.services-editor .btn-delete{background:#ff4757;color:#fff;border:none;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md)}.services-editor .sticky-footer{position:sticky;bottom:-32px;background:#fff;padding:var(--spacing-4) 0;border-top:1px solid var(--color-gray-100);margin-top:var(--spacing-8);display:flex;justify-content:center}@media(max-width:1024px){.services-editor .editor-layout{grid-template-columns:1fr}}@media(max-width:768px){.services-editor .services-sidebar{position:static;padding:var(--spacing-3)}.services-editor .service-nav{display:flex;gap:var(--spacing-2);overflow-x:auto;padding-bottom:var(--spacing-2)}.services-editor .service-nav li{min-width:200px;margin-bottom:0;border:1px solid var(--color-gray-200)}.services-editor .service-form-container{padding:var(--spacing-6)}.services-editor .form-header-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.services-editor .btn-delete{width:100%}.services-editor .gallery-preview-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.services-editor .sticky-footer{position:static;margin-top:var(--spacing-6);border-top:none}.services-editor .sticky-footer .btn{width:100%}}.gallery-editor .projects-grid{display:flex;flex-direction:column;gap:var(--spacing-8);margin-top:var(--spacing-8);margin-bottom:var(--spacing-12)}.gallery-editor .project-card{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200)}.gallery-editor .project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-6);padding-bottom:var(--spacing-4);border-bottom:2px solid var(--color-gray-100)}.gallery-editor .btn-delete{background:#ff4757;color:#fff;border:none;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);cursor:pointer;font-weight:600}.gallery-editor .btn-delete:hover{background:#ff6b81}.gallery-editor .gallery-images-section{margin-top:var(--spacing-6)}.gallery-editor .gallery-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-4);margin-top:var(--spacing-3)}.gallery-editor .gallery-item-preview{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;border:1px solid var(--color-gray-200)}.gallery-editor .gallery-item-preview img{width:100%;height:100%;object-fit:cover}.gallery-editor .item-actions{position:absolute;bottom:0;left:0;right:0;background:#000000b3;display:flex;padding:var(--spacing-1);gap:var(--spacing-1)}.gallery-editor .item-actions button{flex:1;font-size:10px;padding:var(--spacing-1);border:none;background:#fff3;color:#fff;cursor:pointer;border-radius:var(--radius-sm)}.gallery-editor .item-actions button:hover{background:#fff6}.gallery-editor .add-image-btn{aspect-ratio:4/3;border:2px dashed var(--color-gray-300);background:var(--color-gray-50);color:var(--color-gray-500);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;font-weight:600;transition:all var(--transition-base)}.gallery-editor .add-image-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#dc143c0d}.gallery-editor .checkbox-group{display:flex;align-items:center;margin-bottom:var(--spacing-4)}.gallery-editor .checkbox-label{display:flex;align-items:center;gap:var(--spacing-3);cursor:pointer;font-weight:600}.gallery-editor .checkbox-label input[type=checkbox]{width:20px;height:20px}.gallery-editor .mt-8{margin-top:var(--spacing-8)}.gallery-editor .sticky-bottom{position:sticky;bottom:0;left:0;right:0;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:var(--spacing-4) 0;border-top:1px solid var(--color-gray-200);z-index:100}.gallery-editor .btn-xl{width:100%;padding:var(--spacing-4);font-size:var(--text-lg)}@media(max-width:768px){.gallery-editor .project-card{padding:var(--spacing-6)}.gallery-editor .project-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-3)}.gallery-editor .btn-delete{width:100%}.gallery-editor .gallery-preview-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--spacing-3)}.gallery-editor .item-actions button{font-size:11px}.gallery-editor .sticky-bottom{position:static;-webkit-backdrop-filter:none;backdrop-filter:none}.gallery-editor .btn-xl{font-size:var(--text-base)}.gallery-editor .header-actions{flex-direction:column;width:100%}.gallery-editor .header-actions button{width:100%}}.reviews-editor .settings-form{background:var(--color-white);padding:var(--spacing-8);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-top:var(--spacing-8)}.reviews-editor .form-section{margin-bottom:var(--spacing-12);padding-bottom:var(--spacing-8);border-bottom:1px solid var(--color-gray-100)}.reviews-editor .form-section:last-child{border-bottom:none}.reviews-editor .form-section h2{font-size:var(--text-xl);margin-bottom:var(--spacing-6);color:var(--color-secondary)}.reviews-editor .section-header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.reviews-editor .section-header-row h2{margin-bottom:0}.reviews-editor .checkbox-group{display:flex;align-items:center;margin-bottom:var(--spacing-4)}.reviews-editor .checkbox-label{display:flex;align-items:center;gap:var(--spacing-3);cursor:pointer;font-weight:600}.reviews-editor .checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.reviews-editor .help-text{font-size:var(--text-sm);color:var(--color-gray-500);margin-top:var(--spacing-1)}.reviews-editor .form-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-8)}@media(max-width:768px){.reviews-editor .settings-form{padding:var(--spacing-6)}.reviews-editor .section-header-row{flex-direction:column;align-items:flex-start}.reviews-editor .form-actions{justify-content:stretch}.reviews-editor .form-actions .btn{width:100%}}:root{--color-primary: #DC143C;--color-primary-dark: #B01030;--color-primary-light: #FF1744;--color-secondary: #000000;--color-accent: #B8860B;--color-accent-light: #DAA520;--color-white: #FFFFFF;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--heading-scale: 1;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--color-gray-800);background-color:var(--color-white);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-secondary);margin-bottom:var(--spacing-4)}h1{font-size:calc(var(--text-5xl) * var(--heading-scale))}h2{font-size:calc(var(--text-4xl) * var(--heading-scale))}h3{font-size:calc(var(--text-3xl) * var(--heading-scale))}h4{font-size:calc(var(--text-2xl) * var(--heading-scale))}h5{font-size:calc(var(--text-xl) * var(--heading-scale))}h6{font-size:calc(var(--text-lg) * var(--heading-scale))}p{margin-bottom:var(--spacing-4);color:var(--color-gray-700)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-6)}.container-fluid{width:100%;padding:0 var(--spacing-6)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);font-family:var(--font-heading);font-size:var(--text-base);font-weight:600;line-height:1.5;text-align:center;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-white);box-shadow:var(--shadow-md)}.btn-secondary:hover{background-color:var(--color-gray-800);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white);transform:translateY(-2px)}.btn-lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--text-lg)}.card{background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-2xl)}.card-img{width:100%;height:250px;object-fit:cover}.card-body{padding:var(--spacing-6)}.card-title{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--spacing-3);color:var(--color-secondary)}.card-text{color:var(--color-gray-600);margin-bottom:var(--spacing-4)}.section{padding:var(--spacing-20) 0}.section-title{text-align:center;margin-bottom:var(--spacing-12)}.section-title h2{font-size:var(--text-4xl);margin-bottom:var(--spacing-4);position:relative;display:inline-block}.section-title h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full)}.grid{display:grid;gap:var(--spacing-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-white{color:var(--color-white)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-gray{background-color:var(--color-gray-50)}.bg-white{background-color:var(--color-white)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mb-8{margin-bottom:var(--spacing-8)}.mb-12{margin-bottom:var(--spacing-12)}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mt-8{margin-top:var(--spacing-8)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.animate-fade-in{animation:fadeIn .6s ease-out}.animate-slide-in-left{animation:slideInLeft .6s ease-out}.animate-slide-in-right{animation:slideInRight .6s ease-out}.reveal-on-scroll{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;transition-delay:var(--stagger, 0s);will-change:opacity,transform}.reveal-on-scroll.reveal-left{transform:translate(-18px)}.reveal-on-scroll.reveal-right{transform:translate(18px)}.reveal-on-scroll.reveal-up{transform:translateY(18px)}.reveal-on-scroll.is-visible{opacity:1;transform:translateZ(0)}@media(prefers-reduced-motion:reduce){.reveal-on-scroll{opacity:1;transform:none;transition:none}}@media(max-width:1024px){:root{--text-5xl: 2.5rem;--text-4xl: 2rem;--text-3xl: 1.75rem}.grid-cols-4,.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){:root{--heading-scale: .85;--spacing-20: 4rem;--spacing-16: 3rem}.container{padding:0 var(--spacing-4)}.grid-cols-4,.grid-cols-3,.grid-cols-2{grid-template-columns:1fr}.btn-mobile-full{width:100%}}@media(max-width:480px){:root{--text-5xl: 1.75rem;--text-4xl: 1.5rem}}.loading{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:var(--color-white);animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-group{margin-bottom:var(--spacing-6)}.form-label{display:block;font-weight:500;margin-bottom:var(--spacing-2);color:var(--color-gray-700)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-3) var(--spacing-4);font-family:var(--font-body);font-size:var(--text-base);line-height:1.5;color:var(--color-gray-800);background-color:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #dc143c1a}.form-textarea{min-height:120px;resize:vertical}
