:root{--ocean:#062f4a;--lagoon:#0b7891;--foam:#dfffff}
body{background:linear-gradient(180deg,#eafcff 0,#cceff4 24%,#77cad8 52%,#164f6c 78%,#062b46 100%)}
.pq-shell{position:relative;background:transparent}
.pq-shell:before,.pq-shell:after{content:"";position:fixed;z-index:0;pointer-events:none;border-radius:50%;border:1px solid rgba(214,252,255,.45);box-shadow:inset 8px 9px 20px rgba(255,255,255,.28),0 0 28px rgba(89,218,232,.2);animation:deepBubble 12s ease-in-out infinite}
.pq-shell:before{width:95px;height:95px;left:4vw;bottom:8vh}.pq-shell:after{width:42px;height:42px;right:7vw;bottom:24vh;animation-delay:-5s}
.pq-header{background:rgba(236,252,255,.78);border-bottom-color:rgba(91,197,215,.42);box-shadow:0 8px 30px rgba(11,86,112,.08)}
.pq-hero{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(218,250,255,.74) 28%,rgba(109,211,226,.48) 72%,rgba(41,151,177,.58)),radial-gradient(ellipse at 50% -10%,#fff 0,rgba(211,250,255,.9) 28%,transparent 62%);isolation:isolate}
.pq-hero:before{content:"";position:absolute;z-index:-1;inset:-20% -15% 35%;background:repeating-radial-gradient(ellipse at 50% -30%,transparent 0 48px,rgba(255,255,255,.32) 51px 54px,transparent 58px 95px);transform:perspective(500px) rotateX(58deg) scale(1.35);transform-origin:top;animation:caustics 13s linear infinite}
.pq-hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(112deg,transparent 8%,rgba(255,255,255,.32) 23%,transparent 34%),linear-gradient(72deg,transparent 55%,rgba(191,249,255,.25) 68%,transparent 79%);filter:blur(12px);animation:lightSway 9s ease-in-out infinite alternate}
.pq-screen-wrap img{border-color:rgba(226,253,255,.72);box-shadow:inset 0 0 30px rgba(255,255,255,.3)}
.pq-section{position:relative;z-index:1;background:linear-gradient(180deg,rgba(239,253,255,.92),rgba(207,241,246,.9));isolation:isolate}
.pq-section:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(circle at 8% 18%,rgba(255,255,255,.76) 0 3px,transparent 4px),radial-gradient(circle at 88% 32%,rgba(255,255,255,.55) 0 5px,transparent 6px),radial-gradient(circle at 73% 78%,rgba(224,255,255,.5) 0 2px,transparent 3px),linear-gradient(115deg,transparent 18%,rgba(255,255,255,.19) 27%,transparent 38%);background-size:190px 230px,310px 280px,145px 190px,100% 100%;opacity:.72}
.pq-section:nth-of-type(even):before{animation:waterDrift 18s linear infinite}
.pq-feature-grid article,.pq-tool-grid article,.pq-columns>div{background:linear-gradient(145deg,rgba(255,255,255,.8),rgba(220,247,251,.58));border-color:rgba(142,213,224,.58);box-shadow:inset 0 1px rgba(255,255,255,.9),0 18px 42px rgba(19,105,129,.1);backdrop-filter:blur(8px)}
.pq-dark{background:radial-gradient(circle at 80% 16%,rgba(50,199,207,.19),transparent 28%),radial-gradient(circle at 12% 82%,rgba(37,137,178,.2),transparent 30%),linear-gradient(160deg,#0b4f68,#083c59 45%,#051f3a)}
.pq-dark:before{opacity:.34;background:radial-gradient(circle at 9% 20%,rgba(198,250,255,.7) 0 2px,transparent 3px),radial-gradient(circle at 80% 45%,rgba(172,244,255,.55) 0 4px,transparent 5px),linear-gradient(105deg,transparent 12%,rgba(133,236,247,.12) 27%,transparent 42%);background-size:150px 190px,260px 310px,100% 100%}
.pq-file-grid article,.pq-compat>div,.pq-filter-grid article{backdrop-filter:blur(9px);box-shadow:inset 0 1px rgba(255,255,255,.12),0 18px 35px rgba(0,16,40,.16)}
.pq-aqua{background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.65),transparent 24%),linear-gradient(150deg,#bcebf1,#78d0dd 48%,#91ded1)}
.pq-aqua:after{content:"";position:absolute;z-index:-1;inset:0;background:repeating-radial-gradient(ellipse at 50% 0,transparent 0 65px,rgba(236,255,255,.2) 69px 72px,transparent 76px 128px);opacity:.7;animation:caustics 17s linear infinite}
.pq-status{background:radial-gradient(circle at 50% 0,rgba(255,255,255,.92),transparent 42%),linear-gradient(180deg,#7bd4df,#185e79 86%);color:#fff}.pq-status .pq-eyebrow{color:#d8ffff}.pq-status p{color:#e2f8fb}.pq-status .pq-button{box-shadow:0 15px 36px rgba(0,40,68,.28)}
@keyframes caustics{0%{background-position:0 0}50%{background-position:55px 20px}100%{background-position:110px 0}}
@keyframes lightSway{to{transform:translateX(5%) skewX(-4deg);opacity:.72}}
@keyframes waterDrift{to{background-position:190px -230px,-310px -280px,145px -190px,0 0}}
@keyframes deepBubble{0%,100%{transform:translateY(0) scale(.9);opacity:.18}45%{opacity:.65}50%{transform:translateY(-70px) scale(1.05)}}
@media(prefers-reduced-motion:reduce){.pq-shell:before,.pq-shell:after,.pq-hero:before,.pq-hero:after,.pq-section:before,.pq-aqua:after{animation:none}}
.pq-hero{min-height:min(860px,calc(100vh - 76px));background-image:linear-gradient(90deg,transparent 0 44%,rgba(240,255,255,.06) 55%,rgba(246,255,255,.34) 76%,rgba(248,255,255,.7) 100%),url("../assets/puraquapaint/puraquapaint-hero.png");background-size:cover;background-position:center;background-repeat:no-repeat}
.pq-hero-grid{grid-template-columns:1fr 1fr}.pq-hero-copy{grid-column:2;padding:48px 0 48px 40px;text-shadow:0 2px 18px rgba(255,255,255,.7)}.pq-hero-logo{width:min(570px,100%)}
.pq-workspace{position:relative;margin:48px 0 55px;padding:10px;border:1px solid rgba(195,244,250,.72);border-radius:24px;background:rgba(231,253,255,.55);box-shadow:0 30px 70px rgba(4,93,122,.2);backdrop-filter:blur(8px);overflow:hidden}.pq-workspace:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(115deg,transparent 18%,rgba(255,255,255,.25) 31%,transparent 45%);pointer-events:none}.pq-workspace img{display:block;width:100%;border-radius:16px}.pq-workspace figcaption{padding:12px 8px 5px;color:#467382;font-size:.78rem;font-weight:800;text-align:center}
@media(max-width:900px){.pq-hero{min-height:0;padding:430px 0 70px;background-size:auto 430px;background-position:28% 0;background-color:#dff9fc;background-image:url("../assets/puraquapaint/puraquapaint-hero.png")}.pq-hero:after{background:linear-gradient(180deg,transparent 0 390px,rgba(224,250,253,.9) 440px,#dff9fc 100%);filter:none}.pq-hero-grid{grid-template-columns:1fr}.pq-hero-copy{grid-column:1;padding:36px 22px;border:1px solid rgba(255,255,255,.68);border-radius:24px;background:rgba(241,255,255,.7);backdrop-filter:blur(12px);text-align:center}.pq-hero-logo{object-position:center}.pq-hero-copy>p:not(.pq-kicker){margin-left:auto;margin-right:auto}.pq-tags{justify-content:center}}
@media(max-width:620px){.pq-hero{padding-top:330px;background-size:auto 330px;background-position:26% 0}.pq-hero:after{background:linear-gradient(180deg,transparent 0 295px,rgba(224,250,253,.94) 345px,#dff9fc 100%)}.pq-hero-copy{padding:28px 16px}.pq-workspace{margin:34px 0 42px;padding:6px;border-radius:16px}.pq-workspace img{border-radius:11px}}

/* Scroll deeper through the water as the story progresses. */
#overview,#files,#layers,#tools,#workflow,#filters,#addons{
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
  background-attachment:fixed;
}
#overview{
  background-image:linear-gradient(rgba(239,253,255,.76),rgba(211,244,249,.82)),url("../assets/puraquapaint/water-shallow.png");
}
#files{
  background-image:linear-gradient(rgba(2,43,65,.67),rgba(3,24,49,.88)),url("../assets/puraquapaint/water-deep.png");
}
#layers,#workflow{
  background-image:linear-gradient(rgba(245,254,255,.80),rgba(215,243,248,.86)),url("../assets/puraquapaint/water-calm.png");
}
#tools{
  background-image:linear-gradient(rgba(173,237,244,.55),rgba(76,190,207,.67)),url("../assets/puraquapaint/water-bubbles.png");
}
#filters{
  background-image:linear-gradient(rgba(2,48,70,.63),rgba(3,25,49,.84)),url("../assets/puraquapaint/water-wave.png");
}
#addons{
  background-image:linear-gradient(rgba(242,254,255,.74),rgba(203,240,246,.84)),url("../assets/puraquapaint/water-shallow.png");
}
#overview:after,#layers:after,#tools:after,#workflow:after,#addons:after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  background:linear-gradient(105deg,transparent 8%,rgba(255,255,255,.23) 24%,transparent 39%);
  mix-blend-mode:screen;
}
#files .pq-section-head,#filters .pq-section-head{
  text-shadow:0 2px 24px rgba(0,18,42,.72);
}
#files .pq-file-grid article,#files .pq-compat>div,#filters .pq-filter-grid article{
  background:linear-gradient(145deg,rgba(7,59,83,.82),rgba(3,31,58,.72));
  border-color:rgba(162,235,244,.25);
}
@media(max-width:900px){
  #overview,#files,#layers,#tools,#workflow,#filters,#addons{background-attachment:scroll}
}

.pq-scroll-bubbles{
  position:fixed;
  z-index:20;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}
.pq-scroll-bubbles i{
  position:absolute;
  left:var(--bubble-x);
  bottom:-70px;
  width:var(--bubble-size);
  height:var(--bubble-size);
  border:1px solid rgba(226,255,255,.82);
  border-radius:50%;
  opacity:var(--bubble-alpha);
  background:radial-gradient(circle at 31% 26%,rgba(255,255,255,.92) 0 8%,rgba(218,251,255,.24) 18%,rgba(76,205,223,.12) 58%,rgba(255,255,255,.5) 78%,transparent 82%);
  box-shadow:inset -3px -4px 7px rgba(36,158,190,.18),inset 3px 3px 8px rgba(255,255,255,.55),0 0 13px rgba(167,246,255,.32);
  animation:pqBubbleRise var(--bubble-time) linear forwards;
}
@keyframes pqBubbleRise{
  0%{transform:translate3d(0,0,0) scale(.72);opacity:0}
  8%{opacity:var(--bubble-alpha)}
  50%{transform:translate3d(var(--bubble-drift),-60vh,0) scale(.94);opacity:var(--bubble-alpha)}
  88%{opacity:var(--bubble-alpha)}
  100%{transform:translate3d(var(--bubble-drift-end),-118vh,0) scale(1.08);opacity:0}
}
@media(prefers-reduced-motion:reduce){.pq-scroll-bubbles{display:none}}

.pq-illustration-stage,.pq-tool-stage{
  position:relative;
  margin:30px 0 48px;
  overflow:hidden;
  border:1px solid rgba(204,252,255,.72);
  border-radius:34px;
  background:linear-gradient(135deg,rgba(255,255,255,.55),rgba(115,224,232,.18));
  box-shadow:inset 0 1px rgba(255,255,255,.88),0 28px 70px rgba(4,99,128,.17);
  backdrop-filter:blur(7px);
}
.pq-character-reveal{
  opacity:0;
  transform:translateY(60px) scale(.96);
  transition:opacity .9s ease,transform 1.1s cubic-bezier(.16,.8,.24,1);
}
.pq-character-reveal.is-visible{opacity:1;transform:none}
.pq-illustration-stage{height:clamp(430px,48vw,620px)}
.pq-illustration-stage>img{
  position:absolute;
  width:auto;
  max-width:none;
  height:calc(100% - 28px);
  right:-2%;
  bottom:10px;
  filter:drop-shadow(0 24px 28px rgba(9,102,126,.18));
  animation:pqChinatsuDraw 6.5s ease-in-out infinite alternate;
}
.pq-illustration-stage figcaption,.pq-tool-stage figcaption{
  position:absolute;
  z-index:4;
  left:clamp(22px,5vw,70px);
  bottom:clamp(24px,5vw,64px);
  display:grid;
  gap:8px;
  max-width:390px;
  padding:20px 24px;
  border:1px solid rgba(255,255,255,.75);
  border-radius:22px;
  color:#073e56;
  background:rgba(241,254,255,.72);
  box-shadow:0 18px 40px rgba(5,82,111,.14);
  backdrop-filter:blur(12px);
}
.pq-illustration-stage figcaption strong,.pq-tool-stage figcaption strong{font-size:clamp(1.2rem,2.2vw,1.8rem)}
.pq-illustration-stage figcaption span,.pq-tool-stage figcaption span{font-size:.9rem;font-weight:700}
.pq-tool-stage{height:clamp(520px,56vw,690px)}
.pq-tool-art{position:absolute;inset:0 auto 0 0;width:min(760px,70vw)}
.pq-tool-character,.pq-tool-icon{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
}
.pq-tool-character{filter:drop-shadow(0 28px 34px rgba(4,91,119,.17));animation:pqChinatsuFloat 5.6s ease-in-out infinite alternate}
.pq-tool-icons{position:absolute;inset:0;pointer-events:none}
.pq-tool-icon{opacity:0;filter:none;animation:pqIconArrive 4.8s ease-in-out infinite}
.pq-tool-icon-1{clip-path:inset(9% 11% 72% 67%);animation-delay:0s}
.pq-tool-icon-2{clip-path:inset(27% 11% 54% 67%);animation-delay:.45s}
.pq-tool-icon-3{clip-path:inset(45% 11% 36% 67%);animation-delay:.9s}
.pq-tool-icon-4{clip-path:inset(62% 11% 18% 67%);animation-delay:1.35s}
.pq-tool-stage figcaption{left:auto;right:clamp(22px,5vw,70px);bottom:auto;top:50%;transform:translateY(-50%)}
@keyframes pqChinatsuDraw{to{transform:translate3d(-12px,-9px,0) rotate(-.35deg)}}
@keyframes pqChinatsuFloat{to{transform:translate3d(8px,-15px,0) rotate(.45deg)}}
@keyframes pqIconArrive{
  0%,8%{opacity:0;transform:translate3d(36px,24px,0) scale(.72)}
  24%,72%{opacity:1;transform:translate3d(0,0,0) scale(1)}
  88%,100%{opacity:0;transform:translate3d(-12px,-22px,0) scale(1.08)}
}
@media(max-width:760px){
  .pq-illustration-stage,.pq-tool-stage{margin:24px 0 36px;border-radius:24px}
  .pq-illustration-stage{height:500px}
  .pq-illustration-stage>img{width:850px;height:auto;right:-225px;bottom:10px}
  .pq-illustration-stage figcaption,.pq-tool-stage figcaption{left:16px;right:16px;bottom:16px;top:auto;transform:none;padding:16px 18px}
  .pq-tool-stage{height:650px}
  .pq-tool-art{width:650px;left:50%;transform:translateX(-50%);bottom:72px}
}
@media(max-width:480px){
  .pq-illustration-stage{height:430px}
  .pq-illustration-stage>img{width:720px;height:auto;right:-225px;bottom:10px}
  .pq-tool-stage{height:570px}
  .pq-tool-art{width:565px;bottom:80px}
}
@media(prefers-reduced-motion:reduce){
  .pq-character-reveal{opacity:1;transform:none;transition:none}
  .pq-illustration-stage>img,.pq-tool-character{animation:none}
  .pq-tool-icon{opacity:1;animation:none}
}
