/* Editorial experience: a useful starting point, a traceable narrative, and a persistent next step. */
.view-home{background:#fbfcfa}
.view-home .nav-shell{max-width:none;width:min(1440px,100%);border-bottom:0;background:transparent}
.view-home .hero:has(.editorial-showcase){
  margin-top:0;padding-top:clamp(70px,7vw,105px);padding-bottom:46px;
  background:radial-gradient(ellipse at 50% 0%,#fff 0%,#f5f9f8 51%,#eaf2ed 100%);
  box-shadow:inset 0 0 0 1px rgba(18,58,44,.04);
}
.view-home .hero:before{top:-580px;width:1150px;height:1150px;border-color:rgba(16,74,58,.055);box-shadow:0 0 0 160px rgba(16,74,58,.014),0 0 0 320px rgba(16,74,58,.01)}
.view-home .hero:after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 32%,rgba(176,216,202,.14),transparent 28%),radial-gradient(circle at 84% 58%,rgba(194,216,164,.17),transparent 32%);animation:hero-atmosphere 20s ease-in-out infinite alternate}
@keyframes hero-atmosphere{to{transform:translate3d(3%,-2%,0) scale(1.04)}}
.view-home .hero:has(.editorial-showcase) .hero-grid .eyebrow{margin-bottom:30px;color:#426857}
.view-home .hero:has(.editorial-showcase) h1{max-width:1060px;font-size:clamp(82px,8vw,122px);line-height:.96;letter-spacing:-.075em}
.view-home .hero h1 span:last-child{margin-top:12px;font-size:.9em;letter-spacing:-.067em}
.view-home .hero:has(.editorial-showcase) .hero-intro{max-width:740px;margin-top:34px;font-size:clamp(17px,1.6vw,20px);color:#486559}
.hero-path-chooser{
  position:relative;z-index:6;display:grid;grid-template-columns:230px 1fr;gap:8px;
  width:min(1070px,100%);margin:42px auto -54px;padding:8px;border:1px solid rgba(17,56,42,.14);
  border-radius:30px;background:#fff;box-shadow:0 28px 65px rgba(10,45,32,.17);
}
.hero-path-prompt{display:flex;flex-direction:column;justify-content:center;gap:9px;min-height:96px;padding:18px 22px;border-radius:23px;background:#0d372a;color:#fff}
.hero-path-prompt span{font:700 10px/1.2 Arial,sans-serif;letter-spacing:.15em;color:#d8ee89}
.hero-path-prompt strong{font:400 21px/1.2 Georgia,"Songti SC",serif}
.hero-path-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.hero-path-links a{display:flex;flex-direction:column;justify-content:center;gap:8px;position:relative;padding:18px 17px;color:#12392d;font-size:14px;font-weight:700;line-height:1.35;border-right:1px solid #e6ece7;transition:background .25s,transform .25s}
.hero-path-links a:last-child{border-right:0}
.hero-path-links a:hover,.hero-path-links a:focus-visible{background:#eef5ea;transform:translateY(-2px)}
.hero-path-links a>span{font:700 10px/1 Arial,sans-serif;color:#7b9b86;letter-spacing:.15em}
.hero-path-links b{position:absolute;top:20px;right:17px;font-size:17px;font-weight:400;color:#608474}
.view-home .editorial-stage{height:clamp(520px,49vw,665px)}
.view-home .editorial-panel img{filter:saturate(.95) contrast(1.01)}
.view-home .editorial-panel:after{background:linear-gradient(0deg,rgba(3,28,21,.86) 0%,rgba(3,28,21,.28) 45%,transparent 85%)}

/* Scroll-driven chapter: every animation explains a due-diligence stage. */
.editorial-manifesto{
  --story-progress:0%;position:relative;order:2;display:block;isolation:isolate;overflow:visible;
  width:100%;max-width:none;min-height:320vh;margin:0;padding:0;border-radius:0;
  background:#fff;color:#092b22;
}
.editorial-manifesto:before{content:none}
.story-sticky{position:sticky;top:94px;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 94px);padding:35px max(32px,calc((100vw - 1340px)/2));background:#fff}
.story-heading{width:100%;max-width:1340px;margin:0 auto 36px}
.story-kicker{display:flex;justify-content:space-between;max-width:100%;margin:0 0 17px;color:#557765;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase}
.editorial-manifesto h2{margin:0;font:400 clamp(42px,4.25vw,68px)/1.08 Georgia,"Songti SC",serif;letter-spacing:-.061em;color:#0c3327;text-wrap:balance}
.editorial-manifesto h2 em{font-style:normal;color:#76a17c}
.story-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,74px);align-items:center;width:100%;max-width:1340px;margin:0 auto}
.story-copy{display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:500px}
.story-steps{display:grid}
.story-steps button{display:flex;align-items:baseline;gap:18px;width:100%;padding:10px 0;border:0;border-bottom:1px solid #e3eae3;background:none;text-align:left;cursor:pointer;color:#9aaea0;transition:color .35s,transform .35s}
.story-steps button:hover,.story-steps button:focus-visible{color:#285541}
.story-steps button.is-active{color:#0b3328;transform:translateX(8px)}
.story-steps button>span{flex:0 0 32px;font:700 11px/1 Arial,sans-serif;letter-spacing:.08em;color:#94aa99}
.story-steps button strong{flex:1;font:400 clamp(34px,3.6vw,57px)/1.1 Georgia,"Songti SC",serif;letter-spacing:-.06em}
.story-steps button i{font-size:20px;font-style:normal;opacity:0;transition:opacity .3s}
.story-steps button.is-active i{opacity:1}
.story-explanation{min-height:135px;padding-top:27px}
.story-explanation>span{font:700 11px/1.2 Arial,sans-serif;letter-spacing:.12em;color:#5b8d70}
.story-explanation p{max-width:470px;margin:12px 0 17px;color:#4f675b;font-size:16px;line-height:1.7}
.story-explanation a{display:inline-flex;align-items:center;gap:22px;padding-bottom:5px;border-bottom:1px solid #0b3328;color:#0b3328;font-size:13px;font-weight:700}
.story-explanation a:hover{color:#427a50;border-color:#427a50}
.story-visual{position:relative;isolation:isolate;overflow:hidden;height:clamp(450px,50vh,570px);border-radius:38px;background:radial-gradient(circle at 55% 42%,#204f3c 0%,#0e352a 45%,#061f1b 100%);box-shadow:0 28px 70px rgba(7,40,28,.18);color:#e9f4df;transition:background .6s}
.editorial-manifesto[data-story-step="2"] .story-visual{background:radial-gradient(circle at 50% 37%,#315f50 0%,#173b34 45%,#061f1b 100%)}
.editorial-manifesto[data-story-step="3"] .story-visual{background:radial-gradient(circle at 50% 58%,#225c57 0%,#103a38 45%,#061f1b 100%)}
.editorial-manifesto[data-story-step="4"] .story-visual{background:radial-gradient(circle at 70% 40%,#536643 0%,#23402f 45%,#061f1b 100%)}
.story-visual:before,.story-visual:after{content:"";position:absolute;z-index:-1;left:50%;top:50%;width:84%;aspect-ratio:1;border:1px solid rgba(193,230,168,.11);border-radius:50%;transform:translate(-50%,-50%)}
.story-visual:after{width:120%;box-shadow:0 0 0 80px rgba(193,230,168,.025),0 0 0 160px rgba(193,230,168,.017)}
.story-gridlines{position:absolute;inset:0;opacity:.28;background-image:linear-gradient(rgba(212,245,201,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(212,245,201,.1) 1px,transparent 1px);background-size:61px 61px;mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent)}
.story-visual-top,.story-visual-bottom{position:absolute;z-index:3;left:30px;right:30px;display:flex;justify-content:space-between;gap:20px;font:700 10px/1.3 Arial,sans-serif;letter-spacing:.12em;color:#bad9b8}
.story-visual-top{top:28px}.story-visual-bottom{bottom:26px}
.story-map{position:absolute;inset:5% 2% 9%;width:96%;height:86%;overflow:visible}
.story-map-path{stroke:rgba(217,239,105,.26);stroke-width:2.5}
.story-map-pulse{stroke:#d9ef69;stroke-width:3;stroke-linecap:round;stroke-dasharray:8 25;animation:story-route 8s linear infinite}
@keyframes story-route{to{stroke-dashoffset:-132}}
.story-map-node{opacity:.35;transition:opacity .35s}
.story-map-node.is-active{opacity:1}
.story-node-halo{fill:rgba(217,239,105,.08);stroke:rgba(217,239,105,.28);stroke-width:1;transform-box:fill-box;transform-origin:center;transition:transform .5s,fill .5s}
.story-map-node.is-active .story-node-halo{fill:rgba(217,239,105,.2);transform:scale(1.5)}
.story-node-dot{fill:#d9ef69}
.story-map-node text{fill:#e1efc8;font:700 15px Arial,sans-serif;letter-spacing:.06em}
.story-signal{position:absolute;z-index:4;left:50%;top:50%;display:grid;gap:8px;min-width:215px;padding:22px 25px;border:1px solid rgba(217,239,105,.36);border-radius:20px;background:rgba(9,43,34,.88);box-shadow:0 16px 50px rgba(1,19,14,.22);backdrop-filter:blur(14px);transform:translate(-50%,-50%)}
.story-signal small{color:#b9d4bb;font:700 9px Arial,sans-serif;letter-spacing:.13em}
.story-signal strong{color:#ecf5df;font:400 23px Georgia,"Songti SC",serif;white-space:nowrap}
.story-signal span{color:#d9ef69;font:700 9px Arial,sans-serif;letter-spacing:.1em}
.story-progress{height:3px;width:100%;max-width:1340px;margin:30px auto 0;background:#e1eae1}
.story-progress span{display:block;width:var(--story-progress);height:100%;background:#346949;transition:width .15s linear}

/* The next useful step stays available without pretending this is a chat product. */
.home-action-dock{position:fixed;z-index:58;left:50%;bottom:18px;display:flex;align-items:center;gap:14px;width:max-content;max-width:calc(100vw - 38px);padding:8px 10px 8px 9px;border:1px solid rgba(17,56,42,.18);border-radius:100px;background:rgba(255,255,255,.97);box-shadow:0 14px 55px rgba(7,38,28,.19);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transform:translate(-50%,calc(100% + 35px));transition:opacity .32s,transform .4s cubic-bezier(.22,1,.36,1)}
.home-action-dock.is-visible{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
.dock-mark{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:50%;background:#0e382b;color:#d9ef69;font:400 13px Georgia,serif}
.home-action-dock p{margin:0 8px 0 0;color:#3d6252;font-size:12px;font-weight:700;white-space:nowrap}
.home-action-dock a{padding:12px 17px;border-radius:100px;color:#143b2e;font-size:12px;font-weight:700;white-space:nowrap}
.home-action-dock a:first-of-type{display:flex;gap:20px;background:#0e382b;color:#fff}
.home-action-dock a:first-of-type span{color:#d9ef69}
.home-action-dock a:hover{background:#e5efde;color:#0e382b}
.view-home>.motion-control{display:flex;bottom:24px;right:20px;z-index:59;padding:12px 14px;background:#fff;font-size:12px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px);transition:opacity .3s,transform .3s,visibility .3s}
.view-home:has(.home-action-dock.is-visible)>.motion-control{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.motion-paused .story-map-pulse,.view-home.motion-paused .hero:after{animation-play-state:paused}
.motion-paused .editorial-panel.is-active img,.motion-paused .editorial-timeline button.is-active .editorial-track i{animation-play-state:paused}

@media(max-height:800px) and (min-width:801px){
  .story-sticky{padding-top:18px;padding-bottom:18px}
  .story-heading{margin-bottom:15px}
  .story-kicker{margin-bottom:9px}
  .editorial-manifesto h2{font-size:clamp(36px,3.6vw,50px)}
  .story-copy{min-height:395px}
  .story-steps button{padding:6px 0}
  .story-steps button strong{font-size:clamp(30px,3.2vw,44px)}
  .story-explanation{min-height:105px;padding-top:15px}
  .story-explanation p{margin:7px 0 10px;font-size:14px}
  .story-visual{height:395px}
  .story-progress{margin-top:14px}
}

@media(max-width:1000px){
  .story-sticky{padding:55px 30px}
  .story-grid{gap:30px}
  .story-copy{min-height:450px}
  .story-steps button strong{font-size:clamp(32px,4.3vw,47px)}
  .hero-path-chooser{grid-template-columns:190px 1fr}
  .hero-path-links a{font-size:12px;padding:14px 12px}
}
@media(max-width:800px){
  .view-home .hero:has(.editorial-showcase){padding-top:65px}
  .view-home .hero:has(.editorial-showcase) h1{font-size:clamp(62px,10vw,84px)}
  .editorial-manifesto{min-height:0}
  .story-sticky{position:relative;top:auto;min-height:0;padding:86px 28px 80px}
  .story-grid{grid-template-columns:1fr;gap:42px}
  .story-copy{min-height:0}
  .story-heading{margin-bottom:45px}
  .editorial-manifesto h2{font-size:clamp(44px,6vw,60px)}
  .story-steps button strong{font-size:clamp(39px,6vw,52px)}
  .story-explanation{min-height:130px}
  .story-visual{height:450px}
  .story-progress{display:none}
}
@media(max-width:650px){
  .view-home .hero:has(.editorial-showcase){width:calc(100% - 16px);padding-top:56px;padding-left:18px;padding-right:18px;border-radius:30px}
  .view-home .hero:has(.editorial-showcase) h1{font-size:clamp(55px,12.5vw,75px);line-height:1.02}
  .view-home .hero h1 span:last-child{font-size:.94em;line-height:1.06}
  .view-home .hero:has(.editorial-showcase) .hero-intro{margin:26px 0 0;font-size:15px;line-height:1.75}
  .hero-path-chooser{grid-template-columns:1fr;gap:0;margin:31px auto -30px;padding:6px;border-radius:22px}
  .hero-path-prompt{min-height:0;padding:15px 16px;border-radius:17px;gap:4px}
  .hero-path-prompt strong{font-size:18px}
  .hero-path-links{grid-template-columns:1fr}
  .hero-path-links a{flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;min-height:45px;padding:12px 15px;border-right:0;border-bottom:1px solid #e8ede8;font-size:12px}
  .hero-path-links a:last-child{border-bottom:0}
  .hero-path-links b{top:auto;right:15px}
  .view-home .editorial-stage{height:440px}
  .story-sticky{padding:75px 22px 70px}
  .story-kicker{font-size:9px;letter-spacing:.11em}
  .editorial-manifesto h2{font-size:clamp(38px,9vw,50px)}
  .story-heading{margin-bottom:34px}
  .story-steps button{gap:10px;padding:11px 0}
  .story-steps button>span{flex-basis:25px;font-size:10px}
  .story-steps button strong{font-size:clamp(34px,9vw,46px)}
  .story-steps button i{font-size:15px}
  .story-explanation p{font-size:15px}
  .story-visual{height:340px;border-radius:25px}
  .story-visual-top,.story-visual-bottom{left:16px;right:16px;font-size:8px}
  .story-visual-top{top:19px}.story-visual-bottom{bottom:17px}
  .story-signal{min-width:178px;padding:16px 18px}
  .story-signal strong{font-size:18px}
  .home-action-dock{bottom:12px;width:calc(100% - 24px);justify-content:space-between;gap:5px;padding:7px}
  .home-action-dock p{display:none}
  .home-action-dock a{padding:10px 11px;font-size:11px}
  .home-action-dock a:first-of-type{flex:1;justify-content:space-between;gap:5px}
  .view-home>.motion-control{right:12px;bottom:77px;padding:9px 12px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .view-home .hero:after,.story-map-pulse{animation:none!important}
  .story-steps button,.home-action-dock,.hero-path-links a{transition:none!important}
  .view-home>.motion-control{display:none}
}
@media print{
  .editorial-manifesto{min-height:0}
  .story-sticky{position:relative;min-height:0}
  .home-action-dock,.view-home>.motion-control{display:none!important}
}
