@import "https://fonts.googleapis.com/css2?family=Quattrocento+Sans&family=Quattrocento&family=Montserrat:wght@300;400;600;700&family=Advent+Pro:wght@300;400;600&family=Open+Sans:wght@300;400;600;700&display=swap";
*{box-sizing:border-box;margin:0;padding:0}body{color:#3e3e3e;background-color:#fff;font-family:Quattrocento Sans,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.site-header{z-index:100;background:#fff;justify-content:space-between;align-items:center;padding:20px 40px;display:flex;position:relative}.site-logo img{max-height:60px}.nav-toggle{text-transform:uppercase;cursor:pointer;color:#333;letter-spacing:1px;background:0 0;border:none;font-family:Open Sans,sans-serif;font-size:13px;display:none}.site-nav{gap:0;list-style:none;display:flex}.site-nav li a{text-transform:uppercase;color:#333;letter-spacing:1px;padding:10px 15px;font-family:Open Sans,sans-serif;font-size:13px;transition:color .3s}.site-nav li a:hover,.site-nav li a.active{color:#000;font-weight:600}.hero-banner{text-align:center;background-position:50%;background-size:cover;flex-direction:column;justify-content:center;align-items:center;height:660px;display:flex;position:relative}.hero-banner .hero-content{z-index:1;position:relative}.hero-banner h2{color:#fff;margin-bottom:10px;font-family:Montserrat,sans-serif;font-size:50px;font-weight:700}.hero-banner .subtitle{color:#a1a1a1;font-family:Montserrat,sans-serif;font-size:18px;font-weight:400}.page-banner{background-position:50%;background-size:cover;justify-content:center;align-items:center;height:400px;display:flex;position:relative}.page-banner .hero-content{z-index:1;text-align:center;position:relative}.page-banner h2{color:#fff;z-index:1;text-shadow:2px 2px 8px #0009;font-family:Montserrat,sans-serif;font-size:50px;font-weight:700;position:relative}.banner-subtitle{color:#d5d5d5;text-transform:uppercase;letter-spacing:2px;margin-top:5px;font-family:Montserrat,sans-serif;font-size:11px}.content-section{max-width:960px;margin:0 auto;padding:40px 20px}.section-title{color:#000;text-align:center;text-transform:uppercase;letter-spacing:2px;margin-bottom:30px;font-family:Advent Pro,sans-serif;font-size:24px}.portfolio-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px;display:grid}.portfolio-item{text-align:center;position:relative;overflow:hidden}.portfolio-item img{object-fit:cover;width:100%;height:250px;transition:transform .3s}.portfolio-item:hover img{transform:scale(1.05)}.portfolio-item .label{color:#3e3e3e;margin-top:10px;padding:5px 0;font-family:Montserrat,sans-serif;font-size:18px}.about-content{max-width:800px;margin:0 auto;padding:40px 20px}.about-content .about-photo{border-radius:4px;max-width:300px;margin:0 auto 30px;display:block}.about-content p{margin-bottom:20px;font-size:15px;line-height:1.8}.resume-section{text-align:center;margin-top:40px}.resume-section h3{margin-bottom:10px;font-family:Montserrat,sans-serif;font-size:20px}.resume-section img{max-width:600px;margin:20px auto;display:block;box-shadow:0 2px 10px #0000001a}.resume-link{color:#333;text-transform:uppercase;letter-spacing:1px;margin-top:10px;font-family:Montserrat,sans-serif;font-size:14px;display:inline-block}.contact-content{grid-template-columns:1fr 1fr;gap:40px;max-width:800px;margin:0 auto;padding:40px 20px;display:grid}.contact-form h3{margin-bottom:20px;font-family:Montserrat,sans-serif;font-size:24px}.contact-form label{margin-top:15px;margin-bottom:5px;font-size:14px;display:block}.contact-form input,.contact-form textarea{border:1px solid #ddd;width:100%;padding:10px;font-family:Quattrocento Sans,sans-serif;font-size:14px}.contact-form textarea{resize:vertical;height:120px}.contact-form button{color:#fff;text-transform:uppercase;letter-spacing:1px;cursor:pointer;background:#333;border:none;margin-top:20px;padding:12px 30px;font-family:Montserrat,sans-serif;font-size:13px;transition:background .3s}.contact-form button:hover{background:#555}.contact-info h3{margin-bottom:15px;font-family:Montserrat,sans-serif;font-size:20px}.contact-info p{margin-bottom:8px;font-size:15px}.map-section{max-width:960px;margin:0 auto;padding:0 20px 40px}.map-section iframe{width:100%;display:block}.gallery-slideshow{aspect-ratio:16/9;max-width:960px;margin:0 auto;position:relative;overflow:hidden}.gallery-slideshow img{object-fit:contain;opacity:0;width:100%;height:100%;transition:opacity 1s;position:absolute;top:0;left:0}.gallery-slideshow img.active{opacity:1}.slideshow-controls{text-align:center;margin-top:10px}.slideshow-controls button{color:#fff;cursor:pointer;text-transform:uppercase;background:#333;border:none;margin:0 5px;padding:8px 20px;font-family:Open Sans,sans-serif;font-size:12px}.image-gallery{grid-template-columns:repeat(3,1fr);gap:15px;max-width:960px;margin:0 auto;padding:20px;display:grid}.image-gallery.two-col{grid-template-columns:repeat(2,1fr)}.image-gallery img{object-fit:cover;cursor:pointer;width:100%;height:250px;transition:transform .3s}.image-gallery img:hover{transform:scale(1.02)}.page-header-img{max-width:400px;margin:30px auto;display:block}.lightbox{z-index:1000;cursor:pointer;background:#000000e6;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lightbox.active{display:flex}.lightbox img{object-fit:contain;max-width:90vw;max-height:90vh}.site-footer{text-align:center;background:#fff;border-top:1px solid #eee;padding:30px 40px}.footer-nav{flex-wrap:wrap;justify-content:center;gap:0;margin-bottom:10px;list-style:none;display:flex}.footer-nav li a{text-transform:uppercase;color:#333;letter-spacing:1px;padding:5px 12px;font-family:Open Sans,sans-serif;font-size:12px}@media (max-width:768px){.nav-toggle{display:block}.site-nav{background:#fff;flex-direction:column;padding:10px 0;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 2px 10px #0000001a}.site-nav.open{display:flex}.site-nav li a{padding:12px 20px}.hero-banner{height:400px}.hero-banner h2{font-size:32px}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.contact-content{grid-template-columns:1fr}.image-gallery{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.portfolio-grid,.image-gallery{grid-template-columns:1fr}}
