/* The concept story uses the shared Panmettan tokens and page chrome. */
.concept-page .story-hero{position:relative;overflow:hidden;padding:68px 0 84px;background:#f5f3e9}
.concept-page .story-hero:before{content:"";position:absolute;width:42vw;height:42vw;max-width:650px;max-height:650px;border-radius:48% 52% 61% 39% / 59% 41% 59% 41%;background:#e5eadb;right:-13vw;top:-16vw;transform:rotate(-19deg)}
.concept-page .story-hero-grid{display:grid;grid-template-columns:minmax(0,.91fr) minmax(0,1.09fr);gap:7%;align-items:center;position:relative}
.concept-page .story-hero-copy{padding:22px 0 6px}
.concept-page .story-hero .kicker{margin-bottom:21px}
.concept-page .story-hero h1{font-size:clamp(3.45rem,5.35vw,5.65rem);line-height:.98;letter-spacing:-.065em;max-width:670px;margin:0 0 28px}
.concept-page .story-hero h1 em{font-style:normal;color:var(--rust-text);white-space:nowrap}
.concept-page .story-lede{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55;max-width:520px;margin:0}
.concept-page .story-hero-visual{position:relative;margin:0;min-height:535px;isolation:isolate}
.concept-page .story-hero-visual:before{content:"";position:absolute;width:74%;height:82%;background:var(--rust);right:-5%;top:-4%;border-radius:58% 42% 61% 39% / 40% 55% 45% 60%;transform:rotate(12deg);z-index:-1}
.concept-page .story-hero-photo{display:block;width:100%;height:535px;object-fit:cover;object-position:52% center;border-radius:36px 112px 35px 100px;box-shadow:0 26px 55px rgba(25,54,33,.17)}
.concept-page .story-hero-visual figcaption{position:absolute;right:-8px;bottom:-24px;max-width:220px;padding:17px 20px;background:var(--green);color:var(--cream);border-radius:34px 7px 31px 7px;font-size:14px;line-height:1.32;font-weight:750;box-shadow:0 15px 30px rgba(25,54,33,.16)}
.concept-page .story-premise{padding:78px 0 84px}
.concept-page .story-premise-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:7%;align-items:start}
.concept-page .story-premise .kicker{grid-column:1/-1;margin:0 0 22px}
.concept-page .story-premise h2{font-size:clamp(2.9rem,4.1vw,4rem);max-width:660px;margin:0}
@media(min-width:701px){.concept-page .story-premise h2 span{display:block}}
.concept-page .story-premise p:not(.kicker){font-size:clamp(1.16rem,1.55vw,1.4rem);line-height:1.52;max-width:700px;margin-bottom:16px}
.concept-page .story-premise .story-premise-note{font-size:15px!important;color:#536858;max-width:580px!important;margin:0}
.concept-page .story-chapter{padding:88px 0;border-top:1px solid var(--line)}
.concept-page .story-chapter-grid,.concept-page .story-find-grid,.concept-page .story-market-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;align-items:center}
.concept-page .story-chapter-copy{max-width:570px}
.concept-page .story-index{display:flex;align-items:center;gap:12px;color:var(--rust-text);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.075em;margin:0 0 21px}
.concept-page .story-index span{display:inline-grid;place-items:center;flex:none;width:36px;height:36px;border:1px solid currentColor;border-radius:50% 50% 50% 14%;font-size:11px}
.concept-page .story-chapter h2{font-size:clamp(2.75rem,4.1vw,4.4rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:25px;max-width:600px}
.concept-page .story-chapter-copy>p:not(.story-index){font-size:clamp(1.05rem,1.45vw,1.2rem);line-height:1.58;max-width:540px;margin-bottom:28px}
.concept-page .story-more{border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:540px}
.concept-page .story-more summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;cursor:pointer;font-size:15px;font-weight:780}
.concept-page .story-more summary::-webkit-details-marker{display:none}
.concept-page .story-more summary span{display:grid;place-items:center;flex:none;width:27px;height:27px;background:var(--green);color:white;border-radius:50%;font-size:20px;line-height:1;font-weight:400;transition:transform .2s}
.concept-page .story-more[open] summary span{transform:rotate(45deg)}
.concept-page .story-more>div{padding:0 39px 21px 0;color:#435e4b;font-size:14px;line-height:1.58}
.concept-page .story-more>div p{margin:0 0 11px}
.concept-page .story-more>div p:last-child{margin-bottom:0}
.concept-page .story-chapter-route{background:#e9ede3}
.concept-page .route-art{position:relative;height:440px;border-radius:36px 110px 39px 85px;background:#f7f4ec;overflow:hidden;box-shadow:0 14px 35px rgba(20,54,34,.07)}
.concept-page .route-art:before{content:"";position:absolute;width:300px;height:300px;border-radius:57% 43% 51% 49% / 42% 59% 41% 58%;background:#e5d8c2;right:-85px;top:-145px;transform:rotate(18deg)}
.concept-page .route-art-label{position:absolute;left:34px;top:27px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--rust-text)}
.concept-page .route-line{position:absolute;inset:10px 0 0;width:100%;height:100%;overflow:visible}
.concept-page .route-line path{fill:none;stroke:var(--rust-text);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:7 9;opacity:.8}
.concept-page .route-node{position:absolute;display:flex;align-items:center;gap:7px;padding:8px 12px;border-radius:20px;background:#fff;color:var(--green);box-shadow:0 8px 20px rgba(20,54,34,.1);font-size:12px;font-weight:800;white-space:nowrap}
.concept-page .route-node i{display:block;width:8px;height:8px;border-radius:50%;background:var(--rust-text)}
.concept-page .route-node-a{left:9%;top:19%}.concept-page .route-node-b{left:10%;bottom:19%}.concept-page .route-node-c{right:5%;bottom:14%;background:var(--green);color:white}.concept-page .route-node-c i{background:#e9d4ad}
.concept-page .route-art-foot{position:absolute;left:34px;bottom:28px;max-width:180px;color:#496655;font-size:12px;line-height:1.35;font-weight:700}
.concept-page .story-find-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)}
.concept-page .story-find-visual{position:relative;min-height:560px}
.concept-page .story-find-visual:before{content:"";position:absolute;width:71%;height:75%;left:-8%;bottom:-5%;background:var(--sage);border-radius:59% 41% 35% 65% / 43% 53% 47% 57%;transform:rotate(-19deg)}
.concept-page .story-find-visual img{position:relative;display:block;width:79%;height:560px;object-fit:cover;object-position:center;border-radius:95px 34px 95px 35px;box-shadow:var(--shadow)}
.concept-page .story-find-caption{position:absolute;right:0;bottom:30px;width:52%;background:var(--green);color:var(--cream);padding:22px 23px;border-radius:34px 8px 34px 8px;box-shadow:0 14px 33px rgba(20,54,34,.2)}
.concept-page .story-find-caption span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#e4d0b1;font-weight:800;margin-bottom:7px}
.concept-page .story-find-caption strong{font-size:20px;line-height:1.13;letter-spacing:-.03em;display:block}
.concept-page .story-chapter-market{background:#f5f2e8}
.concept-page .story-market-visual{position:relative;margin:0}
.concept-page .story-market-visual img{display:block;width:100%;height:515px;object-fit:cover;border-radius:34px 105px 34px 85px;box-shadow:var(--shadow)}
.concept-page .story-market-visual figcaption{position:relative;margin:-35px 24px 0 auto;padding:16px 19px;max-width:265px;background:#f8f6ee;border-left:3px solid var(--rust-text);border-radius:3px 17px 17px 3px;font-size:13px;line-height:1.38;font-weight:700;box-shadow:0 12px 26px rgba(20,54,34,.08)}
.concept-page .story-chapter-sales{background:#e9ede3}
.concept-page .sales-art{padding:38px;border-radius:36px 100px 35px 80px;background:#f8f6ee;box-shadow:0 14px 35px rgba(20,54,34,.07)}
.concept-page .sales-art-kicker{margin:0 0 26px;color:var(--rust-text);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.concept-page .sales-art-item{display:grid;grid-template-columns:35% 1fr;gap:16px;padding:19px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.35}
.concept-page .sales-art-item span{color:#526b57}
.concept-page .sales-art-item strong{color:var(--green);font-size:17px}
.concept-page .story-close{background:var(--green);color:var(--cream);padding:84px 0 88px}
.concept-page .story-close-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:45px}
.concept-page .story-close .kicker{color:#e4d0b1}
.concept-page .story-close h2{font-size:clamp(2.6rem,4vw,4.25rem);max-width:740px;margin-bottom:20px}
.concept-page .story-close p:not(.kicker){font-size:17px;color:#e5eddf;max-width:550px;margin:0}
.concept-page .story-close-actions{display:grid;justify-items:start;gap:19px;padding-bottom:5px}
.concept-page .story-close-link{font-weight:750;font-size:15px;text-underline-offset:5px}
.concept-page .story-close-link span{margin-left:5px}
@media(max-width:1000px){.concept-page .story-hero-grid{gap:4%}.concept-page .story-hero h1{font-size:clamp(2.9rem,5.3vw,4.2rem)}.concept-page .story-hero-visual,.concept-page .story-hero-photo{min-height:440px;height:440px}.concept-page .story-chapter-grid,.concept-page .story-find-grid,.concept-page .story-market-grid{gap:5%}.concept-page .story-chapter h2{font-size:clamp(2.5rem,4vw,3.6rem)}.concept-page .story-find-visual,.concept-page .story-find-visual img{min-height:470px;height:470px}.concept-page .story-market-visual img{height:450px}}
@media(max-width:700px){.concept-page .story-hero{padding:47px 0 58px}.concept-page .story-hero:before{width:70vw;height:70vw;right:-30vw;top:37%}.concept-page .story-hero-grid,.concept-page .story-premise-grid,.concept-page .story-chapter-grid,.concept-page .story-find-grid,.concept-page .story-market-grid,.concept-page .story-close-grid{display:block}.concept-page .story-hero-copy{padding:0}.concept-page .story-hero h1{font-size:clamp(2.65rem,10vw,4.3rem);max-width:11ch;margin-bottom:20px}.concept-page .story-hero h1 em{white-space:normal}.concept-page .story-lede{font-size:17px}.concept-page .story-hero-visual{height:350px;min-height:0;margin:44px 0 0}.concept-page .story-hero-photo{height:350px;min-height:0;border-radius:28px 80px 25px 68px}.concept-page .story-hero-visual figcaption{right:0;bottom:-20px;font-size:12px;max-width:190px}.concept-page .story-premise{padding:61px 0 66px}.concept-page .story-premise .kicker{margin:0 0 15px}.concept-page .story-premise h2{font-size:clamp(2.5rem,9vw,3.3rem);margin-bottom:20px}.concept-page .story-premise p:not(.kicker){font-size:17px}.concept-page .story-premise .story-premise-note{font-size:14px!important}.concept-page .story-chapter{padding:68px 0 70px}.concept-page .story-chapter h2{font-size:clamp(2.55rem,9.2vw,3.4rem);margin-bottom:19px}.concept-page .story-chapter-copy>p:not(.story-index){font-size:16px;margin-bottom:22px}.concept-page .story-index{font-size:11px;margin-bottom:18px}.concept-page .route-art{height:330px;margin-top:37px;border-radius:29px 75px 27px 60px}.concept-page .route-art-label{left:20px;top:17px}.concept-page .route-art-foot{left:20px;bottom:18px;max-width:145px;font-size:10px}.concept-page .route-node{font-size:10px;padding:7px 9px}.concept-page .story-find-visual{min-height:0;height:370px;margin:0 0 53px}.concept-page .story-find-visual img{height:370px;min-height:0;width:76%;border-radius:68px 23px 68px 24px}.concept-page .story-find-caption{width:50%;bottom:16px;padding:16px;border-radius:26px 6px 25px 6px}.concept-page .story-find-caption strong{font-size:16px}.concept-page .story-market-visual{margin-top:36px}.concept-page .story-market-visual img{height:340px;border-radius:25px 69px 24px 58px}.concept-page .story-market-visual figcaption{max-width:210px;font-size:11px;margin-top:-30px}.concept-page .story-close{padding:70px 0 58px}.concept-page .story-close h2{font-size:clamp(2.5rem,9vw,3.3rem)}.concept-page .story-close p:not(.kicker){font-size:16px}.concept-page .story-close-actions{margin-top:27px}}
@media(max-width:380px){.concept-page .story-hero h1{font-size:2.53rem}.concept-page .story-hero-visual,.concept-page .story-hero-photo{height:300px}.concept-page .story-find-visual,.concept-page .story-find-visual img{height:320px}.concept-page .story-find-caption{width:57%}.concept-page .route-node-c{right:3%}}
@media(prefers-reduced-motion:reduce){.concept-page .story-more summary span{transition:none}}

/* A continuous closing surface keeps the call to action and footer together. */
.concept-page .site-footer{background:var(--green)}
.concept-page .footer-wave{display:none}
.concept-page .footer-content{margin-top:0;border-top:1px solid rgba(249,247,242,.2);padding-top:30px}
.concept-page .story-market-visual figcaption{background:var(--green);color:var(--cream);border-left:0;border-radius:26px 6px 25px 6px}
@media(max-width:700px){
  .concept-page .story-find-grid{display:flex;flex-direction:column}
  .concept-page .story-find-grid .story-chapter-copy{order:0}
  .concept-page .story-find-visual{order:1;width:100%;margin:34px 0 0}
  .concept-page .sales-art{margin-top:34px;padding:25px;border-radius:26px 65px 25px 55px}
  .concept-page .footer-content{padding-top:25px}
}
