@import url(https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Inter:wght@400;600&display=swap);@import url(https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=Space+Grotesk:wght@400;600&display=swap);.hero-section.minimal{align-items:center;background-color:#fbf9f5;background-image:repeating-linear-gradient(180deg,#0000,#0000 32px,#5082c833 33px);background-size:100% 34px;color:#111;display:flex;font-family:Courier New,Courier,monospace;font-weight:400;justify-content:center;min-height:30vh;overflow:hidden;padding:6rem 2rem;position:relative}.hero-section.minimal:after{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGNgYAAAAAMAASsJTYQAAAAASUVORK5CYII=);content:"";inset:0;mix-blend-mode:multiply;opacity:.05;pointer-events:none;position:absolute}[data-theme=dark] .hero-section.minimal{color:#111!important}.script-text{color:var(--color-text);font-size:clamp(.5rem,3.5vw,1rem);line-height:1.7;margin:0 auto;max-width:1000px;padding:0;position:relative;white-space:pre-wrap;z-index:1}.scroll-arrow{text-align:center}@media (max-width:768px){.hero-section.minimal{min-height:auto;padding:4rem 1.5rem}.script-text{font-size:clamp(.75rem,4vw,1.3rem);line-height:1.8}.scroll-arrow{font-size:1.5rem}}@media (max-width:480px){.script-text{font-size:.75rem}}[data-theme=dark] .hero-section.minimal{background-color:#f0ece6;color:#111}[data-theme=dark] .handdrawn-smiley,[data-theme=dark] .script-text,[data-theme=dark] .scroll-arrow{color:#111!important}.scroll-transition{align-items:center;background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column;gap:2rem;padding:6rem 2rem 4rem;text-align:center}.quote-transition{color:#f0f0f0;font-size:clamp(1.5rem,4vw,2rem);font-weight:600;line-height:1.6;max-width:720px;position:relative}.quote-transition span{color:var(--color-secondary);display:block;font-size:1rem;font-style:italic;margin-top:1rem}.quote-transition strong{color:#c0392b;font-weight:700}.scroll-arrow{animation:bounceDown 1.5s infinite;color:var(--color-accent);font-size:2rem;margin-top:2rem}[data-theme=dark] .scroll-arrow{color:var(--color-accent)!important}@keyframes bounceDown{0%{transform:translateY(0)}50%{transform:translateY(8px)}to{transform:translateY(0)}}.dev-gallery-modern{margin:4rem 0;overflow:hidden;position:relative;width:100%}.slide-track{display:flex;transition:transform 1s ease-in-out;width:100%}.dev-gallery-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-light));-webkit-background-clip:text;font-size:clamp(2.5rem,6vw,4rem);font-weight:800;letter-spacing:-.5px;line-height:1.1;margin-bottom:3rem;text-align:center;text-transform:uppercase}.dev-gallery-subtitle{color:var(--color-secondary);font-size:clamp(1rem,2vw,1.25rem);line-height:1.6;margin:-2rem auto 3rem;max-width:700px;text-align:center!important}.gallery-slide{align-items:flex-end;box-sizing:border-box;display:flex;flex:0 0 100%;height:70vh;justify-content:center;padding:4rem 2rem;position:relative}.gallery-image{animation:fadeSlideIn 1s ease-out forwards;animation-delay:.4s;filter:brightness(.75) grayscale(10%);height:100%;left:0;object-fit:cover;position:absolute;top:0;transform:translateY(30px);width:100%;z-index:0}.gallery-image:hover{cursor:pointer}.gallery-overlay{animation:fadeIn 1.2s ease-out;color:#fff;max-width:800px;position:relative;text-align:center;z-index:1}.gallery-overlay h2{font-size:2.75rem;font-weight:700;margin-bottom:1rem}.gallery-overlay p{font-size:1.1rem;line-height:1.6;opacity:.9}@media (max-width:768px){.gallery-slide{height:60vh;padding:3rem 1.5rem}.gallery-overlay h2{font-size:2rem}.gallery-overlay p{font-size:1rem}}.dot-nav{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:2.5rem}.nav-pill{background-color:#e0e0e0;border:none;border-radius:999px;color:#333;cursor:pointer;font-size:.9rem;opacity:.7;padding:.4rem 1rem;transition:all .3s ease}.nav-pill:hover{background-color:var(--color-accent-light);cursor:pointer;opacity:1}.nav-pill.active{background-color:var(--color-accent);color:#fff;opacity:1}@media (min-width:960px){.gallery-slide{align-items:center;flex-direction:row;gap:6rem;height:auto;justify-content:center;padding:0 6rem}.gallery-image{border-radius:16px;filter:brightness(1) grayscale(0);flex:0 0 55%;height:auto;max-width:600px;object-fit:contain;position:static;transition:none}.gallery-slide:hover .gallery-image{filter:none}.gallery-overlay{flex:1 1;max-width:500px;padding:0;text-align:left}.gallery-overlay h2{font-size:2.25rem;font-weight:700;margin-bottom:1rem}.gallery-overlay p{color:#151515;font-size:1.05rem;line-height:1.6;opacity:.9}}button:hover{cursor:pointer}.project-page-cta{text-align:center}.project-page-cta h2{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(2rem,5vw,3rem);margin-bottom:1rem}.project-page-cta p{color:var(--color-secondary);font-size:1.1rem;margin-bottom:2rem;text-align:center!important}.book-promo{background-color:#fff;padding:6rem 2rem}.book-grid{align-items:center;display:flex;flex-wrap:wrap;gap:4rem;justify-content:center}.book-info{flex:1 1 400px;max-width:600px}.book-info h2{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(3rem,5vw,3rem);margin-bottom:1rem}.book-info p{color:#151515;font-size:1.1rem;margin-bottom:1.5rem}.book-image{animation:fadeSlideIn 1s ease-out forwards;animation-delay:.2s;flex:1 1 300px;max-width:400px;opacity:0;transform:translateY(30px)}@keyframes fadeSlideIn{to{opacity:1;transform:translateY(0)}}.book-image img{border-radius:12px;box-shadow:0 8px 24px #0000001a;transition:transform .3s ease;width:100%}.book-image img:hover{cursor:pointer;transform:scale(1.03)}.book-buttons{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.navbar{background:var(--color-nav-bg);display:flex;flex-direction:column;gap:1rem;padding:1.25rem 2rem;position:sticky;top:0;z-index:999}.nav-header{justify-content:space-between}.nav-header,.nav-left{align-items:center;display:flex;flex-wrap:wrap}.nav-left{gap:1rem}.identity{display:flex;flex-direction:column}.navbar-title{color:var(--color-accent);font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:2.2rem;font-weight:700;margin:0}.navbar-subtitle{color:var(--color-secondary);font-size:1.2rem;font-style:italic;margin:0}.theme-toggle{background:none;border:none;color:var(--color-text);cursor:pointer;font-size:1.2rem}.theme-toggle:hover{color:var(--color-accent)}.nav-links{gap:1rem}.nav-links,.nav-links a{align-items:center;display:flex}.nav-links a{font-weight:600;gap:.3rem}.mobile-only{display:none}.menu-toggle{background:none;border:none;color:var(--color-text);cursor:pointer;font-size:1.4rem}@media (max-width:768px){.desktop-only{display:none}.mobile-only{display:flex}.nav-links.mobile-only{align-items:flex-start;background:var(--color-header-bg);flex-direction:column;max-height:0;overflow:hidden;padding-left:0;width:100%}.nav-links.mobile-only.open{max-height:300px;padding-top:1rem}.nav-links.mobile-only a{padding:.5rem 0;width:100%}.navbar-title{font-size:1.2rem}.navbar-subtitle{font-size:.9rem}}.footer{background:var( --color-nav-bg);color:var(--color-secondary);font-size:.9rem;margin-top:auto;padding:2rem}.footer p{text-align:center!important}.footer-socials{display:flex;gap:1rem;justify-content:center;margin-top:.5rem}.footer-socials a{color:var(--color-secondary);font-size:1.3rem;transition:color .3s ease}.footer-socials a:hover{color:var(--color-accent)}.modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1001}.modal-content{animation:fadeIn .3s ease-in-out;background:var(--color-bg);border-radius:12px;box-shadow:0 8px 24px #0003;color:#f0f0f0;max-width:800px;padding:2rem;position:relative;width:100%}.modal-close{background:none;border:none;color:var(--color-accent);cursor:pointer;font-size:1.5rem;position:absolute;right:1rem;top:1rem}.modal-close:hover{color:var(--color-text)}span{color:var(--color-accent)}.video-wrapper{border-radius:8px;margin:1rem 0;overflow:hidden}.project-description{color:var(--color-secondary);font-size:1rem;line-height:1.6;margin-top:1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:600px){.modal-content{padding:1.5rem}.video-wrapper iframe{height:200px}}.tabs{display:flex;gap:1.5rem;margin-bottom:2rem}.tabs button{background:none;border:none;border-bottom:2px solid #0000;color:var(--color-secondary);cursor:pointer;font-size:1rem;font-weight:600}.tabs button.active{border-color:var(--color-accent);color:var(--color-accent)}.sub-tabs{display:flex;gap:1rem;margin-bottom:1.5rem}.sub-tabs button{background:none;border:none;border-bottom:2px solid #0000;color:var(--color-secondary);cursor:pointer;font-size:.95rem;font-weight:600;padding-bottom:.25rem}.sub-tabs button.active{border-color:var(--color-accent);color:var(--color-accent)}.projects-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.projects-grid:has(.project-card:only-child){grid-template-columns:repeat(2,minmax(280px,1fr));max-width:none}.project-card{border-radius:12px;box-shadow:0 6px 16px #0000001a;overflow:hidden;position:relative;transition:transform .3s ease}.project-card:hover{cursor:pointer;transform:translateY(-6px)}.project-card img{aspect-ratio:16/9;object-fit:cover;width:100%}.overlay{background:#0a0a0a99;color:#fff;display:flex;flex-direction:column;height:100%;justify-content:flex-end;left:0;opacity:0;padding:1rem;position:absolute;top:0;transition:opacity .3s ease;width:100%}.project-card:hover .overlay{opacity:1}.overlay h4{font-size:1.1rem;margin:0}.overlay span{font-size:.9rem}.book-hero{padding-bottom:2rem;padding-top:4rem}.book-hero-inner{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1.25fr .85fr}@media (max-width:900px){.book-hero-inner{grid-template-columns:1fr}}.book-title{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(2.2rem,5vw,3.2rem);font-weight:400;letter-spacing:1px;margin:0 0 1rem;text-transform:uppercase}.book-tagline{color:var(--color-secondary);font-size:1.15rem;line-height:1.7;margin-bottom:1.5rem}.book-hero-cover img{border-radius:14px;box-shadow:0 10px 30px #00000040;display:block;margin:0 auto;max-width:420px;width:100%}.book-cta{display:flex;flex-wrap:wrap;gap:.75rem;margin:1rem 0 1.5rem}.book-meta{grid-gap:.4rem;color:var(--color-secondary);display:grid;gap:.4rem;list-style:none;margin:0;padding:0}.book-synopsis p{color:#151515;font-size:1.05rem;line-height:1.7}.book-synopsis strong{color:var(--color-accent)}.excerpt{background:#fff7ef;border-left:4px solid var(--color-accent);border-radius:10px;color:#151515;font-style:italic;margin-top:2em;max-width:800px;padding:1rem 1.25rem}.excerpt-cta{margin-top:1rem}.book-praise .testimonials{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;text-align:center}.book-praise blockquote{background:#fff7ef;border-left:4px solid var(--color-accent);border-radius:10px;box-shadow:0 4px 10px #0000000d;color:#151515;font-size:1.05rem;font-style:italic;line-height:1.6;max-width:320px;padding:1rem;position:relative}.book-praise blockquote span{color:var(--color-secondary);display:block;font-size:.9rem;font-weight:600;margin-top:.75rem}.book-final-cta{padding-bottom:3rem;text-align:center!important}.book-final-cta-button{display:flex;flex-wrap:wrap;gap:.75em;justify-content:center;margin:1rem 0 1.5rem}.book-final-cta h3{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(1.8rem,4vw,2.4rem);margin-bottom:.5rem}.book-final-cta p{color:var(--color-secondary);margin-bottom:1.25rem;text-align:center}.book-modal-backdrop{align-items:center;background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.book-modal-content{background:#fff;border-radius:8px;max-width:800px;padding:1rem;position:relative;width:90%}.book-modal-close{background:none;border:none;color:#333;cursor:pointer;font-size:2rem;position:absolute;right:1rem;top:.5rem}.book-modal-video iframe{border-radius:8px;height:450px;max-height:70vh;width:100%}@media (max-width:768px){.book-modal-video iframe{height:250px}}.about-content{align-items:center;display:flex;flex-wrap:wrap;gap:2rem}.about-text{flex:1 1;min-width:260px}.about-text p{color:var(--color-secondary);font-size:1.1rem;line-height:1.6}.about-text strong{color:var(--color-accent)}.about-image img{border-radius:12px;max-width:400px;width:100%}.testimonial-section{border-top:1px solid #0000000d;margin-top:5rem;padding-top:3rem}.testimonial-title{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(1.5rem,3vw,2rem);letter-spacing:1px;margin-bottom:2rem;text-align:center!important;text-transform:uppercase}.testimonials{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.testimonials blockquote{background:#fff7ef;border-left:4px solid var(--color-accent);border-radius:8px;box-shadow:0 4px 10px #0000000d;color:#151515;font-size:1.1rem;font-style:italic;line-height:1.6;max-width:300px;padding:1rem;position:relative}.testimonials blockquote span{color:var(--color-secondary);display:block;font-size:.9rem;font-weight:600;margin-top:1rem}.about-contact-cta{margin-top:5rem;padding-bottom:3rem;text-align:center!important}.about-contact-cta h3{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:.75rem}.about-contact-cta p{color:var(--color-secondary);font-size:1.1rem;margin-bottom:2rem;text-align:center!important}.about-contact-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.about-contact-links .contact-btn{background:none;border:2px solid var(--color-accent);border-radius:30px;color:var(--color-accent);font-weight:600;padding:.5rem 1.25rem;transition:all .3s ease}.about-contact-links .contact-btn:hover{background:var(--color-accent);color:var(--color-bg)}.animate{animation:fadeUp .8s forwards;opacity:0;transform:translateY(20px)}.animate:first-child{animation-delay:.2s}.animate:nth-child(2){animation-delay:.4s}.animate:nth-child(3){animation-delay:.6s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.contact-intro{color:var(--color-secondary)}.contact-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2em}.contact-btn{background:none;border:2px solid var(--color-accent);border-radius:4px;color:var(--color-accent);font-weight:600;padding:.5rem 1rem;transition:all .3s ease}.contact-btn:hover{background:var(--color-accent);color:var(--color-bg)}.contact-form{margin-top:3rem;text-align:center}.contact-form h3{color:var(--color-accent);font-family:"DM Serif Display",serif;font-size:1.5rem;margin-bottom:1.5rem}.contact-form form{display:flex;flex-direction:column;gap:1rem;margin:0 auto;max-width:600px}.contact-form input,.contact-form textarea{background:var(--color-bg);border:2px solid var(--color-accent);border-radius:6px;color:#f3f3f3;font-family:Space Grotesk,sans-serif;font-size:1rem;padding:.75rem 1rem;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-accent-light);outline:none}.contact-form .form-success{color:var(--color-accent);font-size:1.1rem;font-weight:600;margin-top:2rem}:root{--color-bg:#1b3b2f;--color-text:#151515;--color-secondary:#aaa;--color-accent:#d97742;--color-accent-light:#ffb385;--color-nav-bg:#fdf7f1}[data-theme=dark]{--color-bg:#151718;--color-text:#ecebe8;--color-secondary:#a3a3a0;--color-accent:#6fa6a8;--color-accent-light:#9fd0cc;--color-nav-bg:#1b1d1e}#root,body,html{height:100%;margin:0;padding:0}body{background:#1b3b2f;background:var(--color-bg);color:#151515;color:var(--color-text);font-family:Space Grotesk,sans-serif;font-weight:400}.layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1}h1,h2,h3{font-family:"DM Serif Display",serif;font-weight:400;letter-spacing:1px;text-transform:uppercase}a,h1,h2,h3{color:#d97742;color:var(--color-accent)}a{font-weight:600;position:relative;transition:color .3s ease}a,a:after{text-decoration:none!important}a:after{background:#d97742;background:var(--color-accent);bottom:-2px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .3s ease;width:100%}a:hover{color:#ffb385;color:var(--color-accent-light);text-decoration:none!important}a:hover:after{transform:scaleX(1)}a.btn-primary,a.btn-primary:focus,a.btn-primary:hover,a.btn-secondary,a.btn-secondary:focus,a.btn-secondary:hover{text-decoration:none!important;text-decoration-line:none!important;-webkit-text-decoration:none!important}.btn-primary,.btn-secondary{border-radius:999px;display:inline-block;font-weight:600;padding:.6rem 1.25rem;text-decoration:none;transition:all .25s ease}.btn-primary{background:#d97742;background:var(--color-accent);border:2px solid #d97742;border:2px solid var(--color-accent);color:#fff}.btn-primary:hover{background:#ffb385;background:var(--color-accent-light);border-color:#ffb385;border-color:var(--color-accent-light);color:#fff;text-decoration:none!important}.btn-secondary{background-color:initial;border:2px solid #d97742;border:2px solid var(--color-accent);color:#d97742;color:var(--color-accent)}.btn-secondary:hover{background-color:#ffb385;background-color:var(--color-accent-light);color:#fff;cursor:pointer}.section{margin:auto;max-width:1200px;padding:2rem}.section-title{border-left:5px solid #d97742;border-left:5px solid var(--color-accent);color:#d97742;color:var(--color-accent);font-size:clamp(2rem,5vw,3rem);font-weight:400;letter-spacing:1px;margin-bottom:2rem;padding-left:1rem;text-transform:uppercase}.section-angled{background:#fff}.section-angled,.section-angled-2{clip-path:polygon(0 5%,100% 0,100% 95%,0 100%);padding:6rem 0;position:relative;z-index:1}.section-angled-2{background:#1b3b2f;background:var(--color-bg)}.scroll-fade{opacity:0;transform:translateY(20px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-fade.visible{opacity:1;transform:translateY(0)}.scroll-fade-left{transform:translateX(-20px)}.scroll-fade-left.visible{transform:translateX(0)}.scroll-fade-right{transform:translateX(20px)}.scroll-fade-right.visible{transform:translateX(0)}
/*# sourceMappingURL=main.7acf5cad.css.map*/