@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--ink:#222820;--night:#fcfdf9;--teal:#008d89;--mist:#222820;--muted:#53625b;--yellow:#927019;--line:rgba(47,80,68,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--night);color:var(--mist);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--yellow);outline-offset:7px}::selection{background:var(--teal);color:var(--ink)}.wrap{width:min(1320px,calc(100% - 112px));margin:auto}.nav{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:4}.logo{font-size:45px;font-weight:550;letter-spacing:-5px;line-height:1;padding-right:6px}.nav-links{display:flex;gap:38px;align-items:center;font-size:14px}.nav-links a{transition:color .2s}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--teal)}.nav-careers{display:flex;align-items:center;gap:10px}.count{font-size:12px;border:1px solid var(--line);border-radius:50%;width:23px;height:23px;display:inline-grid;place-items:center}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:500;letter-spacing:2.2px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';height:1px;width:25px;background:currentColor}.hero{position:relative;min-height:720px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;padding:72px 0 95px}.hero-copy{position:relative;z-index:2}.hero h1{font-weight:450;font-size:clamp(62px,6.9vw,100px);line-height:1.01;letter-spacing:-5.5px;margin:30px 0 28px}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--teal);letter-spacing:-5px}.hero-copy>p{font-size:18px;line-height:1.65;color:var(--muted);max-width:345px}.text-link{display:inline-flex;align-items:center;gap:32px;margin-top:28px;padding-bottom:11px;border-bottom:1px solid #718983;font-size:15px}.text-link span{font-size:20px;transition:transform .25s}.text-link:hover span{transform:translate(4px,-4px)}.hero-art{width:118%;margin-left:-10%;aspect-ratio:1;position:relative;z-index:1;perspective:1100px}.hero-art img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal;display:block;animation:float 9s ease-in-out infinite;mask-image:radial-gradient(ellipse,black 42%,transparent 72%);transform:rotate(-5deg)}.art-label{position:absolute;bottom:1%;right:11%;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:15px}.art-label:before{content:'+';color:var(--teal);font-size:21px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:25px 0 30px;font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.hero-bottom a{display:flex;gap:18px;align-items:center}.hero-bottom a span{font-size:18px}.intro{background:#effbf6;color:var(--ink);padding:110px 0 120px}.section-grid{display:grid;grid-template-columns:1fr 2fr;gap:45px}.intro h2{font-size:clamp(36px,4.2vw,60px);line-height:1.15;font-weight:450;letter-spacing:-2.5px;margin:0 0 32px}.intro h2 span{color:#128c81}.intro .description{font-size:20px;line-height:1.65;max-width:660px;color:#4c6761}.qualities{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:65px}.quality{border-top:1px solid #b3cbc3;padding-top:22px}.quality .number{font-size:12px;color:#537069}.quality h3{font-size:18px;font-weight:500;margin:23px 0 12px}.quality p{font-size:15px;line-height:1.7;color:#4c6761;margin:0}.vision{padding:110px 0 105px;position:relative;overflow:hidden}.vision h2{font-size:clamp(44px,5.8vw,79px);font-weight:450;letter-spacing:-3.5px;line-height:1.09;max-width:830px;margin:48px 0 32px}.vision h2 em{font-family:Georgia,serif;font-weight:400;color:var(--yellow)}.vision p{max-width:540px;color:var(--muted);font-size:18px;line-height:1.8;margin-left:auto}.join{border-top:1px solid var(--line);padding:54px 0;display:flex;justify-content:space-between;align-items:center;gap:30px}.join h2{font-size:29px;font-weight:450;letter-spacing:-.8px;margin:0 0 10px}.join p{color:var(--muted);font-size:15px;margin:0}.pill{display:inline-flex;align-items:center;gap:35px;background:var(--teal);color:var(--ink);border-radius:40px;padding:18px 26px;font-size:15px;white-space:nowrap;transition:background .2s,transform .2s}.pill:hover{background:#7ae0d3;transform:translateY(-2px)}footer{border-top:1px solid var(--line);padding:34px 0;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px}footer .footer-brand{display:flex;align-items:center;gap:25px}footer .logo{font-size:34px;color:var(--mist)}footer .footer-links{display:flex;gap:25px}.careers-hero{padding:85px 0 95px;position:relative;overflow:hidden}.careers-hero h1{font-size:clamp(56px,6.4vw,90px);letter-spacing:-4px;line-height:1.07;font-weight:450;max-width:850px;margin:33px 0}.careers-hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--teal)}.careers-hero p{max-width:540px;color:var(--muted);line-height:1.75;font-size:18px}.careers-heading{position:relative;z-index:2}.careers-art{position:absolute;right:-130px;top:10px;width:580px;opacity:.35;mask-image:radial-gradient(ellipse,black 15%,transparent 68%);pointer-events:none}.jobs{background:#effbf6;color:var(--ink);padding:85px 0 100px;min-height:500px}.jobs-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:43px}.jobs-head h2{font-size:33px;letter-spacing:-1px;font-weight:500;margin:0}.jobs-head span{font-size:14px;color:#4c6761}.job{border-top:1px solid #b3cbc3}.job:last-child{border-bottom:1px solid #b3cbc3}.job summary{display:grid;grid-template-columns:55px 1fr 190px 42px;align-items:center;gap:20px;cursor:pointer;list-style:none;padding:32px 0}.job summary::-webkit-details-marker{display:none}.job-index{color:#637d75;font-size:13px}.job h3{font-size:27px;font-weight:450;letter-spacing:-.6px;margin:0}.job-category{font-size:14px;color:#4c6761}.plus{width:38px;height:38px;border:1px solid #b3cbc3;border-radius:50%;display:grid;place-items:center;font-size:23px;font-weight:400}.job[open] .plus{transform:rotate(45deg);background:#cceae0}.job-body{margin-left:75px;padding:0 75px 35px 0;max-width:820px}.job-body p{font-size:17px;line-height:1.8;color:#4c6761;margin:0 0 20px}.job-body strong{font-weight:550;color:var(--ink)}.job-body .role-note{font-size:14px;color:#60776e}.careers-end{padding:65px 0 75px}.careers-end h2{font-size:34px;font-weight:450;letter-spacing:-1px;max-width:600px;line-height:1.25}.careers-end p{font-size:17px;line-height:1.7;color:var(--muted);max-width:590px}@keyframes float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-16px) rotate(3deg)}}@media(min-width:1500px){.hero{min-height:780px}}@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero h1{font-size:72px;letter-spacing:-4px}.hero{min-height:640px}.hero-art{width:130%;margin-left:-20%}.section-grid{grid-template-columns:1fr 2.2fr;gap:30px}.qualities{gap:20px}.job summary{grid-template-columns:35px 1fr 130px 38px;gap:15px}.job h3{font-size:23px}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.nav{height:86px}.logo{font-size:39px}.nav-links{gap:23px;font-size:14px}.nav-links .vision-nav{display:none}.hero{display:flex;flex-direction:column;align-items:stretch;padding:53px 0 48px;min-height:0}.hero h1{font-size:clamp(57px,12.8vw,82px);letter-spacing:-3.5px;margin-top:24px}.hero h1 em{letter-spacing:-3px}.hero-copy>p{font-size:17px;max-width:320px}.hero-art{width:100%;margin:-5px 0 -10px;max-height:430px}.art-label{right:5%;bottom:0;font-size:11px}.hero-bottom{font-size:10px;letter-spacing:.6px;padding:22px 0}.intro{padding:68px 0}.section-grid{display:block}.section-grid>.eyebrow{margin-bottom:32px}.intro h2{font-size:38px;letter-spacing:-1.7px}.intro .description{font-size:18px}.qualities{grid-template-columns:1fr;margin-top:40px;gap:26px}.quality{display:grid;grid-template-columns:30px 1fr;gap:0 10px;padding-top:20px}.quality .number{padding-top:5px}.quality h3{margin:0 0 9px}.quality p{grid-column:2}.vision{padding:68px 0}.vision h2{font-size:46px;letter-spacing:-2.1px;margin-top:35px}.vision p{font-size:17px}.join{display:block;padding:40px 0}.join h2{font-size:26px}.join .pill{margin-top:26px}footer{align-items:flex-start;gap:20px;font-size:11px}.footer-brand{align-items:flex-start!important;gap:16px!important}.footer-brand>span{max-width:130px;line-height:1.6}.footer-links{flex-direction:column;gap:12px!important}.careers-hero{padding:58px 0 65px}.careers-hero h1{font-size:59px;letter-spacing:-2.7px}.careers-art{width:380px;right:-200px;top:60px;opacity:.23}.jobs{padding:55px 0 65px}.jobs-head h2{font-size:29px}.job summary{grid-template-columns:25px 1fr 35px;gap:10px;padding:26px 0}.job h3{font-size:21px}.job-category{grid-column:2;grid-row:2;font-size:12px}.plus{grid-column:3;grid-row:1/3;width:32px;height:32px}.job-body{margin-left:35px;padding-right:0}.job-body p{font-size:16px}.careers-end{padding:35px 0 50px}.careers-end h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Q: daylight, lemon and aqua drawn from the brand deck. */
body{background:radial-gradient(ellipse 65% 650px at 96% 380px,rgba(114,237,224,.48),transparent 76%),radial-gradient(ellipse 65% 620px at 70% 160px,rgba(255,231,127,.52),transparent 75%),#fcfdf9}
header,.hero,.hero-bottom{isolation:isolate}
.logo{color:var(--ink)}
.nav-links a:hover,.nav-links a[aria-current=page]{color:#007c79}
.count{background:rgba(255,235,146,.6);border-color:rgba(143,123,45,.3)}
.eyebrow{color:#39716a}
.hero h1 em,.careers-hero h1 em{color:#008d89}
.hero-art img{mask-image:radial-gradient(ellipse,black 39%,rgba(0,0,0,.97) 47%,transparent 70%)}
.art-label{color:#3c655e}


.text-link{border-color:#5a8880}
.intro{background:radial-gradient(ellipse at 0% 100%,#bdf5e9,transparent 55%),radial-gradient(ellipse at 100% 0%,#fff0b1,transparent 55%),#f8fcf7;border-block:1px solid var(--line)}
.intro h2 span{color:#00857e}
.quality{border-color:#a6c7bc}
.quality:nth-child(2){border-color:#c9b766}
.quality:nth-child(3){border-color:#81caca}
.vision{overflow:visible}
.vision:before{content:'';position:absolute;z-index:-1;inset:0 calc((100vw - 100%)/-2);background:radial-gradient(ellipse at 22% 48%,rgba(255,230,117,.52),transparent 60%),radial-gradient(ellipse at 89% 90%,rgba(137,236,227,.34),transparent 60%);pointer-events:none}
.vision h2 em{color:#987222}
.pill{background:#ffdf78;color:#29332b;border:1px solid rgba(160,126,31,.2)}
.pill:hover{background:#ffea9b}
footer .logo{color:var(--ink)}
.careers-art{opacity:.42;mix-blend-mode:multiply}
.jobs{background:radial-gradient(ellipse at 0% 5%,#c9f7ee,transparent 65%),radial-gradient(ellipse at 100% 90%,#fff0ae,transparent 58%),#f9fdf9;border-block:1px solid var(--line)}
.job summary:hover .plus{background:#ffe796;border-color:#c4ad5d}
.job[open] .plus{background:#ffe796;border-color:#c4ad5d}
.job[open]{background:rgba(255,255,255,.27)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#007d79}
@media(max-width:700px){body{background:radial-gradient(ellipse 110% 520px at 90% 680px,rgba(114,237,224,.45),transparent 75%),radial-gradient(ellipse 110% 630px at 75% 200px,rgba(255,231,127,.45),transparent 80%),#fcfdf9}.careers-art{opacity:.23}.hero-bottom{font-size:12px;flex-wrap:wrap;gap:16px}.art-label{font-size:12px}}

/* Revised hero copy and four-step Q journey. */
.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px}
.hero h1{font-size:clamp(42px,5.2vw,74px);letter-spacing:-3px;line-height:1.1}
.hero h1 em{letter-spacing:-3px}
.hero-copy>.eyebrow{font-size:13px;letter-spacing:1.25px;line-height:1.6}
.hero-copy>p{max-width:390px}
.hero-art{width:112%;margin-left:-6%}
.qualities{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.quality:nth-child(4){border-color:#c9b766}
.quality h3{line-height:1.4}
.vision h2{font-size:clamp(40px,5.2vw,72px);max-width:1040px}
@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:clamp(38px,5.2vw,52px);letter-spacing:-2px}.hero h1 em{letter-spacing:-2px}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.6px}.hero{min-height:600px;gap:12px}.hero-art{width:112%;margin-left:-8%}}
@media(max-width:700px){.hero h1{font-size:clamp(36px,8.7vw,60px);letter-spacing:-1.7px}.hero h1 em{letter-spacing:-1.7px}.hero-art{width:100%;margin:0;max-height:none}.hero-copy>.eyebrow{font-size:12px;letter-spacing:.6px}.qualities{grid-template-columns:1fr;gap:26px}.vision h2{font-size:40px;letter-spacing:-1.8px}}

/* The SVG converts luminance to alpha, including in Safari's image-mask path. */
.hero-art img,.careers-art{-webkit-mask-image:url('/assets/q-light-mask.svg?v=alpha-1');mask-image:url('/assets/q-light-mask.svg?v=alpha-1');mask-mode:alpha;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mix-blend-mode:normal}
.hero-art img{object-fit:contain}
.careers-art{opacity:.3}

/* Blend the artwork boundary and animate a liquid layer over the stable glass. */
.vision p{margin-left:0;margin-right:auto;text-align:left;max-width:650px}
.effect-definitions{position:absolute;overflow:hidden;pointer-events:none}
.q-motion{position:relative;width:100%;height:100%;animation:float 9s ease-in-out infinite;mask-image:radial-gradient(ellipse at 50% 50%,#000 54%,transparent 73%)}
.hero-art .q-motion img{animation:none;transform:none;position:relative;z-index:0}
.hero-art .q-motion .q-fluid{position:absolute;inset:0;z-index:1;opacity:.56;filter:url('#q-liquid');pointer-events:none}
@media(prefers-reduced-motion:reduce){.q-motion{animation:none}.hero-art .q-motion .q-fluid{display:none}}

/* One glass identity, in a static mark and a flowing hero. */
.logo{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;padding:0;letter-spacing:0;flex-shrink:0}
.logo img{display:block;width:100%;height:100%;object-fit:contain;-webkit-mask-image:url('/assets/q-light-mask.svg?v=alpha-1');mask-image:url('/assets/q-light-mask.svg?v=alpha-1');mask-mode:alpha;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
footer .logo{width:46px;height:46px}
.q-upper{position:absolute;inset:0;z-index:2;pointer-events:none;mask-image:linear-gradient(#000 0%,#000 33%,transparent 60%)}
.hero-art .q-motion .q-fluid-top{filter:url('#q-liquid-top');opacity:.78}
/* Give the Q journey the full canvas instead of an empty side column. */
.intro .section-grid{display:block}
.intro .section-grid>.eyebrow{margin-bottom:32px}
.intro h2{max-width:1000px}
.intro .description{max-width:760px}
.intro .qualities{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:56px}
.intro .quality{padding-top:24px;border-top-width:2px}
.intro .quality .number{font-size:26px;letter-spacing:-1px;color:#00857e}
.intro .quality:nth-child(even) .number{color:#987222}
.intro .quality h3{margin-top:24px}
@media(max-width:1100px){.intro .qualities{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}}
@media(max-width:700px){.logo{width:54px;height:54px}.intro .qualities{grid-template-columns:1fr;gap:30px}.intro .quality{grid-template-columns:46px 1fr}.intro .quality .number{font-size:22px;padding-top:0}.intro .quality h3{margin-top:0}.intro .section-grid>.eyebrow{margin-bottom:26px}}
@media(prefers-reduced-motion:reduce){.q-upper{display:none}}

/* Restore the original typographic mark and lift the hero introduction. */
.logo{display:inline-block;width:auto;height:auto;padding-right:6px;font-size:45px;font-weight:550;letter-spacing:-5px;line-height:1}
footer .logo{width:auto;height:auto;font-size:34px}
.hero-copy>.eyebrow{font-size:16px;letter-spacing:1.25px;line-height:1.6}
@media(max-width:1000px) and (min-width:701px){.hero-copy>.eyebrow{font-size:14px;letter-spacing:.6px}}
@media(max-width:700px){.logo{width:auto;height:auto;font-size:39px}.hero-copy>.eyebrow{font-size:14px;letter-spacing:.6px}}

.hero-bottom>span{font-size:15px;letter-spacing:.2px;text-transform:none}
.hero-bottom s{text-decoration-thickness:1px;text-decoration-color:currentColor}
.hero-bottom strong{font-weight:550;color:var(--teal)}
.hero-copy>.eyebrow{max-width:520px}

/* Keep the complete careers sculpture softly behind the copy. */
.careers-art-frame{position:absolute;right:0;top:50%;transform:translateY(-50%);width:min(43%,480px);aspect-ratio:1;z-index:0;pointer-events:none;mask-image:radial-gradient(ellipse,#000 35%,transparent 72%)}
.careers-art-frame .careers-art{position:static;width:100%;height:auto;aspect-ratio:1;object-fit:contain;opacity:.18;display:block}
.apply-contact{margin-top:42px;padding-top:32px;border-top:1px solid var(--line)}
.apply-contact p{font-size:22px;line-height:1.6;margin:14px 0 0}
.apply-contact a{color:#007d79;text-decoration:underline;text-underline-offset:5px}
.apply-contact a:hover{color:var(--ink)}
@media(max-width:700px){.careers-art-frame{width:65%;right:0;top:48%;opacity:.7}.apply-contact p{font-size:20px}}

/* Mobile keeps the daylight glass treatment with a quiet, steady silhouette. */
@keyframes q-mobile-float{
  0%,100%{transform:translateY(0) rotate(-2deg)}
  50%{transform:translateY(-4px) rotate(-1deg)}
}
@media(max-width:700px){
  .hero-art{width:min(100%,400px);align-self:center;margin:12px 0 0}
  .q-motion{animation:q-mobile-float 18s ease-in-out infinite}
  .hero-art .q-motion .q-fluid,.q-upper{display:none}
}
