/* Visa360World Section 23 | isolated, database-driven customer experience section */
.v360-stories-section{position:relative;isolation:isolate;overflow:hidden;padding:clamp(76px,7vw,126px) 0 clamp(74px,6vw,112px);background:#f7f9f8;color:#072b5d;font-family:Urbanist,Arial,sans-serif}
.v360-stories-section *{box-sizing:border-box}
.v360-stories-section button,.v360-stories-section a{touch-action:manipulation}
.v360-stories-section :is(a,button):focus-visible{outline:3px solid #03882b;outline-offset:5px}
.v360-stories-gridprint{position:absolute;inset:0;opacity:.56;pointer-events:none;background:radial-gradient(circle at 89% 16%,rgba(3,136,43,.085) 0 16%,transparent 16.1%),linear-gradient(110deg,transparent 0 65%,rgba(3,136,43,.026) 65.1% 65.25%,transparent 65.3%);mask-image:linear-gradient(#000,transparent 80%)}
.v360-stories-shell{position:relative;z-index:1;width:min(1650px,calc(100% - 64px));margin-inline:auto}
.v360-stories-head{max-width:1190px;margin-bottom:clamp(30px,4.3vw,62px)}
.v360-stories-overline{display:flex;align-items:center;gap:13px;color:#03882b;letter-spacing:.16em;font-size:12px;font-weight:850}
.v360-stories-orbit{position:relative;display:block;width:29px;height:29px;border:1px solid rgba(3,136,43,.36);border-radius:50%}
.v360-stories-orbit:before,.v360-stories-orbit:after{content:"";position:absolute;border-radius:50%}.v360-stories-orbit:before{width:7px;height:7px;background:#03882b;top:-3px;left:11px;box-shadow:0 0 0 4px rgba(3,136,43,.11)}.v360-stories-orbit:after{inset:7px;border:1px solid rgba(3,136,43,.27)}
.v360-stories-signature{font:400 clamp(34px,3.8vw,54px)/1.1 Parisienne,cursive;color:#03882b;margin:24px 0 10px}
.v360-stories-head h2{font-size:clamp(32px,3.25vw,48px);line-height:1.13;letter-spacing:-.045em;font-weight:850;max-width:1050px;margin:0 0 22px;color:#072b5d}
.v360-stories-lead{max-width:1080px;font-size:clamp(17px,1.3vw,20px);line-height:1.64;color:#355166;margin:0 0 16px}
.v360-stories-intro{font-size:16px;line-height:1.65;color:#617384;max-width:1050px;margin:0}
.v360-stories-stage{position:relative;max-width:1320px;margin:0 0 clamp(55px,6vw,90px);padding:22px 26px 0 0}
.v360-stories-papers{position:absolute;inset:0 20px 68px 24px;pointer-events:none}
.v360-stories-papers span{position:absolute;inset:12px;border:1px solid #d7e7dc;background:#eef7f0;border-radius:29px;transform:translate(11px,9px) rotate(-1.1deg)}
.v360-stories-papers span+span{transform:translate(19px,17px) rotate(1.05deg);background:#e2f1e7}
.v360-stories-slide-stack{position:relative;z-index:1}
.v360-story-slide{position:relative;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(225px,.55fr);min-height:375px;box-shadow:0 24px 60px rgba(7,43,93,.09),0 2px 7px rgba(7,43,93,.04);background:#fff;border:1px solid #dce8e1;border-radius:29px;overflow:hidden}
.v360-story-slide[hidden]{display:none!important}
.v360-story-quote-mark{position:absolute;right:38%;top:-62px;color:rgba(3,136,43,.08);font:400 300px/1 Georgia,serif;pointer-events:none}
.v360-story-content{position:relative;z-index:1;padding:clamp(28px,3.2vw,57px);display:flex;flex-direction:column;align-items:flex-start}
.v360-story-topic{display:inline-flex;background:#eaf6ed;color:#006f23;border:1px solid #cee7d5;border-radius:100px;padding:9px 16px;font-weight:800;letter-spacing:.025em;font-size:12px}
.v360-story-quote{font-size:clamp(22px,2.22vw,36px);font-weight:700;line-height:1.43;letter-spacing:-.023em;color:#072b5d;margin:29px 0 16px;max-width:860px;border:0;padding:0}
.v360-story-summary-label{font-size:13px;line-height:1.55;color:#677985;margin:0 0 30px}
.v360-story-person{display:flex;align-items:center;gap:14px;margin-top:auto}.v360-story-avatar{width:47px;height:47px;display:grid;place-items:center;color:#007a26;font-size:22px;font-weight:800;border-radius:50%;background:#eaf6ed;border:1px solid #ccebd4}.v360-story-person>div{display:grid;gap:3px}.v360-story-person strong{font-size:17px;color:#072b5d}.v360-story-person div span{font-size:13px;color:#667985}
.v360-story-source{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:clamp(26px,2.7vw,42px);border-left:1px solid #e0ece5;background:linear-gradient(160deg,#f1f8f3,#e7f2eb)}.v360-story-source p{font-size:15px;color:#496b5a;line-height:1.7}.v360-story-source a{color:#006d29;text-decoration:none;font-size:15px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:2px}.v360-story-stars{font-size:21px;color:#03882b;letter-spacing:3px}.v360-story-stars-muted{color:#8ca89a}
.v360-story-controls{position:relative;display:flex;align-items:center;gap:20px;padding:30px 15px 0 2px;max-width:100%}.v360-story-counter{white-space:nowrap;font-weight:800;color:#0b365b;font-size:16px}.v360-story-counter>span:first-child{color:#03882b}.v360-story-progress{height:2px;flex:1;overflow:hidden;background:#d5e6d9}.v360-story-progress span{display:block;height:100%;width:var(--story-progress,20%);background:#03882b;transition:width .45s cubic-bezier(.18,.7,.25,1)}.v360-story-arrows{display:flex;gap:10px}.v360-story-arrows button{display:grid;place-items:center;width:51px;height:51px;padding:0;border:1px solid #b8d3c2;border-radius:50%;background:#fff;color:#072b5d;font-family:inherit;font-size:22px;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.v360-story-arrows button:hover{background:#03882b;color:#fff;border-color:#03882b;transform:translateY(-2px)}
.v360-story-slide.is-v360-story-entering{animation:v360storyReveal .55s cubic-bezier(.18,.72,.17,1) both}
@keyframes v360storyReveal{from{opacity:.15;transform:translate3d(0,15px,0) rotate(.35deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
.v360-stories-unpublished{position:relative;display:flex;gap:25px;align-items:center;border-radius:25px;background:linear-gradient(110deg,#072b5d,#0b3f68);color:#fff;padding:clamp(27px,3vw,44px);margin:0 0 clamp(48px,5vw,77px);max-width:1180px;min-height:155px;overflow:hidden;box-shadow:0 25px 45px rgba(7,43,93,.12)}
.v360-stories-unpublished-icon{display:grid;place-items:center;border-radius:50%;height:57px;width:57px;flex:0 0 57px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#72d69b;font-size:27px}.v360-stories-unpublished strong{font-size:clamp(19px,2vw,25px)}.v360-stories-unpublished p{color:#e5edf3;font-size:16px;line-height:1.6;max-width:800px;margin:7px 0 0}.v360-stories-unpublished-number{font-size:clamp(85px,12vw,160px);line-height:1;position:absolute;right:18px;bottom:-47px;font-weight:900;opacity:.06;pointer-events:none}
.v360-story-insight{border-top:1px solid #dbe9e1;padding-top:clamp(30px,4vw,56px);margin-bottom:clamp(54px,5.4vw,90px)}
.v360-story-insight-head{display:grid;grid-template-columns:1.08fr .92fr;gap:35px;align-items:end;margin-bottom:28px}.v360-story-insight-head span{font-size:12px;letter-spacing:.16em;font-weight:850;color:#03882b}.v360-story-insight-head h3{font-size:clamp(25px,2.6vw,36px);line-height:1.24;letter-spacing:-.035em;color:#072b5d;margin:13px 0 0;max-width:650px}.v360-story-insight-head p{font-size:16px;line-height:1.7;color:#556f7c;max-width:580px;margin:0}
.v360-story-insight-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.v360-story-insight-card{position:relative;min-width:0;background:white;border:1px solid #e0eae3;border-radius:22px;padding:clamp(22px,2.5vw,36px);overflow:hidden;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}.v360-story-insight-card:hover{transform:translateY(-5px);border-color:#b4d8c1;box-shadow:0 20px 38px rgba(7,43,93,.08)}.v360-story-insight-number{display:block;color:#03882b;font-size:14px;font-weight:900;letter-spacing:.1em;margin-bottom:35px}.v360-story-insight-card h4{font-size:clamp(19px,1.5vw,24px);font-weight:800;line-height:1.35;letter-spacing:-.02em;color:#072b5d;margin:0 0 13px}.v360-story-insight-card p{color:#526b77;line-height:1.72;font-size:15.5px;margin:0 0 27px}.v360-story-insight-line{display:block;height:3px;position:absolute;left:0;right:100%;bottom:0;background:#03882b;transition:right .6s cubic-bezier(.2,.7,.1,1)}.v360-story-insight-card:hover .v360-story-insight-line{right:0}
.v360-stories-outro{background:#eaf5ed;border:1px solid #cfe4d5;border-radius:27px;padding:clamp(28px,3.8vw,60px);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,.65fr);align-items:center;gap:40px}
.v360-stories-outro-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:900;color:#03882b}.v360-stories-outro h3{font-size:clamp(25px,2.5vw,36px);line-height:1.23;letter-spacing:-.035em;color:#072b5d;margin:12px 0 14px}.v360-stories-outro p{font-size:16px;color:#355565;line-height:1.7;margin:0;max-width:830px}.v360-stories-outro ul{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;padding:0;margin:23px 0 0}.v360-stories-outro li{display:flex;align-items:baseline;gap:9px;color:#335d4c;font-size:14px;line-height:1.4}.v360-stories-outro li>span:first-child{color:#03882b;font-weight:900}.v360-stories-actions{display:grid;justify-items:start;gap:18px}.v360-stories-actions .button{white-space:normal;min-height:55px;text-align:center;justify-content:center;line-height:1.25}.v360-stories-secondary{color:#006f28;text-decoration:none;font-size:15px;font-weight:800;border-bottom:1px solid #048536;padding-bottom:4px}.v360-stories-disclaimer{margin:21px 0 0;font-size:13px;color:#677b81;line-height:1.6;max-width:1050px}
.js-v360-story-reveal [data-v360-stories-reveal]{opacity:0;transform:translate3d(0,25px,0);transition:opacity .7s ease,transform .75s cubic-bezier(.14,.7,.2,1)}.js-v360-story-reveal [data-v360-stories-reveal].is-v360-story-visible{opacity:1;transform:translate3d(0,0,0)}
@media(max-width:1024px){.v360-stories-outro{grid-template-columns:1fr;gap:23px}.v360-stories-actions{display:flex;flex-wrap:wrap;align-items:center}.v360-story-slide{grid-template-columns:minmax(0,1.3fr) minmax(200px,.7fr)}}
@media(max-width:767px){.v360-stories-shell{width:min(100% - 34px,1650px)}.v360-stories-section{padding:64px 0 75px}.v360-stories-head{margin-bottom:33px}.v360-stories-lead{font-size:17px}.v360-stories-intro{font-size:15px}.v360-stories-stage{padding:8px 9px 0 0;margin-bottom:45px}.v360-stories-papers{inset:0 8px 62px 7px}.v360-story-slide{grid-template-columns:1fr;border-radius:20px}.v360-story-content{padding:27px 23px}.v360-story-source{border-left:0;border-top:1px solid #e0ece5;padding:22px 23px}.v360-story-quote{font-size:clamp(21px,5.5vw,28px)}.v360-story-quote-mark{right:20px;top:-30px;font-size:200px}.v360-story-controls{gap:11px;padding-top:24px}.v360-story-arrows button{height:46px;width:46px}.v360-story-insight-head{grid-template-columns:1fr;gap:13px}.v360-story-insight-row{grid-template-columns:1fr}.v360-story-insight-card{padding:25px}.v360-story-insight-number{margin-bottom:15px}.v360-story-insight-card p{margin-bottom:12px}.v360-stories-outro{padding:27px 22px;border-radius:22px}.v360-stories-unpublished{gap:15px;align-items:start;padding:27px 21px}.v360-stories-unpublished-icon{height:42px;width:42px;flex-basis:42px;font-size:19px}.v360-stories-unpublished p{font-size:15px}}
@media(max-width:360px){.v360-stories-shell{width:calc(100% - 28px)}.v360-stories-actions{display:grid}.v360-stories-actions .button{font-size:14px}.v360-stories-overline{font-size:11px}.v360-stories-unpublished{gap:12px}}
@media(prefers-reduced-motion:reduce){.v360-stories-section *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.js-v360-story-reveal [data-v360-stories-reveal]{opacity:1;transform:none}}

.v360-stories-actions .button-primary{background:#007a26!important;border-color:#007a26!important;color:#fff!important}.v360-stories-actions .button-primary:hover{background:#00651e!important;border-color:#00651e!important}

/* Section 23: final customer review layout (no external-example display state). */
.v360-story-quote{font-size:clamp(22px,2vw,31px);overflow-wrap:anywhere}
.v360-story-slide.is-v360-text-only{grid-template-columns:minmax(0,1fr)}
.v360-story-slide.has-v360-rating{grid-template-columns:minmax(0,1fr) minmax(125px,155px)}
.v360-story-slide.has-v360-rating .v360-story-source{align-items:center;justify-content:center;padding:20px 12px;text-align:center}
.v360-story-slide.has-v360-rating .v360-story-stars{white-space:nowrap;font-size:18px;letter-spacing:1px}
@media(max-width:767px){
  .v360-story-quote{font-size:clamp(20px,5.4vw,26px)}
  .v360-story-slide.has-v360-rating{grid-template-columns:1fr}
  .v360-story-slide.has-v360-rating .v360-story-source{padding:15px 23px;align-items:flex-start;justify-content:flex-start}
}
