.canvas-section{background:#fffbf2}
.canvas-section::before{pointer-events:none;opacity:var(--canvas-texture-opacity,.72)}
.about__stamp{transform:translate3d(var(--about-stamp-x,0px),0,0)}
.about__copy{transform:translate3d(var(--about-copy-x,0px),0,0)}
/* Reference: 39.4% portrait, 7.6% gap, 36.5% copy; centred vertically. */
.about{position:relative;z-index:0;display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:7.6cqw;width:100%;min-height:100%;margin:0 auto;padding:clamp(24px,4svh,48px) 7.1cqw clamp(24px,4svh,48px) 9.4cqw;color:#30140c}
.about__stamp{--about-stamp-border:clamp(12px,1.25vw,26px);position:relative;isolation:isolate;display:block;width:100%;aspect-ratio:1.46;margin:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.about__stamp::before{content:"";position:absolute;z-index:-1;inset:0;background:#fffbf2;mask-image:radial-gradient(circle at 10px 0,transparent 5px,#000 5.6px),radial-gradient(circle at 10px 100%,transparent 5px,#000 5.6px),radial-gradient(circle at 0 10px,transparent 5px,#000 5.6px),radial-gradient(circle at 100% 10px,transparent 5px,#000 5.6px);mask-size:20px 100%,20px 100%,100% 20px,100% 20px;mask-repeat:repeat-x,repeat-x,repeat-y,repeat-y;mask-composite:intersect}
.about__stamp:focus-visible{outline:2px solid #30140c;outline-offset:8px}
.about__photos{position:absolute;inset:var(--about-stamp-border);display:block;overflow:hidden;background:#e5ded1}
.about__photos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;visibility:hidden}
.about__photos img.is-current{visibility:visible}
.about__photos img:last-child{object-position:50% 35%}
.about__copy{min-width:0;container-type:inline-size}
.about__title{margin:0;font-weight:400;line-height:1.05;letter-spacing:-.04em}
.canvas-section.is-typing .about__title{transform:translateY(clamp(18px,3svh,32px));transition:transform .65s cubic-bezier(.22,.61,.36,1)}
.canvas-section.has-intro-complete .about__title{transform:translateY(0)}
.about__hello{display:block;font-family:'Pinyon Script',cursive;font-style:normal;font-weight:400;font-size:48cqw;line-height:.7;letter-spacing:0}
.about__intro{display:block;margin-top:0;white-space:nowrap;font-size:14cqw;line-height:1.12;letter-spacing:-.045em}
.about__hello > .about__type-visual,.about__line{display:inline-block;white-space:nowrap}
.about__hello > .about__type-visual{vertical-align:top}
.about__intro em{font-family:'Source Serif 4',Georgia,serif;font-weight:400;font-size:1.15em}
.about__body{margin:clamp(14px,3.5cqw,26px) 0 0;font-size:clamp(14px,1.13vw,26px);line-height:1.5}
.about__link{display:block;width:fit-content;margin:clamp(14px,3.5cqw,26px) 0 0 auto;color:inherit;font-family:'Source Serif 4',Georgia,serif;font-size:clamp(17px,1.4vw,30px);font-style:italic;font-weight:600;text-decoration:none;text-underline-offset:5px}
.about__link:hover{text-decoration:underline}
.about__link:focus-visible{outline:2px solid currentColor;outline-offset:6px}
/* Reserve the complete line layout while revealing discrete characters. */
.about__word{white-space:nowrap}
.about__char{visibility:hidden}
.about__char.is-typed{visibility:visible}
.about__text-source{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.canvas-section.is-typing .about__link{pointer-events:none}
.next-intro{--next-heading-size:clamp(36px,10vw,200px);position:absolute;inset:0;z-index:0;pointer-events:none;visibility:hidden}
.next-intro h2{position:absolute;z-index:1;left:50%;top:calc(50svh - var(--services-header));width:max-content;max-width:94%;margin:0;color:#590c1a;font-family:'Pinyon Script',cursive;font-size:var(--next-heading-size);font-style:normal;font-weight:400;line-height:1.2;text-align:center;white-space:nowrap;transform:translate(-50%,-50%) scale(var(--next-intro-scale,0));transform-origin:center}
.next-intro__subline-clip{position:absolute;left:0;right:0;top:calc(50svh - var(--services-header) + var(--next-heading-size) * .375);overflow:hidden;padding:clamp(2px,.25svh,4px) 20px 4px;text-align:center}
.next-intro__subline{margin:0;color:#590c1a;font-family:Manrope,Arial,sans-serif;font-size:clamp(24px,5.25vw,96px);font-style:normal;font-weight:400;line-height:1.15;visibility:hidden;transform:translateY(calc(-100% - 24px))}
.next-intro.is-subline-visible .next-intro__subline{visibility:visible;animation:next-subline-enter 1s cubic-bezier(.22,.61,.36,1) both}
.next-intro__subline a{display:inline-block;color:inherit;pointer-events:auto}
.next-intro__subline a:focus-visible{outline-color:currentColor;outline-offset:-2px}
@media(hover:hover){.next-intro__subline a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.12em}}
@keyframes next-subline-enter{from{transform:translateY(calc(-100% - 24px))}to{transform:translateY(0)}}
@media(max-width:1000px) and (min-width:761px){
  .about{gap:36px;padding-inline:32px}
}
@media(max-width:760px){
  .about{grid-template-columns:1fr;align-content:center;gap:20px;padding:24px;min-height:100%}
  .about__stamp{--about-stamp-border:12px;width:min(100%,480px);justify-self:center}
  .about__copy{width:min(100%,480px);justify-self:center}
  .about__body{font-size:14px;line-height:1.5}
  .about__link{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  .canvas-section{height:auto;min-height:calc(100svh - var(--services-header));overflow:visible}
  .about__stamp,.about__copy{transform:none}
  .about__char{visibility:visible}
  .next-intro{position:relative;inset:auto;order:2;display:grid;place-items:center;align-content:center;gap:3px;min-height:calc(100svh - var(--services-header));padding:24px;background:#fffbf2;visibility:visible}
  .next-intro h2{position:static;max-width:100%;font-size:clamp(40px,10vw,200px);transform:none;white-space:normal}
  .next-intro__subline-clip{position:static;padding:0;overflow:visible}
  .next-intro .next-intro__subline{animation:none!important;transform:none;visibility:visible}
}
