.cat-hero{position:relative;width:100%;height:100vh;min-height:640px;display:flex;align-items:flex-end;padding-bottom:100px;overflow:hidden}.cat-hero-bg{position:absolute;inset:0;z-index:0}.cat-hero-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.cat-hero-overlay{position:absolute;inset:0;background:linear-gradient( to bottom,rgba(26,22,18,.15) 0%,rgba(26,22,18,.65) 100% )}.cat-hero-content{position:relative;z-index:1;width:100%;max-width:var(--max-w);margin:0 auto;padding:0 28px;text-align:center;display:flex;flex-direction:column;align-items:center}.cat-hero-label{display:block;font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--terra);margin-bottom:20px}.cat-hero-title{font-family:var(--font-display);font-size:clamp(48px,8vw,88px);font-weight:300;line-height:1.05;color:var(--beige);margin-bottom:24px}.cat-hero-title em{font-style:italic;color:var(--gold)}.cat-hero-sub{font-family:var(--font-display);font-style:italic;font-size:1.4rem;color:rgba(250,247,242,.75);margin-bottom:40px;max-width:480px}.cat-positioning{background:var(--white);padding:100px 28px}.cat-positioning-inner{max-width:680px;margin:0 auto;text-align:center}.cat-positioning-line{font-family:var(--font-display);font-size:clamp(28px,3.5vw,42px);font-weight:300;color:var(--maroon);line-height:1.2;margin-bottom:8px}.cat-positioning-line--italic{font-style:italic;color:var(--muted);margin-bottom:40px}.cat-positioning-body{font-family:var(--font-body);font-size:1.1rem;font-weight:300;color:var(--muted);line-height:1.8;max-width:560px;margin:0 auto}.cat-positioning-body--lead{margin-bottom:20px}.cat-positioning-list{list-style:none;max-width:420px;margin:0 auto 32px;padding:0;text-align:left;display:flex;flex-direction:column;gap:12px}.cat-positioning-list li{font-family:var(--font-body);font-size:1.05rem;font-weight:300;color:var(--muted);line-height:1.6;padding-left:24px;position:relative}.cat-positioning-list li::before{content:'';position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:var(--gold)}.cat-inline-image{max-width:760px;margin:48px auto 0;border-radius:6px;overflow:hidden}.cat-inline-image img{width:100%;height:auto;display:block}.cat-grid-section{padding:96px 0;background:var(--beige)}.cat-grid-section--dark{background:var(--ink)}.cat-grid-container{max-width:var(--max-w);margin:0 auto;padding:0 28px}.cat-grid-header{text-align:center;margin-bottom:64px}.cat-grid-label{display:block;font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--terra);margin-bottom:16px}.cat-grid-section--dark .cat-grid-label{color:var(--gold)}.cat-grid-title{font-family:var(--font-display);font-size:clamp(28px,3.5vw,44px);font-weight:300;color:var(--maroon);line-height:1.2;margin-bottom:16px}.cat-grid-section--dark .cat-grid-title{color:var(--beige)}.cat-grid-sub{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--muted);line-height:1.8;max-width:560px;margin:0 auto}.cat-grid-section--dark .cat-grid-sub{color:rgba(250,247,242,.55)}.cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}.cat-grid-section--dark .cat-grid{background:rgba(255,255,255,8%);border-color:rgba(255,255,255,8%)}.grid-card{background:var(--white);padding:36px 32px;display:flex;flex-direction:column;gap:12px;transition:background var(--t);position:relative}.grid-card-image{width:100%;height:190px;overflow:hidden;border-radius:4px;margin:-4px -4px 8px}.grid-card-image img{width:100%;height:100%;object-fit:cover;display:block}.grid-card:hover{background:var(--beige-dark)}.grid-card--featured{background:var(--beige)}.grid-card--featured:hover{background:var(--beige-dark)}.grid-card--dark{background:rgba(255,255,255,4%)}.grid-card--dark:hover{background:rgba(255,255,255,8%)}.grid-card--dark.grid-card--featured{background:rgba(184,150,46,8%)}.grid-card--dark.grid-card--featured:hover{background:rgba(184,150,46,.14)}.grid-card--featured::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--gold)}.grid-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.grid-card-name{font-family:var(--font-display);font-size:1.3rem;font-weight:400;color:var(--maroon);line-height:1.2;margin:0}.grid-card--dark .grid-card-name{color:var(--beige)}.grid-card-tag{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;padding-top:4px;flex-shrink:0}.grid-card--dark .grid-card-tag{color:rgba(250,247,242,.45)}.grid-card-tag--specialty{color:var(--gold);font-weight:600}.grid-card--dark .grid-card-tag--specialty{color:var(--gold)}.grid-card-desc{font-family:var(--font-body);font-size:.95rem;font-weight:300;color:var(--muted);line-height:1.75;margin:0}.grid-card--dark .grid-card-desc{color:rgba(250,247,242,.55)}.grid-card-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.grid-card-list li{font-family:var(--font-body);font-size:.9rem;font-weight:300;color:var(--muted);line-height:1.6;padding-left:18px;position:relative}.grid-card-list li::before{content:'';position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;background:var(--gold)}.grid-card--dark .grid-card-list li{color:rgba(250,247,242,.55)}.cat-cta{background:var(--ink);padding:100px 28px;text-align:center}.cat-cta-inner{max-width:560px;margin:0 auto}.cat-cta-title{font-family:var(--font-display);font-size:clamp(32px,4vw,48px);font-weight:300;color:var(--beige);margin-bottom:20px}.cat-cta-body{font-family:var(--font-body);font-size:1rem;font-weight:300;color:rgba(250,247,242,.6);line-height:1.75;margin-bottom:36px}@media(max-width:900px){.cat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.cat-hero{padding-bottom:64px;align-items:center}.cat-hero-title{font-size:clamp(36px,10vw,56px)}.cat-hero-sub{font-size:1.15rem}.cat-positioning{padding:72px 28px}.cat-grid-section{padding:72px 0}.cat-grid-header{margin-bottom:40px}}@media(max-width:640px){.cat-grid{grid-template-columns:1fr}.grid-card{padding:28px 24px}.cat-positioning{padding:56px 28px}}