.bar{opacity:1;pointer-events:auto;background:#f4efeaf0;backdrop-filter:blur(10px)}.menu-btn .lines span{background:var(--charcoal)}.menu-btn .txt{color:var(--charcoal)}.brand-float{position:fixed;top:1.5rem;left:50%;transform:translate(-50%) scale(1);z-index:70}.cat-photo-hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem var(--page)}.cat-photo-hero-bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;animation:catHeroZoom 22s ease-in-out infinite alternate}@keyframes catHeroZoom{0%{transform:scale(1)}to{transform:scale(1.07)}}@media(prefers-reduced-motion:reduce){.cat-photo-hero-bg{animation:none}}.cat-photo-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#1e1c187a,#1e1c1833 38%,#1e1c1894)}.cat-photo-hero-inner{position:relative;z-index:2}.cat-photo-hero .label{color:var(--warm-white);text-shadow:0 1px 6px rgba(0,0,0,.5)}.cat-photo-hero h1{font-family:var(--serif);font-weight:400;color:var(--cream);font-size:clamp(2.6rem,6vw,4.2rem);margin:.7rem 0 0;letter-spacing:.005em;text-shadow:0 1px 8px rgba(0,0,0,.3)}.cat-back{position:absolute;z-index:2;top:calc(62px + 1.6rem);left:clamp(1rem,3vw,2.2rem);display:inline-block;font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.16em;font-size:.64rem;color:var(--warm-white);text-decoration:none;text-shadow:0 1px 4px rgba(0,0,0,.35);transition:opacity .3s ease}.cat-back:hover{opacity:.75}.cat-hero{padding:clamp(3.5rem,7vw,5.5rem) var(--page);background:var(--cream);text-align:center}.cat-hero .wrap{max-width:800px;margin:0 auto}.cat-intro{font-size:.98rem;line-height:1.9;color:#463f39;max-width:72ch;margin:0 auto}.cat-projects{padding:clamp(1rem,3vw,2rem) 0 clamp(2.5rem,5vw,4rem);background:var(--cream);text-align:center}.cat-projects .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--page)}.cat-project-wrap{max-width:none;width:100%;padding:0 clamp(1rem,3vw,2.2rem);margin:0 auto}.cat-project-wrap+.wrap .svc-head{margin-top:clamp(3.4rem,6vw,5rem)}.cat-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.2rem,2.4vw,2.4rem);margin-top:clamp(2.6rem,5vw,3.6rem);align-items:stretch;text-align:left}.cat-project-card{display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.22,.61,.36,1)}.cat-project-card:hover{transform:translateY(-6px)}.cat-project-card .shot{aspect-ratio:3/4;border-radius:2px;background-size:cover;background-position:center;margin-bottom:1.3rem;overflow:hidden;position:relative;cursor:pointer;transition:transform .6s cubic-bezier(.22,.61,.36,1)}.cat-project-card:hover .shot{transform:scale(1.03)}.cat-project-pending{aspect-ratio:3/4;border-radius:2px;margin-bottom:1.3rem;background:repeating-linear-gradient(45deg,var(--warm-white) 0 12px,var(--greige) 12px 24px);border:1px dashed var(--greige);display:flex;align-items:center;justify-content:center;text-align:center;padding:1rem;transition:transform .6s cubic-bezier(.22,.61,.36,1)}.cat-project-card:hover .cat-project-pending{transform:scale(1.03)}.cat-project-pending span{font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--muted)}.cat-project-card .label{display:inline-block;text-align:left;font-size:.62rem;letter-spacing:.18em;margin-bottom:.5rem}.cat-project-card .subhead{margin:0 0 .6rem;font-size:.92rem}.cat-project-card p{font-size:.86rem;color:#4a453f;flex:1 0 auto;margin-bottom:1rem}.cat-project-card .discover{margin-top:.8rem}.cat-project-card button.discover{background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;-webkit-appearance:none;appearance:none}.cat-links{margin-top:2.6rem;text-align:center}@media(max-width:820px){.cat-project-grid{grid-template-columns:1fr;max-width:380px;margin:2.6rem auto 0}}.w3modal-overlay{position:fixed;inset:0;z-index:200;background:#262a24c7;display:none;align-items:center;justify-content:center;padding:1.4rem}.w3modal-overlay.open{display:flex}.w3modal{background:var(--warm-white);border-radius:10px;box-shadow:0 48px 120px -24px #262a247a,0 16px 40px #262a2433;max-width:800px;width:100%;max-height:88vh;position:relative;display:flex;flex-direction:column;overflow:hidden;text-align:left}.w3modal-close{position:absolute;top:1.5rem;right:1.5rem;z-index:3;width:36px;height:36px;border-radius:50%;background:var(--warm-white);border:0;cursor:pointer;font-size:1.3rem;line-height:1;color:var(--muted);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #262a242e;transition:color .3s ease}.w3modal-close:hover{color:var(--espresso)}.w3modal-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:clamp(3.4rem,6.5vw,5rem) clamp(3.4rem,6.5vw,5rem) 3.2rem}.w3modal-scroll .shot{aspect-ratio:16/9;border-radius:4px;background-size:cover;background-position:center;margin-bottom:2.6rem}.w3modal-cat{display:block;margin-bottom:1.1rem}.w3modal-scroll h3{font-family:var(--serif);font-weight:400;font-size:1.85rem;margin:0 0 2.2rem}.w3modal-steckbrief{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.8rem;background:var(--warm-white);border:1px solid rgba(199,192,182,.4);box-shadow:0 6px 22px -8px #2f2f2c24;border-radius:6px;padding:1.3rem 1.6rem;margin-bottom:2.2rem}.w3modal-sb-item{min-width:0}.w3modal-sb-label{display:block;font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:.58rem;color:var(--gold);margin-bottom:.35rem}.w3modal-sb-value{font-family:var(--sans);font-weight:300;font-size:.8rem;color:var(--charcoal)}@media(max-width:480px){.w3modal-steckbrief{grid-template-columns:1fr}}.w3modal-scroll p.about-text{font-size:.9rem;line-height:1.95;letter-spacing:.01em;color:#4a453f;max-width:none;margin-bottom:1.8em}.w3modal-gallery{position:relative;margin-bottom:1.4rem}.w3modal-gallery .shot{margin-bottom:0}.w3modal-gallery-btn{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:0;background:#262a2473;color:var(--warm-white);font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s ease}.w3modal-gallery-btn:hover{background:#262a24b3}.w3modal-gallery-prev{left:.6rem}.w3modal-gallery-next{right:.6rem}.w3modal-gallery-caption{position:absolute;left:1rem;bottom:1rem;padding:.35rem .95rem;background:#262a248c;border-radius:3px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:1rem;color:var(--warm-white)}.w3modal-gallery-thumbs{display:flex;justify-content:center;gap:.7rem;margin-bottom:2.8rem}.w3modal-gallery-thumb{flex:1;max-width:100px;aspect-ratio:1/1;border-radius:3px;background-size:cover;background-position:center;border:0;padding:0;cursor:pointer;opacity:.55;transition:opacity .3s ease,box-shadow .3s ease;box-shadow:0 0 0 2px transparent}.w3modal-gallery-thumb:hover{opacity:.85}.w3modal-gallery-thumb.active{opacity:1;box-shadow:0 0 0 2px var(--caramel)}.cat-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:2rem}.cat-chip{font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.14em;font-size:.66rem;color:var(--espresso);background:var(--warm-white);border:1px solid var(--greige);border-radius:999px;padding:.55rem 1.2rem;text-decoration:none;transition:border-color .3s ease,color .3s ease}.cat-chip:hover{border-color:var(--caramel);color:var(--caramel)}.cat-back-bottom-wrap{text-align:center;padding:0 var(--page) clamp(5rem,26vw,20rem);background:var(--cream)}.cat-back-bottom{display:inline-block;font-family:var(--sans);font-weight:300;text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;text-decoration:none;padding:.95rem 2.4rem;border-radius:2px;color:var(--warm-white);background:var(--caramel);border:1px solid var(--caramel);transition:background .3s ease,border-color .3s ease}.cat-back-bottom:hover{background:var(--espresso);border-color:var(--espresso)}footer{min-height:0}
