:root{--ink:#142b40;--navy:#101f2b;--paper:#f7f5ef;--teal:#19b5a5;--muted:#58656a;--line:#d8ddd8;--radius-control:3px;--color-destructive:#a32929}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--teal);outline-offset:5px}.skip{position:fixed;top:-80px;background:white;padding:16px;z-index:100}.skip:focus{top:10px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5%;gap:30px;background:var(--paper);position:relative;z-index:5}.brand img{width:250px;height:83px;object-fit:contain;display:block}nav{display:flex;gap:35px;font-size:13px}nav a{padding:12px 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--ink)}.header-cta{font-size:14px;border-bottom:1px solid;padding:10px 0;display:flex;gap:35px}.hero{position:relative;min-height:760px;background:var(--navy);overflow:hidden;color:var(--paper);display:flex;align-items:center}.hero-content{position:relative;z-index:2;padding:80px 7% 140px;width:85%}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;margin:0 0 35px}.light{color:#b6ceca}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--teal);margin-right:10px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(60px,7.6vw,122px);line-height:.99;letter-spacing:-.065em;font-weight:400;margin-bottom:30px}h1 em,h2 em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;color:inherit}h1 em{color:#9ad6cc}h2{font-size:clamp(44px,5vw,76px);font-weight:400;line-height:1.08;letter-spacing:-.055em;margin-bottom:30px}p{font-size:16px;line-height:1.8}.hero-copy{max-width:470px;color:#c3d0d3;font-size:17px;margin-bottom:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border:0;padding:20px 25px;font-size:14px;font-weight:600;border-radius:var(--radius-control);transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.teal{background:var(--teal);color:#092c32}.navy{background:var(--ink);color:white}.button:disabled{opacity:.6;cursor:wait}.hero-aside{position:absolute;right:5%;top:40%;z-index:2;display:flex;align-items:center;flex-direction:column;gap:80px}.vertical-label{writing-mode:vertical-rl;font-size:10px;letter-spacing:.3em;color:#b6c9cd}.hero-index{font-size:11px;color:#b6c9cd}.hero-bottom{position:absolute;bottom:30px;left:7%;right:5.5%;display:flex;justify-content:space-between;gap:20px;color:#b8c7ca;font-size:11px;z-index:2}.hero-bottom button{border:0;background:none;color:inherit;font-size:11px;text-decoration:underline;text-underline-offset:4px}.ambient{position:absolute;inset:0;overflow:hidden;pointer-events:none}.halo{position:absolute;width:60vw;height:60vw;border-radius:48%;filter:blur(55px);opacity:.32;animation:drift 18s ease-in-out infinite alternate}.halo-one{background:radial-gradient(ellipse,#009d92 0,transparent 65%);right:-20%;top:-15%}.halo-two{background:radial-gradient(ellipse,#31556d 0,transparent 65%);right:10%;bottom:-55%;animation-delay:-9s}.orbit{position:absolute;width:47vw;height:47vw;right:-10%;top:13%;border:1px solid #64b8ad4a;border-radius:42%;transform:rotate(-25deg);animation:turn 45s linear infinite;box-shadow:0 0 90px #19b5a508,inset 0 0 90px #19b5a508}.second{width:40vw;height:40vw;right:-6%;top:20%;animation-direction:reverse;border-color:#ffffff14}.grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:100px 100px;mask-image:linear-gradient(90deg,transparent,#000)}@keyframes drift{to{transform:translate(-10%,20%) scale(1.2)}}@keyframes turn{to{transform:rotate(335deg)}}.paused .ambient *{animation-play-state:paused!important}.service-strip{display:flex;justify-content:space-around;gap:20px;padding:27px 5.5%;border-bottom:1px solid var(--line);font-size:12px}.service-strip i{color:#0f8078;font-style:normal}.section{padding:110px 7%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 60px;align-items:end;margin-bottom:55px}.section-heading .eyebrow{grid-column:1/-1}.section-heading h2{margin:0}.section-heading>p:last-child{max-width:360px;justify-self:end;margin-bottom:5px;color:var(--muted)}.project{display:block}.project-art{min-height:500px;background:#e1e7e1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.coast-shape{position:absolute;width:130%;height:140%;left:30%;top:35%;border-radius:50%;background:linear-gradient(150deg,#c6d4d0,#88a6a7);transform:rotate(-20deg);transition:transform 1s}.project:hover .coast-shape{transform:rotate(-15deg) scale(1.06)}.project-mark{position:relative;text-align:center;z-index:1;padding:45px}.project-mark img{width:85px;height:70px;object-fit:contain;mix-blend-mode:multiply;display:block;margin:0 auto 18px}.project-mark>span{font-size:10px;letter-spacing:.3em}.project-mark h3{font-family:Georgia,serif;font-weight:400;font-size:58px;line-height:1.06;letter-spacing:-.04em;margin:30px 0 20px}.project-mark p{font-size:12px}.project-badge{position:absolute;right:25px;bottom:25px;border:1px solid #55737060;padding:13px 18px;font-size:11px;background:#f7f5efc9}.project-caption{display:flex;justify-content:space-between;align-items:center;padding:25px 0;border-bottom:1px solid var(--line)}.project-caption h3{font-size:24px;font-weight:400;margin:0 0 8px;letter-spacing:-.03em}.project-caption p{font-size:12px;margin:0;color:var(--muted)}.round-arrow{font-size:28px;transition:transform .2s}.project:hover .round-arrow{transform:translate(3px,-3px)}.project-note{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:30px}.project-note p:first-child{font-size:20px}.project-note p:last-child{color:var(--muted);font-size:14px}.services{background:#eeeee7}.service-row{display:grid;grid-template-columns:50px 1fr 1.2fr 30px;gap:30px;padding:38px 0;border-top:1px solid #c8cfca;align-items:start;transition:padding .3s}.service-row:hover{padding-left:12px}.service-number{font-size:11px;margin-top:8px;color:#66736e}.service-row h3{font-size:30px;letter-spacing:-.035em;font-weight:400;line-height:1.2;margin:0}.service-row p{font-size:15px;color:var(--muted);margin-bottom:15px;max-width:430px}.service-row div>span{font-size:10px;letter-spacing:.03em;color:#53615c}.service-row b{font-weight:400;font-size:26px}.pricing-note{font-size:13px;border-top:1px solid #c8cfca;padding-top:25px;color:var(--muted)}.playground{background:var(--navy);color:var(--paper)}.playground .section-heading>p:last-child{color:#bdcccf}.demo-controls{display:flex;justify-content:center;gap:8px;margin-bottom:25px}.demo-controls button{background:transparent;color:#bccaca;border:1px solid #ffffff35;border-radius:3px;padding:10px 20px;font-size:12px}.demo-controls .active{background:#f7f5ef;color:var(--ink)}.demo-stage{min-height:460px;display:flex;justify-content:center;align-items:flex-start;padding:0 20px}.demo-browser{width:100%;max-width:900px;background:#e9e6dc;box-shadow:0 30px 70px #0003;border:1px solid #ffffff40;border-radius:7px 7px 0 0;overflow:hidden;transition:max-width .7s cubic-bezier(.2,.8,.2,1);color:#33382f}.browser-bar{display:flex;justify-content:space-between;background:#e1dfd6;border-bottom:1px solid #c4c6bd;padding:12px 18px;font-size:9px;color:#6d746c}.demo-inner{padding:30px}.demo-nav{display:flex;justify-content:space-between;gap:15px;font-size:11px;letter-spacing:.12em}.demo-nav span{font-family:Georgia,serif;font-style:italic;letter-spacing:0}.demo-content{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;margin-top:35px}.demo-content h3{font-family:Georgia,serif;font-size:clamp(30px,4vw,58px);line-height:1.05;font-weight:400;letter-spacing:-.04em;margin-bottom:20px}.demo-content p{font-size:12px;line-height:1.6}.demo-content .eyebrow{font-size:8px;margin-bottom:20px}.demo-label{display:inline-block;font-size:9px;border-bottom:1px solid;padding-bottom:6px}.architecture{height:300px;background:#b8b49f;position:relative;overflow:hidden}.arch{position:absolute;left:25%;top:10%;width:56%;height:95%;border-radius:100px 100px 0 0;background:linear-gradient(120deg,#586d69,#cbd4c6);border:14px solid #d8d4c1;box-shadow:15px 20px 0 #807f6d55}.plinth{position:absolute;bottom:-20px;left:13%;width:35%;height:70px;background:#d5ccba;box-shadow:30px 0 0 #aaa28e}.sunlight{position:absolute;inset:0;background:linear-gradient(125deg,transparent 45%,#fff6 45%,#fff0 68%)}.demo-browser.mobile{max-width:340px}.mobile .demo-content{grid-template-columns:1fr}.mobile .demo-inner{padding:22px}.mobile .demo-content h3{font-size:40px}.mobile .architecture{height:140px}.mobile .demo-nav span{display:none}.demo-note{text-align:center;font-size:11px;color:#a7b9bd;margin:25px 0 0}.studio{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.studio-copy{padding-top:45px}.studio-copy p{color:var(--muted);font-size:15px}.studio-copy .large-copy{font-size:23px;color:var(--ink);line-height:1.5}.signature{font-family:Georgia,serif;font-style:italic;font-size:56px;display:block;margin:30px 0 20px}.studio-copy .eyebrow{font-size:10px}.process{padding-top:0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.process article{border-top:1px solid var(--line);padding-top:25px}.process article span{font-size:11px;color:#6c7878}.process h3{font-weight:400;font-size:24px;letter-spacing:-.03em;margin:25px 0 15px}.process p{font-size:14px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:#e7ece6}.contact>div>p{max-width:350px;color:var(--muted)}.contact-form{padding-top:10px}label{display:block;font-size:12px;margin-bottom:10px}input,textarea,select{border:0;border-bottom:1px solid #a0b0a8;background:transparent;color:var(--ink);border-radius:0;width:100%;padding:12px 0;outline-offset:4px}textarea{min-height:100px;resize:vertical}.field{margin-bottom:26px}.field-error,#form-error{font-size:12px;color:var(--color-destructive);margin-top:5px}.field-help{font-size:12px}.form-actions{display:flex;gap:15px}.form-note{font-size:11px;color:#52635a;margin-top:24px}.form-note a{text-decoration:underline}.form-actions #back{background:none;border:1px solid;padding:12px}.contact .button{width:100%}#success{padding:35px;border:1px solid #8fa99e;line-height:1.8;font-size:20px}footer{background:var(--navy);color:#c6d0d2;padding:50px 7%;display:flex;justify-content:space-between;gap:35px;align-items:start}footer strong{font-size:20px;color:var(--paper)}footer p{font-size:11px;margin:12px 0 0}footer>div:nth-child(2){display:flex;gap:25px;font-size:12px}body.js .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}body.js .reveal.visible{opacity:1;transform:none}.privacy{max-width:850px;margin:auto;padding:80px 25px}.privacy h1{font-size:64px}.privacy h2{font-family:Arial;font-size:25px;margin-top:35px;letter-spacing:-.02em}.privacy a{text-decoration:underline}
@media(min-width:1600px){.hero{min-height:850px}.section{padding-left:10%;padding-right:10%}}@media(max-width:850px){header{height:80px;padding:0 5%}.brand img{width:190px;height:64px}nav{gap:18px;font-size:11px}.header-cta{font-size:12px;gap:15px}.hero{min-height:700px}.hero-content{padding:65px 7% 150px;width:94%}.hero-aside{display:none}.hero-bottom{flex-wrap:wrap;line-height:1.7}.section{padding:75px 7%}.section-heading{gap:25px;grid-template-columns:1fr}.section-heading>p:last-child{justify-self:start}.service-row{grid-template-columns:25px 1fr 1.2fr 20px;gap:15px}.service-row h3{font-size:23px}.studio,.contact{gap:45px}.process-grid{gap:25px}footer{flex-wrap:wrap}.studio h2,.contact h2{font-size:48px}.service-strip{font-size:10px;gap:10px}.project-art{min-height:420px}}@media(max-width:560px){nav{display:none}.hero{min-height:680px}h1{font-size:61px}.hero-content{padding-top:60px}.hero-copy{font-size:15px;max-width:300px}.hero .eyebrow{font-size:9px;letter-spacing:.11em}.hero-bottom>span{width:100%}.halo{width:110vw;height:110vw}.orbit{width:110vw;height:110vw;right:-70%;top:15%}.service-strip{flex-wrap:wrap;justify-content:center;padding:20px;gap:14px}.service-strip i:last-of-type{display:none}.service-strip span:last-child{display:none}.section{padding:65px 6%}.project-mark h3{font-size:45px}.project-badge{font-size:10px;right:15px;bottom:15px}.project-note{grid-template-columns:1fr;gap:5px}.service-row{grid-template-columns:20px 1fr 20px;gap:14px}.service-row div{grid-column:2;grid-row:2}.service-row b{grid-row:1;grid-column:3}.service-row h3 br{display:none}.service-row h3{font-size:26px}.demo-stage{padding:0;min-height:420px}.demo-inner{padding:15px}.demo-content{gap:10px}.demo-content h3{font-size:30px}.demo-content .eyebrow{font-size:7px;letter-spacing:.05em}.architecture{height:260px}.demo-nav{font-size:9px}.demo-nav span{display:none}.demo-content p{font-size:10px}.studio,.contact{grid-template-columns:1fr;gap:10px}.studio-copy{padding:0}.process{padding-top:0}.process-grid{grid-template-columns:1fr;gap:25px}.process h3{margin-top:15px}.contact h2{font-size:60px}.contact-form{margin-top:25px}footer>div:nth-child(2){flex-wrap:wrap}.project-caption h3{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

/* Expanded service, project and pricing information */
.project-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin:15px 0 45px}
.project-intro .eyebrow{font-size:10px;line-height:1.8;color:#526960;margin-bottom:20px}
.project-intro h3{font-size:30px;font-weight:400;line-height:1.25;letter-spacing:-.035em;margin:0}
.project-intro h3 em{display:block;font:italic 28px/1.3 Georgia,serif;margin-top:15px}
.project-intro p{font-size:14px;color:var(--muted)}
.text-link{display:inline-block;font-size:13px;border-bottom:1px solid currentColor;padding:9px 0;text-underline-offset:5px}
.service-details{padding-left:17px;margin:0 0 18px;color:#43534e;font-size:13px;line-height:1.9}
.service-details li{margin-bottom:5px}
.service-row{grid-template-columns:45px .85fr 1.45fr 25px}
.service-row p{max-width:560px}
.service-quote{margin-top:30px}
.responsive-reasons{display:grid;grid-template-columns:.8fr 1.3fr;gap:70px;border-top:1px solid #ffffff25;padding:35px 0 45px;margin-top:15px}
.responsive-reasons strong{font-size:68px;font-weight:400;letter-spacing:-.055em;color:#9ad6cc}
.responsive-reasons p{font-size:14px;color:#bdcccf;max-width:530px;margin-bottom:12px}
.responsive-reasons>div:first-child p{max-width:330px}
.responsive-reasons a{font-size:10px;color:#9ad6cc;text-decoration:underline;text-underline-offset:4px}
.responsive-reasons h3{font-weight:400;font-size:25px;letter-spacing:-.025em;margin-top:10px}
.photo-demo{height:350px;background:#9d8d72}
.photo-demo img{width:100%;height:100%;object-fit:cover;object-position:58% center;display:block;transition:transform 1.2s}
.demo-browser:hover .photo-demo img{transform:scale(1.035)}
.photo-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#151914b3);padding:40px 17px 17px;font-size:10px;letter-spacing:.08em;color:#fff}
.demo-browser.mobile .photo-demo{height:210px}
.demo-browser.mobile .photo-demo img{object-position:58% center}
.demo-note{line-height:1.8}
.pricing{background:#efeee6}
.pricing-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.pricing-grid article{padding:35px 0;border-top:1px solid #bcc9c1;display:flex;flex-direction:column}
.pricing-grid h3{font-size:30px;font-weight:400;letter-spacing:-.03em}
.pricing-grid p,.pricing-grid ul{font-size:14px;color:#52635a;line-height:1.9}
.pricing-grid .eyebrow{font-size:10px;margin-bottom:20px}
.pricing-grid ul{padding-left:18px;margin-bottom:30px}
.pricing-grid .button{align-self:flex-start;margin-top:auto}
.terms-summary{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;border-top:1px solid #bcc9c1;padding-top:35px}
.terms-summary h3{font-size:24px;font-weight:400;letter-spacing:-.02em}
.terms-summary p{font-size:14px;color:#52635a;margin-bottom:0}
.terms-summary>a{justify-self:end;align-self:center}
.terms-index{display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:30px 0}
.terms-index a{font-size:12px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:850px){.project-intro{gap:30px}.responsive-reasons{gap:35px}.pricing-grid{gap:30px}.service-row{grid-template-columns:25px .9fr 1.3fr 20px;gap:15px}.terms-summary{gap:30px}footer>div:nth-child(2){flex-wrap:wrap;max-width:420px}}
@media(max-width:560px){.project-intro,.responsive-reasons,.pricing-grid,.terms-summary{grid-template-columns:1fr;gap:20px}.project-intro{margin-bottom:30px}.project-intro h3{font-size:28px}.project-intro h3 em{font-size:24px}.service-row{grid-template-columns:20px 1fr 20px}.service-details{font-size:13px}.responsive-reasons{padding:25px 0 35px}.responsive-reasons strong{font-size:60px}.photo-demo{height:270px}.demo-content{grid-template-columns:.9fr 1.1fr}.demo-content h3{font-size:27px}.demo-browser.mobile .demo-content{grid-template-columns:1fr}.demo-browser.mobile .demo-content h3{font-size:40px}.pricing-grid article{padding:25px 0}.pricing-grid h3{font-size:28px}.terms-summary>a{justify-self:start}.privacy h1{font-size:46px}}


/* Local service pages and homepage navigation */
.local-services{background:#edece5}.local-intro{max-width:760px;color:var(--muted);font-size:17px;line-height:1.8}.local-service-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 38px;margin-top:30px}.local-service-links a{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid var(--line);font-size:19px;line-height:1.5}.local-service-links a:hover{color:#087e75}.service-hero{padding:95px 9% 80px;background:var(--navy);color:var(--paper)}.service-hero .eyebrow{color:#9cded6}.service-hero h1{max-width:1100px;font-size:clamp(42px,6vw,82px);line-height:1.08;letter-spacing:-.04em}.service-hero>p:not(.eyebrow){max-width:780px;font-size:19px;line-height:1.8;color:#d3dedc;margin:30px 0}.service-body{max-width:1250px;margin:auto;padding:25px 7% 85px}.service-body>section{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;padding:55px 0;border-bottom:1px solid var(--line)}.service-body h2{font-size:clamp(28px,3.5vw,43px);line-height:1.2;letter-spacing:-.03em}.service-body p,.service-body li{color:var(--muted);line-height:1.85;font-size:16px}.service-body ul{padding-left:22px}.service-body li{padding:5px 0}.service-body aside{padding-top:45px}.service-faq details{border-bottom:1px solid var(--line);padding:18px 0}.service-faq summary{cursor:pointer;line-height:1.6;font-size:18px}.service-faq details p{margin:15px 0 0}.service-email{margin-top:22px;overflow-wrap:anywhere}.service-email a,.contact a[href^="mailto:"]{text-decoration:underline;overflow-wrap:anywhere}.service-page .button{white-space:normal;text-align:left}.local-service-links a:focus-visible,.service-faq summary:focus-visible{outline:2px solid #087e75;outline-offset:5px}@media(max-width:700px){.service-hero{padding:65px 6%}.service-hero>p:not(.eyebrow){font-size:17px}.service-body{padding:10px 6% 60px}.service-body>section{grid-template-columns:1fr;gap:18px;padding:35px 0}.local-service-links{grid-template-columns:1fr}.local-service-links a{font-size:18px}.service-body h2{margin:0}.service-body .button{font-size:14px}.local-intro{font-size:16px}}


/* Consistent alignment for homepage section introductions */
.work > .section-heading,
.services > .section-heading,
.pricing > .section-heading {
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  margin-bottom: 44px;
}
.work > .section-heading > p:last-child,
.services > .section-heading > p:last-child,
.pricing > .section-heading > p:last-child {
  justify-self: start;
  max-width: 740px;
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
}
.work > .section-heading .eyebrow,
.services > .section-heading .eyebrow,
.pricing > .section-heading .eyebrow {
  margin-bottom: 0;
}
@media (min-width: 851px) {
  .project-intro { gap: 48px; margin-top: 0; align-items: start; }
  .project-intro p:first-child { margin-top: 0; }
  .service-row { grid-template-columns: 40px minmax(0, 1fr) minmax(0, 1.35fr) 24px; gap: 28px; padding-top: 36px; padding-bottom: 36px; }
  .service-row h3 { line-height: 1.35; max-width: 340px; }
  .service-row > div { min-width: 0; }
  .service-row p { max-width: none; margin-top: 0; line-height: 1.8; }
  .service-row:hover { padding-left: 0; }
  .service-details { line-height: 1.8; }
  .pricing-grid { gap: 48px; align-items: stretch; }
  .pricing-grid article > p:first-child { margin-top: 0; }
  .terms-summary { grid-template-columns: minmax(0, 1fr) auto; gap: 48px; align-items: start; }
  .terms-summary h3 { margin-top: 0; }
  .terms-summary > a { align-self: start; margin-top: 5px; }
}
/* Keep the Selected work introduction and case study in distinct rows. */
.work > .section-heading {
  display: block;
  height: auto;
  margin: 0;
  padding: 0 0 40px;
}
.work > .section-heading .eyebrow { margin: 0 0 22px; }
.work > .section-heading h2 { margin: 0 0 24px; }
.work > .section-heading > p:last-child {
  display: block;
  width: 100%;
  max-width: 680px;
  margin: 0;
  line-height: 1.8;
}
.work > .project-intro {
  position: relative;
  clear: both;
  height: auto;
  margin: 0 0 44px;
  padding-top: 34px;
  border-top: 1px solid var(--line);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
  gap: 32px 48px;
}
.work > .project-intro > div { min-width: 0; }
.work > .project-intro p { margin-top: 0; }
body.js .work > .section-heading.reveal,
body.js .work > .project-intro.reveal {
  transform: none;
  transition: opacity .8s;
}
@media (max-width: 700px) {
  .work > .section-heading { padding-bottom: 30px; }
  .work > .project-intro {
    grid-template-columns: minmax(0, 1fr);
    padding-top: 28px;
    gap: 24px;
    margin-bottom: 32px;
  }
}
/* Shared desktop columns for section 03 introduction and supporting copy. */
@media (min-width: 851px) {
  .playground > .section-heading,
  .playground > .responsive-reasons {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: 60px;
  }
  .playground > .section-heading > p:last-child {
    justify-self: start;
    width: 100%;
    max-width: 530px;
    margin: 0;
  }
  .playground > .responsive-reasons > div {
    min-width: 0;
  }
  .playground > .responsive-reasons > div:last-child p {
    width: 100%;
    max-width: 530px;
  }
}