:root{color-scheme:dark;--wine:#521c2c;--paper:#f0ece4;--gold:#d1b280;font-family:'IBM Plex Sans',sans-serif;color:var(--paper);background:var(--wine);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{display:block;max-width:100%}p,h1{margin:0}
.skip{position:fixed;top:8px;left:8px;z-index:10;background:var(--paper);color:var(--wine);padding:16px;transform:translateY(-160%)}.skip:focus{transform:none}
.page{width:100%;min-height:100vh;min-height:100svh;overflow:hidden}.intro{background:var(--wine);padding:34px 36px 28px;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100vh;min-height:100svh}.intro>*:not(.brand-curve){position:relative;z-index:1;width:100%;max-width:448px;margin-left:auto;margin-right:auto}.brand-curve{position:absolute;width:135%;height:115%;inset:-12% -35% auto auto;color:var(--gold);opacity:.27;pointer-events:none}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:flex-start;gap:14px;flex-shrink:0;color:#fff}.brand img{width:49px;height:49px;margin-top:0}.wordmark{font-family:'Plus Jakarta Sans',sans-serif;font-size:36px;font-weight:500;letter-spacing:.055em;line-height:1;color:#fff}.wordmark span{display:block;font-family:'IBM Plex Sans',sans-serif;font-size:9px;letter-spacing:.18em;margin-top:9px;font-weight:400;line-height:1.2;color:#fff}
.intro-copy{margin-top:48px}.eyebrow{font-size:11px;font-weight:400;letter-spacing:.12em;color:var(--gold);margin-bottom:20px}h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:43px;font-weight:400;line-height:1.2;letter-spacing:-.05em}h1 span{color:var(--gold)}.intro-description{font-size:16px;line-height:1.5;margin-top:19px;color:#e6d9d9}
.contact-links{display:grid;gap:12px;margin-top:28px}.contact{display:flex;align-items:center;gap:14px;background:var(--paper);color:var(--wine);border-radius:12px;padding:18px;min-height:63px;transition:background .2s,transform .2s}.contact>svg{width:25px;height:25px;flex-shrink:0}.contact>span{font-size:17px;font-weight:400;line-height:1.4}.contact .arrow{margin-left:auto;flex-shrink:0}.contact:hover{background:#fffaf1;transform:translateY(-2px)}
.footer{text-align:center;padding-top:29px;margin-top:auto}.footer p{font-size:12px;line-height:1.65;color:#dec9ce}.footer .firm-name{font-size:11px;letter-spacing:.035em}.footer p+p{font-size:11px;margin-top:3px}
@media(max-width:600px){.intro{padding:27px 26px 24px;min-height:100vh;min-height:100svh}.brand img{width:46px;height:46px}.wordmark{font-size:34px}.wordmark span{font-size:8px;margin-top:8px}.brand{gap:12px}.intro-copy{margin-top:38px}.eyebrow{font-size:10px;margin-bottom:18px;letter-spacing:.1em}h1{font-size:39px;line-height:1.18}.intro-description{margin-top:18px}.contact-links{margin-top:25px;gap:12px}.contact{min-height:62px;padding:18px 17px;gap:13px}.contact>span{font-size:16px}.footer{padding-top:28px}.brand-curve{height:110%;opacity:.25}}
@media(max-width:370px){.intro{padding-left:22px;padding-right:22px}h1{font-size:35px}.wordmark{font-size:32px}.brand{gap:11px}.contact{gap:10px}.contact>span{font-size:15px}.footer p{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
