:root{--service-vignette-scale: 1.035;--vignette-blur: 64px;--vignette-opacity: .35;--vignette-rotation: 12deg;--card-transition: cubic-bezier(.22, .82, .29, .98);--glow-shift: 26px}.service-hero{position:relative;overflow:hidden}.service-hero.container{width:min(1300px,96%)}.service-hero .hero-content{background:transparent;padding:clamp(3.5rem,6vw,6rem);border:none;position:relative;isolation:isolate;overflow:hidden;max-width:1000px;margin:0 auto}.hero-cta{margin-top:2rem;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.service-intro{position:relative}.service-intro-grid{display:grid;grid-template-columns:minmax(0,2.6fr) minmax(0,1.4fr);gap:clamp(2.6rem,6vw,4rem);position:relative;z-index:1}@media(max-width:920px){.service-intro-grid{grid-template-columns:1fr}}.service-intro-copy{display:flex;flex-direction:column;gap:1.4rem}.service-commitments{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.service-commitments li{display:flex;align-items:center;gap:.8rem;color:var(--text);opacity:.9}.service-commitments .bullet{width:8px;height:8px;border:1px solid var(--border);background:var(--text);flex-shrink:0}.service-intro-aside{position:relative}.service-glow-card{border:1px solid var(--border);background:var(--card);padding:clamp(1.6rem,4vw,2.2rem);position:sticky;top:120px;overflow:hidden;transition:border-color .3s ease}.service-glow-card:hover{border-color:var(--text)}.service-glow-card h3{margin-top:0;margin-bottom:1rem;font-size:1.1rem;letter-spacing:.02em}.service-glow-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;color:var(--muted)}.service-block{position:relative;padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(3rem,6vw,5rem)}.section-heading{max-width:720px;margin-bottom:clamp(2.4rem,5vw,3.2rem)}.section-kicker{display:inline-block;font-size:.85rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem}.service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(1.6rem,3vw,2.2rem);position:relative;z-index:1;justify-content:start;max-width:100%}.service-grid .service-card{max-width:400px}@media(max-width:768px){.service-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));justify-content:center}}.service-card{position:relative;border:1px solid var(--border);background:var(--card);padding:clamp(1.8rem,3vw,2.2rem);overflow:visible;display:flex;flex-direction:column;gap:1.2rem;transition:transform .3s ease,border-color .3s ease,background-color .3s ease;cursor:default;min-height:280px}.service-card-content{flex-grow:1;display:flex;flex-direction:column}.service-card-content p{flex-grow:1}.service-card-footer{margin-top:auto}.service-card header{display:flex;align-items:center;gap:1rem;position:relative;margin-bottom:.5rem}.service-icon{display:inline-grid;place-items:center;width:48px;height:48px;border:1px solid var(--border);background:var(--bg-elev);color:var(--muted);transition:color .3s ease}.service-card h3{margin:0;font-size:1.15rem;letter-spacing:.01em}.service-card p{margin:0;color:var(--muted)}.service-card ul{list-style:none;padding:0;margin:0;display:grid;gap:.75rem;color:var(--text);opacity:.88}.service-card:hover,.service-card:focus-within{border-color:var(--text);background:var(--bg-elev)}.service-card:hover .service-icon,.service-card:focus-within .service-icon{color:var(--text)}.service-card li{position:relative;padding-left:18px}.service-card li:before{content:"";position:absolute;left:0;top:7px;width:6px;height:6px;border:1px solid var(--border);background:var(--text)}.freelance-service{cursor:pointer}.service-card .service-badge{position:absolute;top:-10px;right:-10px;background:var(--text);color:var(--bg);padding:.3rem .6rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;z-index:10;white-space:nowrap;border:1px solid var(--text)}.service-pricing{text-align:center;margin:auto 0 1rem;padding:.75rem;background:var(--bg-elev);border:1px solid var(--border)}.price-label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em}.price-value{font-size:1.5rem;font-weight:700;color:var(--text)}.contact-me-btn{background:var(--text);color:var(--bg);border:1px solid var(--text);padding:.875rem 2rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.95rem;display:flex;align-items:center;gap:.5rem;justify-content:center;width:100%;text-transform:uppercase;letter-spacing:.5px}.contact-me-btn:hover{background:var(--bg);color:var(--text);border:1px solid var(--text)}.contact-me-btn i{transition:transform .3s ease}.contact-me-btn:hover i{transform:translate(3px)}.service-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:1000;backdrop-filter:blur(4px)}.service-modal.active{display:flex;align-items:center;justify-content:center;padding:2rem}.service-modal-content{background:var(--bg);border:1px solid var(--border);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;position:relative}.service-modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem 2rem 1rem;border-bottom:1px solid var(--border)}.service-modal-header h2{margin:0;font-size:1.5rem;font-weight:600}.service-modal-close{background:none;border:none;color:var(--muted);font-size:1.25rem;cursor:pointer;padding:.5rem;transition:color .2s ease}.service-modal-close:hover{color:var(--text)}.service-modal-body{padding:2rem}.service-modal-footer{padding:1rem 2rem 2rem;border-top:1px solid var(--border);text-align:center}.service-modal-footer .btn{background:var(--text);color:var(--bg);border:1px solid var(--text);padding:.75rem 2rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.service-modal-footer .btn:hover{background:var(--bg);color:var(--text);border:1px solid var(--text)}.service-detail{margin-bottom:2rem}.service-detail h3{color:var(--text);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.service-detail p{color:var(--muted);line-height:1.6;margin-bottom:1rem}.contact-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;z-index:1001;backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease}.contact-modal.active{display:flex;align-items:center;justify-content:center;padding:2rem;opacity:1}.contact-modal-content{background:var(--bg);border:1px solid var(--border);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;transform:translateY(20px);transition:transform .3s ease}.contact-modal.active .contact-modal-content{transform:translateY(0)}.contact-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border)}.contact-modal-header h3{margin:0;font-size:1.3rem;font-weight:600;color:var(--text)}.contact-modal-close{background:none;border:none;color:var(--muted);font-size:1.25rem;cursor:pointer;padding:.5rem;transition:color .2s ease;display:flex;align-items:center;justify-content:center;width:36px;height:36px}.contact-modal-close:hover{color:var(--text)}.contact-modal-body{padding:2rem}.contact-message{color:var(--muted);line-height:1.6;margin-bottom:2rem;text-align:center}.contact-methods{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.contact-method{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem 1rem;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);text-decoration:none;transition:all .3s ease;min-height:120px}.contact-method:hover{border-color:var(--text);background:var(--card)}.contact-method i{font-size:2rem;color:var(--muted);transition:color .3s ease}.contact-method:hover i{color:var(--text)}.contact-method span{font-size:.95rem;font-weight:500}@media(max-width:640px){.contact-modal.active{padding:1rem}.contact-modal-content{max-height:95vh}.contact-modal-header{padding:1.25rem 1.5rem}.contact-modal-header h3{font-size:1.1rem}.contact-modal-body{padding:1.5rem}.contact-methods{grid-template-columns:1fr;gap:.75rem}.contact-method{padding:1.25rem 1rem;min-height:100px}.contact-method i{font-size:1.75rem}}.service-description{margin-bottom:2rem}.service-description h3{color:var(--text);margin-bottom:1rem;font-size:1.2rem;font-weight:600}.service-description p{color:var(--muted);line-height:1.6;margin-bottom:1rem}.service-packages{margin-bottom:2rem}.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}@media(max-width:1024px){.packages-grid{grid-template-columns:1fr;gap:1rem}}.package-option{background:var(--bg-elev);border:1px solid var(--border);padding:1.5rem;display:flex;flex-direction:column;height:100%;position:relative;transition:border-color .3s ease}.package-option:hover{border-color:var(--text)}.package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.package-name{font-weight:600;color:var(--text)}.package-price{font-weight:700;color:var(--text);font-size:1.1rem}.package-features{flex-grow:1;margin-bottom:1rem;list-style:none;padding:0;margin:0}.package-features li{display:flex;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.9rem;color:var(--muted)}.package-features li i{color:var(--text);font-size:.8rem}.package-footer{margin-top:auto;padding-top:1rem;display:flex;flex-direction:column;gap:.75rem}.delivery-time{background:var(--bg-elev);color:var(--muted);padding:.35rem .85rem;border:1px solid var(--border);font-size:.8rem;font-weight:600;margin-top:1rem;display:inline-flex;align-items:center;gap:.4rem;letter-spacing:.3px}.service-meta{display:flex;gap:.5rem;font-size:.75rem;color:var(--muted);opacity:.8;margin-top:.5rem}.service-meta .delivery-time,.service-meta .revisions{display:inline-flex!important;align-items:center;gap:.3rem;padding:.25rem .5rem!important;background:var(--bg-elev)!important;border:1px solid var(--border)!important;font-size:.7rem!important;font-weight:400!important;transition:border-color .2s ease;margin:0!important;line-height:1.2;white-space:nowrap}.service-meta .delivery-time i,.service-meta .revisions i{font-size:.65rem;opacity:.7}.freelance-service:hover .service-meta .delivery-time,.freelance-service:hover .service-meta .revisions{border-color:var(--text)}.contact-btn{background:var(--text);color:var(--bg);border:1px solid var(--text);padding:.875rem 2rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;text-transform:uppercase;letter-spacing:.5px;font-size:.95rem}.contact-btn:hover{background:var(--bg);color:var(--text);border:1px solid var(--text)}.contact-btn i{transition:transform .3s ease}.contact-btn:hover i{transform:translate(3px)}.service-extras{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.extras-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:1.5rem}.extra-section{background:var(--bg-elev);border:1px solid var(--border);padding:1.5rem;transition:border-color .3s ease}.extra-section:hover{border-color:var(--text)}.extra-section h4{color:var(--text);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.extra-section ul{list-style:none;padding:0;margin:0}.extra-section li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;color:var(--muted);font-size:.9rem}.extra-section li i{color:var(--text);font-size:.8rem}.extra-section li strong{color:var(--text);font-weight:600}.extra-section li small{color:var(--muted);font-size:.8rem;line-height:1.4}.service-extras-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.service-extras-section h3{color:var(--text);margin-bottom:1.5rem;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.service-extras-section .extras-list{display:grid;gap:1rem}.service-details{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.service-details h3{color:var(--text);margin-bottom:1.5rem;font-size:1.3rem;font-weight:600}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:1.5rem}.detail-section{background:var(--bg-elev);border:1px solid var(--border);padding:1.5rem;transition:border-color .3s ease}.detail-section:hover{border-color:var(--text)}.detail-section h4{color:var(--text);margin-bottom:1rem;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.detail-section ul{list-style:none;padding:0;margin:0}.detail-section li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;color:var(--muted);font-size:.9rem}.detail-section li i{color:var(--text);font-size:.8rem;width:16px;text-align:center}.extras-list{display:flex;flex-direction:column;gap:1rem}.extra-item{background:var(--bg-elev);border:1px solid var(--border);padding:1rem;transition:border-color .3s ease}.extra-item:hover{border-color:var(--text)}.extra-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.extra-item-name{font-weight:600;color:var(--text);font-size:.95rem}.extra-item-price{font-weight:700;color:var(--text);font-size:1rem}.extra-item-description{color:var(--muted);font-size:.85rem;line-height:1.5}.expertise-extra{opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}.expertise-toggle-container{text-align:center;margin-top:3rem;margin-bottom:2rem}.expertise-toggle-btn{position:relative;background:var(--bg-elev);border:1px solid var(--border);padding:1rem 2rem;color:var(--text);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease;overflow:hidden}.expertise-toggle-btn:hover{border-color:var(--text);background:var(--card)}.expertise-toggle-btn:active{transform:scale(.98)}.btn-content{position:relative;z-index:2;display:flex;align-items:center;gap:.5rem;transition:all .3s ease}.btn-content i{font-size:.9rem;transition:transform .3s ease}.expertise-toggle-btn:hover .btn-content i{transform:scale(1.1)}.btn-glow{position:absolute;inset:0;background:transparent;opacity:0;transition:opacity .3s ease}.expertise-toggle-btn.expanding .btn-content i,.expertise-toggle-btn.expanded .btn-content i{transform:rotate(180deg)}.service-cta{position:relative;padding-top:clamp(3rem,6vw,5rem);padding-bottom:clamp(3rem,6vw,5rem)}.service-cta-card{border:1px solid var(--border);background:var(--card);padding:clamp(2.5rem,5vw,4rem);text-align:center;max-width:800px;margin:0 auto;transition:border-color .3s ease}.service-cta-card:hover{border-color:var(--text)}.service-cta-card h2{margin-top:0;margin-bottom:1rem;font-size:clamp(1.5rem,3vw,2rem)}.service-cta-card p{color:var(--muted);max-width:600px;margin:0 auto 2rem;line-height:1.6}.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.services-filter-section{padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(1rem,2vw,2rem)}.services-filter-container{max-width:100%}.services-filter-container .section-title{margin-bottom:1.5rem;font-size:clamp(1.3rem,2vw,1.6rem)}.filter-controls{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.search-box{position:relative;flex:1;min-width:250px}.search-box input{width:100%;padding:.75rem 2.5rem .75rem 1rem;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);font-size:.95rem;transition:border-color .3s ease}.search-box input:focus{outline:none;border-color:var(--text)}.search-box i{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.filter-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn{padding:.65rem 1.25rem;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.filter-btn:hover{border-color:var(--text)}.filter-btn.active{background:var(--text);color:var(--bg);border-color:var(--text)}.sort-controls select{padding:.65rem 1rem;background:var(--bg-elev);border:1px solid var(--border);color:var(--text);font-size:.9rem;cursor:pointer;transition:border-color .3s ease}.sort-controls select:focus{outline:none;border-color:var(--text)}.sort-controls select:hover{border-color:var(--text)}.services-grid-section{padding-top:clamp(2rem,4vw,3rem)}.services-grid-container{max-width:100%}.loading-services{text-align:center;padding:3rem 1rem;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--text);color:var(--bg);border:1px solid var(--text);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn:hover{background:var(--bg);color:var(--text);border:1px solid var(--text)}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}.btn.ghost:hover{border-color:var(--text)}@media(max-width:768px){.service-hero .hero-content{padding:clamp(2.5rem,5vw,4rem)}.filter-controls{flex-direction:column;align-items:stretch}.search-box{min-width:100%}.filter-buttons{width:100%}.filter-btn{flex:1;min-width:fit-content}.sort-controls,.sort-controls select{width:100%}.cta-actions{flex-direction:column}.cta-actions .btn{width:100%}}@media(max-width:480px){.service-card{padding:1.5rem}.service-icon{width:40px;height:40px}.service-card h3{font-size:1rem}.service-cta-card{padding:2rem 1.5rem}}:global([data-theme=light]) .service-card:hover,:global([data-theme=light]) .service-card:focus-within{background:var(--bg-elev)}:global([data-theme=light]) .package-option:hover{border-color:var(--text)}:global([data-theme=light]) .extra-section:hover,:global([data-theme=light]) .detail-section:hover,:global([data-theme=light]) .extra-item:hover{border-color:var(--text)}@media(hover:none)and (pointer:coarse){.service-card:hover{transform:none;border-color:var(--border)}.service-card:active{border-color:var(--text)}.btn:hover{background:var(--text);color:var(--bg)}.btn:active{background:var(--bg);color:var(--text)}.btn.ghost:hover{background:transparent;border-color:var(--border)}.btn.ghost:active{border-color:var(--text)}}
