.page-web-development{background:#fff;color:var(--dp-black)}
.page-web-development .hero-subtitle-mask{display:flex;overflow:hidden;margin-bottom:8px}

.web-hero{position:relative;overflow:hidden;background:#fff;color:var(--dp-black);padding-top:clamp(64px,7vw,94px)}
.web-hero__video-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.web-hero__video{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;object-position:center;opacity:.14;filter:saturate(.72) contrast(.9) brightness(1.24);mix-blend-mode:multiply}
.web-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 16%,transparent,transparent 28%),linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.68) 58%,#fff 100%)}
.web-hero__content{position:relative;z-index:2;text-align:center}
.web-hero__copy{max-width:920px;margin-inline:auto}
.web-hero__copy .hero-subtitle-mask{justify-content:center}
.web-hero__subtitle,.web-types__subtitle{color:var(--dp-purple);font-family:"Kaushan Script","Segoe Script",cursive;font-size:18px;font-weight:500;line-height:1.8;letter-spacing:.5px;text-transform:none}
.web-hero h1{max-width:900px;margin:4px auto 0;font-size:clamp(3rem,5.3vw,4.75rem);line-height:.92;letter-spacing:-.025em;color:var(--dp-black)}
.web-hero h1 .web-hero__line{display:block}
.web-hero__lead{max-width:760px;margin:20px auto 0;color:var(--dp-muted);font-size:var(--dp-body-lg);line-height:1.7}
.web-hero__actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:28px}
.web-hero__showcase{position:relative;z-index:1;width:100vw;margin:clamp(22px,3vw,34px) calc(50% - 50vw) 0;overflow:hidden;line-height:0}
.web-hero__showcase::before{content:"";position:absolute;left:50%;bottom:5%;width:min(900px,62vw);height:24%;transform:translateX(-50%);background:radial-gradient(ellipse,transparent,transparent 68%);filter:blur(30px);pointer-events:none}
.web-hero__showcase img{display:block;width:100vw;height:clamp(360px,45.7vw,660px);max-width:none;object-fit:cover;object-position:center 48%;filter:drop-shadow(0 22px 28px rgba(20,10,35,.10));transition:transform 900ms var(--dp-ease-premium),filter 500ms ease}
.web-hero:hover .web-hero__showcase img{transform:translateY(-3px);filter:drop-shadow(0 28px 34px rgba(20,10,35,.13))}
.web-hero__benefits{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:18px 0 32px;border-top:1px solid rgba(23,19,29,.08)}
.web-hero-benefit{display:flex;align-items:center;justify-content:center;gap:13px;min-height:66px;padding-inline:22px}
.web-hero-benefit+.web-hero-benefit{border-left:1px solid rgba(23,19,29,.10)}
.web-hero-benefit__icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:50%;background:#f6f6f6;color:var(--dp-purple);box-shadow:inset 0 0 0 1px rgba(20,10,35,0.080);transition:transform 360ms var(--dp-ease-premium),background 320ms ease,color 320ms ease}
.web-hero-benefit__icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.web-hero-benefit:hover .web-hero-benefit__icon{transform:translateY(-3px) rotate(-5deg);background:var(--dp-purple);color:#fff}
.web-hero-benefit>span:last-child{display:grid;text-align:left}.web-hero-benefit strong{font-size:.9rem;color:var(--dp-black)}.web-hero-benefit small{font-size:.74rem;color:var(--dp-muted)}

.web-types{position:relative;padding:clamp(84px,8vw,120px) 0;background:#fff;color:var(--dp-black);overflow:hidden}
.web-types::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 0%,transparent,transparent 30%),linear-gradient(transparent 1px,transparent 1px),linear-gradient(90deg,transparent 1px,transparent 1px);background-size:auto,52px 52px,52px 52px}
.web-types__shell{position:relative;z-index:1}
.web-types__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;gap:36px;margin-bottom:32px}
.web-types__head .hero-subtitle-mask{justify-content:flex-start}
.web-types__subtitle{color:var(--dp-purple);font-family:"Kaushan Script","Segoe Script",cursive;font-size:18px;font-weight:500;line-height:1.8;letter-spacing:.5px;text-transform:none}
.web-types__head h2{margin-top:4px;font-size:var(--dp-h2);line-height:.92;color:var(--dp-black)}
.web-types__head>p{color:#6d6674;font-size:.92rem;line-height:1.68}
.web-types__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.web-type-card{position:relative;min-height:438px;overflow:hidden;border:1px solid rgba(23,19,29,.10);border-radius:20px;background:#120d19;isolation:isolate;box-shadow:0 18px 42px rgba(25,15,40,.10);transition:border-color 340ms ease,box-shadow 380ms var(--dp-ease-premium)}
.web-type-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,3,8,.04) 0%,rgba(5,3,8,.12) 36%,rgba(5,3,8,.90) 100%),linear-gradient(110deg,transparent,transparent 52%);z-index:1;transition:background .5s ease}
.web-type-card__media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform 850ms var(--dp-ease-premium),filter 480ms ease}
.web-type-card:hover,.web-type-card:focus-within{border-color:rgba(112,40,223,.46);box-shadow:0 24px 54px rgba(25,15,40,.16)}
.web-type-card:hover .web-type-card__media,.web-type-card:focus-within .web-type-card__media{transform:scale(1.06);filter:saturate(1.05) contrast(1.03)}
.web-type-card:hover::after,.web-type-card:focus-within::after{background:linear-gradient(180deg,rgba(5,3,8,.02) 0%,rgba(5,3,8,.08) 34%,rgba(5,3,8,.93) 100%),linear-gradient(110deg,rgba(112,40,223,.26),transparent 54%)}
.web-type-card__content{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:flex-start;padding:28px}
.web-type-card__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.94);color:var(--dp-purple);border:1px solid rgba(255,255,255,.55);box-shadow:0 12px 24px rgba(10,5,20,.18);backdrop-filter:blur(8px);transition:transform 320ms var(--dp-ease-premium),background 320ms ease,color 320ms ease}
.web-type-card__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.web-type-card:hover .web-type-card__icon,.web-type-card:focus-within .web-type-card__icon{transform:translateY(-3px) rotate(-4deg);background:var(--dp-purple);color:#fff}
.web-type-card h3{margin-top:auto;max-width:13ch;font-size:var(--dp-card-title);line-height:.9;color:#fff;text-transform:uppercase}
.web-type-card h3 .web-type-title-line{display:block;white-space:normal}
.web-type-card h3 .dp-title-accent{color:#a867ff;font-weight:700}
.web-type-card p{max-width:31ch;margin-top:10px;color:rgba(255,255,255,.76);font-size:.79rem;line-height:1.56}
.web-type-card__button{margin-top:16px;max-width:100%;min-height:44px;font-size:.76rem;padding-left:15px}
.web-type-card__button .btn-label{white-space:nowrap}

@media (max-width:1100px){.web-types__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.web-type-card{min-height:420px}}
@media (max-width:760px){.web-types{padding-block:72px}.web-types__head{grid-template-columns:1fr;text-align:center;gap:12px;margin-bottom:24px}.web-types__head .hero-subtitle-mask{justify-content:center}.web-types__head>p{max-width:620px;margin-inline:auto}.web-types__grid{grid-template-columns:1fr;gap:14px}.web-type-card{min-height:390px}.web-type-card__content{padding:24px}}
@media (max-width:480px){.web-type-card{min-height:370px}.web-type-card__content{padding:20px}.web-type-card p{font-size:.75rem}.web-type-card__button{width:100%;justify-content:space-between}.web-type-card__button .btn-label{white-space:normal;text-align:left}}


/* Custom Build vs Ready Website */
.web-paths{position:relative;overflow:hidden;padding:clamp(88px,9vw,132px) 0;background:#08070b;color:#fff}
.web-paths::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 26% 58%,rgba(112,40,223,.22),transparent 30%),radial-gradient(circle at 76% 52%,rgba(0,205,191,.16),transparent 30%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,auto,54px 54px,54px 54px}
.web-paths__shell{position:relative;z-index:1}
.web-paths__head{max-width:800px;margin:0 auto clamp(34px,5vw,54px);text-align:center}
.web-paths__head .hero-subtitle-mask{justify-content:center}
.web-paths__subtitle{color:#fff}
.web-paths__head h2{margin-top:6px;font-size:var(--dp-h2);line-height:.94;color:#fff}
.web-paths__head>p{max-width:680px;margin:15px auto 0;color:rgba(255,255,255,.67);font-size:.95rem;line-height:1.7}
.web-paths__stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2.2vw,28px);perspective:1500px;align-items:stretch}
.web-path-card{position:relative;min-height:620px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:transparent;isolation:isolate;box-shadow:none;transition:transform 680ms var(--dp-ease-premium),border-color 420ms ease}
.web-path-card--custom{clip-path:polygon(0 0,94% 5%,100% 100%,0 100%);transform:none;transform-origin:right center;border-color:rgba(112,40,223,.42)}
.web-path-card--ready{clip-path:polygon(6% 5%,100% 0,100% 100%,0 100%);transform:none;transform-origin:left center;border-color:rgba(0,205,191,.32)}
.web-path-card__glow{display:none}
.web-path-card--custom .web-path-card__glow{background:radial-gradient(ellipse,rgba(112,40,223,.56),transparent 70%)}
.web-path-card--ready .web-path-card__glow{background:radial-gradient(ellipse,rgba(0,205,191,.42),transparent 70%)}
.web-path-card__copy{position:relative;z-index:3;padding:clamp(28px,3vw,38px) clamp(28px,3vw,38px) 14px;max-width:390px}
.web-path-card--ready .web-path-card__copy{margin-left:auto;text-align:right}
.web-path-card--ready .web-path-card__copy p{margin-left:auto}
.web-path-card--ready .web-path-card__icon{margin-left:auto}
.web-path-card__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.07);color:#caa5ff;backdrop-filter:blur(10px);transition:transform 440ms var(--dp-ease-premium),background 340ms ease,color 340ms ease}
.web-path-card--ready .web-path-card__icon{color:var(--dp-purple)}
.web-path-card__icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.web-path-card h3{margin-top:15px;font-size:var(--dp-card-title);line-height:.92;color:#fff;text-transform:uppercase}
.web-path-card h3 span{display:inline-block}
.web-path-card p{max-width:34ch;margin-top:10px;color:rgba(255,255,255,.72);font-size:.82rem;line-height:1.58}
.web-path-card .btn{margin-top:13px}
.web-path-card__visual{position:relative;left:auto;bottom:auto;width:94%;margin:-4px auto 8px;transform:none;z-index:2;padding:0;border-radius:0;background:none;transition:transform 720ms var(--dp-ease-premium)}
.web-path-card__visual img{display:block;width:100%;height:auto;object-fit:contain;margin:0 auto;filter:drop-shadow(0 24px 30px rgba(0,0,0,.35))}
.web-path-card:hover,.web-path-card:focus-within{box-shadow:none}
.web-path-card--custom:hover,.web-path-card--custom:focus-within{transform:rotateY(5deg) translateY(-4px);border-color:rgba(152,94,255,.72)}
.web-path-card--ready:hover,.web-path-card--ready:focus-within{transform:rotateY(-5deg) translateY(-4px);border-color:rgba(82,235,222,.58)}
.web-path-card:hover .web-path-card__visual,.web-path-card:focus-within .web-path-card__visual{transform:translateY(-6px) scale(1.018)}
.web-path-card:hover .web-path-card__glow,.web-path-card:focus-within .web-path-card__glow{transform:translateX(-50%) scale(1.12);opacity:1}
.web-path-card:hover .web-path-card__icon,.web-path-card:focus-within .web-path-card__icon{transform:translateY(-3px) rotate(-5deg);background:var(--dp-purple);color:#fff}
.web-path-card--ready:hover .web-path-card__icon,.web-path-card--ready:focus-within .web-path-card__icon{background:var(--dp-purple);color:#fff}


.web-path-card h3{position:relative;z-index:4;color:#fff}
.web-path-card h3 .dp-title-accent{background:none;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:currentColor;color:var(--dp-purple);transition:color 420ms var(--dp-ease-premium),transform 360ms var(--dp-ease-premium)}
.web-path-card:hover h3 .dp-title-accent,.web-path-card:focus-within h3 .dp-title-accent{color:#fff;transform:translateY(-2px);letter-spacing:.008em}

/* Device-specific reflow */
@media (max-width:1180px){
  .web-hero__showcase img{height:clamp(340px,48vw,570px)}
  .web-path-card{min-height:560px}
  .web-path-card__copy{max-width:350px;padding:28px}
}
@media (max-width:900px){
  .web-hero__copy{max-width:760px}
  .web-hero__showcase img{width:132vw;height:clamp(330px,60vw,500px);margin-left:-16vw}
  .web-types__head{grid-template-columns:1fr;gap:14px;text-align:center}
  .web-types__head .hero-subtitle-mask{justify-content:center}
  .web-types__head>p{max-width:650px;margin-inline:auto}
  .web-paths__stage{grid-template-columns:1fr;gap:18px;perspective:none}
  .web-path-card,.web-path-card--custom,.web-path-card--ready{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:none;min-height:560px;border-radius:24px}
  .web-path-card:hover,.web-path-card:focus-within,.web-path-card--custom:hover,.web-path-card--custom:focus-within,.web-path-card--ready:hover,.web-path-card--ready:focus-within{transform:translateY(-4px)}
  .web-path-card__copy{max-width:420px}
  .web-path-card__visual{width:94%;margin:-2px auto 8px}
}
@media (max-width:680px){
  .web-hero{padding-top:50px}
  .web-hero h1{font-size:clamp(2.55rem,10.6vw,3.55rem);line-height:.95;max-width:12ch}
  .web-hero__lead{font-size:.96rem;line-height:1.62;max-width:34rem}
  .web-hero__actions{width:min(340px,100%);margin-inline:auto}
  .web-hero__actions .btn{width:100%}
  .web-hero__showcase{margin-top:18px}
  .web-hero__showcase img{width:172vw;height:clamp(285px,84vw,390px);margin-left:-36vw;object-position:center 50%}
  .web-hero__benefits{grid-template-columns:1fr;gap:0;padding:8px 0 22px}
  .web-hero-benefit{justify-content:flex-start;width:min(380px,100%);padding:11px 10px;margin-inline:auto}
  .web-hero-benefit+.web-hero-benefit{border-left:0;border-top:1px solid rgba(23,19,29,.08)}
  .web-types{padding-block:68px}
  .web-types__grid{grid-template-columns:1fr;gap:13px}
  .web-type-card{min-height:400px;border-radius:18px}
  .web-type-card__content{padding:22px}
  .web-type-card__button{width:100%;justify-content:space-between}
  .web-paths{padding-block:76px}
  .web-paths__head{margin-bottom:28px}
  .web-paths__head h2{font-size:clamp(2.45rem,10vw,3.3rem)}
  .web-path-card{min-height:500px;border-radius:20px}
  .web-path-card__copy{padding:24px;max-width:none}
  .web-path-card--ready .web-path-card__copy{text-align:left;margin-left:0}
  .web-path-card--ready .web-path-card__copy p{margin-left:0}
  .web-path-card--ready .web-path-card__icon{margin-left:0}
  .web-path-card__visual{width:96%;margin:-3px auto 7px}
}
@media (max-width:560px){
  .web-hero{padding-top:42px}
  .web-hero h1{font-size:clamp(2.25rem,10.2vw,2.9rem)}
  .web-hero__lead{font-size:.9rem}
  .web-hero__showcase img{width:190vw;height:310px;margin-left:-45vw}
  .web-type-card{min-height:380px}
  .web-type-card__content{padding:18px}
  .web-type-card h3{font-size:clamp(1.85rem,9vw,2.15rem)}
  .web-type-card p{font-size:.74rem}
  .web-path-card{min-height:470px}
  .web-path-card__copy{padding:20px}
  .web-path-card__visual{width:98%;margin:-4px auto 6px}
  .web-path-card .btn{width:100%;justify-content:space-between}
}
@media (hover:none){
  .web-path-card:active .web-path-card__visual{transform:translateY(-4px) scale(1.01)}
  .web-path-card:active .web-path-card__icon{background:var(--dp-purple);color:#fff;transform:scale(.96)}
  .web-path-card--ready:active .web-path-card__icon{background:var(--dp-purple)}
}
@media (prefers-reduced-motion:reduce){
  .web-path-card,.web-path-card__visual,.web-path-card__glow,.web-path-card__icon{transition:none!important}
  .web-path-card:hover,.web-path-card:focus-within,.web-path-card__visual{transform:none!important}
}


/* Technology / Platform Options */
.web-tech{position:relative;overflow:hidden;padding:clamp(88px,9vw,132px) 0;background:#fff;color:var(--dp-black)}
.web-tech::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 0%,transparent,transparent 34%),linear-gradient(transparent 1px,transparent 1px),linear-gradient(90deg,transparent 1px,transparent 1px);background-size:auto,56px 56px,56px 56px}
.web-tech__shell{position:relative;z-index:1}
.web-tech__head{max-width:900px;margin:0 auto clamp(28px,4vw,42px);text-align:center}
.web-tech__head .hero-subtitle-mask{justify-content:center}
.web-tech__subtitle{color:var(--dp-purple);font-family:"Kaushan Script","Segoe Script",cursive;font-size:18px;font-weight:500;line-height:1.8;letter-spacing:.5px;text-transform:none}
.web-tech__head h2{margin-top:4px;font-size:var(--dp-h2);line-height:.92;color:var(--dp-black)}
.web-tech__head>p{max-width:760px;margin:15px auto 0;color:#6e6877;font-size:.95rem;line-height:1.72}
.web-tech__tabs-wrap{position:relative;margin-bottom:32px}
.web-tech__tabs{display:flex;gap:8px;overflow-x:auto;padding:7px;border:1px solid rgba(23,19,29,.10);border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 14px 34px rgba(32,19,52,.06);scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.web-tech__tabs::-webkit-scrollbar{display:none}
.web-tech-tab{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 18px;border:0;border-radius:16px;background:transparent;color:#6e6878;font:700 .82rem/1 "DM Sans",Arial,sans-serif;white-space:nowrap;scroll-snap-align:center;cursor:pointer;transition:background 320ms var(--dp-ease-premium),color 320ms ease,box-shadow 320ms ease,transform 320ms var(--dp-ease-premium)}
.web-tech-tab__icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#f8f8f8;color:var(--dp-purple);transition:transform 360ms var(--dp-ease-premium),background 320ms ease,color 320ms ease}
.web-tech-tab__icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.web-tech-tab:hover{color:var(--dp-purple);background:#f8f8f8}
.web-tech-tab:hover .web-tech-tab__icon{transform:rotate(-5deg) scale(1.05)}
.web-tech-tab.is-active{background:linear-gradient(135deg,var(--dp-purple),#8d4df0);color:#fff;box-shadow:0 12px 28px rgba(112,40,223,.23)}
.web-tech-tab.is-active .web-tech-tab__icon{background:rgba(255,255,255,.16);color:#fff;transform:scale(1.04)}
.web-tech-tab:focus-visible{outline:2px solid var(--dp-purple);outline-offset:2px}
.web-tech__panels{min-height:460px}
.web-tech-panel[hidden]{display:none!important}
.web-tech-panel.is-entering{animation:techPanelIn 520ms var(--dp-ease-premium) both}
.web-tech-panel__head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px;padding-inline:4px}
.web-tech-panel__head h3{font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:600;line-height:.96;color:var(--dp-black)}
.web-tech-panel__head p{max-width:720px;margin-top:8px;color:#6d6774;font-size:.9rem;line-height:1.65}
.web-tech-panel__head>span{flex:0 0 auto;padding:8px 12px;border-radius:999px;background:#f7f7f7;color:var(--dp-purple);font-size:.72rem;font-weight:800}
.web-tech-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.tech-card{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:14px;min-height:164px;padding:20px;border:1px solid rgba(23,19,29,.10);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 14px 34px rgba(32,19,52,.055);overflow:hidden;transition:border-color 340ms ease,box-shadow 380ms var(--dp-ease-premium),background 340ms ease}
.tech-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--dp-purple),#b887ff);transform:scaleY(0);transform-origin:top;transition:transform 460ms var(--dp-ease-premium)}
.tech-card:hover,.tech-card:focus-within{border-color:rgba(112,40,223,.30);box-shadow:0 22px 50px rgba(32,19,52,.10);background:#fff}
.tech-card:hover::before,.tech-card:focus-within::before{transform:scaleY(1)}
.tech-logo{position:relative;display:grid;place-items:center;width:58px;height:58px;flex:0 0 58px;border-radius:18px;background:#f7f7f7;color:var(--dp-purple);box-shadow:inset 0 0 0 1px rgba(20,10,35,0.080);overflow:hidden;transition:transform 360ms var(--dp-ease-premium),background 320ms ease,box-shadow 320ms ease}
.tech-logo>span{font-size:.68rem;font-weight:900;letter-spacing:-.02em;text-align:center;line-height:1;color:var(--dp-purple);padding-inline:4px}
.tech-logo img{position:absolute;inset:11px;width:36px;height:36px;object-fit:contain;background:transparent}
.tech-card:hover .tech-logo{transform:translateY(-3px) rotate(-4deg);background:#f5f5f5;box-shadow:0 12px 24px rgba(20,10,35,0.140)}
.tech-card h4{font-family:"DM Sans",Arial,sans-serif;font-size:.98rem;font-weight:800;line-height:1.25;color:var(--dp-black)}
.tech-card p{margin-top:7px;color:#726b7a;font-size:.75rem;line-height:1.55}
.web-tech__standard{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:0;margin-top:38px;padding:22px;border:1px solid rgba(23,19,29,.10);border-radius:24px;background:linear-gradient(135deg,#f8f8f8,#fff);box-shadow:0 18px 42px rgba(32,19,52,.06)}
.web-tech__standard-lead,.web-tech__standard-item{display:flex;align-items:center;gap:13px;min-height:72px;padding:10px 18px}
.web-tech__standard-item{border-left:1px solid rgba(23,19,29,.10)}
.web-tech__standard-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:16px;background:#f6f6f6;color:var(--dp-purple)}
.web-tech__standard-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.web-tech__standard-lead>div,.web-tech__standard-item>div{display:grid;gap:3px}
.web-tech__standard-lead span{font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--dp-purple)}
.web-tech__standard-lead strong{font-family:"Barlow Condensed",Arial,sans-serif;font-size:1.45rem;line-height:1.05;color:var(--dp-black)}
.web-tech__standard-item>span{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:#fff;color:var(--dp-purple);box-shadow:0 8px 18px rgba(20,10,35,0.080);font-weight:900}
.web-tech__standard-item strong{font-size:.82rem;color:var(--dp-black)}
.web-tech__standard-item small{font-size:.69rem;color:#746e7b;line-height:1.45}
@keyframes techPanelIn{0%{opacity:0;transform:translateY(12px)}100%{opacity:1;transform:translateY(0)}}

@media (max-width:1180px){
  .web-tech-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .web-tech__standard{grid-template-columns:1fr 1fr}
  .web-tech__standard-item{border-left:0;border-top:1px solid rgba(23,19,29,.10)}
}
@media (max-width:900px){
  .web-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .web-tech__tabs{border-radius:18px}
  .web-tech-tab{min-height:48px;padding-inline:15px}
}
@media (max-width:680px){
  .web-tech{padding-block:76px}
  .web-tech__head{margin-bottom:24px}
  .web-tech__tabs-wrap{margin-inline:0;padding-inline:0;overflow:visible}
  .web-tech__tabs{flex-direction:column;overflow:visible;scroll-snap-type:none;padding:6px;border-radius:16px}
  .web-tech-tab{width:100%;justify-content:flex-start;text-align:left;white-space:normal;scroll-snap-align:none;padding:10px 14px}
  .web-tech-tab__icon{flex:0 0 auto}
  .web-tech-panel__head{align-items:flex-start;flex-direction:column;gap:10px}
  .web-tech-grid{grid-template-columns:1fr;gap:11px}
  .tech-card{min-height:0;padding:17px;border-radius:18px}
  .web-tech__standard{grid-template-columns:1fr;padding:14px;border-radius:20px}
  .web-tech__standard-item,.web-tech__standard-lead{border-left:0;border-top:1px solid rgba(23,19,29,.10);padding:13px 10px}
  .web-tech__standard-lead{border-top:0}
}
@media (max-width:420px){
  .web-tech-tab{min-height:46px;padding-inline:13px;font-size:.75rem}
  .web-tech-tab__icon{width:26px;height:26px}
  .tech-card{grid-template-columns:50px minmax(0,1fr);gap:12px;padding:15px}
  .tech-logo{width:50px;height:50px;border-radius:15px}
  .tech-logo img{inset:9px;width:32px;height:32px}
}
@media (hover:none){
  .tech-card:active .tech-logo{transform:scale(.96);background:#f5f5f5}
  .web-tech-tab:active{background:#f7f7f7;color:var(--dp-purple)}
  .web-tech-tab.is-active:active{background:var(--dp-purple);color:#fff}
}
@media (prefers-reduced-motion:reduce){
  .web-tech-tab,.web-tech-tab__icon,.tech-card,.tech-card::before,.tech-logo{transition:none!important}
  .web-tech-panel.is-entering{animation:none!important}
  .tech-card:hover .tech-logo{transform:none!important}
}
/* Supplied platform icon consistency */
.web-tech-tab__icon img{display:block;width:18px;height:18px;object-fit:contain}
.tech-logo img{position:static!important;display:block!important;width:38px!important;height:38px!important;object-fit:contain!important;max-width:100%;max-height:100%}
@media (max-width:479px){.tech-logo img{width:32px!important;height:32px!important}.web-tech-tab__icon img{width:17px;height:17px}}


/* Development standard premium motion */
.web-tech__standard{position:relative;overflow:hidden;isolation:isolate}
.web-tech__standard::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 28%,transparent 46%,transparent 64%);transform:translateX(-120%)}
.web-tech__standard.is-visible::before{animation:webStandardSweep 1.2s var(--dp-ease-premium) 220ms both}
.web-tech__standard-lead,.web-tech__standard-item{opacity:0;transform:translateY(14px);transition:opacity 580ms ease,transform 650ms var(--dp-ease-premium)}
.web-tech__standard.is-visible .web-tech__standard-lead,.web-tech__standard.is-visible .web-tech__standard-item{opacity:1;transform:translateY(0)}
.web-tech__standard.is-visible .web-tech__standard-item:nth-child(2){transition-delay:90ms}
.web-tech__standard.is-visible .web-tech__standard-item:nth-child(3){transition-delay:160ms}
.web-tech__standard.is-visible .web-tech__standard-item:nth-child(4){transition-delay:230ms}
.web-tech__standard-icon,.web-tech__standard-item>span{transition:transform 420ms var(--dp-ease-premium),background 320ms ease,color 320ms ease,box-shadow 320ms ease}
.web-tech__standard-lead:hover .web-tech__standard-icon{transform:rotate(-7deg) scale(1.06);background:var(--dp-purple);color:#fff;box-shadow:0 14px 28px rgba(112,40,223,.20)}
.web-tech__standard-item:hover>span{transform:translateY(-3px) rotate(5deg);background:var(--dp-purple);color:#fff;box-shadow:0 12px 24px rgba(112,40,223,.20)}
@keyframes webStandardSweep{to{transform:translateX(120%)}}

/* Platform Guidance */
.platform-guide{position:relative;padding:clamp(90px,9vw,132px) 0;background:#fff;overflow:hidden}
.platform-guide::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 8%,transparent,transparent 30%),linear-gradient(transparent 1px,transparent 1px),linear-gradient(90deg,transparent 1px,transparent 1px);background-size:auto,52px 52px,52px 52px}
.platform-guide__shell{position:relative;z-index:1}
.platform-guide__head{max-width:900px;margin:0 auto 42px;text-align:center}
.platform-guide__head .hero-subtitle-mask{justify-content:center}
.platform-guide__subtitle{color:var(--dp-purple)}
.platform-guide__head h2{margin-top:6px;font-size:var(--dp-h2);line-height:.94;color:var(--dp-black)}
.platform-guide__head>p{max-width:720px;margin:16px auto 0;color:var(--dp-muted);font-size:.96rem;line-height:1.7}
.platform-guide__rail{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:stretch}
.platform-guide__rail::before{content:"";position:absolute;left:5%;right:5%;top:20px;height:1px;background:linear-gradient(90deg,transparent,rgba(112,40,223,.35) 10%,rgba(112,40,223,.35) 90%,transparent);z-index:0}
.platform-guide-card{--guide-delay:0ms;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;min-width:0;padding:42px 16px 16px;border:1px solid rgba(23,19,29,.10);border-radius:24px;background:rgba(255,255,255,.95);box-shadow:0 16px 38px rgba(32,19,52,.06);text-align:center;opacity:0;transform:translateY(22px);transition:border-color 340ms ease,box-shadow 420ms var(--dp-ease-premium),background 340ms ease,transform 420ms var(--dp-ease-premium)}
.platform-guide.is-visible .platform-guide-card{animation:platformGuideIn 680ms var(--dp-ease-premium) var(--guide-delay) forwards}
.platform-guide-card__step{position:absolute;left:50%;top:-18px;display:grid;place-items:center;width:38px;height:38px;transform:translateX(-50%);border:5px solid #fff;border-radius:50%;background:#f6f6f6;color:var(--dp-purple);font-size:.72rem;font-weight:800;box-shadow:0 8px 20px rgba(20,10,35,0.100)}
.platform-guide-card__logo{display:grid;place-items:center;width:78px;height:78px;margin-bottom:14px;border-radius:22px;background:#f7f7f7;box-shadow:inset 0 0 0 1px rgba(20,10,35,0.080);transition:transform 420ms var(--dp-ease-premium),background 320ms ease,box-shadow 320ms ease}
.platform-guide-card__logo img{display:block;width:54px;height:54px;object-fit:contain}
.platform-guide-card h3{font-family:"DM Sans",Arial,sans-serif;font-size:1.02rem;font-weight:800;line-height:1.22;color:var(--dp-black)}
.platform-guide-card>p{min-height:3.2em;margin-top:8px;color:#706a78;font-size:.76rem;line-height:1.5}
.platform-guide-card__note{width:100%;margin-top:auto;padding:12px 10px;border-radius:16px;background:#f8f8f8;color:#6845a0;font-size:.68rem;line-height:1.46;transition:background 320ms ease,color 320ms ease}
.platform-guide-card:hover,.platform-guide-card:focus-within{transform:translateY(-5px);border-color:rgba(112,40,223,.34);box-shadow:0 24px 54px rgba(32,19,52,.11)}
.platform-guide-card:hover .platform-guide-card__logo,.platform-guide-card:focus-within .platform-guide-card__logo{transform:translateY(-4px) rotate(-3deg);background:#f5f5f5;box-shadow:0 14px 28px rgba(20,10,35,0.150)}
.platform-guide-card:hover .platform-guide-card__note,.platform-guide-card:focus-within .platform-guide-card__note{background:var(--dp-purple);color:#fff}
.platform-guide__cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:26px;margin:34px auto 0;padding:26px 28px;border:1px solid rgba(23,19,29,.10);border-radius:26px;background:linear-gradient(135deg,#f8f8f8,#fff);box-shadow:0 20px 46px rgba(32,19,52,.06)}
.platform-guide__cta>div:first-child{display:flex;align-items:center;gap:16px}.platform-guide__spark{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:16px;background:#f6f6f6;color:var(--dp-purple);font-size:1.55rem}.platform-guide__cta strong{font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(1.8rem,3vw,2.65rem);font-weight:600;line-height:1}.platform-guide__cta p{margin-top:7px;color:var(--dp-muted);font-size:.84rem}.platform-guide__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.platform-guide__proof{display:flex;justify-content:center;gap:clamp(20px,4vw,58px);flex-wrap:wrap;margin-top:24px;color:#716a79;font-size:.76rem}.platform-guide__proof span{position:relative;padding-left:17px}.platform-guide__proof span::before{content:"";position:absolute;left:0;top:.42em;width:7px;height:7px;border-radius:50%;background:var(--dp-purple);box-shadow:0 0 0 5px rgba(20,10,35,0.080)}

.platform-guide__cta strong.title-surface-light{display:inline-block}
.platform-guide__cta strong.title-surface-light:hover .dp-title-accent,.platform-guide__cta strong.title-surface-light:focus-within .dp-title-accent{color:var(--dp-black);transform:translateY(-2px) scale(1.018)}
@keyframes platformGuideIn{to{opacity:1;transform:translateY(0)}}

@media (max-width:1180px){.platform-guide__rail{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 14px}.platform-guide__rail::before{display:none}}
@media (max-width:760px){.platform-guide{padding-block:76px}.platform-guide__head{margin-bottom:34px}.platform-guide__rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.platform-guide__cta{grid-template-columns:1fr;text-align:center}.platform-guide__cta>div:first-child{justify-content:center}.platform-guide__actions{justify-content:center}}
@media (max-width:480px){.platform-guide__rail{grid-template-columns:1fr;gap:26px}.platform-guide-card{padding:40px 18px 16px}.platform-guide__cta{padding:22px 16px}.platform-guide__actions{display:grid;grid-template-columns:1fr;width:100%}.platform-guide__actions .btn{width:100%}.platform-guide__proof{align-items:flex-start;flex-direction:column;gap:14px;margin-left:10px}}
@media (prefers-reduced-motion:reduce){.web-tech__standard::before{display:none}.web-tech__standard-lead,.web-tech__standard-item,.platform-guide-card{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.web-tech__standard-icon,.web-tech__standard-item>span,.platform-guide-card__logo{transition:none!important}}


/* Web Development Process */
.web-process{position:relative;overflow:hidden;padding:clamp(70px,6.5vw,96px) 0 clamp(66px,6vw,90px);background:#fff;color:var(--dp-black)}
.web-process::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 7% 8%,transparent,transparent 23%),radial-gradient(circle at 91% 88%,transparent,transparent 25%),linear-gradient(transparent 1px,transparent 1px),linear-gradient(90deg,transparent 1px,transparent 1px);background-size:auto,auto,52px 52px,52px 52px}
.web-process__shell{position:relative;z-index:1}
.web-process__head{max-width:900px;margin:0 auto 38px;text-align:center}
.web-process__head .hero-subtitle-mask{justify-content:center}
.web-process__subtitle{color:var(--dp-purple)}
.web-process__head h2{margin-top:4px;font-size:var(--dp-h2);line-height:.94;color:var(--dp-black)}
.web-process__head>p{max-width:760px;margin:13px auto 0;color:var(--dp-muted);font-size:.94rem;line-height:1.62}
.web-process__journey{position:relative;min-height:400px}
.web-process__route{position:absolute;left:0;right:0;top:0;width:100%;height:230px;overflow:visible;pointer-events:none}
.web-process__route-base{fill:none;stroke:rgba(112,40,223,.12);stroke-width:2.25;stroke-linecap:round}
.web-process__route-draw{fill:none;stroke:url(#webProcessGradient);stroke-width:3.2;stroke-linecap:round;stroke-dasharray:1700;stroke-dashoffset:1700;filter:drop-shadow(0 6px 12px rgba(20,10,35,0.160))}
.web-process.is-visible .web-process__route-draw{animation:webProcessRouteDraw 1.65s var(--dp-ease-premium) .08s forwards}
.web-process__pulse{fill:#fff;stroke:var(--dp-purple);stroke-width:3;filter:drop-shadow(0 0 10px rgba(112,40,223,.7));opacity:0}
.web-process.is-visible .web-process__pulse{animation:webProcessPulse 6.2s linear 1.25s infinite}
.web-process__steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start}
.web-process-step{--step-delay:0ms;--step-color:var(--dp-purple);--step-soft:#f6f6f6;position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;padding-top:26px;text-align:center;opacity:0;transform:translateY(22px) scale(.95)}
.web-process-step:nth-child(even){margin-top:48px}
.web-process.is-visible .web-process-step{animation:webProcessStepIn 760ms var(--dp-ease-premium) calc(170ms + var(--step-delay)) forwards}
.web-process-step__number{position:absolute;top:0;left:50%;z-index:4;display:grid;place-items:center;width:40px;height:40px;transform:translate(-50%,-4px);border:6px solid #fff;border-radius:50%;background:var(--step-soft);color:var(--step-color);font-size:.74rem;font-weight:900;box-shadow:0 8px 22px color-mix(in srgb,var(--step-color) 18%,transparent)}
.web-process-step__icon{position:relative;z-index:3;display:grid;place-items:center;width:112px;height:112px;margin-top:21px;border:1px solid color-mix(in srgb,var(--step-color) 30%,#fff);border-radius:50%;background:radial-gradient(circle at 40% 30%,#fff 0%,var(--step-soft) 78%);color:var(--step-color);box-shadow:0 18px 44px color-mix(in srgb,var(--step-color) 18%,transparent),inset 0 0 0 14px rgba(255,255,255,.55);transition:transform 520ms var(--dp-ease-premium),box-shadow 440ms ease,background 380ms ease,color 380ms ease}
.web-process-step__icon::before,.web-process-step__icon::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.web-process-step__icon::before{inset:-10px;border:1px solid color-mix(in srgb,var(--step-color) 24%,transparent);box-shadow:0 0 0 8px color-mix(in srgb,var(--step-color) 4%,transparent);transition:transform 620ms var(--dp-ease-premium),border-color 380ms ease}
.web-process-step__icon::after{inset:7px;border:1px dashed color-mix(in srgb,var(--step-color) 22%,transparent);opacity:.65;transition:transform 900ms var(--dp-ease-premium),opacity 380ms ease}
.web-process-step__icon svg{width:45px;height:45px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform 520ms var(--dp-ease-premium)}
.web-process-step__copy{position:relative;margin-top:18px;padding-top:8px}
.web-process-step__copy::before{content:"";position:absolute;left:50%;top:-9px;width:1px;height:15px;background:linear-gradient(var(--step-color),transparent);transform:translateX(-50%)}
.web-process-step h3{margin:0;font-family:"DM Sans",Arial,sans-serif;font-size:1rem;font-weight:800;line-height:1.2;color:var(--dp-black)}
.web-process-step p{max-width:18ch;margin:7px auto 0;color:#706979;font-size:.73rem;line-height:1.48}
.web-process-step:hover .web-process-step__icon,.web-process-step:focus-within .web-process-step__icon{transform:translateY(-6px) scale(1.04);background:var(--step-color);color:#fff;box-shadow:0 25px 56px color-mix(in srgb,var(--step-color) 26%,transparent),inset 0 0 0 14px rgba(255,255,255,.08)}
.web-process-step:hover .web-process-step__icon::before,.web-process-step:focus-within .web-process-step__icon::before{transform:scale(1.10) rotate(10deg);border-color:color-mix(in srgb,var(--step-color) 50%,transparent)}
.web-process-step:hover .web-process-step__icon::after,.web-process-step:focus-within .web-process-step__icon::after{transform:rotate(58deg);opacity:.95}
.web-process-step:hover .web-process-step__icon svg,.web-process-step:focus-within .web-process-step__icon svg{transform:scale(1.13) rotate(-5deg)}
.web-process-step:hover .web-process-step__number,.web-process-step:focus-within .web-process-step__number{animation:webProcessNumberPop 540ms var(--dp-ease-premium)}
.web-process__cta{display:flex;justify-content:center;margin-top:16px}
.web-process__cta .btn{min-width:250px}
.web-process__proof{display:flex;justify-content:center;gap:clamp(24px,5vw,70px);flex-wrap:wrap;margin-top:28px;padding-top:20px;border-top:1px solid rgba(23,19,29,.10);color:#716a79;font-size:.76rem}
.web-process__proof span{position:relative;padding-left:20px}.web-process__proof span::before{content:"";position:absolute;left:0;top:.37em;width:9px;height:9px;border-radius:50%;background:var(--dp-purple);box-shadow:0 0 0 6px rgba(20,10,35,0.080)}
@keyframes webProcessRouteDraw{to{stroke-dashoffset:0}}
@keyframes webProcessStepIn{0%{opacity:0;transform:translateY(22px) scale(.95)}72%{opacity:1;transform:translateY(-3px) scale(1.012)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes webProcessPulse{0%{opacity:0}8%,92%{opacity:1}100%{opacity:0}}
@keyframes webProcessNumberPop{0%,100%{transform:translate(-50%,-4px) scale(1)}50%{transform:translate(-50%,-8px) scale(1.13)}}

/* Final CTA — donor media only, fresh implementation */
.web-final-cta{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(560px,62vw,780px);display:grid;place-items:center;padding:clamp(88px,10vw,132px) 0;background:#09070d;color:#fff;text-align:center}
.web-final-cta__media{position:absolute;inset:0;z-index:-3;background-image:url("../images/web-development/final-cta-bg.webp");background-position:center center;background-size:cover;transform:scale(1.02);transition:transform 9s ease}
.web-final-cta.is-visible .web-final-cta__media{transform:scale(1.075)}
.web-final-cta::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,rgba(5,4,9,.74),rgba(5,4,9,.87)),radial-gradient(circle at 50% 46%,transparent,transparent 42%)}
.web-final-cta::after{content:"";position:absolute;inset:8% 12%;z-index:-1;border:1px solid rgba(157,91,255,.20);border-radius:50%;box-shadow:inset 0 0 70px rgba(20,10,35,0.070),0 0 48px rgba(20,10,35,0.050);pointer-events:none}
.web-final-cta__shell{max-width:980px;position:relative}
.web-final-cta__shell::before,.web-final-cta__shell::after{content:"";position:absolute;top:50%;width:170px;height:1px;background:linear-gradient(90deg,transparent,rgba(139,82,255,.65),transparent);pointer-events:none}
.web-final-cta__shell::before{right:100%;margin-right:24px}.web-final-cta__shell::after{left:100%;margin-left:24px}
.web-final-cta .hero-subtitle-mask{justify-content:center}.web-final-cta__subtitle{color:var(--dp-white)!important;text-align:center}
.web-final-cta h2{max-width:900px;margin:22px auto 0;font-size:var(--dp-h2);font-weight:700;line-height:.92;color:#fff}
.web-final-cta__copy{max-width:760px;margin:22px auto 0;color:rgba(255,255,255,.74);font-size:var(--dp-body-lg);line-height:1.72}
.web-final-cta__actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:32px}

@media (max-width:1120px){
  .web-process__head{margin-bottom:34px}.web-process__journey{min-height:0}.web-process__route{display:none}.web-process__steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 14px}.web-process-step,.web-process-step:nth-child(even){margin-top:0;padding:20px 14px 22px;border:1px solid color-mix(in srgb,var(--step-color) 18%,#fff);border-radius:24px;background:#fff;box-shadow:0 14px 34px rgba(36,20,58,.055)}.web-process-step__number{position:static;transform:none;border-width:4px;margin-bottom:4px}.web-process-step__icon{width:86px;height:86px;margin-top:8px}.web-process-step__icon::before{inset:-7px}.web-process-step__icon svg{width:36px;height:36px}.web-process-step__copy{margin-top:14px;padding-top:0}.web-process-step__copy::before{display:none}.web-process-step:last-child{grid-column:2/4}.web-process__cta{margin-top:22px}
  .web-final-cta__shell::before,.web-final-cta__shell::after{display:none}
}
@media (max-width:760px){
  .web-process{padding-block:68px}.web-process__head{margin-bottom:26px}.web-process__steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.web-process-step,.web-process-step:last-child{grid-column:auto}.web-process-step__icon{width:76px;height:76px}.web-process-step__icon svg{width:32px;height:32px}.web-process-step p{max-width:25ch}.web-process__cta{margin-top:22px}.web-process__proof{gap:16px 28px;margin-top:26px}
  .web-final-cta{min-height:560px;padding-block:84px}.web-final-cta::after{inset:7% 5%;border-radius:36%}.web-final-cta__copy{font-size:.95rem}
}
@media (max-width:480px){
  .web-process__head{margin-bottom:22px}.web-process__steps{grid-template-columns:1fr}.web-process-step{display:grid;grid-template-columns:42px 68px minmax(0,1fr);grid-template-rows:auto auto;gap:0 13px;text-align:left;align-items:center;padding:14px 15px}.web-process-step__number{grid-row:1/3;grid-column:1;width:38px;height:38px;margin:0}.web-process-step__icon{grid-row:1/3;grid-column:2;width:62px;height:62px;margin:0}.web-process-step__icon::before{inset:-5px}.web-process-step__icon::after{inset:6px}.web-process-step__icon svg{width:28px;height:28px}.web-process-step__copy{grid-column:3;margin:0}.web-process-step h3{font-size:.96rem}.web-process-step p{max-width:none;margin-top:4px;font-size:.71rem}.web-process__cta .btn{width:min(320px,100%)}.web-process__proof{align-items:flex-start;flex-direction:column;gap:13px;margin-left:8px}
  .web-final-cta{min-height:520px;padding:72px 0}.web-final-cta__media{background-position:center}.web-final-cta::after{inset:6% 3%;border-radius:28px}.web-final-cta h2 br{display:none}.web-final-cta__actions{display:grid;grid-template-columns:1fr;width:min(330px,100%);margin-inline:auto;margin-top:28px}.web-final-cta__actions .btn{width:100%}
}
@media (hover:none){.web-process-step:active .web-process-step__icon{transform:scale(.97);background:var(--step-color);color:#fff}}
@media (prefers-reduced-motion:reduce){.web-process__route-draw{stroke-dashoffset:0!important}.web-process__pulse{display:none}.web-process-step,.web-process.is-visible .web-process-step{opacity:1!important;transform:none!important;animation:none!important}.web-process-step__icon,.web-process-step__icon::before,.web-process-step__icon::after,.web-process-step__icon svg,.web-final-cta__media{transition:none!important;animation:none!important;transform:none!important}}

/* Mobile technology accordion: active panel opens directly under its selected tab. */
.web-tech__mobile{display:none}
@media (max-width:760px){
  .web-tech__tabs-wrap{display:none}
  .web-tech__mobile{display:grid;gap:10px;margin-top:24px}
  .web-tech__panels{display:none}
  .web-tech-mobile-item{overflow:hidden;border:1px solid rgba(23,19,29,.09);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(28,18,45,.05)}
  .web-tech-mobile-trigger{display:grid;grid-template-columns:38px 1fr 28px;align-items:center;gap:12px;width:100%;min-height:62px;padding:11px 14px;border:0;background:#fff;color:var(--dp-black);font:700 .82rem/1.25 "DM Sans",Arial,sans-serif;text-align:left;cursor:pointer;transition:background 280ms ease,color 280ms ease}
  .web-tech-mobile-trigger .web-tech-tab__icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f7f7f7}
  .web-tech-mobile-trigger .web-tech-tab__icon img{display:block;width:24px;height:24px;object-fit:contain}
  .web-tech-mobile-trigger__chevron{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f7f7f7;color:var(--dp-purple);font-size:1.1rem;transition:transform 320ms var(--dp-ease-premium),background 280ms ease,color 280ms ease}
  .web-tech-mobile-item.is-active .web-tech-mobile-trigger{background:#f8f8f8;color:var(--dp-purple-dark)}
  .web-tech-mobile-item.is-active .web-tech-mobile-trigger__chevron{transform:rotate(45deg);background:var(--dp-purple);color:#fff}
  .web-tech-mobile-item .web-tech-panel{padding:4px 14px 16px;border-top:1px solid rgba(23,19,29,.10)}
  .web-tech-mobile-item .web-tech-panel__head{margin:14px 0 16px;padding:0;gap:8px}
  .web-tech-mobile-item .web-tech-panel__head h3{font-size:clamp(1.65rem,8vw,2.15rem)}
  .web-tech-mobile-item .web-tech-grid{grid-template-columns:1fr;gap:10px}
}

/* Accent titles: hover belongs to the title text, not the whole card/tab. */
.web-tech-tab__label .dp-title-accent{color:var(--dp-purple);transition:color 360ms var(--dp-ease-premium),transform 300ms var(--dp-ease-premium),letter-spacing 300ms var(--dp-ease-premium)}
.web-tech-tab__label .dp-title-accent:hover{color:var(--dp-black);transform:translateY(-1px);letter-spacing:.008em}
.tech-card h4 .dp-title-accent,.platform-guide-card h3 .dp-title-accent{color:var(--dp-purple);transition:color 360ms var(--dp-ease-premium),transform 300ms var(--dp-ease-premium),letter-spacing 300ms var(--dp-ease-premium)}
.tech-card h4 .dp-title-accent:hover,.platform-guide-card h3 .dp-title-accent:hover{color:var(--dp-black);transform:translateY(-1px);letter-spacing:.008em}
@media(prefers-reduced-motion:reduce){.web-tech-tab__label .dp-title-accent,.tech-card h4 .dp-title-accent,.platform-guide-card h3 .dp-title-accent{transition:none!important}}


/* V29 global subtitle visibility */
.web-types__subtitle{color:var(--dp-purple)!important;opacity:1!important;}

/* V29 — canonical global subtitle colour */
.web-tech__subtitle{color:var(--dp-purple)!important;opacity:1!important;}


/* v31 — web tech content title accents */
.web-tech .tech-card h4{color:var(--dp-black);}
.web-tech .tech-card h4 .dp-title-accent{color:var(--dp-purple)!important;-webkit-text-fill-color:currentColor!important;}
.web-tech .tech-card h4.title-surface-light .dp-title-accent:hover,
.web-tech .tech-card h4 .dp-title-accent:hover{color:var(--dp-black)!important;-webkit-text-fill-color:currentColor!important;transform:translateY(-1px);}
