@charset "UTF-8";
:root{--ink:#102443;--blue:#086be9;--light:#eff6ff;--line:#dce5ef;--muted:#56677e;--white:#fff;--font:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.9 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #f5b731;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:750;line-height:1.5;letter-spacing:.015em}.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.header{height:96px;padding:0 48px;display:flex;align-items:center;gap:36px;border-bottom:1px solid #edf1f6;background:#ffffffef;backdrop-filter:blur(16px);position:sticky;top:0;z-index:30}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;line-height:1;font-size:25px;font-weight:800;letter-spacing:-1px}.nav{margin-left:auto;display:flex;align-items:center;gap:32px;font-size:14px;font-weight:650}.nav a{position:relative;padding:10px 0}.nav a:after{content:"";position:absolute;left:0;bottom:2px;width:0;height:2px;background:var(--blue);transition:width .2s}.nav a:hover:after{width:100%}.header-cta{background:var(--ink);color:white;font-size:14px;padding:11px 22px;border-radius:6px;font-weight:650}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.skip{position:fixed;top:-100px;background:var(--ink);color:white;z-index:60;padding:10px 24px}.skip:focus{top:8px;left:8px}.hero{display:grid;grid-template-columns:1fr 1.12fr;min-height:626px;align-items:center;padding-top:60px;padding-bottom:45px;gap:20px}.eyebrow{font-size:17px;letter-spacing:.1em;font-weight:650;margin-bottom:21px}.hero h1{font-size:clamp(48px,5.4vw,76px);line-height:1.35;letter-spacing:.025em;font-weight:800}.hero h1 span{color:var(--ink)}.hero-description{margin-top:26px;font-size:16px;line-height:2.1;letter-spacing:.025em}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 25px;min-height:56px;border-radius:6px;font-size:15px;font-weight:650;transition:background .2s,transform .2s}.button-primary{background:var(--blue);color:white}.button-primary:hover{background:#0358c5;transform:translateY(-2px)}.hero .button{margin-top:28px}.hero-footnote{margin-top:12px;font-size:14px;color:var(--muted)}.hero-visual{position:relative;padding:22px 0 25px}.hero-visual>img{width:118%;max-width:none;position:relative;left:-8%;margin-top:14px}.visual-note{display:flex;align-items:center;justify-content:center;font-size:14px;letter-spacing:.1em;gap:12px;margin-left:25px}.note-line{width:32px;height:1px;background:var(--blue)}.visual-caption{margin-left:12%;margin-top:6px;border-left:2px solid #bad6fa;padding-left:20px;display:flex;flex-direction:column;gap:5px}.visual-caption span{font-size:12px;letter-spacing:.17em;color:var(--blue);font-weight:700}.visual-caption b{font-size:16px;letter-spacing:.08em;font-weight:600}.hero-bottom{padding:27px 0 35px;border-top:1px solid var(--line);display:flex;align-items:center;gap:25px;font-size:12px;letter-spacing:.12em;color:var(--muted)}.hero-bottom>span:first-child{font-size:12px;color:var(--blue);font-weight:700}.scroll-cue{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:12px}.scroll-cue i{height:35px;width:1px;display:block;background:#abbacd}.section{padding:100px 0}.section-label{font-size:12px;font-weight:750;letter-spacing:.18em;color:var(--blue);margin-bottom:20px}h2{font-size:clamp(28px,3vw,40px);line-height:1.65;letter-spacing:.03em}.philosophy{background:var(--light)}.philosophy-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.vision-copy{font-size:16px;line-height:2.2}.vision-copy p+p{margin-top:21px}.footer{padding-block:42px;display:flex;align-items:center;gap:32px;border-top:1px solid var(--line)}.footer .brand{font-size:22px}.footer p,.footer small{font-size:12px;color:var(--muted)}.footer small{margin-left:auto}@media(min-width:1500px){.hero{min-height:720px}}@media(max-width:1100px){.header{padding:0 30px;gap:24px}.nav{gap:20px}.wrap{width:calc(100% - 72px)}.hero h1{font-size:60px}.hero{grid-template-columns:1fr 1fr;min-height:600px}.hero-description{font-size:15px}.philosophy-grid{gap:36px}.header-cta{display:none}}@media(max-width:760px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 44px)}.header{height:74px;padding-inline:22px}.brand{font-size:23px}.brand img{width:32px}.nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;margin-left:auto;width:44px;height:44px;background:none;border:none;padding:9px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink)}.mobile-menu{position:absolute;top:74px;left:0;right:0;padding:20px 24px 28px;background:white;border-bottom:1px solid var(--line);box-shadow:0 14px 20px #122c4910}.mobile-menu a{display:block;padding:12px 0;font-size:16px}.hero{display:flex;flex-direction:column;align-items:stretch;padding-top:42px;padding-bottom:27px;gap:24px;min-height:0}.eyebrow{font-size:14px;margin-bottom:17px}.hero h1{font-size:clamp(42px,11.4vw,66px);line-height:1.4}.hero-description{margin-top:19px;font-size:14px;line-height:2.1}.hero .button{margin-top:22px;font-size:14px;min-height:52px}.hero-footnote{font-size:12px}.hero-visual{padding:7px 0 0;margin-top:4px}.hero-visual>img{width:110%;left:-5%;margin-top:4px}.visual-note{font-size:12px;justify-content:flex-end;margin-right:10px}.visual-caption{margin-top:0;padding-left:15px;margin-left:7%}.visual-caption b{font-size:14px}.hero-bottom{padding:20px 0;font-size:12px;gap:12px}.hero-bottom>span:nth-child(2){display:none}.hero-bottom>span:first-child{font-size:12px;letter-spacing:.08em}.scroll-cue{font-size:12px}.section{padding:64px 0}.philosophy-grid{grid-template-columns:1fr;gap:28px}.section-label{font-size:12px;margin-bottom:16px}h2{font-size:28px}.vision-copy{font-size:15px}.desktop-br{display:none}.footer{flex-wrap:wrap;gap:18px;padding-block:32px}.footer p{width:100%;order:3}.footer small{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:48px}.section-intro{font-size:15px;line-height:2.1;max-width:475px;padding-bottom:7px}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px 240px 1fr auto;align-items:center;gap:20px;padding:33px 0;border-bottom:1px solid var(--line)}.service-number{font-size:32px;color:var(--blue);font-weight:400;font-family:Arial,sans-serif;line-height:1}.service-row h3{font-size:20px;line-height:1.5}.service-row p{font-size:14px;line-height:1.9;color:var(--muted)}.service-tag{font-size:12px;padding:4px 11px;border:1px solid #d2e1f3;border-radius:3px;color:#356498;white-space:nowrap}.example{background:#f4f8fd}.example-industry{font-size:12px;font-weight:650;color:var(--blue);letter-spacing:.05em;border-bottom:1px solid #bbd8fa;padding-bottom:6px;display:inline-block;margin-bottom:14px}.example-intro>p{font-size:15px;line-height:2.1}.comparison{background:white;border:1px solid #dae5f0;border-radius:10px;overflow:hidden}.comparison-top{padding:22px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.comparison-tabs{display:flex;padding:4px;border:1px solid #dce6f2;border-radius:7px;background:#f5f8fc;gap:4px}.state-tab{border:0;background:transparent;color:#64748b;border-radius:4px;padding:10px 21px;cursor:pointer;font-size:14px;line-height:1.5;display:flex;align-items:center;gap:12px}.state-tab>span{font-size:14px;font-weight:750;letter-spacing:.04em}.state-tab[aria-selected=true]{background:var(--ink);color:white}.state-tab:hover{background:#e4ecf7;color:var(--ink)}.state-tab[aria-selected=true]:hover{background:#1e3a64;color:white}.comparison-hint{font-size:14px;letter-spacing:.03em;color:var(--muted)}.state-panel{padding:34px 40px 28px}.state-panel[hidden]{display:none}.state-heading{text-align:center}.state-kicker{font-size:12px;letter-spacing:.15em;color:var(--blue);font-weight:750}.state-heading h3{font-size:22px;margin:6px 0 8px}.state-heading p{font-size:14px;color:var(--muted)}.state-panel>img{width:100%;max-width:980px;margin:4px auto 10px;aspect-ratio:1587/991;object-fit:contain}.workflow{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:0;gap:0;border-top:2px solid #9ecafb}.workflow li{padding:18px 12px 12px;text-align:center;position:relative;line-height:1.7}.workflow li+li:before{content:"";height:27px;width:1px;background:var(--line);position:absolute;left:0;top:27px}.workflow span{display:block;font-size:12px;color:var(--blue);letter-spacing:.04em}.workflow b{display:block;font-size:14px;font-weight:600;margin-top:5px}.workflow.before{border-color:#cad0d8}.workflow.before span{color:var(--muted)}.state-caption{text-align:center;font-size:14px;color:var(--muted);margin-top:19px}.example-note{font-size:12px;color:var(--muted);margin-top:17px;line-height:1.8}.approach-image{width:94%;margin:0 auto 40px;max-height:465px;object-fit:contain}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.principles article{border-top:1px solid #b6ccec;padding-top:24px}.principles span{font-size:12px;letter-spacing:.06em;color:var(--blue);font-weight:650}.principles h3{font-size:20px;margin:11px 0 13px}.principles p{font-size:14px;line-height:2;color:var(--muted)}.questions{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.questions-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px}.questions-intro{font-size:15px;color:var(--muted);margin-top:20px;line-height:2.1}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;font-size:16px;font-weight:600;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:25px 0}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"＋";font-size:22px;color:var(--blue);font-weight:400;flex-shrink:0}.faq details[open] summary:after{content:"−"}.faq details>p{padding:0 28px 25px 0;color:var(--muted);font-size:14px;line-height:2}.closing{text-align:center;padding-block:90px}.closing h2{font-size:40px}.closing>p:not(.section-label){font-size:16px;line-height:2.1;margin-top:18px}.closing .button{margin-top:26px}.footer{flex-wrap:wrap;gap:24px}.footer nav{display:flex;gap:24px;margin-left:auto;font-size:12px}.footer small{width:100%;text-align:right;border-top:1px solid #edf1f6;margin-top:5px;padding-top:20px}.footer p{font-size:12px}
@media(max-width:1100px){.service-row{grid-template-columns:45px 190px 1fr}.service-tag{display:none}.section-heading{gap:30px}.section-intro,.example-intro{max-width:390px}.questions-grid{gap:40px}.principles{gap:22px}.principles h3{font-size:18px}.principles p{font-size:14px}.workflow b{font-size:12px}.state-panel{padding:30px 25px 25px}.footer p{display:none}}
@media(max-width:760px){.section-heading{display:block;margin-bottom:32px}.section-intro{font-size:14px;margin-top:22px;max-width:none}.service-row{grid-template-columns:36px 1fr;gap:10px 15px;padding:25px 0}.service-number{font-size:25px}.service-row h3{font-size:19px}.service-row p{grid-column:2;font-size:14px;line-height:2}.service-row br{display:none}.example-intro{margin-top:20px}.example-intro>p{font-size:14px;line-height:2}.comparison{border-radius:6px;margin-inline:-9px}.comparison-top{display:block;padding:15px 13px}.comparison-tabs{width:100%}.state-tab{flex:1;justify-content:center;font-size:12px;padding:11px 8px;gap:7px}.state-tab>span{font-size:12px}.comparison-hint{display:none}.state-panel{padding:23px 12px 22px}.state-heading h3{font-size:17px;margin-top:8px}.state-heading p{font-size:12px;line-height:1.9;max-width:290px;margin:auto}.state-panel>img{width:calc(100% + 12px);max-width:none;margin:18px -6px 20px}.workflow{grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);text-align:left}.workflow li{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line)}.workflow li+li:before{display:none}.workflow li:last-child{grid-column:1 / -1}.workflow span{font-size:12px}.workflow b{font-size:14px;margin-top:3px}.state-caption{font-size:12px;line-height:1.9;margin:16px 6px 0}.example-note{font-size:12px;line-height:1.9;margin-top:12px}.approach-image{width:108%;max-width:none;margin:0 -4% 28px}.principles{grid-template-columns:1fr;gap:25px}.principles article{padding-top:20px}.principles h3{font-size:20px;margin-block:9px}.principles p{font-size:14px}.questions-grid{grid-template-columns:1fr;gap:28px}.faq summary{font-size:14px;padding-block:22px}.faq details>p{font-size:14px}.closing{padding-block:62px}.closing h2{font-size:28px}.closing>p:not(.section-label){font-size:14px}.footer{display:flex;gap:22px}.footer nav{margin-left:0;width:100%;flex-wrap:wrap;gap:19px;font-size:12px}.footer small{text-align:left;margin-top:0}.footer .brand{font-size:22px}}

