.project-modal-backdrop{position:fixed;top:80px;right:0;bottom:0;left:0;z-index:999;display:flex;align-items:flex-start;justify-content:center;padding:1.25rem 2rem 2rem;background:rgba(0,0,0,.72);box-sizing:border-box}.project-modal-shell{width:min(1200px,100%);height:100%;max-height:900px;overflow:hidden;position:relative;border-radius:1.5rem;background:linear-gradient(160deg,rgba(26,29,34,.9),rgba(10,12,16,.88));border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 80px rgba(0,0,0,.45);display:flex;flex-direction:column}.project-modal-header{position:-webkit-sticky;position:sticky;top:0;z-index:4;display:flex;justify-content:flex-end;padding:.6rem .8rem;min-height:3.2rem;background:linear-gradient(180deg,rgba(13,16,22,.98),rgba(13,16,22,.72))}.project-modal-close{position:static;width:42px;height:42px;border-radius:2rem;border:1px solid rgba(255,255,255,.28);background:rgba(0,0,0,.35);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;box-shadow:0 8px 16px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.08),inset 2px 2px 4px rgba(255,255,255,.2),inset -2px -2px 4px rgba(255,255,255,.1)}.project-modal-scroll{flex:1 1;min-height:0}.project-modal-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);min-height:100%;align-items:start}.project-modal-carousel{width:min(100%,48rem);margin-inline:auto;padding:1.5rem 1.2rem 1.2rem;display:grid;grid-template-rows:auto auto;align-content:start;grid-gap:1rem;gap:1rem;min-height:0;min-width:0;overflow:hidden}.project-modal-image-frame{position:relative;width:100%;display:flex;align-items:center;justify-content:center;border-radius:1rem;overflow:hidden;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);aspect-ratio:16/10;height:auto;min-height:16rem;max-height:26rem}.project-modal-main-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;margin:0 auto;object-fit:contain;object-position:center center;cursor:zoom-in;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:rgba(0,0,0,.2)}.project-modal-main-image:active{cursor:-webkit-grabbing;cursor:grabbing}.project-modal-image-frame .project-modal-arrow{opacity:0}.project-modal-image-frame:hover .project-modal-arrow{opacity:1}.project-modal-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:2rem;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.35);color:#fff;font-size:1.8rem;line-height:.9;cursor:pointer;transition:opacity .22s ease,box-shadow .22s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 16px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.08),inset 2px 2px 4px rgba(255,255,255,.2),inset -2px -2px 4px rgba(255,255,255,.1)}.project-modal-arrow:hover{box-shadow:0 12px 24px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.2),inset 3px 3px 6px rgba(255,255,255,.3),inset -3px -3px 6px rgba(255,255,255,.2)}.project-modal-arrow-left{left:.8rem}.project-modal-arrow-right{right:.8rem}.project-modal-counter{position:absolute;bottom:.7rem;right:.7rem;padding:.25rem .6rem;border-radius:999px;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.9);font-size:.75rem;letter-spacing:.03em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;z-index:2}.project-modal-fullscreen{position:fixed;top:80px;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:2.5rem;background:rgba(0,0,0,.92);box-sizing:border-box}.project-modal-fullscreen-image{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:-webkit-grab;cursor:grab;border-radius:.4rem}.project-modal-fullscreen-image:active{cursor:-webkit-grabbing;cursor:grabbing}.project-modal-fullscreen-close{top:1.1rem;right:1.1rem;width:46px;height:46px;border-radius:2rem;border:1px solid rgba(255,255,255,.3);font-size:1.7rem;line-height:1}.project-modal-fullscreen-arrow,.project-modal-fullscreen-close{position:absolute;background:rgba(0,0,0,.45);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3}.project-modal-fullscreen-arrow{top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:2rem;border:1px solid rgba(255,255,255,.35);font-size:2.2rem;line-height:.9;transition:background .22s ease,box-shadow .22s ease;box-shadow:0 8px 16px rgba(0,0,0,.3),inset 2px 2px 4px rgba(255,255,255,.18),inset -2px -2px 4px rgba(255,255,255,.1)}.project-modal-fullscreen-arrow:hover{background:rgba(0,0,0,.65)}.project-modal-fullscreen-arrow-left{left:1.1rem}.project-modal-fullscreen-arrow-right{right:1.1rem}.project-modal-fullscreen-counter{position:absolute;bottom:1.3rem;left:50%;transform:translateX(-50%);padding:.35rem .85rem;border-radius:999px;background:rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.92);font-size:.85rem;letter-spacing:.04em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:3}@media (max-width:600px){.project-modal-fullscreen{padding:1rem}.project-modal-fullscreen-arrow{width:44px;height:44px;font-size:1.9rem}}.project-modal-thumbs{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.5rem;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 1rem),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 1rem),transparent);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.project-modal-thumbs::-webkit-scrollbar{height:6px}.project-modal-thumbs::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px}.project-modal-thumbs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:999px}.project-modal-thumbs::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.34)}.project-modal-thumb{border:1px solid rgba(255,255,255,.22);background:transparent;border-radius:.6rem;padding:0;width:84px;height:58px;overflow:hidden;flex-shrink:0;opacity:.6;cursor:pointer;transition:opacity .2s ease,border-color .2s ease,box-shadow .2s ease}.project-modal-thumb:hover{opacity:.95;border-color:rgba(255,255,255,.45)}.project-modal-thumb.active{opacity:1;border-color:rgba(150,236,255,.85);box-shadow:0 0 0 1px rgba(150,236,255,.5),0 4px 12px rgba(0,0,0,.35)}.project-modal-thumb img{width:100%;height:100%;object-fit:cover}.project-modal-details{border-left:1px solid rgba(255,255,255,.09);padding:1.8rem 1.4rem 2.5rem;overflow-y:auto;max-height:100%;min-height:0;min-width:0}.project-modal-details,.project-modal-scroll{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.project-modal-details::-webkit-scrollbar,.project-modal-scroll::-webkit-scrollbar{width:8px}.project-modal-details::-webkit-scrollbar-track,.project-modal-scroll::-webkit-scrollbar-track{background:transparent;margin-block:.4rem}.project-modal-details::-webkit-scrollbar-thumb,.project-modal-scroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.project-modal-details::-webkit-scrollbar-thumb:hover,.project-modal-scroll::-webkit-scrollbar-thumb:hover{background:rgba(150,236,255,.45);background-clip:padding-box}@media (min-width:769px){.project-modal-scroll{overflow:hidden}.project-modal-layout{height:100%;min-height:0}.project-modal-carousel{align-self:stretch}.project-modal-details{height:100%;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}.project-modal-details h2{margin:0 0 .8rem;font-size:1.65rem}.project-modal-description{color:rgba(255,255,255,.86);line-height:1.6}.project-modal-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0}.project-modal-tags span{font-size:.8rem;border-radius:999px;padding:.4rem .8rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}.project-modal-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0 .4rem}.project-modal-action{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.15rem;border-radius:999px;font-size:.88rem;font-weight:600;letter-spacing:.02em;text-decoration:none;border:1px solid rgba(255,255,255,.22);transition:background .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease}.project-modal-action svg{transition:transform .22s ease}.project-modal-action:hover svg{transform:translate(2px,-2px)}.project-modal-action--primary{color:#0a0c10;background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(220,230,255,.88));border-color:rgba(255,255,255,.6);box-shadow:0 8px 20px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.5)}.project-modal-action--primary:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.6)}.project-modal-action--secondary{color:rgba(255,255,255,.95);background:rgba(255,255,255,.06)}.project-modal-action--secondary:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.38);transform:translateY(-1px)}.project-modal-tech h3{margin-top:1.2rem;margin-bottom:.65rem}.project-modal-software-section+.project-modal-software-section{margin-top:1rem}.project-modal-tech ul{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:.65rem;color:rgba(255,255,255,.85);line-height:1.45}.project-modal-feature{display:flex;align-items:flex-start;gap:.5rem}.project-modal-feature.bulleted:before{content:"•";color:rgba(150,236,255,.95);line-height:1.2}.project-modal-feature-text.strong{font-weight:700;color:rgba(255,255,255,.96)}.project-modal-tech p{color:rgba(255,255,255,.78)}@media (min-width:769px) and (max-width:900px){.project-modal-backdrop,.project-modal-fullscreen{top:72px}.project-modal-backdrop{padding:.9rem .9rem 1rem}.project-modal-shell{height:100%;max-height:100%}.project-modal-layout{grid-template-columns:minmax(0,.98fr) minmax(300px,1.02fr);grid-template-rows:1fr;height:100%}.project-modal-carousel{width:100%;padding:.85rem .85rem .7rem;gap:.65rem}.project-modal-image-frame{min-height:13rem;max-height:20rem;aspect-ratio:16/10}.project-modal-details{border-left:1px solid rgba(255,255,255,.09);border-top:0;padding:1.2rem 1rem 2rem;overflow-y:auto;max-height:100%}}@media (max-width:768px){.project-modal-backdrop{z-index:1200;top:80px;bottom:0;align-items:flex-start;padding:.75rem .75rem .9rem}.project-modal-shell{width:100%;height:100%;max-height:100%;margin-top:0;border-radius:1rem;display:flex;flex-direction:column}.project-modal-header{padding:.55rem .65rem;min-height:3.1rem}.project-modal-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1 1;min-height:0}.project-modal-layout{min-height:0;grid-template-columns:1fr;grid-template-rows:auto auto}.project-modal-carousel{padding:.75rem .9rem .8rem;gap:.7rem;width:100%}.project-modal-image-frame{min-height:12.5rem;max-height:15.5rem}.project-modal-details{padding:1rem 1rem 1.2rem;overflow:visible;border-left:0;border-top:1px solid rgba(255,255,255,.08)}.project-modal-details h2{font-size:1.45rem;line-height:1.25}.project-modal-description{font-size:.98rem;line-height:1.55}.project-modal-tags span{font-size:.78rem;padding:.35rem .7rem}}@media (max-width:600px){.project-modal-backdrop{top:80px;padding:.65rem .65rem .85rem}.project-modal-shell{height:100%;max-height:100%;margin-top:0;border-radius:1.2rem}.project-modal-layout{grid-template-rows:auto auto}.project-modal-carousel{padding:3.6rem .85rem .75rem}.project-modal-image-frame{min-height:220px;height:min(34vh,240px);max-height:240px}.project-modal-details{padding:.95rem 1rem 1.1rem}.project-modal-close{width:44px;height:44px}.project-modal-thumb{width:68px;height:48px}}.project-card-modern{position:relative;background:#1c1c20;border:1px solid rgba(255,255,255,.14);border-radius:1.5rem;overflow:hidden;width:100%;height:100%;display:flex;flex-direction:column;padding:.75rem;cursor:pointer;-webkit-tap-highlight-color:transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 40px rgba(0,0,0,.55);transition:box-shadow .35s ease,border-color .35s ease,background .35s ease}.project-card-modern:hover{background:#242429;border-color:rgba(255,255,255,.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 28px 60px rgba(0,0,0,.6)}.project-card-modern:focus-visible{outline:none;border-color:rgba(150,236,255,.9);box-shadow:0 0 0 3px rgba(150,236,255,.35),0 20px 50px rgba(0,0,0,.45)}.pc-media{position:relative;width:100%;aspect-ratio:16/9;border-radius:1rem;overflow:hidden;background:#111113;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}.pc-media-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .6s cubic-bezier(.22,1,.36,1)}.project-card-modern:hover .pc-media-img{transform:scale(1.03)}.pc-badge{position:absolute;top:.7rem;left:.7rem;z-index:2;max-width:calc(100% - 1.4rem);padding:.36rem .7rem;border-radius:999px;background:rgba(18,18,20,.55);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 2px 10px rgba(0,0,0,.28);color:rgba(255,255,255,.92);font-size:.66rem;font-weight:600;letter-spacing:.14em;line-height:1.2;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-body{display:flex;flex-direction:column;flex:1 1;padding:1.15rem .6rem .35rem}.pc-title{margin:0;font-size:1.28rem;font-weight:650;line-height:1.25;letter-spacing:-.02em;color:#f5f5f7}.pc-desc{margin:.45rem 0 0;color:rgba(255,255,255,.52);font-size:.88rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pc-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.pc-tag{background:rgba(255,255,255,.09);color:rgba(255,255,255,.74);padding:.34rem .72rem;font-size:.72rem;font-weight:500;line-height:1.2}.pc-cta,.pc-tag{border-radius:999px}.pc-cta{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:2.9rem;padding:0 1rem;background:#f5f5f7;color:#0b0b0c;font-size:.86rem;font-weight:600;letter-spacing:-.01em;transition:background .25s ease}.pc-body>:nth-last-child(2){margin-bottom:1.15rem}.project-card-modern:hover .pc-cta{background:#ffffff}@media (hover:none){.project-card-modern:hover{background:#1c1c20;border-color:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 18px 40px rgba(0,0,0,.55)}.project-card-modern:hover .pc-media-img{transform:none}.project-card-modern:hover .pc-cta{background:#f5f5f7}}@media (max-width:600px){.project-card-modern{padding:.65rem}.pc-body{padding:1rem .5rem .3rem}.pc-title{font-size:1.15rem}}.project-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem;margin:1rem 0;text-align:center;transition:box-shadow .2s}.project-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.15)}.project-image{width:100%;max-width:300px;border-radius:6px;margin-bottom:1rem}.project-rail{--rail-accent-grad:linear-gradient(135deg,#6366f1,#06b6d4);--rail-accent-glow:rgba(99,102,241,0.35);--rail-page-bg:#000;--rail-gutter:1.5rem;position:relative;width:100%}.project-rail--software{--rail-accent-grad:linear-gradient(135deg,#6366f1,#06b6d4);--rail-accent-glow:rgba(99,102,241,0.38)}.project-rail--data{--rail-accent-grad:linear-gradient(135deg,#f59e0b,#ec4899);--rail-accent-glow:rgba(236,72,153,0.38)}.project-rail__header{display:grid;grid-template-columns:auto 1fr auto;align-items:end;grid-gap:1rem;gap:1rem;padding:0 var(--rail-gutter,1.5rem);margin-bottom:1.6rem}.project-rail__eyebrow{font-family:var(--font-sf-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:1rem;font-weight:700;letter-spacing:.04em;background:var(--rail-accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent;align-self:center;padding-bottom:.25rem}.project-rail__title{margin:0;font-size:clamp(1.6rem,2.6vw,2.25rem);font-weight:700;letter-spacing:.01em;color:#fff;text-transform:uppercase;position:relative}.project-rail__title:after{content:"";display:block;margin-top:.55rem;height:3px;width:56px;border-radius:2px;background:var(--rail-accent-grad)}.project-rail__count{font-size:.85rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-bottom:.4rem}.project-rail__track-wrap{position:relative}.project-rail__track{list-style:none;margin:0;padding:1.5rem var(--rail-gutter,1.5rem) 2.5rem;display:flex;align-items:stretch;gap:2rem;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding-inline:var(--rail-gutter,1.5rem);scrollbar-width:none;-webkit-overflow-scrolling:touch;perspective:1600px;perspective-origin:50% 50%}.project-rail__track::-webkit-scrollbar{display:none}.project-rail__slot{flex:0 0 auto;width:380px;scroll-snap-align:start;scroll-snap-stop:always;display:flex;transform-style:preserve-3d}.pc-enter,.pc-tilt{width:100%;display:flex;transform-style:preserve-3d}.pc-tilt{will-change:transform,opacity;transition:transform .15s ease-out,opacity .15s ease-out}.project-rail__track.is-focusing .pc-tilt{transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .45s ease}.project-rail__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(20,20,28,.85);color:#fff;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,.45);opacity:0;transition:opacity .25s ease,transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease}.project-rail__nav:focus-visible,.project-rail__track-wrap:hover .project-rail__nav{opacity:1}.project-rail__nav:hover:not(:disabled){transform:translateY(-50%) scale(1.08);background:var(--rail-accent-grad);border-color:transparent;box-shadow:0 12px 32px var(--rail-accent-glow)}.project-rail__nav:disabled{opacity:0;cursor:default}.project-rail__nav--prev{left:clamp(-6px,.5vw,8px)}.project-rail__nav--next{right:clamp(-6px,.5vw,8px)}.project-rail__dots{display:flex;justify-content:center;align-items:center;gap:.55rem;margin-top:.5rem;padding-bottom:.25rem}.project-rail__dot{width:8px;height:8px;padding:0;border:none;border-radius:50%;background:rgba(255,255,255,.18);cursor:pointer;transition:width .3s ease,background .3s ease,transform .3s ease}.project-rail__dot:hover{background:rgba(255,255,255,.4);transform:scale(1.15)}.project-rail__dot--active{width:26px;border-radius:4px;background:var(--rail-accent-grad);transform:none}.project-rail__dot:focus-visible{outline:2px solid #fff;outline-offset:3px}.project-rail--empty{padding:1rem 0 2rem}.project-rail__empty-text{margin:1rem 0 0;color:rgba(255,255,255,.55);font-size:1rem;text-align:left;padding:0 .25rem}@media (max-width:1023px){.project-rail__nav{opacity:1}.project-rail__slot{width:340px}}@media (max-width:767px){.project-rail__header{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:.5rem .6rem}.project-rail__eyebrow{font-size:.8rem}.project-rail__title{font-size:clamp(1.05rem,5vw,1.85rem);letter-spacing:0;white-space:nowrap}.project-rail__count{grid-column:1/-1;padding-bottom:0;font-size:.78rem}.project-rail__nav{display:none}.project-rail{--rail-gutter:1rem;--rail-peek:32px;--rail-gap:0.75rem;--rail-card-max:420px;--rail-bleed:1rem}.project-rail__track-wrap{margin-inline:calc(-1 * var(--rail-bleed))}.project-rail__track{gap:var(--rail-gap);padding:.75rem max(calc(var(--rail-peek) + var(--rail-gap)),calc((100% - var(--rail-card-max)) / 2)) 1.5rem;scroll-padding-inline:0}.project-rail__slot{width:min(100%,var(--rail-card-max));max-width:none;scroll-snap-align:center}.project-rail__track.is-hinting .project-rail__slot{animation:rail-swipe-hint 1.15s cubic-bezier(.22,1,.36,1) 1}}@keyframes rail-swipe-hint{0%{transform:translateX(0)}38%{transform:translateX(-22px)}72%{transform:translateX(5px)}to{transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.project-rail__track{scroll-behavior:auto;perspective:none}.pc-tilt,.project-rail__dot,.project-rail__nav{transition:none}.pc-tilt{transform:none!important;opacity:1!important}.project-rail__track.is-hinting .project-rail__slot{animation:none}}.projects-page{min-height:100vh;background:#000;color:#fff;position:relative;overflow-x:hidden;padding-top:80px}.projects-bg-pattern{position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(45deg,transparent,transparent 2px,rgba(255,255,255,.02) 0,rgba(255,255,255,.02) 4px);z-index:1;pointer-events:none;will-change:transform}.projects-hero{position:relative;z-index:2;padding:4rem 0 4.5rem;text-align:center}.projects-hero-content{max-width:900px;margin:0 auto;padding:0 2rem}.projects-eyebrow{font-size:.85rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.25rem;color:rgba(255,255,255,.6)}.projects-title{font-size:clamp(3rem,7vw,6.5rem);font-weight:800;margin:0 0 1.75rem;color:#fff;text-transform:uppercase;letter-spacing:.02em;line-height:1.02;text-shadow:0 4px 20px rgba(255,255,255,.1)}.projects-title-accent{display:inline-block;color:#7dd3fc}.projects-description{font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.65;color:rgba(255,255,255,.78);max-width:680px;margin:0 auto;font-weight:400}.projects-container{position:relative;z-index:10;max-width:1400px;margin:0 auto;padding:0 2rem 4rem;display:flex;flex-direction:column;gap:4.5rem;align-items:stretch}@media (max-width:900px){.projects-hero{padding:2rem 0 3rem}.projects-container{padding:0 1rem 3rem;gap:3rem}}@media (max-width:600px){.projects-hero-content{padding:0 1rem}.projects-title{font-size:clamp(2rem,11vw,3.4rem);letter-spacing:.01em;line-height:1.05;margin:0 0 1.25rem}.projects-description{font-size:1rem;line-height:1.6}}.faq-section{background:#000;color:#fff;font-family:var(--font-sf);padding:clamp(4rem,10vh,7rem) clamp(1.2rem,4vw,4rem)}.faq-inner{max-width:820px;margin:0 auto}.faq-shell-toggle{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.7rem;cursor:pointer;list-style:none;padding:.25rem 0}.faq-shell-toggle::-webkit-details-marker{display:none}.faq-shell-toggle:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:8px;border-radius:14px}.faq-eyebrow{display:block;margin:0;font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.55)}.faq-title{margin:0;font-size:clamp(2rem,5vw,3.2rem);font-weight:800;letter-spacing:-.01em;line-height:1.1}.faq-shell-chevron{width:13px;height:13px;margin-top:.4rem;border-right:2px solid rgba(255,255,255,.6);border-bottom:2px solid rgba(255,255,255,.6);transform:rotate(45deg);transition:transform .3s ease}.faq-shell[open] .faq-shell-chevron{transform:rotate(-135deg);margin-top:.7rem}.faq-shell[open] .faq-list{margin-top:2.5rem}.faq-list{display:flex;flex-direction:column;gap:.9rem}.faq-item{border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.03);overflow:hidden;transition:border-color .25s ease,background .25s ease}.faq-item[open]{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.05)}.faq-q{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;padding:1.25rem 1.4rem;font-size:clamp(1rem,1.8vw,1.15rem);font-weight:600;color:#fff}.faq-q::-webkit-details-marker{display:none}.faq-mark{position:relative;flex-shrink:0;width:18px;height:18px}.faq-mark:after,.faq-mark:before{content:"";position:absolute;top:50%;left:50%;width:14px;height:2px;background:rgba(255,255,255,.7);transform:translate(-50%,-50%);transition:transform .25s ease,opacity .25s ease}.faq-mark:after{transform:translate(-50%,-50%) rotate(90deg)}.faq-item[open] .faq-mark:after{opacity:0;transform:translate(-50%,-50%) rotate(0deg)}.faq-a{padding:0 1.4rem 1.4rem}.faq-a p{margin:0;font-size:1rem;line-height:1.7;color:rgba(255,255,255,.75)}@media (prefers-reduced-motion:reduce){.faq-item,.faq-mark:after,.faq-mark:before,.faq-shell-chevron{transition:none}}