@import url('https://fonts.googleapis.com/css2?family=Playfair:ital,opsz,wght@0,5..1200,300..900;1,5..1200,300..900&display=swap');:root{--color-bg:#fff;--color-text:#000;--color-text-secondary:#666;--color-border:#e0e0e0;--color-accent:#000;--color-accent-hover:#333;--font-primary:"Playfair",serif;--transition-speed:.3s}[data-theme=dark]{--color-bg:#0a0a0a;--color-text:#fff;--color-text-secondary:#999;--color-border:#333;--color-accent:#fff;--color-accent-hover:#ccc}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-primary);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;transition:background-color var(--transition-speed),color var(--transition-speed);min-height:100vh;display:flex;flex-direction:column;font-variant-numeric:lining-nums}a{color:var(--color-text);text-decoration:none;transition:color var(--transition-speed)}a:hover{color:var(--color-text-secondary)}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-weight:400;line-height:1.3}header.site-header{padding:40px 20px;text-align:center}header.site-header .site-logo{font-size:6rem;font-weight:400;letter-spacing:.02em;margin-bottom:30px}header.site-header .site-logo a{color:var(--color-text)}header.site-header nav.main-navigation{display:flex;justify-content:center;align-items:center;gap:10px}header.site-header nav.main-navigation ul.nav-menu{display:flex;list-style:none;gap:40px}header.site-header nav.main-navigation ul.nav-menu li a{font-size:1rem;letter-spacing:.05em;text-transform:uppercase;padding:5px 0;position:relative}header.site-header nav.main-navigation ul.nav-menu li a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-text);transition:width var(--transition-speed)}header.site-header nav.main-navigation ul.nav-menu li a:hover:after,header.site-header nav.main-navigation ul.nav-menu li.current-menu-item a:after{width:100%}header.site-header .theme-toggle{margin-left:40px;background:0 0;border:1px solid var(--color-border);color:var(--color-text);padding:8px 12px;cursor:pointer;font-family:var(--font-primary);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;transition:all var(--transition-speed)}header.site-header .theme-toggle:hover{background-color:var(--color-text);color:var(--color-bg)}main.site-main{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:0 20px}section.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:60px}section.photo-grid .photo-item{aspect-ratio:1;overflow:hidden;cursor:pointer}section.photo-grid .photo-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-speed)}section.photo-grid .photo-item:hover img{transform:scale(1.05)}a.btn,button.btn{display:inline-block;padding:15px 40px;border:1px solid var(--color-text);background:0 0;color:var(--color-text);font-family:var(--font-primary);font-size:.875rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-speed)}a.btn:hover,button.btn:hover{background-color:var(--color-text);color:var(--color-bg)}a.btn-large,button.btn-large{padding:20px 60px;font-size:1rem}div.btn-center{text-align:center;margin:40px 0}section.cases-header{text-align:center;margin-bottom:40px}section.cases-header h1{font-size:2.5rem;font-weight:400;margin-bottom:30px}nav.cases-categories{display:flex;justify-content:center;gap:30px;margin-bottom:40px}nav.cases-categories a{font-size:1rem;letter-spacing:.05em;padding:5px 0;position:relative}nav.cases-categories a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background-color:var(--color-text);transition:width var(--transition-speed)}nav.cases-categories a:hover:after,nav.cases-categories a.active:after{width:100%}section.about-content{display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:start;margin-bottom:60px}section.about-content .about-photo{max-width:400px;position:sticky;top:40px;align-self:start}section.about-content .about-photo img{width:100%}section.about-content .about-text h1{font-size:2.5rem;font-weight:400;margin-bottom:30px}section.about-content .about-text .the-content{font-size:1.1rem;line-height:1.8}div.social-buttons{display:flex;gap:20px;margin-top:40px}div.social-buttons a.btn-social{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border:1px solid var(--color-text);font-size:.875rem;letter-spacing:.05em;text-transform:uppercase;transition:all var(--transition-speed)}div.social-buttons a.btn-social:hover{background-color:var(--color-text);color:var(--color-bg)}section.contact-content{max-width:600px;margin:0 auto;padding-bottom:60px}section.contact-content h1{font-size:2.5rem;font-weight:400;text-align:center;margin-bottom:40px}div.contact-info{text-align:center;margin-bottom:40px}div.contact-info p{margin-bottom:10px;font-size:1.1rem}form.contact-form{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}form.contact-form input,form.contact-form textarea{width:100%;padding:15px;border:1px solid var(--color-border);background:0 0;color:var(--color-text);font-family:var(--font-primary);font-size:1rem;transition:border-color var(--transition-speed)}form.contact-form input:focus,form.contact-form textarea:focus{outline:none;border-color:var(--color-text)}form.contact-form input::placeholder,form.contact-form textarea::placeholder{color:var(--color-text-secondary)}form.contact-form textarea{min-height:150px;resize:vertical}form.contact-form button[type=submit]{align-self:flex-start}div.form-message{padding:15px;margin-bottom:20px;text-align:center}div.form-message.success{border:1px solid var(--color-text)}div.form-message.error{border:1px solid #c00;color:#c00}.the-content{font-size:1.1rem;line-height:1.8}.the-content p{margin-bottom:1.5em}.the-content h2{font-size:1.8rem;margin:2em 0 1em}.the-content h3{font-size:1.4rem;margin:1.5em 0 .75em}.the-content ul,.the-content ol{margin:0 0 1.5em 1.5em}.the-content li{margin-bottom:.5em}.the-content a{text-decoration:underline}.the-content blockquote{border-left:2px solid var(--color-border);padding-left:20px;margin:1.5em 0;font-style:italic}section.page-content{max-width:800px;margin:0 auto 60px}section.page-content h1{font-size:2.5rem;font-weight:400;text-align:center;margin-bottom:40px}footer.site-footer{padding:40px 20px;border-top:1px solid var(--color-border);margin-top:auto}footer.site-footer .footer-inner{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}footer.site-footer .footer-logo{font-size:1.5rem;font-weight:400}footer.site-footer .footer-right{display:flex;align-items:center;gap:40px}footer.site-footer nav.footer-nav ul{display:flex;list-style:none;gap:30px}footer.site-footer nav.footer-nav ul li a{font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}footer.site-footer .footer-social{display:flex;gap:20px}footer.site-footer .footer-social a{font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}@media (max-width:1024px){section.photo-grid{grid-template-columns:repeat(2,1fr)}section.about-content{grid-template-columns:1fr;gap:40px}section.about-content .about-photo{max-width:300px;margin:0 auto;position:static}}@media (max-width:768px){header.site-header .site-logo{font-size:4rem}header.site-header nav.main-navigation{flex-direction:column;gap:20px}header.site-header nav.main-navigation ul.nav-menu{gap:20px;flex-wrap:wrap;justify-content:center}header.site-header .theme-toggle{margin-left:0}section.photo-grid{grid-template-columns:repeat(3,1fr);gap:0}footer.site-footer .footer-inner{flex-direction:column;gap:30px;text-align:center}footer.site-footer .footer-right{flex-direction:column;gap:20px}div.social-buttons{flex-direction:column;align-items:stretch}div.social-buttons a.btn-social{justify-content:center}}@media (max-width:480px){header.site-header{padding:20px 15px}header.site-header .site-logo{font-size:2.5rem}header.site-header nav.main-navigation ul.nav-menu{gap:15px}header.site-header nav.main-navigation ul.nav-menu li a{font-size:.875rem}main.site-main{padding:0 15px}section.cases-header h1,section.about-content .about-text h1,section.contact-content h1,section.page-content h1{font-size:1.8rem}nav.cases-categories{flex-wrap:wrap;gap:15px}}