/* Limited visits make each visitor's understanding matter. */
.search-story { margin:65px 0 0; position:relative; isolation:isolate; }
.search-without-visit { display:flex; justify-content:center; align-items:center; gap:60px; padding:35px 30px; border-block:1px solid #ffffff18; }
.search-alternatives { display:grid; gap:12px; }
.search-alternatives > span { display:flex; align-items:center; gap:13px; padding:13px 22px; background:#191d27; border:1px solid #ffffff13; border-radius:13px; font-size:16px; color:#adb6c5; }
.search-alternatives svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.5; }
.search-without-visit > p { font-size:clamp(22px,2.3vw,32px); line-height:1.6; font-weight:500; color:#8d96a5; margin:0; letter-spacing:-.035em; }
.search-without-visit strong { font-weight:inherit; color:#c2c8d3; }
.visit-cause { position:relative; height:130px; display:grid; place-items:center; }
.visit-cause::before { content:''; position:absolute; inset:0 auto; width:1px; background:linear-gradient(#8ca9da33,#b7d2ff66); z-index:-1; }
.visit-cause > span { background:#0c1018; color:#9baecb; padding:12px 20px; border-radius:25px; font-size:15px; letter-spacing:.1em; }
.visit-heading { text-align:center; position:relative; z-index:2; }
.visit-heading > p { color:#b9c6db; font-size:18px; font-weight:500; margin-bottom:22px; }
.visit-heading > h3 { color:#f0f4fc; font-size:clamp(42px,6vw,82px); letter-spacing:-.06em; line-height:1.25; margin:0; font-weight:650; }
.visit-stage { position:relative; display:grid; grid-template-columns:minmax(0,.65fr) 90px minmax(0,1.2fr); align-items:center; padding:60px 0 50px; perspective:1600px; }
.visit-stage::before { content:''; position:absolute; inset:-18% -7% -15%; z-index:-1; background:radial-gradient(ellipse at 64% 51%,#3d6bbc38,transparent 55%); pointer-events:none; }
.visit-questions { display:flex; align-items:flex-start; flex-direction:column; gap:24px; transform:translateY(calc(25px - var(--search-progress,0)*35px)); transition:transform .15s linear; }
.visit-questions > span { border:1px solid #9ab3db30; background:linear-gradient(135deg,#222b3d,#121924); color:#d2def1; font-size:clamp(17px,1.9vw,25px); padding:17px 24px; border-radius:22px 22px 4px 22px; line-height:1.5; box-shadow:0 15px 30px #0003; }
.visit-questions > span:nth-child(1) { transform:rotate(-5deg); }
.visit-questions > span:nth-child(2) { margin-left:auto; transform:rotate(3deg); }
.visit-questions > span:nth-child(3) { transform:rotate(-2deg); }
.visit-questions > p { font-size:17px; line-height:1.8; color:#8594ae; margin:9px 0 0 15px; }
.visit-connection { position:relative; height:1px; margin-top:-65px; background:linear-gradient(90deg,#93a7d222,#b9d0ff88); }
.visit-connection > span { position:absolute; width:58px; height:58px; top:-29px; left:calc(50% - 29px); display:grid; place-items:center; font-size:34px; color:#d4e4ff; border-radius:50%; background:#172138; border:1px solid #a8c8ff55; box-shadow:0 0 55px #6ca1ff45; transform:rotate(calc(var(--search-progress,0)*65deg)); }
.visit-connection i { position:absolute; width:12px; height:3px; background:#cfddff; top:-1px; left:calc(var(--search-progress,0)*90%); box-shadow:0 0 15px #74a7ff; }
.visit-website { position:relative; overflow:hidden; border-radius:25px; border:1px solid #e2edff; background:linear-gradient(130deg,#edf4ff,#fff); box-shadow:0 30px 90px #0005; transform:translateY(calc(40px - var(--search-progress,0)*65px)) rotateY(-5deg) rotateZ(1.5deg); transition:transform .15s linear; }
.visit-window-bar { display:flex; justify-content:space-between; align-items:center; gap:15px; border-bottom:1px solid #172b4917; padding:22px 28px; }
.visit-window-bar > span { font-size:13px; letter-spacing:.15em; color:#7b8697; }
.visit-window-bar b { color:#293f5e; font-size:22px; letter-spacing:-.04em; font-weight:600; }
.visit-knowledge { padding:25px 28px 22px; }
.visit-knowledge-label { font-size:16px; color:#586f8d; }
.visit-knowledge > div { display:flex; flex-wrap:wrap; gap:9px; margin-top:17px; }
.visit-knowledge > div > span { font-size:14px; padding:8px 12px; color:#546e91; background:#e1eaf6; border-radius:7px; }
.visit-answer { display:flex; align-items:flex-start; gap:16px; padding:25px 28px 28px; margin:0 15px; border-radius:17px; background:#d8e8ff8c; }
.visit-answer > svg { flex-shrink:0; width:26px; height:26px; padding:4px; border-radius:50%; color:#346aad; background:#fff9; fill:none; stroke:currentColor; stroke-width:1.8; margin-top:3px; }
.visit-answer strong { color:#28486e; font-size:clamp(20px,2.1vw,28px); font-weight:600; letter-spacing:-.035em; line-height:1.5; }
.visit-answer p { color:#54708e; font-size:16px; line-height:1.8; margin-top:12px; }
.visit-outcomes { padding:24px 28px; display:flex; justify-content:space-between; align-items:center; gap:15px; }
.visit-outcomes > span { color:#68798e; font-size:14px; }
.visit-outcomes > div { display:flex; gap:8px; }
.visit-outcomes > div > span { padding:9px 17px; color:#fff; background:#3476c4; border-radius:20px; font-size:14px; }
.visit-principle { display:flex; justify-content:space-between; align-items:center; gap:40px; padding:30px 0 0; }
.visit-principle > p { font-size:clamp(27px,3.1vw,42px); font-weight:600; line-height:1.4; letter-spacing:-.035em; color:#e0e7f4; margin:0; }
.visit-principle strong { font-weight:inherit; }
.visit-principle > span { color:#9aa7bc; font-size:17px; line-height:1.9; }
.search-story > figcaption { position:static; margin:35px 0 0; font-size:12px; line-height:1.8; color:#8290a4; }
@media(max-width:1050px) {
 .visit-stage { grid-template-columns:minmax(0,.65fr) 50px minmax(0,1.2fr); }
 .visit-connection > span { width:42px; height:42px; top:-21px; left:calc(50% - 21px); font-size:27px; }
 .visit-outcomes { flex-wrap:wrap; }
 .visit-questions > span { padding:15px 17px; }
 .visit-answer { padding:23px 18px; gap:10px; }
}
@media(max-width:700px) {
 .search-story { margin-top:40px; }
 .search-without-visit { display:block; padding:27px 0; }
 .search-alternatives { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
 .search-alternatives > span { padding:11px 13px; gap:8px; font-size:14px; }
 .search-without-visit > p { font-size:23px; }
 .visit-cause { height:105px; }
 .visit-heading > p { font-size:16px; margin-bottom:18px; }
 .visit-heading > h3 { font-size:clamp(38px,10.5vw,62px); }
 .visit-stage { grid-template-columns:1fr; padding-top:37px; padding-bottom:18px; }
 .visit-questions { gap:16px; padding:0 9px; transform:none; }
 .visit-questions > span { font-size:19px; }
 .visit-questions > span:nth-child(2) { margin-right:8px; }
 .visit-questions > p { font-size:15px; margin-top:0; }
 .visit-connection { margin:15px 24% 26px auto; width:1px; height:75px; background:linear-gradient(#93a7d222,#b9d0ff88); }
 .visit-connection > span { left:-21px; top:16px; }
 .visit-connection i { display:none; }
 .visit-website { transform:none; border-radius:20px; }
 .visit-window-bar { padding:18px; }
 .visit-window-bar > span { font-size:12px; }
 .visit-window-bar b { font-size:20px; }
 .visit-knowledge { padding:22px 18px; }
 .visit-knowledge-label { font-size:16px; }
 .visit-knowledge > div { gap:7px; }
 .visit-knowledge > div > span { padding:8px 10px; }
 .visit-answer { margin:0 10px; padding:20px 15px; gap:9px; }
 .visit-answer strong { font-size:21px; }
 .visit-answer p { font-size:16px; }
 .visit-answer p br { display:none; }
 .visit-outcomes { padding:22px 20px; gap:14px; }
 .visit-principle { display:block; padding-top:30px; }
 .visit-principle > p { font-size:clamp(25px,6.4vw,37px); }
 .visit-principle > span { display:block; font-size:16px; margin-top:23px; }
 .search-story > figcaption { margin-top:26px; }
}
.reduce-motion .visit-questions,.reduce-motion .visit-website,.reduce-motion .visit-connection > span { transform:none; transition:none; }
@media(prefers-reduced-motion:reduce) {
 .visit-questions,.visit-website,.visit-connection > span { transform:none!important; transition:none!important; }
}
