:root{--paper:#f7efe3;--paper-light:#fff8ed;--paper-deep:#ead7bd;--ink:#24170f;--muted:#746252;--accent:#7b2d1f;--accent-dark:#4f1c14;--gold:#b88947;--line:#d6bfa2;--shadow:rgba(62, 39, 22, 0.16)}*{box-sizing:border-box}html{font-size:18px}body{margin:0;font-family:Georgia,times new roman,serif;background:radial-gradient(circle at top,rgba(255,248,237,.92),#f7efe3 42%),var(--paper);color:var(--ink);line-height:1.65}.page{max-width:1080px;margin:0 auto;padding:2rem 1.5rem 4rem}.hero-banner{position:relative;min-height:460px;margin-bottom:2.25rem;border:1px solid var(--line);background-image:linear-gradient( 90deg,rgba(36,23,15,.32) 0%,rgba(36,23,15,.12) 38%,rgba(36,23,15,2%) 75% ),url(/images/hero.jpg);background-size:cover;background-position:50%;box-shadow:0 14px 36px var(--shadow);display:flex;align-items:flex-end;overflow:hidden}.hero-banner::after{content:"";position:absolute;inset:0;border:8px solid rgba(255,248,237,.18);pointer-events:none}.hero-overlay{position:relative;z-index:1;max-width:430px;margin:0 0 2rem 2rem;padding:1.35rem 1.55rem;background:rgba(255,248,237,.78);border:1px solid rgba(214,191,162,.78);box-shadow:0 8px 20px rgba(41,25,13,.14);backdrop-filter:blur(2px)}.eyebrow{margin:0 0 .55rem;color:var(--accent);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em}h1{font-size:clamp(2.45rem,5.5vw,4.2rem);line-height:.95;margin:0 0 .65rem;font-weight:400;letter-spacing:-.045em}.hero-text{font-size:1rem;color:var(--ink);margin:0;max-width:30rem}.intro-card{max-width:840px;margin:0 auto 2.5rem;padding:1.7rem 1.9rem;background:var(--paper-light);border:1px solid var(--line);box-shadow:0 8px 24px rgba(62,39,22,8%);font-size:1.08rem}.section{margin-bottom:2.75rem}h2{font-size:1.55rem;margin-top:0;margin-bottom:1.1rem;padding-bottom:.45rem;border-bottom:1px solid var(--line);font-weight:400;color:var(--accent-dark)}h3{font-size:1.24rem;font-weight:400;margin:0 0 .4rem}p{margin-top:0;margin-bottom:1rem}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent-dark)}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem}.work-card,.contact-box,.approach-list>div{background:linear-gradient(180deg,rgba(255,248,237,.96),rgba(247,239,227,.96));border:1px solid var(--line);padding:1.35rem;box-shadow:0 8px 22px rgba(62,39,22,8%)}.work-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:.55rem}.approach-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.35rem}.contact-box{max-width:760px;margin:0 auto;text-align:center;background:linear-gradient(135deg,rgba(255,248,237,.98),rgba(234,215,189,.72))}.button{display:inline-block;padding:.78rem 1.2rem;background:var(--accent);color:#fff8ed;text-decoration:none;border:1px solid var(--accent-dark);box-shadow:0 4px 12px rgba(62,39,22,.18)}.button:hover{color:#fff8ed;background:var(--accent-dark)}.site-footer,footer{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--muted);font-size:.95rem;text-align:center}.content-page{max-width:820px;margin:0 auto;padding:2rem 0}.page-header{margin-bottom:2rem;border-bottom:1px solid var(--line)}.prose{background:var(--paper-light);border:1px solid var(--line);padding:1.5rem 1.75rem}@media(max-width:850px){.work-grid,.approach-list{grid-template-columns:1fr}.hero-banner{min-height:440px;background-position:50%}.hero-overlay{margin:1.25rem;padding:1.5rem}}@media(max-width:640px){html{font-size:16px}.page{padding:1rem 1rem 3rem}.hero-banner{min-height:390px;align-items:flex-end}.hero-overlay{margin:.85rem;padding:1.25rem}h1{font-size:clamp(2.4rem,14vw,3.8rem)}.hero-text{font-size:1.05rem}.intro-card{padding:1.25rem}}