:root{color-scheme:light;--cream:#fff7ed;--ink:#28150b;--orange:#fa7705;--video-x:0%;--video-y:100%}
*{box-sizing:border-box}html{background:#fff;scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:12px 18px;background:white;border-radius:24px;transform:translateY(-180%)}.skip-link:focus{transform:none}
.site-nav{position:fixed;z-index:10;left:50%;top:max(24px,env(safe-area-inset-top));transform:translateX(-50%);width:min(1080px,calc(100% - 64px));height:72px;display:flex;align-items:center;justify-content:space-between;padding:9px 10px 9px 20px;border-radius:999px;isolation:isolate;overflow:hidden;border:1px solid #fff9;background:#fff7ed70;box-shadow:inset 0 1px 1px #fffe,inset 0 -1px 1px #b3937740,0 8px 32px #38231312;backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15)}
.nav-refraction{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:0;transition:opacity .3s}.site-nav.has-refraction .nav-refraction{opacity:.6}.site-nav::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:linear-gradient(155deg,#ffffff70,transparent 32%,transparent 68%,#ffffff30)}
.brand-lockup{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.nav-icon{width:40px;height:40px}.brand-wordmark,.footer-brand{font-family:ui-rounded,"SF Pro Rounded","Nunito",system-ui,sans-serif;font-weight:800;font-size:28px;letter-spacing:-1px;color:var(--orange)}.download-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;padding:0 22px;border:0;border-radius:999px;background:var(--ink);color:var(--cream);text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;transition:background .2s,transform .2s}.download-button:hover{background:#4c2b18;transform:translateY(-1px)}.download-button:disabled{cursor:default}
.hero-section{position:relative;z-index:1;isolation:isolate;min-height:0;height:88svh;max-height:1200px;overflow:hidden;border-radius:0 0 100px 100px;background:#d5c7bc}
.hero-media{position:absolute;inset:0;z-index:0;background:url("assets/landing/user-hangout/desktop-1080p.jpg") var(--video-x) var(--video-y)/cover no-repeat}
.hero-video{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--video-x) var(--video-y)}
.hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#fff7ed25,transparent 24%),linear-gradient(0deg,#f6e6e8eb 0%,#f6e6e894 18%,#f6e6e81a 43%,transparent 58%)}
/* Cover composition: one proportional canvas, with undistorted paint artwork. */
.hero-copy{z-index:1;position:absolute;right:5.5%;bottom:58px;width:min(47%,690px);aspect-ratio:853/470;container-type:inline-size;isolation:isolate}
.hero-copy h1{margin:0;color:#ed4e0c;font-family:"Fraunces",Georgia,serif;font-weight:900;line-height:1;letter-spacing:-.025em}
.hero-life{-webkit-text-stroke:2px #fff;paint-order:stroke fill;position:absolute;left:18%;top:0;font-size:19.5cqw;white-space:nowrap;transform:rotate(-4deg);transform-origin:center}
.hero-companion{position:absolute;inset:0;display:block;color:#fff6e4;isolation:isolate;font-size:22.8cqw;letter-spacing:-.045em}
.hero-companion::before{content:"";position:absolute;z-index:-1;left:0;top:15.7%;width:100%;aspect-ratio:2127/739;background:url("assets/companion-brush.png?v=6") center/contain no-repeat}
.hero-companion-text{position:absolute;left:9%;top:26%;transform:rotate(-4deg) scaleX(.82);white-space:nowrap;transform-origin:left center}
.hero-yours{position:absolute;left:12%;top:67%;display:block;white-space:nowrap;font-family:"Cormorant Garamond",Georgia,serif;font-size:18.5cqw;font-weight:400;font-style:italic;letter-spacing:-.045em;line-height:1;transform:rotate(-4deg)}
.chat-anchor{z-index:2;position:absolute;left:75%;top:42%;transform:translate(-50%,-50%);width:max-content;max-width:min(300px,calc(100% - 40px));pointer-events:none}.chat-bubble{position:relative;margin:0;border-radius:20px;padding:8px 12px;background:linear-gradient(#ffffff57,#ffffff57),linear-gradient(135deg,#ffffffb8,#fffbf48a,#ffb07038);color:#2a1200;font-size:17px;line-height:1.3;box-shadow:0 8px 18px #ff75181a,0 8px 18px #2a120014;backdrop-filter:blur(12px) saturate(1.15);-webkit-backdrop-filter:blur(12px) saturate(1.15);transform-origin:50% 100%;transition:opacity .23s,transform .35s cubic-bezier(.2,.8,.2,1)}
.chat-bubble::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffffa8,#ffb0703d,#2a12000f);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.chat-bubble.is-changing{opacity:0;transform:translateY(10px) scale(.96)}

.site-footer{background:var(--cream);padding:0 32px;border-top:1px solid #28150b0d}.footer-inner{max-width:1080px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px}.footer-brand{font-size:22px;text-decoration:none}.footer-nav{display:flex;gap:24px}.footer-nav a{font-size:13px;text-decoration:none;color:#695449}.footer-nav a:hover{text-decoration:underline}.footer-copy{font-size:12px;color:#89766c}
@media(min-width:1800px){.hero-section{max-height:none}}
@media(max-width:680px){:root{--video-x:50%}.site-nav{top:max(16px,env(safe-area-inset-top));width:calc(100% - 28px);height:62px;padding:7px 7px 7px 13px}.brand-lockup{gap:4px}.nav-icon{width:34px;height:34px}.brand-wordmark{font-size:23px}.download-button{min-height:46px;padding:0 15px;font-size:12px;gap:7px}.download-button svg{width:15px}.hero-section{min-height:0;height:88svh;max-height:1100px;border-radius:0 0 64px 64px}.hero-media{inset:0;background-image:url("assets/landing/user-hangout/mobile.jpg")}.hero-copy{width:calc(100% - 12px);max-width:600px;right:auto;left:50%;bottom:73px;transform:translateX(-50%)}.hero-media::after{background:linear-gradient(180deg,#fff7ed15,transparent 22%),linear-gradient(0deg,#f6e6e8f5 0%,#f6e6e8bd 21%,#f6e6e836 40%,transparent 56%)}.chat-anchor{top:52%;left:65%;max-width:230px}.site-footer{padding:20px}.footer-inner{min-height:80px;flex-wrap:wrap;gap:16px}.footer-nav{gap:17px}.footer-copy{width:100%;margin:0;text-align:center}}
@media(max-width:360px){.brand-wordmark{font-size:20px}.nav-icon{width:28px;height:28px}.download-button{padding:0 12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.chat-bubble.is-changing{opacity:1;transform:none}}
@media(prefers-reduced-transparency:reduce){.site-nav{background:#fff7ed}.nav-refraction{display:none}}
@media(prefers-contrast:more){.site-nav{background:#fff7ed;border-color:#28150b}.nav-refraction{display:none}.hero-copy p{color:#28150b}.chat-bubble{border:1px solid #000}.footer-nav a,.footer-copy{color:#28150b}}

@media(prefers-reduced-transparency:reduce){.chat-bubble{background:#fff7ed;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-contrast:more){.chat-bubble{background:#fff7ed;border:1px solid #2a1200}}

/* Matches ChatHomeView.homeBackground and DupleTheme's five gradient stops. */
.home-section{position:relative;margin-top:-104px;padding:162px 32px 70px;background:radial-gradient(circle 340px at 50% 100%,#ff751840,transparent),linear-gradient(to bottom,#ffe9d6 0%,#ffd9b8 30%,#ffb070 65%,#ff7518 100%)}
.home-section-inner{max-width:1000px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:100px}
.home-section-copy h2{font-family:"Fraunces",Georgia,serif;font-size:clamp(34px,3.4vw,48px);font-weight:900;line-height:1.12;letter-spacing:-.04em;margin:0 0 24px}
.home-section-copy p{max-width:390px;font-size:18px;line-height:1.6;color:#2a1200ad;margin:0 0 30px}
.home-device-wrap{display:flex;justify-content:center}
/* iPhone 17 Pro Silver vector artwork by James Jingyi. */
.iphone-mockup{position:relative;width:min(100%,270px);aspect-ratio:1406/2822;container-type:inline-size}
.iphone-screen{position:absolute;left:7.1835%;top:3.5436%;width:85.7752%;height:92.9128%;clip-path:url(#iphone-screen-clip);object-fit:fill}
.iphone-frame{filter:drop-shadow(0 24px 24px #68270024);position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.app-store-badge{display:inline-block;margin-top:2px}.app-store-badge img{display:block;width:135px;height:45px}
@media(max-width:680px){.home-section{padding:142px 28px 50px}.home-section-inner{grid-template-columns:1fr;gap:34px;max-width:430px}.home-section-copy{text-align:center}.home-section-copy p{margin-left:auto;margin-right:auto}.iphone-mockup{width:225px}}

.home-phone-messages{position:absolute;z-index:2;top:20%;left:-20%;display:flex;flex-direction:column;align-items:flex-start;gap:2cqw;pointer-events:none}
.home-phone-messages .chat-bubble{font-size:4.7cqw;line-height:1.3;padding:4cqw 5cqw;border-radius:6cqw;white-space:nowrap;box-shadow:0 3cqw 6cqw #2a120026;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15)}

/* App icon finish copied from the production header. */
.nav-icon-frame {
  position: relative;
  display: block;
  overflow: hidden;
  flex: 0 0 auto;
  isolation: isolate;
  contain: paint;
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: rgba(255, 246, 237, 0.18);
  box-shadow:
    0 12px 24px rgba(250, 119, 5, 0.18),
    inset 0 1px 1px rgba(255, 255, 255, 0.86),
    inset 0 -8px 14px rgba(95, 36, 0, 0.14);
}

.nav-icon-frame::before,
.nav-icon-frame::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
}

.nav-icon-frame::before {
  z-index: 1;
  background:
    linear-gradient(146deg, rgba(255, 255, 255, 0.55) 0%, rgba(255, 255, 255, 0.16) 37%, rgba(255, 255, 255, 0) 64%),
    radial-gradient(circle at 30% 18%, rgba(255, 255, 255, 0.48), transparent 31%);
  mix-blend-mode: screen;
}

.nav-icon-frame::after {
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.42);
  box-shadow:
    inset 1px 1px 2px rgba(255, 255, 255, 0.72),
    inset -1px -1px 2px rgba(113, 41, 0, 0.18);
}

.nav-icon-frame {
  width: 48px;
  height: 48px;
  border-radius: 15px;
}

.nav-icon {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.075);
  filter: url("#duple-nav-glass-filter") saturate(1.14) contrast(1.02);
}


.glass-filter-defs{position:absolute;pointer-events:none}
@media(max-width:680px){.nav-icon-frame{width:40px;height:40px;border-radius:13px}.nav-icon{width:100%;height:100%;transform:scale(1.04)}}
@media(max-width:360px){.nav-icon-frame{width:38px;height:38px;border-radius:12px}}

@media(max-width:680px){
  .chat-anchor{max-width:min(190px,calc(100% - 36px))}
  .chat-anchor .chat-bubble{font-size:15px}
  .home-phone-messages{left:max(-8%,calc((100cqw - 100vw)/2 + 16px))}
  .home-phone-messages .chat-bubble{font-size:4.3cqw;padding:3.2cqw 4cqw;border-radius:5.5cqw}
}
