/* Rohall Labs product stories. Image assets are captures from the owner's own
   development projects and deliberately display uncropped. */
.product{--product-accent:#70e2cf;--product-deep:#122d37;--product-ink:#172c32;--product-muted:#53656a}
.product.hektyk{--product-accent:#ff708b;--product-deep:#1c1729;--product-ink:#2a202b;--product-muted:#72616e}
.product .hero{min-height:0}
.product-hero-inner{width:var(--page);display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);align-items:center;gap:45px;padding:112px 0 103px;min-height:700px}
.product-hero-copy h1{font-size:clamp(55px,5.3vw,86px);line-height:1.035;letter-spacing:-.065em;color:#fff;max-width:620px}
.product-hero-copy h1 em{font-style:normal;color:var(--product-accent)}
.product-hero-copy .lead{font-size:clamp(19px,1.65vw,23px);line-height:1.5;max-width:570px;color:#ecf8f4}
.product-hero-copy .lead strong{color:#a0ffe1}
.product-hero-copy .hero-secondary{font-size:16px;line-height:1.85;color:#b6ccd0;max-width:560px}
.product-hero-copy .eyebrow{color:var(--product-accent)}
.product-actions{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:34px}
.product-actions .btn{background:var(--product-accent);color:#092d30}
.product-text-link{font-size:13px;font-weight:700;color:#d3f9f4}
.product-text-link:hover{text-decoration:underline;text-underline-offset:4px}
.product-preview-note{color:#94b1b8;font-size:11px;line-height:1.5;margin:25px 0 0}
.product-hero-visual{position:relative;margin:0;padding:9px;background:linear-gradient(140deg,rgba(149,250,226,.35),rgba(117,196,201,.04));box-shadow:0 28px 80px rgba(0,0,0,.27);border:1px solid rgba(184,251,232,.2);transform:translateY(7px)}
.product-hero-visual:before{content:'';position:absolute;top:-17px;right:-17px;width:80px;height:80px;border-top:2px solid var(--product-accent);border-right:2px solid var(--product-accent);opacity:.65;pointer-events:none}
.product-hero-visual img{display:block;width:100%;height:auto;object-fit:contain;background:#102431;box-shadow:0 8px 23px rgba(0,0,0,.2)}
.product-hero-visual figcaption{font-size:11px;letter-spacing:.035em;color:#b3cbce;line-height:1.55;padding:13px 6px 6px}
.buddy-hero{background:radial-gradient(circle at 91% 44%,rgba(63,182,155,.22),transparent 48%),linear-gradient(115deg,#0c2430,#123c40 65%,#1c4b46)}
.hektyk-hero{background:radial-gradient(circle at 91% 43%,rgba(190,54,118,.33),transparent 50%),linear-gradient(115deg,#100f20,#291b39 65%,#40203c)}
.hektyk-hero .product-hero-copy h1{font-size:clamp(72px,8vw,132px);line-height:.97;background:linear-gradient(120deg,#faeff7,#ff7385 58%,#b57aff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.hektyk .product-hero-copy .lead{color:#f4ecf5}
.hektyk .product-hero-copy .hero-secondary{color:#d7c3d5}
.hektyk .product-preview-note{color:#bba4bf}
.hektyk .product-hero-visual{background:linear-gradient(140deg,rgba(240,111,158,.32),rgba(186,119,204,.04));border-color:rgba(243,154,202,.2)}
.hektyk .product-hero-visual figcaption{color:#d4b9ce}
.hektyk .product-actions .btn{color:#240e22}
.product-jumpbar{position:sticky;top:80px;z-index:8;background:#f7f9f5;border-bottom:1px solid #d6e2dc;box-shadow:0 5px 18px rgba(17,43,43,.055)}
.product-jumpbar .page{display:flex;align-items:center;gap:29px;flex-wrap:wrap;min-height:62px}
.product-jumpbar a{font-size:12px;font-weight:700;color:#405c5d;padding:18px 0;border-bottom:2px solid transparent;line-height:1.5}
.product-jumpbar a:hover,.product-jumpbar a:focus-visible{border-bottom-color:#158c78;color:#0a6d61}
.hektyk .product-jumpbar{background:#282031;border-color:#4e3c55}
.hektyk .product-jumpbar a{color:#edcfdb}.hektyk .product-jumpbar a:hover{color:#ffa0ae;border-bottom-color:#ff718b}
.product .section{scroll-margin-top:145px}
.product .product-introduction{background:#fbfcf8;color:var(--product-ink)}
.product .product-introduction .eyebrow{color:#128d83}
.product .product-introduction .intro .body{color:#586c6c}
.product .intro .body strong{color:inherit}
.product .product-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:60px;align-items:center;margin-top:56px}
.product .product-layout.reverse{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.product .product-words{max-width:530px}
.product .product-words .eyebrow{margin-bottom:27px}
.product .product-words h3{font-size:clamp(30px,3vw,45px);line-height:1.11;margin-bottom:22px;color:inherit}
.product .product-words p{color:inherit;opacity:.85;line-height:1.86;font-size:15px}
.product .product-words ul{list-style:none;padding:0;margin:22px 0 0}
.product .product-words li{padding:10px 0 10px 24px;position:relative;font-size:14px;line-height:1.65;border-top:1px solid rgba(21,70,65,.15)}
.product .product-words li:before{content:'↗';position:absolute;left:0;color:#128e7e}
.visual-frame{display:block;margin:0;overflow:hidden;background:#fff;border:1px solid rgba(40,74,72,.17);padding:8px;box-shadow:0 16px 35px rgba(43,76,71,.08)}
.visual-frame img{width:100%;height:auto;display:block;object-fit:contain;background:#f1f5f3}
.visual-frame figcaption{padding:12px 8px 5px;color:#566667;font-size:11px;line-height:1.55;font-weight:600;letter-spacing:.015em}
.visual-grid{display:grid;gap:19px}
.visual-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.visual-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.visual-grid.stacked{grid-template-columns:1fr;gap:17px}
.product-section .visual-grid.two,.product-section .visual-grid.three{margin-top:48px}
.product .product-section{color:#223034}
.product .product-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.55fr);gap:30px 75px;align-items:end}
.product .product-section-heading .eyebrow{grid-column:1/-1;color:#107f79}
.product .product-section-heading h2{margin:0;max-width:750px}
.product .product-section-heading>p{color:#58676a;line-height:1.82;font-size:15px;margin:0}
.product-feature-grid{margin-top:22px}
.product-feature-grid .feature{min-height:235px;background:rgba(255,255,255,.75);border:1px solid rgba(43,69,66,.15)}
.product-feature-grid .feature .number{color:#148679}
.product-feature-grid .feature h3{color:#263039;font-size:23px}
.product-feature-grid .feature p{color:#5c6669}
.tone-sage{background:linear-gradient(120deg,#e9f3eb,#f7f8f0)}
.tone-rose{background:linear-gradient(117deg,#fff8f2,#f8eae9)}
.tone-rose .product-section-heading .eyebrow{color:#b94b62}
.tone-rose .product-words h3{color:#a52d49}
.medicine-layout{padding-top:50px;border-top:1px solid #dfcfca;margin-top:62px!important}
.tone-night{background:radial-gradient(circle at 85% 20%,rgba(67,187,177,.16),transparent 50%),#173642!important;color:#f1fbfc!important}
.tone-night .product-section-heading .eyebrow{color:#82f0d8}
.tone-night .product-section-heading>p{color:#d1e3e4}
.tone-night .product-feature-grid .feature{background:rgba(255,255,255,.055);border-color:rgba(185,230,230,.18)}
.tone-night .product-feature-grid .feature .number{color:#8feedd}
.tone-night .product-feature-grid .feature h3{color:#f2ffff}
.tone-night .product-feature-grid .feature p{color:#c1dadb}
.tone-paper{background:#f8f7f0}
.future-callout{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start;background:#e6e9dd;padding:42px 45px;margin-top:25px;border-left:4px solid #5aa88f}
.future-callout h3{font-size:31px;margin:18px 0 0}
.future-callout p{font-size:15px;line-height:1.9;color:#4e6060;margin:0}
.product-status-section{background:#132c36;color:#f3f9f7}
.product-status-section .eyebrow,.product-status-section .status-label{color:#8fe2d1}
.product-status-section .intro .body,.product-status-section .status-content{color:#bacfd0}
.product .contact{background:linear-gradient(120deg,#19453f,#163a43)}
.product .contact .btn{background:#82e3d2;color:#0b3536}
.product .contact .eyebrow{color:#90f0d9}
.product .contact h2{color:#fff}
.product .contact p{color:#cee3e1}
.product.hektyk .product-introduction{background:#f8f5f3;color:#2e2530}
.product.hektyk .product-introduction .eyebrow{color:#a32c5a}
.product.hektyk .product-introduction .intro .body{color:#685969}
.product.hektyk .product-feature-grid .feature .number{color:#a32c5a}
.product.hektyk .tone-game{background:linear-gradient(120deg,#261d32,#4c273f);color:#fff5fa}
.product.hektyk .tone-game .product-section-heading .eyebrow{color:#ff9aae}
.product.hektyk .tone-game .product-section-heading>p{color:#e2cad9}
.product.hektyk .tone-game .product-words h3{color:#fff7fd}
.product.hektyk .tone-game .product-words p{color:#e0cbd6}
.product.hektyk .tone-void{background:radial-gradient(circle at 92% 20%,rgba(166,65,128,.24),transparent 50%),#141424;color:#fff7fc}
.product.hektyk .tone-void .intro .body{color:#cfc0d1}
.product.hektyk .tone-void .eyebrow{color:#ffa0bf}
.story-dialogue{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}
.story-dialogue blockquote{margin:0;padding:34px;background:#272038;border-left:3px solid #ff718b;color:#f5e5ef;font:500 clamp(18px,2vw,27px)/1.45 'Space Grotesk',sans-serif;letter-spacing:-.02em}
.story-dialogue span{display:block;font:700 11px 'DM Sans',sans-serif;color:#ff99ae;letter-spacing:.16em;margin-bottom:22px}
.tone-gallery{background:#f7f2f1;color:#2e2530!important}
.tone-gallery .product-section-heading .eyebrow{color:#ae345d}
.tone-gallery .product-section-heading>p{color:#6c5f69}
.tone-gallery .visual-frame{background:white;border-color:#dfd1db}
.tone-gallery .visual-frame figcaption{color:#645c67}
.product.hektyk .product-status-section{background:#20192c}
.product.hektyk .product-status-section .eyebrow,.product.hektyk .product-status-section .status-label{color:#ff91b1}
.product.hektyk .contact{background:radial-gradient(circle at 90% 20%,rgba(195,67,122,.24),transparent 47%),#321c36}
.product.hektyk .contact .btn{background:#ff859e;color:#2c1125}
.product.hektyk .contact .eyebrow{color:#ff9eb8}
.product.hektyk .contact p{color:#e1c8dc}
@media(max-width:1080px){
 .product-hero-inner{grid-template-columns:1fr;min-height:0;padding:90px 0 70px}
 .product-hero-copy h1{max-width:800px}.product-hero-copy .hero-secondary{max-width:770px}
 .product-hero-visual{max-width:830px}
 .product .product-section-heading{grid-template-columns:1fr;gap:18px}
 .product .product-section-heading .eyebrow{grid-column:auto}
}
@media(max-width:850px){
 .product-jumpbar{top:80px}.product-jumpbar .page{gap:20px;min-height:58px}
 .product .product-layout,.product .product-layout.reverse{grid-template-columns:1fr;gap:24px;margin-top:36px}
 .product .product-words{max-width:unset}
 .product .visual-grid.three{grid-template-columns:1fr 1fr}
 .future-callout{grid-template-columns:1fr;gap:20px;padding:30px}
}
@media(max-width:580px){
 .product-hero-inner{padding:74px 0 52px;gap:24px}
 .product-hero-copy h1{font-size:clamp(50px,11vw,73px)}
 .hektyk-hero .product-hero-copy h1{font-size:clamp(57px,14vw,95px)}
 .product-hero-copy .lead{font-size:17px}
 .product-hero-copy .hero-secondary{font-size:14px}
 .product-hero-visual:before{display:none}
 .product-jumpbar{top:68px;position:static}.product-jumpbar .page{gap:8px 18px;padding:9px 0}
 .product-jumpbar a{padding:7px 0;font-size:11px}
 .visual-grid.two,.product .visual-grid.three{grid-template-columns:1fr}
 .product .product-section-heading h2{font-size:clamp(34px,9vw,52px)}
 .story-dialogue{grid-template-columns:1fr}.story-dialogue blockquote{padding:27px}
 .future-callout{padding:25px}
}
@media(prefers-reduced-motion:reduce){.product *{scroll-behavior:auto}}
