:root{--purple:#5f20b4;--deep:#35116f;--ink:#15131a;--muted:#6d6877;--lav:#eee7fb;--line:#ded9e6;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.7rem}.topline{background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:.55rem 5.2vw;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.topline-note{opacity:.65}.site-header{height:92px;padding:1rem 5.2vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}.brand img{width:118px;height:70px;object-fit:contain}.nav{display:flex;align-items:center;gap:2rem;font-size:.9rem;font-weight:600}.nav a:not(.nav-cta){opacity:.75}.nav a:hover,.arrow-link:hover,.text-link:hover{color:var(--purple)}.nav-cta{background:var(--purple);color:white;padding:.75rem 1.1rem;border-radius:2rem}.nav-cta span,.button span,.service-body a span{margin-left:.55rem}.menu-toggle{display:none;background:0;border:0}.hero{min-height:calc(100vh - 128px);padding:5vw 5.2vw 3rem;display:grid;grid-template-columns:44% 56%;align-items:center;position:relative;overflow:hidden}.hero-copy{position:relative;z-index:3}.eyebrow,.section-marker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--purple)}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.02;letter-spacing:-.06em;margin:0}h1{font-size:clamp(3.2rem,6vw,6.7rem);margin:1rem 0 1.5rem}h1 em,h2 em{font-style:normal;color:var(--purple)}.hero-lede{max-width:30rem;font-size:1.16rem;color:var(--muted);line-height:1.6}.hero-actions{display:flex;align-items:center;gap:1.8rem;margin-top:2.25rem}.button{display:inline-flex;align-items:center;border:0;border-radius:2rem;padding:.9rem 1.35rem;font:600 .95rem 'DM Sans';cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #1a102420}.button-dark{background:var(--ink);color:white}.button-purple{background:var(--purple);color:white}.button-light{background:white;color:var(--ink)}.text-link,.arrow-link{font-weight:700;font-size:.92rem}.text-link span{display:inline-block;margin-left:.5rem}.hero-art{height:min(62vw,680px);position:relative;margin-left:-2rem}.parallax-layer{position:absolute;inset:0;will-change:transform}.layer-back{background:var(--lav);border-radius:48% 52% 50% 44%;transform:rotate(8deg) scale(.84);top:8%;left:10%}.layer-main{overflow:hidden;border-radius:49% 51% 46% 54%;transform:rotate(-5deg);box-shadow:0 30px 70px #35116f26}.layer-main img{width:100%;height:100%;object-fit:cover}.hero-sticker{position:absolute;right:2%;bottom:10%;background:var(--purple);color:#fff;width:150px;height:150px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;transform:rotate(10deg);box-shadow:0 12px 30px #35116f40}.hero-sticker span{font-family:serif;font-style:italic;font-size:1.3rem}.hero-sticker strong{font:800 1.35rem Manrope;line-height:.9;letter-spacing:-.07em}.hero-sticker b{font-size:1.2rem;margin-top:.4rem}.scroll-cue{position:absolute;bottom:1.5rem;left:5.2vw;display:flex;align-items:center;gap:.8rem;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.scroll-cue i{display:block;width:42px;height:1px;background:var(--purple)}.section{padding:8rem 5.2vw}.section-marker{margin-bottom:3.7rem}.section-marker span{color:#b5aebf;margin:0 .45rem}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;max-width:1000px}.intro h2,.values h2,.faq h2{font-size:clamp(2.5rem,4.5vw,5rem)}.big-copy{font:600 1.5rem/1.3 Manrope;letter-spacing:-.03em;margin:0 0 1.4rem}.intro-grid p:not(.big-copy){color:var(--muted);max-width:34rem}.arrow-link{display:inline-block;color:var(--purple);margin-top:1.6rem}.service-band{background:var(--ink);color:white}.section-marker.light{color:#c7aaff}.band-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:3.5rem}.band-heading h2{font-size:clamp(3rem,5.5vw,6rem)}.band-heading p{max-width:20rem;color:#b4aeba}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3.6rem 1.5rem}.service-card{background:#211e26;border:1px solid #3e3944;border-radius:1.5rem;overflow:hidden}.service-image{height:300px;position:relative;overflow:hidden}.service-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.service-card:hover .service-image img{transform:scale(1.05)}.card-number{position:absolute;left:1rem;top:1rem;background:white;color:var(--ink);width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:.75rem;font-weight:700}.service-body{padding:1.7rem}.service-body h3{font-size:1.6rem;letter-spacing:-.04em}.service-body p{color:#c2bdc9;min-height:7rem}.service-body a{color:#d1b8ff;font-weight:700}.quote{display:grid;grid-template-columns:1fr 1fr;padding-top:0;padding-bottom:0;max-width:1500px;margin:auto}.quote-image{min-height:560px;overflow:hidden;border-radius:0 0 1.5rem 1.5rem}.quote-image img{width:100%;height:100%;object-fit:cover}.quote-copy{background:var(--lav);padding:6rem 9%;display:flex;flex-direction:column;justify-content:center}.quote-mark{font:5rem Georgia;color:var(--purple);line-height:.5}.quote blockquote{font:700 clamp(2rem,3.5vw,4rem)/1.05 Manrope;letter-spacing:-.06em;margin:1.3rem 0}.quote-copy p{color:var(--muted);max-width:23rem;margin-bottom:2rem}.values-grid,.faq-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;align-items:start}.value-list>div{display:grid;grid-template-columns:55px 1fr;column-gap:1rem;border-top:1px solid var(--line);padding:1.5rem 0}.value-list span{color:var(--purple);font-size:.8rem;font-weight:700}.value-list h3{font-size:1.35rem;letter-spacing:-.03em}.value-list p{grid-column:2;color:var(--muted);margin:.35rem 0 0}.faq{background:#f7f5fa}.accordion details{border-top:1px solid var(--line);padding:1.4rem 0}.accordion details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font:700 1.15rem Manrope;list-style:none;display:flex;justify-content:space-between;gap:1rem}summary::-webkit-details-marker{display:none}summary:after{content:'+';color:var(--purple);font-size:1.5rem;font-weight:400}.accordion details[open] summary:after{content:'−'}.accordion p{color:var(--muted);max-width:43rem;margin:.9rem 0 0}.contact{background:var(--purple);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%;}.contact-intro h2{font-size:clamp(3rem,5.5vw,6rem)}.contact-intro p{max-width:27rem;color:#e2d6f2;font-size:1.1rem}.contact-form{display:grid;gap:1rem}.contact-form label{display:grid;gap:.4rem;font-size:.82rem;font-weight:700}.contact-form input,.contact-form textarea{width:100%;border:1px solid #b995eb;border-radius:.4rem;background:#6f32c5;color:#fff;padding:.85rem 1rem;font:inherit;resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#dfd1f0}.upload span,.form-note{font-weight:400;opacity:.75}.upload input{background:transparent;border:0;padding:.5rem 0}.upload small{font-weight:400;opacity:.75}.form-note{font-size:.8rem;margin:-.4rem 0 0}.footer{background:#0e0d11;color:#fff;padding:3rem 5.2vw 1.5rem}.footer-brand img{width:125px;filter:brightness(0) invert(1);opacity:.9}.footer-brand p{color:#aaa5b1}.footer-links{display:flex;gap:6rem;margin-top:-2.5rem;margin-left:50%;}.footer-links div{display:grid;gap:.45rem}.footer-links span{color:#a799b5;text-transform:uppercase;font-size:.7rem;letter-spacing:.12em;margin-bottom:.3rem}.footer-links a{color:#ddd7e2;font-size:.9rem}.footer-bottom{border-top:1px solid #312d35;margin-top:4rem;padding-top:1.2rem;display:flex;justify-content:space-between;color:#8e8795;font-size:.78rem}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.reveal.is-visible{opacity:1;transform:none}@media(max-width:800px){.topline{padding:.5rem 5vw}.topline-note{display:none}.site-header{height:76px;padding:0 5vw}.brand img{width:95px;height:58px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:1rem 5vw 1.5rem;flex-direction:column;align-items:flex-start;z-index:10;border-bottom:1px solid var(--line)}.nav.open{display:flex}.menu-toggle{display:block}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink);margin:5px}.hero{min-height:auto;padding:4rem 5vw 5rem;display:flex;flex-direction:column;align-items:stretch}.hero-copy{margin-bottom:2.7rem}.hero-art{height:90vw;margin:0}.layer-back{transform:rotate(8deg) scale(.88)}.hero-sticker{width:110px;height:110px;right:0;bottom:5%}.hero-sticker strong{font-size:1rem}.hero-sticker span{font-size:1rem}.scroll-cue{display:none}.section{padding:5.5rem 5vw}.section-marker{margin-bottom:2.6rem}.intro-grid,.values-grid,.faq-grid,.contact{grid-template-columns:1fr;gap:3rem}.intro h2{margin-bottom:0}.service-grid{grid-template-columns:1fr;gap:2rem}.band-heading{display:block}.band-heading p{margin-top:1.5rem}.service-image{height:60vw}.service-body p{min-height:0}.quote{display:flex;flex-direction:column;padding:0}.quote-image{height:80vw;min-height:0;border-radius:0}.quote-copy{padding:4.5rem 8%}.contact-form{gap:1rem}.footer-links{margin:3rem 0 0;gap:4rem}.footer-bottom{margin-top:3rem;display:grid;gap:.5rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.parallax-layer,.hero-sticker{transform:none!important}.service-image img{transition:none}}
/* Full-size 16:9 hero video */
.hero-art{width:100%;height:auto;aspect-ratio:16/9;margin-left:-2rem}
.hero-art .layer-back{display:none}
.hero-art .layer-main{border-radius:0;transform:none}
.hero-art .layer-main video{display:block;width:100%;height:100%;object-fit:cover}
.hero-art .hero-sticker{display:none}
@media(max-width:800px){.hero-art{height:auto;aspect-ratio:16/9;margin:0}}
