/* Isolated sky preview. Original content, green palette and routes are shared. */
.sky-demo { --sky-ink:#174f3d; --sky-accent:#2c8759; --sky-paper:#f5f8f2; background:var(--sky-paper); }
.sky-demo .site-header { height:80px; background:rgba(249,252,246,.92); border-color:#dce8da; backdrop-filter:blur(18px); }
.sky-demo #top-nav { gap:3px; padding:5px; border:1px solid #d6e5d5; border-radius:40px; background:#e9f0e5; }
.sky-demo #top-nav .nav-link { isolation:isolate; position:relative; overflow:hidden; padding:11px 17px; border:0; border-radius:30px; color:#355c48; font-size:13px; line-height:1.4; transition:color .25s; }
.sky-demo #top-nav .nav-link::after { display:none; }
.sky-demo #top-nav .nav-link::before { content:''; position:absolute; inset:0; border-radius:inherit; z-index:-1; background:#245e46; transform:translateY(105%) scale(.65); transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.sky-demo #top-nav .nav-link:hover,.sky-demo #top-nav .nav-link:focus-visible,.sky-demo #top-nav .nav-link.active { color:#fff; background:transparent; }
.sky-demo #top-nav .nav-link:hover::before,.sky-demo #top-nav .nav-link:focus-visible::before,.sky-demo #top-nav .nav-link.active::before { transform:translateY(0) scale(1); }
.sky-demo a:focus-visible,.sky-demo button:focus-visible { outline:2px solid #2c8759; outline-offset:4px; }
.sky-demo.is-home .pro-intro { isolation:isolate; min-height:710px; padding:82px max(6%,calc((100vw - 1160px)/2)) 140px; grid-template-columns:minmax(0,1.06fr) minmax(0,1fr); gap:24px; background:#edf3e9; overflow:hidden; }
.sky-demo.is-home .pro-intro::before { content:''; display:block; position:absolute; inset:0; width:100%; height:100%; border:0; border-radius:0; clip-path:none; background:url('assets/home-atmosphere.webp') center center / cover no-repeat; opacity:1; transform:none; z-index:-3; }
.sky-demo.is-home .pro-intro::after { content:''; display:block; position:absolute; inset:0; width:auto; height:auto; border:0; border-radius:0; clip-path:none; transform:none; background:linear-gradient(90deg,rgba(245,248,240,.98) 0%,rgba(245,248,240,.94) 28%,rgba(245,248,240,.65) 44%,rgba(245,248,240,.08) 68%),linear-gradient(0deg,#edf3e9 0%,rgba(237,243,233,.9) 7%,transparent 33%); z-index:-2; }
.sky-demo .sky-galaxy { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; z-index:-1; opacity:.55; mask-image:linear-gradient(90deg,transparent 25%,#000 58%); }
.sky-demo.is-home .pro-copy { align-self:center; max-width:540px; padding:0; z-index:3; }
.sky-demo.is-home .pro-copy h1 { font-size:clamp(42px,4.7vw,66px); line-height:1.12; margin:0 0 24px; color:#174b38; letter-spacing:-2px; }
.sky-demo.is-home .pro-copy h1 span { color:#31905d; }
.sky-demo .hero-story p { color:#42614e; font-size:14px; line-height:1.9; }
.sky-demo .hero-overline { color:#337452; margin-bottom:20px; }
.sky-demo.is-home .pro-intro>.portrait-word { left:6%; top:16px; color:rgba(34,96,63,.055); font-size:80px; }
.sky-demo .hero-index { top:26px; color:#2e5b45; opacity:.7; font-size:10px; letter-spacing:2px; }
.sky-demo.is-home .pro-portrait { align-self:end; height:475px; width:100%; position:relative; z-index:2; overflow:visible; }
.sky-demo.is-home .pro-portrait::before,.sky-demo.is-home .pro-portrait::after { display:none; }
.sky-demo.is-home .pro-portrait>img { width:auto; max-width:none; height:550px; right:-25px; bottom:-70px; object-fit:contain; filter:drop-shadow(0 8px 18px rgba(43,71,47,.09)); mask-image:linear-gradient(to bottom,#000 0%,#000 77%,rgba(0,0,0,.85) 83%,transparent 100%); -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 77%,rgba(0,0,0,.85) 83%,transparent 100%); }
.sky-demo .portrait-label { left:auto; right:0; bottom:-35px; background:rgba(250,253,244,.8); border:1px solid #f6fbee; color:#345c43; border-radius:12px; padding:10px 14px; box-shadow:0 7px 22px #3656360c; transform:none; font-size:11px; }
.sky-demo .hero-proof { bottom:25px; width:min(490px,43%); background:rgba(245,250,239,.68); border:1px solid #dbe6d2; border-radius:16px; backdrop-filter:blur(12px); }
.sky-demo .hero-proof>span { padding:15px 20px; }
.sky-demo .hero-proof>span+span { border-color:#d3e2d0; padding-left:20px; }
.sky-demo .hero-proof b { font-size:29px; color:#245a40; }
.sky-demo .hero-proof small { color:#55735a; }
.sky-demo .hero-primary { background:#285f46; border-radius:30px; box-shadow:0 8px 24px #285f461c; }
.sky-demo .hero-secondary { background:#ffffff87; border-radius:30px; border-color:#bed0ba; }
.sky-demo .hero-shortcut--knowledge { left:48%; bottom:135px; }
.sky-demo .hero-shortcut--reviews { left:53%; bottom:73px; }
.sky-demo .hero-shortcut--community { left:68%; bottom:26px; }
.sky-demo .hero-shortcut--contact { right:4%; bottom:24px; }
.sky-demo .hero-shortcut-inner { border-radius:24px; border-color:#ffffffa8; box-shadow:0 6px 20px #274d3420,inset 0 1px 0 #fff; background:#f5f9eeec; backdrop-filter:blur(12px); }
.sky-demo .hero-shortcut--knowledge .hero-shortcut-inner { background:#e1efc8ed; }
.sky-demo .hero-shortcut--community .hero-shortcut-inner { background:#dcebd5ed; }
.sky-demo .hero-shortcut:hover .hero-shortcut-inner { box-shadow:0 12px 30px #274d342b; }
.sky-demo .album-section { margin-top:34px; }
.sky-demo .album-section .direction-heading { margin-bottom:18px; }
.sky-demo .album-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:14px; border:0; background:none; overflow:visible; }
.sky-demo .sky-bento { --glow-x:50%; --glow-y:50%; --glow-opacity:0; position:relative; isolation:isolate; overflow:hidden; border:1px solid #d6e3d1; border-radius:20px; background:linear-gradient(135deg,#fff,#f1f6ec); color:#214b35; box-shadow:0 5px 18px #264b2f05; transition:box-shadow .3s,border-color .3s; }
.sky-demo .sky-bento::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; border-radius:inherit; background:radial-gradient(330px circle at var(--glow-x) var(--glow-y),rgba(153,206,107,.3),transparent 72%); opacity:var(--glow-opacity); transition:opacity .25s; }
.sky-demo .sky-bento::after { content:''; position:absolute; inset:0; z-index:3; pointer-events:none; border-radius:inherit; padding:1px; background:radial-gradient(220px circle at var(--glow-x) var(--glow-y),#65a550,transparent 80%); mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite:exclude; opacity:var(--glow-opacity); transition:opacity .25s; }
.sky-demo .sky-bento:hover,.sky-demo .sky-bento:focus-within { --glow-opacity:1; border-color:#9fc48e; box-shadow:0 14px 36px #345c3415; }
.sky-demo .album-card { display:flex; flex-direction:column; align-items:flex-start; min-height:210px; padding:25px; text-decoration:none; }
.sky-demo .album-card:first-child { background:linear-gradient(140deg,#dfeccf,#f0f6e7 70%); }
.sky-demo .album-count { font-size:10px; letter-spacing:.7px; color:#4b7450; border:1px solid #bfd0b4; border-radius:20px; padding:5px 9px; }
.sky-demo .album-card h4 { width:100%; margin:22px 0 9px; font-size:21px; color:#234f36; }
.sky-demo .album-card h4 span { background:#ffffff9e; border:1px solid #d0dfc7; width:28px; height:28px; display:inline-grid; place-items:center; border-radius:50%; font-size:16px; }
.sky-demo .album-card p { font-size:12px; color:#63745f; margin:0 0 22px; white-space:normal; }
.sky-demo .album-action { margin-top:auto; font-size:11px; color:#3e7047; }
.sky-demo .feishu-link { padding:20px 25px; border-radius:18px; background:linear-gradient(110deg,#e6eedf,#f6f9f1); }
.sky-demo .author-reviews { padding-top:45px; padding-bottom:35px; background:#f5f8f2; border:0; }
.sky-demo .author-heading { text-align:left; margin-bottom:23px; }
.sky-demo .author-heading h2 { font-size:28px; color:#234e38; }
.sky-demo .author-heading p { font-size:13px; color:#6b7a66; }
.sky-demo .author-reviews .author-heading p,.sky-demo .author-contact .author-heading p { margin:10px 0 0; text-align:left; max-width:none; }
.sky-demo #top-nav .nav-link:last-child { border-radius:30px; padding:11px 17px; }
.sky-demo .author-reviews .review-grid { gap:14px; }
.sky-demo .author-reviews .review-item { margin:0; padding:23px 25px; gap:17px; background:linear-gradient(135deg,#fff,#f2f6ed); }
.sky-demo .review-item:nth-child(2),.sky-demo .review-item:nth-child(3) { background:linear-gradient(135deg,#edf3e4,#f6f9f0); }
.sky-demo .author-reviews .review-item blockquote { display:block; -webkit-line-clamp:unset; font-size:13px; line-height:1.85; color:#566550; }
.sky-demo .author-reviews .review-avatar { border-radius:11px; width:38px; height:38px; flex-basis:38px; background:#dbe9cf; color:#477043; }
.sky-demo .review-item figcaption::after { content:'“'; margin-left:auto; align-self:flex-start; height:30px; color:#aac497; font-family:Georgia,serif; font-size:58px; line-height:1; }
.sky-demo .author-contact { background:#edf3e6; border-top:1px solid #dce6d3; padding-top:32px; padding-bottom:32px; }
.sky-demo .contact-methods { grid-template-columns:1fr 1fr 1.35fr; gap:12px; }
.sky-demo .contact-methods>* { padding:19px 22px; min-height:0; gap:7px; background:#f8fbf4; border-radius:18px; }
.sky-demo.is-home .contact-methods>*:first-child { background:linear-gradient(130deg,#deebcb,#f0f6e7); }
.sky-demo.is-home main>.author-contact { background:#edf3e6!important; }
.sky-demo.is-home .contact-methods>.sky-bento { min-height:0; }
.sky-demo .contact-methods small { font-size:11px; color:#627654; }
.sky-demo .contact-methods strong { font-size:20px; letter-spacing:-.5px; color:#28523a; overflow-wrap:anywhere; }
.sky-demo .contact-methods span { font-size:11px; color:#627654; }
.sky-demo .contact-methods .copy { padding:7px 13px; min-height:30px; align-self:flex-start; background:#2f6549; border-radius:20px; font-size:11px; color:white; }
.sky-demo .bento-ripple { position:absolute; pointer-events:none; width:160px; height:160px; border-radius:50%; margin:-80px; background:radial-gradient(circle,#a1c77c77,transparent 70%); z-index:2; }
.sky-demo .sky-bento.motion-reveal { opacity:1; visibility:visible; }
@media (min-width:801px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .sky-demo .sky-bento,.sky-demo .sky-bento:hover { transform:perspective(950px) rotateX(calc(var(--bento-rx,0) * 1deg)) rotateY(calc(var(--bento-ry,0) * 1deg))!important; transition-property:box-shadow,border-color; }
 .sky-demo .sky-bento:hover { will-change:transform; }
}
.sky-demo.is-home .review-item.sky-bento::after { border:0; animation:none; }
@media (max-width:1100px) and (min-width:801px) {
 .sky-demo .site-header { padding-left:4%; padding-right:4%; }
 .sky-demo #top-nav .nav-link { padding:10px 12px; font-size:12px; }
 .sky-demo.is-home .pro-intro { padding-left:5%; padding-right:5%; }
 .sky-demo.is-home .pro-portrait>img { height:480px; right:-45px; bottom:-36px; }
 .sky-demo .hero-shortcut--knowledge { left:47%; bottom:111px; }
 .sky-demo .hero-shortcut--reviews { left:52%; bottom:56px; }
 .sky-demo .hero-shortcut--community { left:67%; bottom:18px; }
 .sky-demo .portrait-label { right:-10px; bottom:-20px; }
}
@media (max-width:800px) {
 .sky-demo .site-header { height:68px; padding:0 22px; }
 .sky-demo #top-nav { display:none; }
 .sky-demo .mobile-menu { display:block; border:1px solid #c6d8bd; border-radius:50%; background:#eaf1e4; color:#2d5e40; }
 .sky-demo .sidebar .nav-link { border-radius:30px; }
 .sky-demo .sidebar { display:flex; width:min(300px,85vw); transform:translateX(-100%); visibility:hidden; transition:transform .25s,visibility .25s; background:#f0f5e9; border-right:1px solid #d1dfc6; }
 .sky-demo .sidebar.open { transform:translateX(0); visibility:visible; }
 .sky-demo .sidebar .brand,.sky-demo .sidebar .nav-link,.sky-demo .sidebar-bottom>a { color:#31533d; }
 .sky-demo .sidebar .nav-caption,.sky-demo .sidebar .brand small { color:#78876d; }
 .sky-demo .sidebar-note { background:#e2edda; color:#35573e; border-color:#c9dbbe; }
 .sky-demo .sidebar-note b { color:#35573e; }
 .sky-demo .sidebar-note small { color:#68805b; }
 .sky-demo .sidebar .nav-link.active { background:#dfeccf; color:#254d34; }
 .sky-demo.is-home .pro-intro { min-height:0; padding:36px 24px 22px; display:flex; flex-direction:column; gap:0; }
 .sky-demo.is-home .pro-intro::before { background-size:auto 540px; background-position:60% 95%; }
 .sky-demo.is-home .pro-intro::after { background:linear-gradient(180deg,#f4f8ef 0%,#f4f8ef 25%,rgba(244,248,239,.96) 42%,rgba(244,248,239,.1) 65%,transparent 80%,#edf3e9 98%); }
 .sky-demo .hero-index { display:none; }
 .sky-demo.is-home .pro-copy { width:100%; max-width:600px; }
 .sky-demo.is-home .pro-copy h1 { font-size:44px; margin-bottom:19px; }
 .sky-demo .hero-overline { font-size:9px; margin-bottom:15px; }
 .sky-demo .hero-story p { font-size:13px; line-height:1.8; margin-bottom:9px; }
 .sky-demo.is-home .pro-copy .agency-actions { margin-top:18px; }
 .sky-demo .hero-primary,.sky-demo .hero-secondary { font-size:12px; padding:0 17px; min-height:40px; }
 .sky-demo.is-home .pro-portrait { position:relative; align-self:center; right:auto; bottom:auto; height:305px; width:100%; max-width:470px; margin-top:15px; }
 .sky-demo.is-home .pro-portrait>img { height:350px; right:calc(50% - 175px); bottom:-35px; mask-image:linear-gradient(#000 0%,#000 77%,transparent 100%); -webkit-mask-image:linear-gradient(#000 0%,#000 77%,transparent 100%); }
 .sky-demo .portrait-label { display:none; }
 .sky-demo .hero-shortcuts { position:relative; inset:auto; width:100%; gap:6px; margin:0 0 17px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
 .sky-demo .hero-shortcut { position:relative; inset:auto; }
 .sky-demo .hero-shortcut-inner { min-width:0; padding:0 4px; height:34px; font-size:10px; box-shadow:0 4px 10px #31533412; }
 .sky-demo .hero-proof { position:relative; inset:auto; width:100%; order:5; border-radius:13px; }
 .sky-demo .hero-proof>span,.sky-demo .hero-proof>span+span { padding:11px; }
 .sky-demo .hero-proof b { font-size:23px; }
 .sky-demo .hero-proof small { font-size:10px; }
 .sky-demo .album-grid { grid-template-columns:1fr; gap:10px; }
 .sky-demo .album-card { min-height:0; padding:18px 20px; border-radius:16px; }
 .sky-demo .album-card h4 { margin:12px 0 7px; font-size:19px; }
 .sky-demo .album-card p { margin:0; font-size:12px; line-height:1.6; }
 .sky-demo .album-action { display:none; }
 .sky-demo .album-section .direction-heading { align-items:flex-start; flex-direction:column; gap:5px; }
 .sky-demo .album-section .direction-heading h3 { font-size:18px; }
 .sky-demo .feishu-link { padding:17px 20px; }
 .sky-demo .author-heading { margin-bottom:17px; }
 .sky-demo .author-heading h2 { font-size:23px; }
 .sky-demo .author-heading p { font-size:12px; line-height:1.7; }
 .sky-demo .author-reviews,.sky-demo .author-contact { padding:28px 20px; }
 .sky-demo .author-reviews .review-grid { grid-template-columns:1fr; gap:10px; }
 .sky-demo .author-reviews .review-item { padding:18px; gap:12px; border-radius:16px; }
 .sky-demo .author-reviews .review-item blockquote { font-size:12px; line-height:1.8; }
 .sky-demo .contact-methods { grid-template-columns:1fr; gap:9px; }
 .sky-demo .contact-methods>* { padding:15px 17px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; text-align:left; }
 .sky-demo .contact-methods small { grid-column:1; }
 .sky-demo .contact-methods strong { grid-column:1; font-size:18px; }
 .sky-demo .contact-methods .copy { grid-column:2; grid-row:1/3; align-self:center; }
 .sky-demo .contact-methods span { grid-column:1/-1; }
}
@media (prefers-reduced-motion:reduce) {
 .sky-demo #top-nav .nav-link::before,.sky-demo .sky-bento,.sky-demo .sky-bento::before,.sky-demo .sky-bento::after { transition:none; }
 .sky-demo .sky-galaxy { display:none; }
}