/* Legibility and tablet bounds */
.hero-description,.vision-copy,.section-intro,.service-row p,.example-intro>p,.principles p,.questions-intro,.faq details>p,.closing>p:not(.section-label){font-size:16px}.state-tab{font-size:14px}.state-heading p{font-size:14px}.workflow b{font-size:14px}.hero-copy,.hero-visual{min-width:0}@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:clamp(42px,5.7vw,60px)}.hero-visual>img{width:110%;left:-5%}}

/* Hero: headline and illustration. */
.hero {
  grid-template-areas: "copy visual";
  grid-template-rows: auto;
  align-content: center;
  row-gap: 0;
}
.hero-copy { grid-area: copy; align-self: center; }
.hero-visual {
  grid-area: visual;
  isolation: isolate;
  align-self: center;
  padding: 0;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 500px;
  justify-self: end;
  align-items: center;
  gap: 20px;
}
.hero-process,
.hero-smart-store {
  position: relative;
  min-width: 0;
}
.hero-ground {
  position: absolute;
  z-index: -1;
  height: auto;
  overflow: visible;
  fill: #f0f1f3;
  pointer-events: none;
}
.hero-ground--listening,
.hero-ground--discussion { width: 48%; }
.hero-ground--listening { top: 0; left: 0; }
.hero-ground--discussion { top: 0; left: 52%; }
.hero-ground--store { top: 0; left: 0; width: 100%; }
.hero-process {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 4%;
  width: 78%;
}
.hero-process-scene {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  overflow: hidden;
}
.hero-process-scene--listening { z-index: 0; }
.hero-process-scene--discussion { z-index: 1; }
.hero-process-scene > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  max-width: none;
  height: auto;
}
.hero-process-scene--discussion > img { left: -100%; }
.hero-smart-store {
  width: 88%;
  padding-bottom: 8%;
}
.hero-smart-store > img {
  position: static;
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
  transform: none;
}
@media (max-width: 760px) {
  .hero {
    gap: 0;
    padding-top: 36px;
    padding-bottom: 38px;
  }
  .hero-copy { align-self: stretch; text-align: left; }
  .hero-visual {
    width: calc(100% + 24px);
    max-width: 544px;
    aspect-ratio: auto;
    margin: 20px 0 0;
    padding: 0;
    overflow: visible;
  }
  .hero-bottom { display: none; }
}

