*,:before,:after{box-sizing:border-box}:root{--color-bg:#faf6ef;--color-bg-alt:#f2ead9;--color-tan:#d8c4a0;--color-tan-dark:#b99f74;--color-brown:#6b5842;--color-brown-dark:#4a3c2c;--color-text:#3a3226;--color-text-light:#5c5142;--color-white:#fffdf9;--radius:10px;--max-width:1100px;--font-body:"Segoe UI", Helvetica, Arial, sans-serif}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}img{max-width:100%;display:block}a{color:var(--color-brown-dark);text-decoration:none}a:hover,a:focus{text-decoration:underline}h1,h2,h3{color:var(--color-brown-dark);margin-top:0;line-height:1.25}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.site-header{z-index:100;background:var(--color-white);border-bottom:1px solid var(--color-tan);position:relative}.nav{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;padding:18px 24px;display:flex;position:relative}.nav-brand{align-items:center;line-height:0;display:inline-flex}.nav-brand:hover,.nav-brand:focus{text-decoration:none}.logo-mark{background:var(--color-brown-dark);width:40px;height:40px;color:var(--color-white);letter-spacing:.02em;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.nav-links{gap:28px;margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:var(--color-text);font-weight:600}.nav-links a[aria-current=page]{color:var(--color-brown-dark);border-bottom:2px solid var(--color-tan-dark)}.nav-toggle{z-index:101;border:1px solid var(--color-tan-dark);color:var(--color-brown-dark);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-size:1rem;display:none;position:relative}.site-footer{background:var(--color-bg-alt);border-top:1px solid var(--color-tan);text-align:center;color:var(--color-text-light);margin-top:64px;padding:28px 24px;font-size:.9rem}.site-footer a{color:var(--color-brown-dark);font-weight:600}.hero-asym{max-width:var(--max-width);grid-template-columns:7fr 5fr;align-items:end;gap:24px;margin:0 auto;padding:88px 24px 96px;display:grid;position:relative;overflow:hidden}.hero-asym-main{z-index:1;grid-column:1/2;position:relative}.hero-asym-block{background:linear-gradient(135deg, var(--color-tan) 0%, var(--color-tan-dark) 100%);border-radius:var(--radius);z-index:-1;width:90%;height:78%;position:absolute;top:10%;left:-8%}.hero-asym-name{letter-spacing:-.02em;color:var(--color-brown-dark);margin:0 0 0 -4px;font-size:clamp(3.2rem,9vw,7rem);font-weight:800;transform:translate(-2%)}.hero-asym-side{z-index:1;border-left:3px solid var(--color-tan-dark);grid-column:2/3;align-self:end;padding-bottom:12px;padding-left:24px;position:relative}.hero-asym-side .tagline{color:var(--color-text-light);margin:0;font-size:clamp(1.05rem,1.6vw,1.3rem)}.offer-section{max-width:var(--max-width);margin:0 auto;padding:8px 24px 16px}.section-title{text-align:center;margin-bottom:24px;font-size:clamp(1.4rem,2.6vw,1.75rem)}.offer-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.offer-item{background:var(--color-white);border:1px solid var(--color-tan);border-radius:var(--radius);text-align:center;padding:24px 20px}.offer-item h3{margin-bottom:8px;font-size:1.05rem}.offer-item p{color:var(--color-text-light);margin:0;font-size:.92rem}.card-grid{max-width:var(--max-width);grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto;padding:24px 24px 96px;display:grid}.nav-card{background:var(--color-white);border:2px solid var(--color-tan);border-radius:var(--radius);min-height:180px;color:var(--color-brown-dark);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:48px 24px;font-size:1.4rem;font-weight:700;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;box-shadow:0 1px 3px #4a3c2c14}.nav-card:hover,.nav-card:focus-visible{border-color:var(--color-tan-dark);text-decoration:none;transform:translateY(-4px);box-shadow:0 8px 20px #4a3c2c1f}.nav-card .card-sub{color:var(--color-text-light);font-size:.95rem;font-weight:400}.page-header{text-align:center;background:var(--color-bg-alt);padding:64px 24px 32px}.page-header h1{font-size:clamp(1.9rem,4vw,2.6rem)}.about-content{max-width:720px;margin:0 auto;padding:48px 24px 80px}.about-content h2{margin-top:40px;font-size:1.4rem}.about-content p{margin-bottom:18px}.portfolio-note{text-align:center;max-width:720px;color:var(--color-text-light);margin:0 auto;padding:24px 24px 0;font-size:.95rem}.portfolio-grid{max-width:var(--max-width);grid-template-columns:repeat(3,1fr);gap:28px;margin:0 auto;padding:40px 24px 96px;display:grid}.portfolio-card{background:var(--color-white);border:1px solid var(--color-tan);border-radius:var(--radius);color:var(--color-text);transition:transform .15s,box-shadow .15s;display:block;overflow:hidden;box-shadow:0 1px 3px #4a3c2c14}.portfolio-card:hover,.portfolio-card:focus-visible{text-decoration:none;transform:translateY(-4px);box-shadow:0 8px 20px #4a3c2c24}.portfolio-thumb{aspect-ratio:16/9;background:var(--color-bg-alt);width:100%;overflow:hidden}.portfolio-thumb img{object-fit:cover;width:100%;height:100%;display:block}.portfolio-body{padding:20px}.portfolio-body h3{color:var(--color-brown-dark);margin-bottom:6px;font-size:1.15rem}.portfolio-body p{color:var(--color-text-light);margin:0;font-size:.95rem}.portfolio-body .visit-link{color:var(--color-brown-dark);margin-top:12px;font-weight:700;display:inline-block}.contact-content{max-width:560px;margin:0 auto;padding:48px 24px 96px}.email-box{background:var(--color-white);border:1px solid var(--color-tan);border-radius:var(--radius);text-align:center;margin-bottom:40px;padding:24px}.email-box p{color:var(--color-text-light);margin:0 0 12px}.response-note{color:var(--color-text-light);margin:16px 0 0;font-size:.9rem}.btn{background:var(--color-brown-dark);color:var(--color-white);cursor:pointer;border:none;border-radius:6px;padding:12px 28px;font-size:1rem;font-weight:700;display:inline-block}.btn:hover,.btn:focus-visible{background:var(--color-brown);text-decoration:none}.btn:disabled{opacity:.65;cursor:not-allowed}.form-group{margin-bottom:20px}.form-group label{color:var(--color-brown-dark);margin-bottom:6px;font-weight:600;display:block}.form-group input,.form-group textarea{border:1px solid var(--color-tan-dark);background:var(--color-white);width:100%;color:var(--color-text);border-radius:6px;padding:12px;font-family:inherit;font-size:1rem}.form-group input:focus,.form-group textarea:focus{outline:2px solid var(--color-brown);outline-offset:1px}.form-status{border-radius:6px;margin-top:16px;padding:12px 16px;font-weight:600;display:none}.form-status.show{display:block}.form-status.success{color:#34532a;background:#e7f0e1}.form-status.error{color:#721c24;background:#f8d7da}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (width<=720px){.nav-toggle{display:inline-block}.nav-links{z-index:100;background:var(--color-white);border-bottom:1px solid var(--color-tan);flex-direction:column;gap:0;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 8px 20px #4a3c2c24}.nav-links.open{display:flex}.nav-links li{border-top:1px solid var(--color-tan)}.nav-links a{padding:14px 24px;display:block}.card-grid,.portfolio-grid,.offer-grid{grid-template-columns:1fr}.hero-asym{grid-template-columns:1fr;gap:32px;padding:56px 20px 64px}.hero-asym-main,.hero-asym-side{grid-column:1/2}.hero-asym-block{width:100%;height:82%;top:6%;left:-4%}.hero-asym-name{transform:none}.hero-asym-side{border-left:none;border-top:3px solid var(--color-tan-dark);padding-top:20px;padding-left:0}}
