:root{--navy:#091626;--sand:#d6d1ca;--rose:#d8b6aa;--rose-deep:#b08d80;--ink:#1f2833;--muted:#5d6670;--white:#fff;--serif:"Cormorant Garamond", "Garamond", "Baskerville", "Georgia", serif;--sans:"Helvetica Neue", "Segoe UI", "Arial", sans-serif}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--sand);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;display:flex}.header{background:var(--navy);border-bottom:1px solid var(--rose);flex-direction:column;align-items:center;padding:72px 24px 64px;display:flex}.logo{width:clamp(150px,22vw,230px);height:auto}.slogan{font-family:var(--serif);letter-spacing:.02em;color:var(--rose);text-align:center;text-wrap:balance;margin:32px 0 0;font-size:clamp(1.625rem,3.1vw,2.08rem);font-style:italic;font-weight:400;line-height:1.3}.main{flex:1;justify-content:center;padding:80px 24px;display:flex}.card{background:var(--white);text-align:center;border-top:2px solid var(--rose);width:100%;max-width:720px;padding:72px 64px;box-shadow:0 24px 60px -32px #09162640}.title{font-family:var(--serif);letter-spacing:.04em;color:var(--navy);margin:0;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:400}.divider{background:var(--rose);width:56px;height:1px;margin:28px auto 32px;display:block}.intro{max-width:34em;color:var(--muted);margin:0 auto;font-size:1.0625rem;line-height:1.8}.services{letter-spacing:.22em;text-transform:uppercase;color:var(--navy);margin:40px 0 0;font-size:.8rem;font-weight:500}.services span{color:var(--rose-deep);margin:0 .4em}.notice{font-family:var(--serif);color:var(--muted);margin:48px 0 0;font-size:1.15rem;font-style:italic}.contact{letter-spacing:.08em;color:var(--navy);border-bottom:1px solid var(--rose);margin-top:20px;padding-bottom:4px;font-size:.95rem;text-decoration:none;transition:color .2s,border-color .2s;display:inline-block}.contact:hover,.contact:focus-visible{color:var(--rose-deep);border-color:var(--rose-deep)}.contact:focus-visible{outline:2px solid var(--rose);outline-offset:6px}.footer{text-align:center;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding:0 24px 40px;font-size:.75rem}@media (max-width:900px){.main{padding:64px 24px}.card{padding:56px 40px}}@media (max-width:560px){.header{padding:48px 16px 44px}.slogan{margin-top:24px}.main{padding:40px 16px}.card{padding:44px 24px}.services{letter-spacing:.16em;font-size:.72rem;line-height:2}}
