:root{--plum:#422750;--violet:#70439a;--cream:#f9f5ee;--sand:#d9c6ac;--ink:#29222d;--muted:#544958;--line:#ddd0d9;--white:#f9f5ee;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:1.0625rem;line-height:1.65}a{color:inherit}a:focus-visible{outline:3px solid #b384d6;outline-offset:4px}.skip{position:absolute;left:-10000px;top:0;background:#f9f5ee;color:var(--plum);padding:.7rem;z-index:10}.skip:focus{left:1rem}.wrap{width:min(1170px,calc(100% - 3.5rem));margin:auto}.header{background:var(--cream);border-bottom:1px solid var(--line)}.header-inner{min-height:92px;display:flex;align-items:center;gap:2rem}.brand{text-decoration:none;color:var(--plum);flex:0 0 250px}.brand-name{display:block;font-family:Georgia,serif;font-size:1.63rem;line-height:.97;letter-spacing:-.055em}.brand-name span{display:block;font-size:1.07rem;letter-spacing:-.025em;margin-top:.16rem}.nav{display:flex;align-items:center;gap:1.7rem;margin:auto}.nav a,.footer-nav a{text-decoration:none;font-size:.86rem;font-weight:700;white-space:nowrap}.nav a:hover,.nav a[aria-current],.footer-nav a:hover{text-decoration:underline;text-underline-offset:6px}.header-contact{background:var(--plum);color:#fff;text-decoration:none;padding:.8rem 1.1rem;border-radius:2px;font-size:.82rem;font-weight:700;white-space:nowrap}.header-contact span{margin-left:.4rem}.home-hero,.page-hero,.closing{background:var(--plum);color:#fff}.home-hero{background:radial-gradient(circle at 87% 25%,#70439a 0,#422750 48%,#311c3c 100%)}.hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:5%;align-items:center;min-height:660px;padding-block:5.1rem}.hero-copy{padding:1rem 0}.overline{font-size:.77rem;letter-spacing:.2em;font-weight:800;text-transform:uppercase;color:var(--violet);margin:0 0 1.45rem}.light-text{color:#e0c9e8}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(3.3rem,5.4vw,5.55rem);line-height:1.09;margin-bottom:1.4rem}h1 em,h2 em{font-weight:400;color:#dfc4d9}h2 em{color:var(--violet)}.hero-copy p:not(.overline){max-width:55ch;color:#f3eaf3}.hero-lead{font-size:1.36rem!important;color:#fff!important;line-height:1.45;margin-bottom:1.5rem}.actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;margin-top:2.3rem}.button{display:inline-flex;align-items:center;gap:.8rem;background:var(--plum);color:#fff;border:1px solid var(--plum);text-decoration:none;font-weight:750;font-size:.94rem;padding:.88rem 1.3rem;border-radius:2px}.home-hero .button,.closing .button{background:#f9f5ee;color:var(--plum);border-color:#f9f5ee}.button:hover,.header-contact:hover{background:var(--violet);color:#fff;border-color:var(--violet)}.text-link{font-weight:750;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.18rem;white-space:nowrap}.text-link:hover{color:var(--violet)}.text-link.reverse{color:#fff}.hero-art{background:#fffaf3;border:1px solid #eadccb;padding:1.25rem 1.25rem .7rem;box-shadow:0 30px 80px #180d2080;transform:rotate(1deg)}.hero-art img{display:block;width:100%;height:auto}.hero-art figcaption{font-size:.75rem;color:#5b4b56;text-align:right;margin-top:.4rem}.section{padding:6.5rem 0}.two-col{display:grid;grid-template-columns:.9fr 1fr;gap:11%}h2{font-size:clamp(2.3rem,3.8vw,3.55rem);line-height:1.18;color:var(--plum);margin-bottom:1.25rem}.large-copy{font-size:1.25rem;line-height:1.6}.large-copy p+p,p+p{margin-top:1.15rem}p{max-width:72ch;color:var(--muted)}.services-band,.soft{background:#f9f5ee}.section-top{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:2rem}.section-top h2{max-width:700px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.service-card{border:1px solid var(--line);background:var(--cream);padding:2.1rem;min-height:288px}.card-number,.service-index{font-size:.77rem;letter-spacing:.15em;color:var(--violet);font-weight:800}.service-card h3{font-size:1.7rem;color:var(--plum);line-height:1.22;margin:2rem 0 .8rem}.service-card p{font-size:.96rem}.process-strip{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:start}.compact-steps{list-style:none;padding:0;margin:0}.compact-steps li{display:grid;gap:.2rem;padding:1.2rem 0;border-top:1px solid var(--line)}.compact-steps strong{color:var(--plum)}.compact-steps span{color:var(--muted)}.closing{padding:5.2rem 0}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:3rem}.closing h2{color:#fff;max-width:720px}.closing p:not(.overline){color:#eee0ef}.closing .button{white-space:nowrap}.page-hero{padding:5.5rem 0 5.9rem;background:linear-gradient(120deg,#422750,#59346a)}.page-hero h1{max-width:970px}.page-hero p:not(.overline){font-size:1.25rem;color:#f1e7ef;max-width:650px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:220px 1fr;gap:6%;padding:3.6rem 0;border-bottom:1px solid var(--line)}.service-row h2{font-size:clamp(2rem,3vw,3rem)}.service-row p{max-width:70ch}.lead{font-size:1.2rem;color:var(--ink)}.timeline{list-style:none;margin:1.2rem 0 0;padding:0;max-width:950px}.timeline li{display:grid;grid-template-columns:135px 1fr;gap:3rem;padding:2.3rem 0;border-top:1px solid var(--line)}.timeline h2{font-size:2rem}.timeline-num{font-family:Georgia,serif;color:var(--violet);font-size:2rem}.principles p{border-bottom:1px solid var(--line);padding-bottom:1rem}.principles strong{color:var(--plum)}.principles .button{margin-top:1rem}.contact-layout{display:grid;grid-template-columns:1fr .95fr;gap:9%;align-items:start}.contact-card{background:#f9f5ee;border:1px solid var(--line);padding:2.3rem;box-shadow:0 20px 60px #4227500e}.email-address{display:block;font-family:Georgia,serif;font-size:clamp(1.35rem,2.4vw,2.05rem);line-height:1.25;color:var(--plum);overflow-wrap:anywhere;margin:1.5rem 0}.contact-card .button{margin-top:.7rem}.footer{background:#26192d;color:#fff;padding:4rem 0 1.2rem}.footer-inner{display:grid;grid-template-columns:1.4fr .7fr 1.2fr;gap:3rem}.footer-brand{font-family:Georgia,serif;font-size:1.6rem;text-decoration:none}.footer p{font-size:.9rem;color:#e5d9e6}.footer-nav{display:flex;flex-direction:column;gap:.5rem}.footer-contact span{display:block;color:#e5d9e6;font-size:.92rem}.footer-contact a{overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #66556b;margin-top:3rem;padding-top:1.2rem;font-size:.8rem;color:#d2c4d7}@media(max-width:1100px){.header-inner{flex-wrap:wrap;padding:1rem 0}.brand{flex:1 1 50%}.nav{order:3;width:100%;margin:0;justify-content:flex-start}.header-contact{margin-left:auto}.hero-grid{gap:3%}}@media(max-width:760px){body{font-size:1rem}.wrap{width:min(100% - 2.2rem,1170px)}.header-inner{gap:.8rem}.brand{flex:1 1 auto}.brand-name{font-size:1.43rem}.brand-name span{font-size:.96rem}.header-contact{font-size:.75rem;padding:.65rem}.nav{gap:.35rem .9rem;overflow-x:auto;padding:.25rem 0 .45rem}.nav a{font-size:.82rem}.hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-block:3.6rem;gap:2.4rem}.hero-copy{padding:0}.hero-art{width:min(100%,460px);align-self:center}.hero-lead{font-size:1.18rem!important}.section{padding:4rem 0}.two-col,.process-strip,.contact-layout{grid-template-columns:1fr;gap:1.1rem}.section-top{display:block}.section-top .text-link{display:inline-block;margin-top:.4rem}.cards{grid-template-columns:1fr}.service-card{min-height:0;padding:1.6rem}.service-card h3{margin:1rem 0 .5rem}.closing{padding:4rem 0}.closing-inner{display:block}.page-hero{padding:4.2rem 0}.service-row{grid-template-columns:1fr;gap:1rem;padding:2.4rem 0}.timeline li{grid-template-columns:55px 1fr;gap:1rem}.timeline h2{font-size:1.65rem}.contact-card{padding:1.5rem}.footer-inner{grid-template-columns:1fr 1fr;gap:2rem}.footer-inner>div:first-child{grid-column:1/-1}.footer-bottom{display:block}}@media(max-width:410px){.header-contact{display:none}.nav{flex-wrap:wrap;overflow:visible}.hero-grid h1,.page-hero h1{font-size:3rem}.footer-inner{grid-template-columns:1fr}.footer-inner>div:first-child{grid-column:auto}}
/* Version 2: restrained service rotation and hero depth. */
.hero-art{transform:translateY(var(--drift,0px)) rotate(1deg)}
.slider-ready{display:block;min-height:280px}.slider-ready .service-card{min-height:280px;padding:2.4rem 3rem;border-left:4px solid var(--violet)}.slider-ready .service-card h3{font-size:clamp(1.8rem,3vw,2.5rem);margin:1.1rem 0 .8rem}.slider-ready .service-card p{font-size:1.1rem;max-width:58ch}.slider-ready .service-card[hidden]{display:none}.slider-controls{display:flex;align-items:center;gap:.7rem;margin:0 0 1rem}.slider-controls button{font:700 .9rem Arial,sans-serif;background:#f9f5ee;color:var(--plum);border:1px solid var(--plum);border-radius:3px;padding:.65rem 1rem;min-height:44px;cursor:pointer}.slider-controls button:hover{background:var(--plum);color:white}.slider-controls button:focus-visible{outline:3px solid var(--violet);outline-offset:4px}.slide-count{margin-left:auto;margin-right:.6rem;color:var(--plum);font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:no-preference){.slider-ready .service-card:not([hidden]){animation:service-enter .45s ease-out}@keyframes service-enter{from{opacity:.2;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art{transform:none}}
@media(max-width:760px){.slider-ready,.slider-ready .service-card{min-height:325px}.slider-ready .service-card{padding:1.6rem}.hero-art{transform:none}}

.services-band,.soft{background:#f2e9dd}.contact-card{background:#f9f5ee}
