:root{--purple:#29104e;--purple2:#421276;--orange:#ff8a00;--cream:#faf7f2;--ink:#22192b;--muted:#625d68;--line:#e8e1dc;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:12px;z-index:100}.skip:focus{left:8px}.topline{background:var(--purple);color:#fff;font-size:12px;letter-spacing:.02em}.top-inner{height:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}.top-inner a{font-weight:700}.header{background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 rgba(33,15,55,.08)}.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand img{width:176px;height:auto}.header nav{display:flex;align-items:center;gap:34px;margin-left:auto}.header nav a{font-size:14px;font-weight:700;transition:color .2s}.header nav a:hover,.text-link:hover{color:var(--orange)}.header-cta{background:transparent;color:var(--purple);padding:9px 2px;border:0;border-radius:0;font-size:14px;font-weight:700;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:6px}.menu-toggle{display:none}.hero{background:var(--cream);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 47%;min-height:570px;gap:58px;align-items:center}.hero-copy{padding:68px 0 74px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--orange);margin:0 0 22px}.hero .eyebrow{color:var(--purple);display:flex;align-items:center;gap:11px}.hero .eyebrow span{width:22px;height:2px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.05em}h1{font-size:clamp(58px,6.3vw,94px);line-height:.98;margin-bottom:28px;color:var(--purple)}h1 em{color:var(--orange);font-style:normal}.hero-lead{font-size:19px;line-height:1.6;max-width:520px;color:#4a4450;margin-bottom:30px}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:14px 22px;border-radius:3px;font-weight:800;font-size:14px;transition:transform .2s,background .2s,color .2s}.button:hover,.header-cta:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:#231039}.button-outline{border:1px solid var(--purple);color:var(--purple)}.button-outline:hover{background:var(--purple);color:#fff}.button-purple{background:var(--purple);color:#fff}.button-light{background:#fff;color:var(--purple)}.hero-note{font-size:13px;color:#756e77;margin:22px 0 0}.hero-visual{position:relative;height:100%;min-height:570px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 46%}.hero-label{position:absolute;bottom:28px;left:-28px;background:var(--purple);color:#fff;padding:20px 28px;display:flex;flex-direction:column;gap:8px;width:265px;box-shadow:14px 14px 0 var(--orange)}.hero-label span{font-size:11px;color:#ffc078;letter-spacing:.16em}.hero-label strong{font-family:Georgia,serif;font-size:19px;font-weight:400;line-height:1.2}.section{padding:100px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.section-heading>p{max-width:340px;color:var(--muted);line-height:1.65;margin:0 0 8px}h2{font-size:clamp(42px,4.5vw,62px);line-height:1.06;margin:0;color:var(--purple)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--line);background:#fff;min-width:0}.service-card button{width:100%;height:100%;padding:0;background:none;border:0;text-align:left;cursor:pointer;color:inherit}.card-image{height:228px;position:relative;overflow:hidden;background:#eee}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.service-card button:hover img{transform:scale(1.04)}.card-image span{position:absolute;top:15px;left:15px;width:36px;height:36px;background:var(--orange);display:grid;place-items:center;font-weight:800;font-size:12px;color:var(--purple)}.card-copy{padding:25px 26px 28px;min-height:230px;display:flex;flex-direction:column}.card-copy small{font-size:10px;font-weight:800;letter-spacing:.17em;color:#a45200}.card-copy h3{font-family:Georgia,serif;font-size:27px;font-weight:400;color:var(--purple);margin:10px 0}.card-copy p{font-size:14px;line-height:1.55;color:var(--muted);margin-bottom:18px}.card-copy strong{margin-top:auto;color:var(--purple);font-size:13px;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:6px}.service-card:nth-child(4){grid-column:1/2}.approach{background:var(--purple);color:#fff}.approach-grid{display:grid;grid-template-columns:43% 1fr;gap:9%;align-items:center}.approach-photo{height:570px;position:relative}.approach-photo:after{content:"";position:absolute;width:55px;height:55px;background:var(--orange);right:-17px;bottom:-17px;z-index:0}.approach-photo img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}.approach-copy h2{color:#fff;margin-bottom:24px}.approach-copy>p:not(.eyebrow){color:#e5daed;line-height:1.7;font-size:16px;max-width:570px}.steps{margin:35px 0;border-top:1px solid #604875}.steps>div{display:flex;gap:25px;border-bottom:1px solid #604875;padding:18px 0;align-items:center}.steps b{color:var(--orange);font-size:12px}.steps span{font-size:15px}.text-link{color:#fff;font-size:14px;font-weight:800;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:7px}.areas{background:#fbf8f3}.areas-grid{display:grid;grid-template-columns:40% 1fr;gap:8%;align-items:center}.areas h2{margin-bottom:22px}.areas p:not(.eyebrow){color:var(--muted);line-height:1.65;max-width:385px;margin-bottom:25px}.area-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.area-list li{background:#fff;border:1px solid var(--line);padding:17px 21px;font-size:15px;font-weight:700;color:var(--purple);border-left:3px solid var(--orange)}.accreditation{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.accreditation-inner{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 0}.accreditation p{font-size:12px;color:var(--muted);margin:0}.logo-row{display:flex;align-items:center;gap:36px}.logo-row img{max-width:105px;max-height:52px;object-fit:contain}.contact{background:var(--purple2);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 380px;gap:80px;align-items:center}.contact h2{color:#fff;max-width:600px;margin-bottom:22px}.contact p:not(.eyebrow){color:#e7daed;font-size:17px;line-height:1.6;max-width:450px;margin-bottom:30px}.contact-card{background:#fff;color:var(--purple);padding:32px;display:flex;flex-direction:column;gap:16px;border-top:5px solid var(--orange)}.contact-card>span{font-size:11px;letter-spacing:.17em;font-weight:800;color:#a45200;margin-bottom:7px}.contact-card a{font-size:20px;font-weight:800;overflow-wrap:anywhere}.contact-card p{font-size:14px!important;color:var(--muted)!important;margin:8px 0 0!important}footer{background:#1d0c38;color:#e8dfec;padding:55px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:60px;padding-bottom:50px}.footer-grid img{width:164px;height:auto}.footer-grid p{font-size:13px;margin:13px 0 0;color:#c0b0ca}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:13px;font-size:13px}.footer-grid strong{color:#fff;font-size:14px;margin-bottom:5px}.footer-grid a:hover{color:var(--orange)}.footer-bottom{border-top:1px solid #5c4970;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#b4a5bf;font-size:11px}.mobile-call{display:none}dialog{border:0;padding:0;width:min(880px,calc(100% - 28px));max-height:min(90vh,880px);box-shadow:0 25px 80px #10061a80;overflow:auto}dialog::backdrop{background:#140a25cc}.dialog-close{position:absolute;z-index:3;top:16px;right:16px;background:#fff;border:0;padding:10px 16px;font-weight:800;color:var(--purple);cursor:pointer}.dialog-image{height:300px}.dialog-image img{width:100%;height:100%;object-fit:cover}.dialog-copy{padding:36px 46px 42px}.dialog-copy h2{margin-bottom:12px}.dialog-copy h3{font-family:Georgia,serif;font-size:25px;font-weight:400;color:var(--orange);margin-bottom:15px}.dialog-copy>p:not(.eyebrow){line-height:1.65;color:var(--muted)}.dialog-copy ul{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;list-style:none;padding:0;margin:25px 0 30px}.dialog-copy li{border-top:2px solid var(--orange);background:var(--cream);padding:14px;font-size:13px;line-height:1.4;color:var(--purple);font-weight:700}
@media(max-width:900px){.header nav{gap:18px}.hero-grid{gap:25px}.hero-visual{min-height:520px}.service-grid{grid-template-columns:repeat(2,1fr)}.approach-grid{gap:6%}.contact-grid{gap:35px;grid-template-columns:1fr 330px}}
@media(max-width:700px){.wrap{width:min(100% - 36px,560px)}.top-inner{height:31px;justify-content:center}.top-inner span{display:none}.nav-wrap{height:70px}.brand img{width:142px}.header-cta{display:none}.menu-toggle{display:block;margin-left:auto;background:var(--purple);border:0;color:#fff;border-radius:3px;padding:11px 16px;font-size:13px;font-weight:800}.header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:14px 18px 22px;box-shadow:0 12px 20px #1a0b2d21;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{padding:13px;border-bottom:1px solid var(--line)}.hero-grid{display:flex;flex-direction:column;gap:0}.hero-copy{padding:65px 0 40px}.hero h1{font-size:clamp(55px,13vw,75px)}.hero-lead{font-size:17px}.hero-visual{width:100%;height:340px;min-height:0;margin-bottom:30px}.hero-label{left:12px;bottom:15px;padding:13px 18px;width:205px;box-shadow:7px 7px 0 var(--orange)}.hero-label strong{font-size:16px}.section{padding:70px 0}.section-heading{display:block}.section-heading>p{margin-top:18px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card:nth-child(4){grid-column:auto}.card-image{height:220px}.card-copy{min-height:0;padding:22px}.approach-grid,.areas-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.approach-photo{height:350px}.approach-copy h2{font-size:44px}.area-list{gap:9px}.area-list li{font-size:13px;padding:14px 12px}.accreditation-inner{display:block;text-align:center}.logo-row{justify-content:center;gap:16px;margin-top:16px;flex-wrap:wrap}.logo-row img{max-width:82px;max-height:42px}.contact-card{padding:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;z-index:19;padding:9px 14px;background:#fff;box-shadow:0 -5px 25px #20103230}.mobile-call a{display:block;text-align:center;background:var(--orange);color:var(--purple);padding:13px;font-size:14px;font-weight:800;border-radius:3px}body{padding-bottom:64px}.dialog-image{height:210px}.dialog-copy{padding:25px}.dialog-copy h2{font-size:40px}.dialog-copy ul{grid-template-columns:1fr}.dialog-close{top:10px;right:10px}}
@media(max-width:380px){.hero-actions .button{width:100%}.area-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.about{background:#fff}.about-intro{display:grid;grid-template-columns:42% 1fr;gap:9%;align-items:end;margin-bottom:46px}.about-intro>p{font-size:17px;line-height:1.7;color:var(--muted);max-width:620px;margin:0}.about-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.about-principles article{border-top:3px solid var(--orange);background:var(--cream);padding:27px 26px;min-height:190px}.about-principles span,.values-grid span{font-size:12px;font-weight:800;color:#b45d00;letter-spacing:.1em}.about-principles h3,.values-grid h3{font-family:Georgia,serif;font-size:25px;font-weight:400;color:var(--purple);margin:18px 0 10px}.about-principles p,.values-grid p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.values-heading{text-align:center;max-width:620px;margin:82px auto 36px}.values-heading h2{margin-bottom:16px}.values-heading>p:last-child{color:var(--muted);line-height:1.6}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.values-grid article{padding:25px;border:1px solid var(--line)}.testimonials{background:#faf7f2}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.review{margin:0;background:#fff;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;min-height:220px}.stars{color:#e67b00;letter-spacing:3px;font-size:16px;margin-bottom:18px}.review blockquote{margin:0 0 22px;font-family:Georgia,serif;font-size:17px;line-height:1.5;color:var(--purple)}.review figcaption{margin-top:auto;display:flex;flex-direction:column;gap:4px}.review figcaption strong{font-size:13px}.review figcaption span{font-size:11px;color:var(--muted)}
@media(max-width:900px){.values-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.about-intro{grid-template-columns:1fr;gap:20px}.about-principles,.review-grid{grid-template-columns:1fr}.about-principles article{min-height:0}.values-grid{grid-template-columns:1fr 1fr}.values-heading{margin-top:60px}.review{min-height:0}.header nav a{font-size:14px}}
@media(max-width:380px){.values-grid{grid-template-columns:1fr}}



