.one-place-sections-wrap{display:flex;flex-direction:column;gap:32px;margin:40px auto;width:min(1840px,calc(100% - 44px));box-sizing:border-box}
.one-place-container{width:100%;max-width:auto;}
.one-place-tabs-wrap{position:sticky;top:16px;z-index:20;margin-left:auto; margin-right:auto;}
.one-place-tabs-wrap .one-place-container{background:linear-gradient(0deg, var(--neutral-900, #18181B), var(--neutral-900, #18181B)), radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 40px rgba(0,0,0,.22);border-radius:999px;padding:18px 20px}
.one-place-tabs{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.one-place-tab-btn{appearance:none;background:linear-gradient(0deg, #272727, #272727), radial-gradient(62.56% 62.56% at 28.14% -10.42%, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);color:#dbe3ef;border-radius:999px;padding:12px 20px;font-size:14px;font-weight:400;line-height:1;cursor:pointer;transition:.22s ease;box-shadow:0px -3px 0px 0px #080808 inset, 0px 1px 0px 0px rgba(255, 255, 255, 0.3019607843) inset, 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275), 0px 6.65px 5.32px 0px rgba(0, 0, 0, 0.1294117647), 0px 12.52px 10.02px 0px rgba(0, 0, 0, 0.1333333333), 0px 22.34px 17.87px 0px rgba(0, 0, 0, 0.1411764706), 0px 41.78px 33.42px 0px rgba(0, 0, 0, 0.1490196078), 0px 100px 80px 0px rgba(0, 0, 0, 0.1490196078), 0px 3px 3px 0px rgba(0, 0, 0, 0.1411764706), 0px 2.77px 2.21px 0px rgba(0, 0, 0, 0.1215686275);display:inline-flex;align-items:center;gap:9px}
.one-place-tab-btn i{font-size:15px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.one-place-tab-btn span{display:inline-block}
.one-place-tab-btn:hover{transform:translateY(-1px);border-color:rgba(53,255,125,.4);color:#fff}
.one-place-tab-btn.is-active{background:linear-gradient(135deg,#1cdb74,#139758);border-color:#23db77;color:#fff;box-shadow:0 14px 32px rgba(19,151,88,.28)}
.one-place-tab-meta{display:none;margin-top:14px;color:rgba(255,255,255,.78);font-size:14px;line-height:1.7}
.one-place-tab-meta.is-active{display:block}
.one-place-category-panel{display:none;flex-direction:column;gap:32px}
.one-place-category-panel.is-active{display:flex}

.one-place-section{position:relative;overflow:hidden;padding:52px 34px;background:radial-gradient(circle at 76% 22%,rgba(87,44,172,.34),transparent 32%),var(--op-section-bg-color,#020207);color:var(--op-section-text-color,#fff);border-radius:30px;box-shadow:0 18px 54px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.16);box-sizing:border-box}
.one-place-section *{box-sizing:border-box}
.one-place-grid{display:grid;grid-template-columns:minmax(0,52%) minmax(0,48%);gap:26px;align-items:stretch;min-height:660px}
.one-place-copy{position:relative;z-index:4;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:8px 0 8px 2px}
.one-place-top-logo-wrap{margin:0 0 20px}
.one-place-top-logo{display:block;width:var(--op-top-logo-width,150px);height:var(--op-top-logo-height,auto);max-width:100%;object-fit:contain}
.one-place-kicker{display:inline-flex;align-items:center;width:fit-content;gap:6px;padding:8px 18px;border:1px solid var(--op-kicker-border-color,rgba(255,255,255,.62));border-radius:999px;font-size:var(--op-kicker-font-size,13px);line-height:1;font-weight:var(--op-kicker-font-weight,900);font-style:var(--op-kicker-font-style,normal);text-transform:uppercase;margin-bottom:28px;letter-spacing:-.2px;color:var(--op-kicker-text-color,#fff);background:rgba(0,0,0,.18)}
.one-place-kicker-prefix{color:var(--op-kicker-prefix-color,#37ff78)}
.one-place-title-row{display:flex;align-items:center;gap:var(--op-title-icon-gap,18px);max-width:100%;margin:0 0 24px;min-width:0}
.one-place-title-row.has-icon .one-place-title{max-width:100%}
.one-place-title{font-size:var(--op-title-font-size,clamp(42px,4.1vw,76px));line-height:.92;letter-spacing:-2px;margin:0;font-weight:var(--op-title-font-weight,800);font-style:var(--op-title-font-style,normal);color:var(--op-title-color,#fff);white-space:nowrap;min-width:0;max-width:100%}
.one-place-title-main{color: inherit; font-size: clamp(32px, 4vw, 76px);line-height: 1.1;white-space: normal;word-break: break-word;}
.one-place-title-highlight{display:inline-block;color:var(--op-title-highlight-color,#37ff78);font-size:var(--op-title-highlight-font-size,  clamp(32px, 4vw, 76px));font-weight:var(--op-title-highlight-font-weight,800);font-style:var(--op-title-highlight-font-style,normal);margin-left:10px;}
.one-place-title-icon{display:block;width:var(--op-title-icon-width,72px);height:var(--op-title-icon-height,72px);object-fit:contain;flex:0 0 auto;margin-top:0;order:-1}
.one-place-intro{font-size:var(--op-intro-font-size,18px);line-height:1.65;color:var(--op-intro-color,rgba(255,255,255,.9));max-width:760px;margin:0 0 40px;font-weight:var(--op-intro-font-weight,700);font-style:var(--op-intro-font-style,normal)}
.one-place-feature-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:6px}
.op-feature-group h3{display:flex;align-items:center;gap:12px;font-size:var(--op-feature-heading-font-size,20px);font-weight:var(--op-feature-heading-font-weight,900);font-style:var(--op-feature-heading-font-style,normal);margin:0 0 10px;white-space:nowrap;color:var(--op-feature-heading-color,#fff)}
.op-feature-group h3:before{content:'✓';width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--op-feature-icon-bg-color,#fff);color:var(--op-feature-icon-color,#020207);font-size:15px;flex:0 0 auto}
.op-feature-list{list-style:none;margin:0;padding:0;display:grid;gap:15px;margin-left:10px;}
.op-feature-list li{display:flex;align-items:flex-start;gap:13px;font-size:var(--op-feature-item-font-size,17px);line-height:1.35;font-weight:var(--op-feature-item-font-weight,800);font-style:var(--op-feature-item-font-style,normal);color:var(--op-feature-item-color,#fff)}
.op-check-icon{color:var(--op-feature-check-color,#18ff3f);font-size:24px;line-height:1;filter:drop-shadow(0 0 6px rgba(24,255,63,.32));margin-top:-1px}
.one-place-services-block{margin-top:34px}
.one-place-services-title{font-size:var(--op-services-title-font-size,26px);font-weight:var(--op-services-title-font-weight,900);font-style:var(--op-services-title-font-style,normal);text-decoration:underline;color:var(--op-services-title-color,#fff);text-underline-offset:4px;margin:0 0 18px}
.one-place-service-pills{display:flex;gap:14px;flex-wrap:wrap}
.one-place-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 156px;
    text-align: center;
    color: var(--op-pill-text-color, #fff);
    font-size: 17px;
    font-weight: var(--op-pill-font-weight, 900);
    font-style: var(--op-pill-font-style, normal);
    box-shadow: rgba(48, 206, 121, 0.22) 0px 10px 24px;
    padding: 12px 20px;
    border-radius: 999px;
    background: rgb(48, 206, 85);
    white-space: nowrap;
    
    /* ADDED FOR SHINE EFFECT */
    position: relative; 
    overflow: hidden; 
}

/* THE SHINE ELEMENT */
.one-place-pill::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(
        to right,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.5) 50%,
        rgba(255, 255, 255, 0) 100%
    );
    transform: skewX(-25deg);
    animation: shineSweep 3s infinite;
}

/* THE SHINE ANIMATION */
@keyframes shineSweep {
    0% {
        left: -100%;
    }
    20% {
        left: 200%; /* Sweeps across quickly */
    }
    100% {
        left: 200%; /* Pauses before repeating */
    }
}
.one-place-visual{position:relative;min-height:640px;border-radius:26px;overflow:hidden}
.one-place-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,2,7,.9) 0%,rgba(2,2,7,.68) 14%,rgba(2,2,7,.34) 40%,rgba(2,2,7,.18) 62%,rgba(2,2,7,.62) 100%)}
.one-place-bg-image,.one-place-bg-video{position:absolute;inset:0;z-index:2;width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.68) saturate(1.08)}
.one-place-count{position:absolute;top:10px;right:clamp(24px,2.8vw,60px);z-index:7;font-size:var(--op-count-font-size,92px);line-height:.9;font-weight:var(--op-count-font-weight,900);font-style:var(--op-count-font-style,normal);letter-spacing:-6px;color:var(--op-count-color,rgba(255,255,255,.18));text-shadow:0 8px 28px rgba(0,0,0,.55);pointer-events:none;font-family:Arial,Helvetica,sans-serif}
.one-place-section:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:30px;box-shadow:inset 0 0 80px rgba(255,255,255,.04)}
@keyframes swipeNudge {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(-40px); } /* Slides 40px left */
}
@media (max-width:1100px){
  .one-place-grid{grid-template-columns:1fr;min-height:auto}
  .one-place-visual{min-height:420px}
  .one-place-feature-groups{grid-template-columns:repeat(2,minmax(0,3fr))}
  .one-place-feature-groups {
    /* 1. Force items into a single horizontal row */
    grid-template-columns: none; /* Remove the vertical stacking */
    grid-auto-flow: column;
    
    /* 2. Make each card take up 85% of the screen so the next one peeks in */
    grid-auto-columns: 100%; 
    gap: 16px; /* Slightly smaller gap for mobile scrolling */
    
    /* 3. Enable horizontal scrolling */
    overflow-x: scroll;
    overflow-y: hidden;
    padding-bottom: 24px; /* Give room for shadows or scrollbar */
    
    /* 4. Make it feel like a native app (smooth snapping) */
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    
    /* Hide the ugly scrollbar (Firefox) */
    scrollbar-width: none; 
  }

  /* Hide the ugly scrollbar (Chrome, Safari, Edge) */
  .one-place-feature-groups::-webkit-scrollbar {
    display: none;
  }

  /* Ensure each item snaps perfectly to the left edge when swiping */
  .op-feature-group {
    scroll-snap-align: start;
  }
  .one-place-feature-groups {
    scrollbar-width: thin;
    scrollbar-color: #f97316 rgba(255, 255, 255, 0.05);
  }

  /* Style the scrollbar for Chrome/Safari/Edge */
  .one-place-feature-groups::-webkit-scrollbar {
    display: block; /* Bring it back! */
    height: 4px; /* Keep it ultra-thin */
  }

  .one-place-feature-groups::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.05); /* Faint track */
    border-radius: 10px;
    margin: 0 20px; /* Keeps the scrollbar from touching the absolute screen edges */
  }

  .one-place-feature-groups::-webkit-scrollbar-thumb {
    background: rgba(249, 115, 22, 0.8); /* Your Orange Theme */
    border-radius: 10px;
  }
  .one-place-feature-groups {
    /* Triggers the bounce once, 1.5 seconds after the page loads */
    animation: swipeNudge 1.5s ease-in-out 1.5s 1;
  }
}

@media (max-width:760px){
  .one-place-sections-wrap{width:calc(100% - 24px)}
  .one-place-tabs-wrap .one-place-container{border-radius:18px;padding:14px}
  .one-place-tab-btn{padding:10px 14px;font-size:13px}
  .one-place-section{padding:38px 18px;border-radius:22px}
  .one-place-title-row{gap:12px}
  .one-place-title-icon{width:calc(var(--op-title-icon-width,72px) * .75);height:calc(var(--op-title-icon-height,72px) * .75)}
  .one-place-title-row.has-icon .one-place-title{max-width:100%}
  .one-place-title{letter-spacing:-1.8px;white-space:nowrap}
  .one-place-intro{margin-bottom:30px}
  /*.one-place-feature-groups{grid-template-columns:1fr;gap:30px}*/
  .one-place-visual{min-height:150px; position:static;}
  .one-place-service-pills{gap:10px}
  .one-place-pill{min-width:136px;padding:11px 16px}
  .one-place-count{
      position: absolute;
      font-size:30px;
      top: 30px;
      
  }
  
  .one-place-feature-groups {
    /* 1. FLEXBOX IS MUCH SAFER ON PHONES */
    display: flex;
    flex-wrap: nowrap;
    gap: 16px;
    
    /* 2. Enable horizontal scrolling safely */
    overflow-x: auto; 
    overflow-y: hidden;
    padding-bottom: 24px; 
    
    /* 3. Smooth snapping */
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    
    /* 4. Scrollbar colors for Firefox */
    scrollbar-width: thin;
    scrollbar-color: #f97316 rgba(255, 255, 255, 0.05);

    /* NO ANIMATION HERE! (That's what was breaking it for your friend) */
  }

  /* 5. Force the items to fill the screen properly */
  .op-feature-group {
    flex: 0 0 100%; 
    max-width: 100%;
    scroll-snap-align: center; 
    scroll-snap-stop: always;
  }

  /* 6. Style the scrollbar for Chrome/Safari/iOS */
  .one-place-feature-groups::-webkit-scrollbar {
    display: block; 
    height: 4px; 
  }

  .one-place-feature-groups::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.05); 
    border-radius: 10px;
    margin: 0 20px; 
  }

  .one-place-feature-groups::-webkit-scrollbar-thumb {
    background: rgba(249, 115, 22, 0.8); 
    border-radius: 10px;
  }
}

/* Services marquee restored to right-side visual panel */
.one-place-services-block{display:none!important}
.one-place-services-marquee-block{position:absolute;z-index:8;left:8%;right:4%;bottom:42px;text-align:center;pointer-events:auto}
.one-place-services-marquee-block .one-place-services-title{font-size:var(--op-services-title-font-size,26px);font-weight:var(--op-services-title-font-weight,900);font-style:var(--op-services-title-font-style,normal);text-decoration:underline;color:var(--op-services-title-color,#fff);text-underline-offset:4px;margin:0 0 28px;text-shadow:0 4px 18px rgba(0,0,0,.7)}
.one-place-pills-marquee{display:grid;gap:14px;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%)}
.one-place-pill-row{width:100%;overflow:hidden;display:flex}
.one-place-pill-track{display:flex;align-items:center;gap:28px;width:max-content;animation:onePlacePillScroll 36s linear infinite;will-change:transform;transform:translateZ(0)}
.one-place-pill-row.reverse .one-place-pill-track{animation-direction:reverse;animation-duration:42s}
.one-place-pills-marquee:hover .one-place-pill-track{animation-play-state:paused}
@keyframes onePlacePillScroll{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
@media (max-width:1100px){.one-place-services-marquee-block{left:5%;right:5%;bottom:28px}.one-place-services-marquee-block .one-place-services-title{margin-bottom:18px}}
@media (max-width:760px){.one-place-services-marquee-block{left:12px;right:12px;bottom:22px}.one-place-pill-track{gap:14px;animation-duration:24s}.one-place-pill-row.reverse .one-place-pill-track{animation-duration:28s}}
