:root{--ink:#123e40;--text:#203233;--muted:#496060;--gold:#e6b95c;--paper:#f6f7ef;--line:#d8e2da;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font:1rem/1.62 system-ui,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #2563a6;outline-offset:5px}.skip{position:absolute;left:1rem;top:-5rem;background:white;padding:.5rem;z-index:2}.skip:focus{top:1rem}.wrap{width:min(1152px,calc(100% - 3rem));margin-inline:auto}.mast{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.35rem;border-bottom:1px solid var(--line)}.mast img{display:block;max-width:100%}nav{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}nav a{text-decoration:none;font-weight:650;font-size:.92rem}nav a:hover,.text-link:hover{text-decoration:underline}.nav-contact{padding:.4rem .75rem;border:1px solid #9ab0a6;border-radius:6px}.hero,.split{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:clamp(1.6rem,5vw,5rem)}.hero{padding-block:clamp(3.2rem,8vw,7rem)}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.14em;color:var(--ink);margin:0 0 1rem}.eyebrow span{display:inline-block;width:.7rem;height:.7rem;border-radius:100%;background:var(--gold);margin-right:.45rem}h1,h2,h3{color:var(--ink);line-height:1.09;margin:0;letter-spacing:-.04em}h1{font-size:clamp(2.55rem,5.55vw,4.85rem)}h1 em{font-style:normal;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:.09em;text-underline-offset:.11em}h2{font-size:clamp(2rem,4vw,3.35rem)}h3{font-size:1.42rem}.intro{font-size:1.08rem;max-width:56ch;color:var(--muted)}.actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-top:1.65rem}.button{display:inline-flex;align-items:center;gap:.8rem;padding:.72rem 1.05rem;border-radius:6px;background:var(--ink);color:white;text-decoration:none;font-weight:720}.button:hover{background:#21565a}.text-link{color:var(--ink);font-weight:750;text-underline-offset:.23em}.hero-art{border-radius:18px;background-color:var(--ink);padding:clamp(1.2rem,3vw,2.4rem);color:var(--paper)}.art-caption{margin:0 0 .9rem;font-size:.74rem;font-weight:800;letter-spacing:.13em}
.hero-art a{display:grid;grid-template-columns:2rem 1fr auto;gap:.45rem;align-items:center;padding:.95rem .65rem;border-top:1px solid #ffffff40;text-decoration:none;font-weight:700}
.hero-art a:last-child{border-bottom:1px solid #ffffff40}
.hero-art a:hover,.hero-art a:focus-visible{background:#ffffff18}
.hero-art a span{font-size:.72rem}
.hero-art a b{font-size:.85rem}
.section{padding-block:clamp(2.9rem,6vw,5.1rem);scroll-margin-top:1rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.cards article,.contact-box{border:1px solid var(--line);padding:1.25rem;background:#ffffffb0;border-radius:12px}.cards article span{display:inline-block;margin-bottom:.75rem;color:var(--ink);background:#f1dfae;border-radius:4px;padding:.1rem .45rem;font-size:.75rem;font-weight:800}.cards p,.contact-box p{margin-bottom:0}.services{border-top:1px solid var(--line)}
.cards article{scroll-margin-top:1rem}
.cards .example{padding-top:.8rem;border-top:1px solid var(--line);color:var(--muted);font-size:.94rem}
.contact{border-top:1px solid var(--line)}.contact-box strong{font-size:1.25rem;color:var(--ink)}.contact-box p{margin:0 0 .9rem}.email{display:block;margin-top:.65rem;overflow-wrap:anywhere}.footer{display:flex;justify-content:space-between;gap:.65rem 1rem;flex-wrap:wrap;padding-block:1.1rem}footer{background:var(--ink);color:var(--paper)}@media(max-width:760px){.hero,.split,.cards{grid-template-columns:1fr}.hero-art{max-width:520px}.mast{align-items:flex-start;flex-direction:column}nav{gap:.6rem 1rem}.wrap{width:calc(100% - 2rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.project-note{margin-top:1rem;padding:.75rem 1rem;border-left:3px solid #a77a2a;background:#e6ede7;border-radius:0 6px 6px 0;font-size:.94rem;scroll-margin-top:1rem}
.project-note p{margin:0 0 .35rem}
.project-note p:last-child{margin-bottom:0}
.project-note strong{color:var(--ink)}

.legal{max-width:850px;min-height:65vh}.legal h1{font-size:clamp(2rem,6vw,3.5rem);overflow-wrap:anywhere}.legal h2{font-size:1.4rem;margin-top:2rem}.legal p{line-height:1.7}footer a{color:inherit}
