/* Shared public-page design. Existing data and form hooks remain intact. */
body.knot-page main{padding-left:max(7%,env(safe-area-inset-left))!important;padding-right:max(7%,env(safe-area-inset-right))!important}
.contact-help p{overflow-wrap:anywhere;white-space:normal!important}.quantum-header{padding-left:max(5.6%,env(safe-area-inset-left));padding-right:max(5.6%,env(safe-area-inset-right))}.quantum-header nav{min-width:0}.quantum-header nav a{min-height:44px;display:inline-flex;align-items:center}@media(max-width:1000px){body.knot-page .contact-layout{grid-template-columns:1fr!important}.quantum-header{flex-wrap:wrap}}
.motion-footer nav{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:12px}.motion-footer nav a{color:#526f81;text-decoration:none}.motion-footer .glyph{font-family:Arial,'Yu Gothic',sans-serif!important}.motion-footer .controls{display:flex;gap:10px}.plant-chapter-label{background:none!important;box-shadow:none!important;border-radius:0!important}body.knot-page .plant-chapter-copy p{color:#486377!important}
body.knot-site{background:#fff!important;color:#15364b;font-family:Arial,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}.quantum-header{max-width:1440px;margin:auto;padding:30px 5.6%;display:flex;align-items:center;justify-content:space-between;gap:25px}.quantum-brand{font-size:21px;font-weight:700;letter-spacing:.1em;color:#15364b;text-decoration:none;white-space:nowrap}.quantum-header nav{display:flex;flex-wrap:wrap;gap:12px 24px}.quantum-header nav a{font-size:12px;text-decoration:none;color:#526f81;padding-block:8px}.quantum-header nav a[aria-current]{color:#15364b;border-bottom:1px solid #699ba6}.quantum-header a:focus-visible{outline:2px solid #699ba6;outline-offset:5px}
body.knot-page main{max-width:1200px!important;margin:0 auto!important;padding:0 5% 70px!important;width:100%;background:white!important}body.knot-page h1,body.knot-page h2,body.knot-page h3{font-family:inherit!important;color:#15364b!important;letter-spacing:-.025em!important}body.knot-page h1{font-size:clamp(34px,5.1vw,66px)!important;line-height:1.4!important;font-weight:600!important;word-break:normal}body.knot-page h2{font-size:clamp(24px,3vw,36px)!important;line-height:1.55!important}body.knot-page p{line-height:2!important}body.knot-page main [data-target]{opacity:1!important;transform:none!important;filter:none!important}body.knot-page main section{scroll-margin-top:25px}body.knot-page :is(.about-story-hero,.activities-hero,.records-hero,.recordings-hero,.contact-intro){min-height:0!important;height:auto!important;padding:75px 0 55px!important;margin:0!important;text-align:left!important;display:block!important;background:white!important;position:relative!important}body.knot-page .story-hero-heading{position:relative!important;inset:auto!important;transform:none!important;text-align:left!important;max-width:850px!important;width:100%!important;margin:0!important;padding:0!important}body.knot-page :is(.story-kicker,.eyebrow){font:11px/1.8 Arial,sans-serif!important;color:#698a9c!important;letter-spacing:.18em!important;text-transform:uppercase}body.knot-page :is(.about-hero-note,.records-lead){max-width:700px!important;margin:20px 0!important;font-size:15px!important}body.knot-page :is(.about-botanical,.petal-water-scene,.landscape-art){display:none!important}body.knot-page :is(.landscape-section,.about-plant-story){background:none!important;margin:0!important;padding:0!important;min-height:0!important}body.knot-page .plant-chapter{display:grid!important;grid-template-columns:180px 1fr!important;gap:40px!important;width:100%!important;margin:0!important;padding:65px 0!important;min-height:0!important;border-top:1px solid #dfe8ed;background:white!important;box-shadow:none!important;border-radius:0!important}body.knot-page .plant-chapter-copy{max-width:none!important;width:100%!important;background:none!important;padding:0!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}body.knot-page .plant-chapter-label{position:static!important;display:block!important;color:#6c8a99!important}.plant-chapter-label span{font-size:12px!important}.plant-chapter-label p{font-size:13px!important}body.knot-page .host-section{margin:10px 0 75px!important;padding:35px 0!important;border-top:1px solid #dfe8ed;border-bottom:1px solid #dfe8ed;display:grid!important;grid-template-columns:240px 1fr!important;gap:55px!important;background:white!important}body.knot-page .host-section>img{width:100%!important;height:300px!important;object-fit:cover;object-position:50% 25%;border-radius:2px}body.knot-page .plant-thought{background:#f7fafb!important;border-left:2px solid #a5c7cf!important;box-shadow:none!important;padding:22px!important}body.knot-page :is(.plant-process-list,.plant-value-grid){gap:20px!important}body.knot-page :is(.plant-value-grid article,.plant-process-list li){background:white!important;box-shadow:none!important;border:0!important;border-top:1px solid #b4c9d3!important;border-radius:0!important;padding:20px 0!important}body.knot-page :is(.guest-guide,.activities-intro,.activities-log,.records-intro,.records-log,.recordings-archive){max-width:none!important;margin:0!important;padding:40px 0!important;background:white!important;border-radius:0!important;box-shadow:none!important}body.knot-page .guest-guide{border:0!important;border-top:1px solid #dfe8ed!important;border-bottom:1px solid #dfe8ed!important}body.knot-page :is(.records-wide-image,.activities-wide-image){max-width:400px!important;margin:25px auto!important}body.knot-page :is(.records-wide-image,.activities-wide-image) img{width:100%;height:auto;max-height:360px;object-fit:contain}body.knot-page .contact-layout{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important;gap:55px!important;padding:0!important;margin:0!important}.contact-form{background:white!important;border:0!important;box-shadow:none!important;padding:0!important}.contact-help{background:#f6f9fa!important;border:0!important;padding:28px!important}.contact-field input,.contact-field select,.contact-field textarea{background:#fff!important;border:1px solid #b3c5cf!important;border-radius:3px!important;min-height:46px;font-size:16px!important}.contact-submit,.public-search button{background:#15364b!important;color:#fff!important;border-radius:30px!important;padding:13px 24px!important}.contact-field em{color:#536f80!important}.public-search{background:#f7fafb!important;border:1px solid #e1eaee!important;border-radius:0!important}body.knot-page .action-link{color:#15364b!important}.quantum-page-note{border-top:1px solid #dfe8ed;margin-top:50px;padding-top:25px;font-size:13px}.motion-footer{background:white!important}
@media(max-width:800px){.quantum-header{display:block;padding:24px 7%}.quantum-brand{font-size:18px}.quantum-header nav{margin-top:18px;gap:4px 17px}.quantum-header nav a{font-size:11px}body.knot-page main{padding-inline:7%!important}body.knot-page :is(.about-story-hero,.activities-hero,.records-hero,.recordings-hero,.contact-intro){padding:40px 0!important}body.knot-page .host-section{grid-template-columns:1fr!important;gap:24px!important;margin-bottom:45px!important}.host-section>img{max-width:240px!important}body.knot-page .plant-chapter{grid-template-columns:1fr!important;gap:18px!important;padding:40px 0!important}body.knot-page .contact-layout{grid-template-columns:1fr!important;gap:35px!important}body.knot-page :is(.plant-value-grid,.plant-process-list){grid-template-columns:1fr!important}body.knot-page main p{font-size:14px}body.knot-page .contact-help{padding:22px!important}}
body.knot-page main{padding-left:max(7%,env(safe-area-inset-left))!important;padding-right:max(7%,env(safe-area-inset-right))!important}
@media(max-width:1000px){body.knot-page .contact-layout{grid-template-columns:1fr!important}}
.quantum-header{padding-left:max(5.6%,env(safe-area-inset-left))!important;padding-right:max(5.6%,env(safe-area-inset-right))!important}
.motion-footer .controls{flex-wrap:wrap}
@media(max-width:319px){.hero .copy{min-width:0}.hero h1{font-size:9vw}.hero .cta{gap:12px;padding-inline:12px;max-width:100%;font-size:11px}.hero{grid-template-columns:minmax(0,1fr)}.hero .intro{max-width:100%}}
/* Approved Open Earth identity: live text keeps the name crisp at every size. */
.quantum-header .quantum-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;min-height:52px;letter-spacing:.045em;line-height:1.25}
.quantum-header .brand-symbol{display:block;width:52px;height:52px;object-fit:contain;flex-shrink:0}
.quantum-header .brand-name{display:block;font-family:Arial,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif;font-size:21px;font-weight:700}
.quantum-header .brand-name small{display:block;margin-top:5px;font:600 9px/1.4 Arial,sans-serif;letter-spacing:.19em;color:#526f81}
@media(max-width:800px){.quantum-header .brand-symbol{width:44px;height:44px}.quantum-header .quantum-brand{gap:9px;min-height:44px}.quantum-header .brand-name{font-size:18px}.quantum-header .brand-name small{font-size:8px}}

/* Fine paper grain unifies the pages quietly beneath content and controls. */
html{background:#fff}
body,body.knot-site{
  background-color:#fff!important;
  background-image:url("./assets/data/paper-grain.svg")!important;
  background-position:center top!important;
  background-repeat:repeat-y!important;
  background-size:512px 512px!important;
  background-attachment:scroll!important;
}
body.knot-page main{background:transparent!important}
body.knot-page main>section{background-color:rgba(255,255,255,.94)!important}
.story-manifesto{background-color:rgba(255,255,255,.94)!important}
.japan-ai-radio{background:linear-gradient(115deg,rgba(247,250,251,.95) 0%,rgba(255,255,255,.93) 58%,rgba(244,248,249,.95) 100%)}
body:not(.knot-page) main>.hero{background-color:#fff!important;background-image:none!important}
body.knot-page main>.about-story-hero{
  background-image:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.9) 53%,rgba(255,255,255,.78) 100%),url("./assets/optimized/tohoku--aobayama-new-campus-1-480.webp")!important;
  background-position:center, right 44%!important;
  background-size:cover!important;
}
@media(max-width:800px){body,body.knot-site{background-position:center top!important}}
@media(max-width:600px){body.knot-page main>.about-story-hero{background-image:linear-gradient(90deg,rgba(255,255,255,.97),rgba(255,255,255,.91)),url("./assets/optimized/tohoku--aobayama-new-campus-1-480.webp")!important}}

/* Give each interior page its own quiet visual cue, without changing its content. */
body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro){
  isolation:isolate;
  overflow:hidden;
  min-height:300px!important;
  display:flex!important;
  align-items:center;
  border-bottom:1px solid #e3ebef;
}
body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro)::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:12px 0 18px auto;
  width:min(43%,480px);
  opacity:.78;
  background-position:center;
  background-size:cover;
  border-radius:48% 0 0 48%;
  mask-image:linear-gradient(90deg,transparent 0%,#000 28%);
  pointer-events:none;
}
body.knot-page main>.activities-hero::after{
  background-image:url("./assets/optimized/future-lab--activity-hero-atlas-960.webp");
}
body.knot-page main>.records-hero::after{
  background-image:url("./assets/optimized/future-lab--record-field-light-960.webp");
}
body.knot-page main>.recordings-hero::after{
  background-image:url("./assets/data/audio-waveform.svg");
  background-size:contain;
  background-repeat:no-repeat;
  border-radius:0;
  mask-image:none;
}
body.knot-page main>.contact-intro::after{
  background-image:url("./assets/optimized/about-port--record-table-960.webp");
  opacity:.58;
}
body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro) :is(.story-hero-heading,.eyebrow,h1,p){
  position:relative;
  z-index:1;
}
body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero) .story-hero-heading{max-width:58%!important}
body.knot-page main>.contact-intro{display:block!important;padding-top:74px!important}
body.knot-page main>.contact-intro .eyebrow{display:block;width:max-content;max-width:100%;white-space:nowrap}
body.knot-page main>.contact-intro h1{max-width:620px;font-size:clamp(34px,4.6vw,58px)!important}
body.knot-page main>.contact-intro>p{position:relative;z-index:1;max-width:620px}

