:root{color-scheme:dark;--bg:#08090b;--panel:#111316;--line:rgba(255,255,255,.11);--text:#f5f5f5;--muted:#a0a3a8;--red:#ef5a5a;--red-soft:rgba(239,90,90,.14);--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:Inter,Arial,Helvetica,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;z-index:-1;pointer-events:none;width:min(55vw,680px);aspect-ratio:1;left:-32vw;top:8vh;border-radius:50%;background:radial-gradient(circle,rgba(239,65,76,.24),rgba(190,35,48,.11) 38%,transparent 70%);filter:blur(30px);animation:roam 5s ease-in-out infinite alternate}@keyframes roam{0%{transform:translate(0,0) scale(.9)}50%{transform:translate(55vw,35vh) scale(1.15)}100%{transform:translate(105vw,65vh) scale(.95)}}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--red);outline-offset:5px;border-radius:8px}::selection{background:var(--red);color:#17090a}
.wrap{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.hero{min-height:min(92svh,880px);display:grid;place-items:center;text-align:center;padding:72px 24px 80px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 50% 44%,#19191a 0,#101113 35%,transparent 75%)}.hero-content{max-width:900px}.identity{display:block;width:clamp(150px,18vw,210px);height:clamp(120px,15vw,170px);object-fit:contain;margin:0 auto 22px;filter:drop-shadow(0 0 26px rgba(239,65,76,.15));animation:float 6s ease-in-out infinite}@keyframes float{50%{transform:translateY(-7px)}}.eyebrow,.label{display:flex;align-items:center;justify-content:center;gap:11px;color:#a8aaad;text-transform:uppercase;font-size:10px;font-weight:650;letter-spacing:.24em}.eyebrow:before,.label:before{content:"";width:22px;height:1px;background:var(--red)}h1{font-size:clamp(54px,10vw,116px);line-height:.94;letter-spacing:-.075em;margin:25px 0 26px;background:linear-gradient(180deg,#fff 25%,#c4c4c4 100%);color:transparent;background-clip:text;font-weight:750}.hero p,.lead{max-width:660px;margin:0 auto;color:#b2b3b6;font-size:clamp(17px,2.1vw,21px);line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid rgba(239,90,90,.52);border-radius:999px;padding:15px 23px;margin-top:35px;font-size:13px;font-weight:700;transition:transform .25s,background .25s,color .25s,box-shadow .25s}.button:after{content:"↗";font-size:17px;color:var(--red);transition:color .25s}.button:hover{transform:translateY(-3px);background:var(--red);color:#16090a;box-shadow:0 12px 35px rgba(239,90,90,.2)}.button:hover:after{color:#16090a}.button.secondary{border-color:var(--line);margin-left:8px}.button.secondary:after{content:"←";order:-1}
section{padding:112px 0}.section-heading{font-size:clamp(38px,5.5vw,64px);line-height:1.04;letter-spacing:-.065em;margin:18px 0 22px}.section-intro{max-width:690px;color:var(--muted);font-size:16px;line-height:1.85;margin:0 0 48px}.label{justify-content:flex-start}.projects,.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{--x:50%;--y:0%;position:relative;isolation:isolate;overflow:hidden;min-height:370px;padding:26px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012) 50%),#0d0f11;display:flex;flex-direction:column;justify-content:space-between;transition:transform .18s ease-out,border-color .3s,box-shadow .3s}.card:before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(circle at var(--x) var(--y),rgba(239,90,90,.18),transparent 58%);transition:opacity .3s}.card:hover{border-color:rgba(239,90,90,.5);box-shadow:0 25px 65px #0008}.card:hover:before{opacity:1}.card-head{display:flex;justify-content:space-between;color:#85878a;font-size:11px;letter-spacing:.18em}.card-head b{font-size:19px;font-weight:400;transition:transform .3s,color .3s}.card:hover .card-head b{color:var(--red);transform:translate(3px,-3px)}.brand-icon{width:100%;height:108px;display:grid;place-items:center;margin:18px 0 15px;color:#fff;font-size:32px;font-weight:800;letter-spacing:-.07em}.brand-icon span{display:grid;place-items:center;width:82px;height:82px;border:1px solid rgba(239,90,90,.45);border-radius:23px;background:radial-gradient(circle,var(--red-soft),transparent 75%);box-shadow:inset 0 0 24px rgba(239,90,90,.08)}.card h3{font-size:25px;line-height:1.15;letter-spacing:-.045em;margin:0 0 12px}.card p{color:var(--muted);font-size:14px;line-height:1.8;margin:0}.card-link{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:26px;padding-top:17px;border-top:1px solid var(--line);font-size:12px;font-weight:700}.card-link span{font-size:19px;color:#929599;transition:transform .25s,color .25s}.card:hover .card-link span{transform:translateX(5px);color:var(--red)}
.about{border-block:1px solid var(--line);background:radial-gradient(ellipse at 90% 50%,rgba(86,24,31,.18),transparent 55%),rgba(255,255,255,.012)}.about-copy{max-width:810px}.about-copy p{font-size:clamp(17px,2vw,20px);line-height:1.9;color:#aaa;margin:0 0 18px}.contact{text-align:center}.contact .section-intro{margin-inline:auto;margin-bottom:0}.contact .label{justify-content:center}footer{border-top:1px solid var(--line);padding:27px 20px;text-align:center;color:#777b80;font-size:11px;letter-spacing:.08em}
.detail-hero{padding-top:90px;padding-bottom:85px;min-height:78svh}.detail-hero .identity{width:125px;height:100px;margin-bottom:28px}.detail-hero h1{font-size:clamp(48px,8vw,90px)}.services{padding-top:42px}.service-card{min-height:250px}.service-card .brand-icon{height:80px;width:80px;margin:8px 0 20px;border-radius:22px;border:1px solid rgba(239,90,90,.35);background:radial-gradient(circle,var(--red-soft),transparent 75%);font-size:28px}.notice{margin-top:42px;padding:22px 24px;border-left:2px solid var(--red);background:linear-gradient(90deg,rgba(239,90,90,.08),transparent);color:#c0c1c3;font-size:15px;line-height:1.8}.detail-contact{padding-top:35px;text-align:center}.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(24px) scale(.99);filter:blur(4px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1),filter .7s ease}.js .reveal.visible{opacity:1;transform:none;filter:blur(0)}
@media(max-width:900px){section{padding:90px 0}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card:last-child{grid-column:1/-1;min-height:320px}}@media(max-width:600px){.wrap{width:min(var(--max),calc(100% - 36px))}.hero{min-height:88svh;padding:60px 20px}.eyebrow{font-size:9px;letter-spacing:.17em;line-height:1.8}.hero p,.lead{font-size:16px}.identity{width:150px;height:122px}h1{font-size:clamp(46px,12vw,66px)}section{padding:76px 0}.cards{grid-template-columns:1fr;gap:14px}.card,.card:last-child{grid-column:auto;min-height:345px;padding:23px}.button.secondary{margin:15px 0 0}.detail-hero{min-height:76svh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none;filter:none}}

/* Original brand marks in the home project cards */
.card .project-logo{width:100%;height:118px;min-height:118px;flex:0 0 118px;margin:18px 0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.card .project-logo img{display:block;width:84%;height:100%;max-height:118px;object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 8px 18px rgba(0,0,0,.38));transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.card:hover .project-logo img{transform:scale(1.04)}

.detail-hero .brand-identity{width:clamp(160px,22vw,250px);height:clamp(135px,18vw,205px);object-fit:contain;mix-blend-mode:screen;filter:drop-shadow(0 12px 24px rgba(0,0,0,.42))}

/* Keep the Power Boost card copy readable and naturally ragged on the right. */
.projects .card p{text-align:left;text-wrap:pretty;hyphens:none}
.detail-contact .label{justify-content:center}