/* Vision and the path from fieldwork to daily use. */
.philosophy { position: relative; isolation: isolate; overflow: hidden; padding-block: 108px 104px; }
.vision-layout { position: relative; z-index: 1; max-width: 1200px; }
.vision-art {
  position: absolute;
  z-index: 0;
  width: min(74vw, 1080px);
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  bottom: -44px;
  opacity: .5;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 36%);
  mask-image: linear-gradient(90deg, transparent, #000 36%);
}
.vision-art img { width: 100%; height: auto; }
.vision-layout .section-label { margin-bottom: 27px; }
.vision-layout h2 {
  font-size: clamp(42px, 5.1vw, 68px);
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: .02em;
}
.vision-layout h2 span { white-space: nowrap; }
.vision-mobile-break,
.closing-mobile-break { display: none; }
.vision-copy { margin-top: 36px; max-width: 760px; line-height: 2.1; }
.vision-copy p:first-child { font-weight: 650; }
.vision-copy p + p { margin-top: 14px; }
.vision-copy p,
.section-intro,
.example-intro p,
.service-copy p,
.principles p,
.change-points p,
.questions-intro { text-wrap: pretty; }
.vision-signature { margin-top: 35px; color: var(--blue); font-size: 14px; font-weight: 650; letter-spacing: .05em; }
.service-cards {
  --service-art-height: clamp(150px, 18vw, 220px);
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 24px;
}
.service-cards::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: calc(var(--service-art-height) * .51);
  left: -14px;
  right: -18px;
  height: calc(var(--service-art-height) * .62);
  background: #f0f1f3;
  clip-path: polygon(0 20%, calc(100% - 52px) 20%, calc(100% - 52px) 0, 100% 50%, calc(100% - 52px) 100%, calc(100% - 52px) 80%, 0 80%);
  pointer-events: none;
}
.service-card { min-width: 0; }
.service-copy { min-width: 0; }
.service-art { position: relative; height: var(--service-art-height); overflow: hidden; margin-bottom: 26px; }
.service-art img {
  position: absolute;
  width: auto;
  max-width: none;
  height: 100%;
  left: 50%;
  bottom: 0;
  transform: translateX(-55%);
}
.service-art--design { width: var(--service-art-height); max-width: 100%; margin-inline: auto; }
.service-art--design img { transform: translateX(-75%); }
.service-art--results img { transform: translateX(-51%); }
.service-index { display: block; padding-top: 20px; color: var(--blue); font-size: 15px; line-height: 1; font-weight: 650; letter-spacing: .05em; }
.service-card h3 { font-size: 22px; margin-top: 13px; margin-bottom: 13px; }
.service-copy p { font-size: 16px; line-height: 1.9; color: var(--muted); }
.service-scope { margin-top: 52px; border-top: 1px solid var(--line); padding-top: 27px; display: flex; justify-content: space-between; align-items: center; gap: 22px; }
.service-scope > p { font-size: 16px; font-weight: 650; }
.service-scope ul { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.service-scope li { color: #356498; background: var(--light); padding: 5px 14px; border-radius: 4px; font-size: 14px; }
.change-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; margin-top: 42px; }
.change-points article { border-top: 1px solid #c7d9ed; padding-top: 22px; }
.change-points span { font-size: 14px; color: var(--blue); font-weight: 650; }
.change-points h3 { font-size: 20px; margin: 10px 0; }
.change-points p { font-size: 16px; line-height: 1.9; color: var(--muted); }
.example-note { margin-top: 32px; }
.principles { margin-top: 12px; }
.principles article { padding-top: 26px; }
.principles span { font-size: 14px; }
.principles h3 { margin-block: 14px; }
.faq summary { font-size: 16px; }
.faq summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
.closing .button { border-radius: 999px; min-width: 264px; font-size: 16px; }
@media (min-width: 761px) and (max-width: 1100px) {
  .service-cards { --service-art-height: clamp(110px, 13.6vw, 150px); gap: 20px; }
  .service-card h3 { font-size: 19px; }
  .service-scope { align-items: flex-start; flex-direction: column; }
  .change-points { gap: 24px; }
  .change-points h3 { font-size: 18px; }
}
@media (max-width: 760px) {
  .philosophy { padding-block: 62px; }
  .vision-art {
    width: 560px;
    max-width: none;
    bottom: -12px;
    opacity: .23;
    -webkit-mask-image: linear-gradient(90deg, transparent 5%, #000 63%);
    mask-image: linear-gradient(90deg, transparent 5%, #000 63%);
  }
  .vision-layout .section-label { margin-bottom: 22px; }
  .vision-layout h2 { font-size: clamp(32px, 9.5vw, 48px); line-height: 1.55; letter-spacing: .015em; }
  .vision-mobile-break,
  .closing-mobile-break { display: block; }
  .vision-copy { margin-top: 28px; font-size: 16px; line-height: 2; }
  .vision-copy p + p { margin-top: 18px; }
  .vision-signature { margin-top: 28px; font-size: 14px; letter-spacing: 0; }
  .service-cards { grid-template-columns: 1fr; gap: 36px; padding-bottom: 0; }
  .service-cards::before { display: none; }
  .service-card { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 44%; align-items: center; column-gap: 14px; min-height: 210px; }
  .service-card:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 22%;
    bottom: -31px;
    width: 26px;
    height: 32px;
    transform: translateX(50%);
    background: #dce2e9;
    clip-path: polygon(36% 0, 64% 0, 64% 58%, 100% 58%, 50% 100%, 0 58%, 36% 58%);
    pointer-events: none;
  }
  .service-copy { grid-column: 1; grid-row: 1; }
  .service-art { isolation: isolate; grid-column: 2; grid-row: 1; justify-self: center; width: 100%; max-width: 180px; height: auto; aspect-ratio: 1; margin: 0; }
  .service-art::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    bottom: 1%;
    height: 36%;
    border-radius: 50%;
    background: #f0f1f3;
    pointer-events: none;
  }
  .service-index { padding-top: 0; font-size: 14px; }
  .service-card h3 { font-size: 19px; margin-block: 10px; letter-spacing: 0; }
  .service-copy p { font-size: 16px; line-height: 1.9; }
  .service-scope { margin-top: 35px; padding-top: 24px; flex-direction: column; align-items: flex-start; gap: 16px; }
  .service-scope ul { gap: 8px; }
  .service-scope li { padding: 4px 11px; }
  .change-points { grid-template-columns: 1fr; gap: 24px; margin-top: 32px; }
  .change-points article { padding-top: 21px; }
  .change-points h3 { font-size: 20px; margin-block: 8px; }
  .example-note { margin-top: 28px; }
  .principles { gap: 28px; }
  .principles article { padding-top: 22px; }
  .principles h3 { margin-block: 11px; }
  .closing h2 { font-size: clamp(26px, 7.5vw, 36px); line-height: 1.65; letter-spacing: 0; }
  .closing .button { width: 100%; min-width: 0; }
}

/* Experience: two circles, one shared strength. */
.experience { padding-bottom: 0; }
.experience-heading { align-items: flex-start; gap: 44px; margin-bottom: 24px; }
.experience-heading .section-intro { max-width: 440px; padding-top: 40px; }
.experience-venn { position: relative; width: min(100%, 1100px); aspect-ratio: 5 / 3; margin-inline: auto; }
.experience-venn-art { position: absolute; inset: 0; display: block; width: 100%; height: 100%; pointer-events: none; }
.experience-venn-art--mobile { display: none; }
.experience-circle { position: absolute; top: 50%; width: 34%; transform: translate(-50%, -50%); text-align: center; }
.experience-circle--field { left: 23%; }
.experience-circle--product { left: 77%; }
.experience-circle h3 { font-size: clamp(20px, 2.05vw, 27px); line-height: 1.45; letter-spacing: 0; }
.experience-proof { margin-top: 20px; }
.experience-proof-label { display: block; font-size: 16px; line-height: 1.6; font-weight: 650; }
.experience-proof-number { display: flex; align-items: baseline; justify-content: center; min-height: 102px; color: var(--blue); font-size: clamp(68px, 6.6vw, 86px); line-height: 1.15; font-weight: 800; letter-spacing: -.025em; white-space: nowrap; }
.experience-proof-number > span { margin-left: 7px; font-size: .52em; letter-spacing: 0; }
.experience-proof-number--text { align-items: center; font-size: clamp(34px, 3.95vw, 52px); letter-spacing: -.025em; }
.experience-proof-caption { margin-top: 14px; font-size: 16px; line-height: 1.75; font-weight: 600; }
.experience-overlap { position: absolute; top: 50%; left: 50%; width: 16%; transform: translate(-50%, -50%); color: #fff; text-align: center; }
.experience-overlap > span { display: block; margin-bottom: 10px; font-size: 14px; line-height: 1.5; font-weight: 700; letter-spacing: -.03em; }
.experience-overlap > strong { display: block; font-size: clamp(18px, 1.9vw, 24px); line-height: 1.6; }
.experience-synergy { margin-top: 16px; text-align: center; font-size: 21px; font-weight: 700; line-height: 1.9; }
.experience-mobile-break { display: none; }
.experience-details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; margin-top: 42px; }
.experience-details article { min-width: 0; border-top: 1px solid #cbdff5; padding-top: 23px; }
.experience-details h3 { display: flex; align-items: baseline; gap: 12px; margin-bottom: 15px; font-size: 19px; line-height: 1.6; }
.experience-details h3 span { color: var(--blue); font-size: 14px; font-weight: 650; letter-spacing: .06em; }
.experience-details p { color: var(--muted); font-size: 16px; line-height: 2; text-wrap: pretty; }
@media (min-width: 761px) and (max-width: 1100px) {
  .experience-heading { display: block; }
  .experience-heading .section-intro { max-width: 680px; padding-top: 0; margin-top: 24px; }
  .experience-details { gap: 36px; }
  .experience-proof { margin-top: 14px; }
  .experience-proof-number { min-height: 85px; }
  .experience-proof-caption { margin-top: 8px; font-size: 14px; }
}
@media (max-width: 760px) {
  .experience-heading { margin-bottom: 22px; }
  .experience-heading .section-intro { max-width: none; padding-top: 0; }
  .experience-heading h2 { font-size: clamp(24px, 6.3vw, 28px); }
  .experience-venn { width: min(100%, 400px); aspect-ratio: 4 / 7; }
  .experience-venn-art--desktop { display: none; }
  .experience-venn-art--mobile { display: block; }
  .experience-circle { left: 50%; width: 78%; }
  .experience-circle--field { top: 24.5%; }
  .experience-circle--product { top: 75.5%; }
  .experience-circle h3 { font-size: clamp(18px, 5.3vw, 23px); }
  .experience-proof { margin-top: 8px; }
  .experience-proof-label { font-size: 14px; }
  .experience-proof-number { min-height: 64px; font-size: clamp(54px, 15vw, 64px); line-height: 1.1; }
  .experience-proof-number--text { font-size: clamp(34px, 9.5vw, 40px); }
  .experience-proof-caption { margin-top: 7px; font-size: 14px; line-height: 1.65; }
  .experience-overlap { width: 46%; }
  .experience-overlap > span { display: none; }
  .experience-overlap > strong { font-size: 16px; line-height: 1.45; }
  .experience-synergy { margin-top: 20px; font-size: 18px; line-height: 1.9; }
  .experience-mobile-break { display: block; }
  .experience-details { grid-template-columns: 1fr; gap: 28px; margin-top: 32px; }
  .experience-details article { padding-top: 20px; }
  .experience-details h3 { font-size: 18px; margin-bottom: 12px; }
}
@media (max-width: 350px) {
  .experience-proof { margin-top: 6px; }
  .experience-proof-number { min-height: 60px; }
  .experience-proof-caption { margin-top: 5px; }
}