/* About page: a quiet field journal that moves from campus to ideas to archive. */
body.knot-page .about-plant-story{position:relative;isolation:isolate}
body.knot-page .about-plant-story::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 -8vw;
  background:
    radial-gradient(ellipse at 15% 8%,rgba(222,236,240,.42),transparent 28%),
    radial-gradient(ellipse at 87% 44%,rgba(229,238,241,.32),transparent 26%),
    #fff;
  pointer-events:none;
}
body.knot-page .about-plant-story .plant-chapter{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
  background:transparent!important;
  grid-template-columns:140px minmax(0,1fr)!important;
  gap:32px!important;
}
body.knot-page .about-plant-story .plant-chapter::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:10px 0;
  left:auto;
  width:31%;
  background-position:right center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.94;
  mask-image:linear-gradient(90deg,transparent 0%,#000 43%);
  pointer-events:none;
}
body.knot-page .about-plant-story .plant-chapter-copy{position:relative;z-index:1;max-width:600px!important}
body.knot-page .plant-chapter-root::before{background-image:url("./assets/optimized/hero-inquiry--campus-stairs-960.webp")}
body.knot-page .plant-chapter-mission::before{background-image:url("./assets/optimized/future-lab--activity-record-forest-960.webp")}
body.knot-page .plant-chapter-future::before{background-image:url("./assets/optimized/future-lab--activity-hero-atlas-960.webp")}
body.knot-page .plant-chapter-process::before{background-image:url("./assets/optimized/future-lab--record-hero-archive-960.webp")}
body.knot-page .plant-chapter-value::before{background-image:url("./assets/optimized/future-lab--record-inquiry-sakura-960.webp")}
body.knot-page .plant-chapter-mission{border-top-color:#e7edf0!important}
body.knot-page .plant-chapter-future{border-top-color:#e7edf0!important}
body.knot-page .plant-chapter-process{border-top-color:#e7edf0!important}
body.knot-page .plant-chapter-value{border-top-color:#e7edf0!important}
body.knot-page .host-section{position:relative;background:linear-gradient(105deg,#f7fafb 0%,#fff 63%)!important}
body.knot-page .host-section::after{content:"";position:absolute;right:0;top:0;width:26%;height:100%;z-index:0;background:radial-gradient(ellipse at 90% 15%,rgba(194,218,225,.26),transparent 68%);pointer-events:none}
body.knot-page .host-section>*{position:relative;z-index:1}

/* Turn the existing editorial images into intentional paired compositions. */
body.knot-page .activities-intro,
body.knot-page .records-intro{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  align-items:center;
  gap:clamp(28px,5vw,72px);
  padding:clamp(44px,7vw,82px) 0!important;
}
body.knot-page .activities-belief{max-width:620px;padding:0 0 0 24px;border-left:2px solid #a8c5cd}
body.knot-page :is(.activities-wide-image,.records-wide-image){
  max-width:none!important;
  width:100%;
  margin:0!important;
  overflow:hidden;
  background:#f3f7f8;
}
body.knot-page :is(.activities-wide-image,.records-wide-image) img{
  display:block;
  width:100%;
  height:clamp(260px,34vw,420px)!important;
  max-height:none!important;
  object-fit:cover!important;
}
body.knot-page .records-lead{margin:0!important;padding-left:24px;border-left:2px solid #a8c5cd}
body.knot-page .guest-facts>div{padding:22px 20px;background:linear-gradient(145deg,#f7fafb,#fff 78%);border-top:2px solid #bdd0d7}
body.knot-page .guest-facts dt{color:#698a9c;font-size:12px;letter-spacing:.12em}
body.knot-page .guest-facts dd strong{display:block;margin:8px 0;color:#15364b;font-size:clamp(22px,2.4vw,30px);font-weight:600}
body.knot-page .guest-promises section{padding:8px 20px 8px 0;border-left:2px solid #d4e1e6;padding-left:18px}
body.knot-page .recordings-empty{position:relative;isolation:isolate;max-width:920px;margin:25px auto 0;padding:clamp(70px,10vw,110px) 24px!important;overflow:hidden;background:linear-gradient(110deg,#f7fafb,rgba(255,255,255,.95) 75%);border:1px solid #e2ebef;border-radius:2px}
body.knot-page .recordings-empty::before{content:"";position:absolute;z-index:-1;right:8%;top:50%;width:130px;aspect-ratio:1;transform:translateY(-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 12px,rgba(99,145,160,.16) 13px 14px,transparent 15px 23px)}
body.knot-page .contact-help{position:relative;border-top:2px solid #a8c5cd!important;background:linear-gradient(145deg,#f5f9fa,#fff 75%)!important}
@media(max-width:800px){
  body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro){min-height:240px!important}
  body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro)::after{inset:8px 0 10px auto;width:40%;opacity:.42}
  body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero) .story-hero-heading{max-width:72%!important}
  body.knot-page :is(.activities-intro,.records-intro){grid-template-columns:minmax(0,1fr);gap:24px}
  body.knot-page :is(.activities-wide-image,.records-wide-image) img{height:clamp(220px,62vw,360px)!important}
  body.knot-page .about-plant-story .plant-chapter{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  body.knot-page .about-plant-story .plant-chapter::before{width:27%;opacity:.34;mask-image:linear-gradient(90deg,transparent 0%,#000 55%)}
  body.knot-page .about-plant-story .plant-chapter-copy{max-width:min(100%,600px)!important}
}
@media(max-width:480px){
  body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero,.contact-intro)::after{width:34%;opacity:.28}
  body.knot-page main>:is(.activities-hero,.records-hero,.recordings-hero) .story-hero-heading{max-width:82%!important}
  body.knot-page main>.recordings-hero .story-hero-heading{max-width:100%!important}
  body.knot-page main>.recordings-hero h1{font-size:clamp(30px,8vw,38px)!important}
  body.knot-page .guest-facts>div{padding:18px 16px}
}
