:root{--bg:#fffdfb;--text:#1d1d1f;--muted:#76767d;--line:rgba(29,29,31,.10);--purple:#7869ff;--pink:#ed8dc7;--peach:#f4a379;--mint:#6fca9f;--blue:#7190f4;--container:1320px;--shadow:0 26px 75px rgba(55,42,91,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Apple SD Gothic Neo","Noto Sans KR","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.container{width:min(calc(100% - 56px),var(--container));margin-inline:auto}.narrow{max-width:780px}
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:78px;background:rgba(255,253,251,.72);backdrop-filter:blur(24px) saturate(165%);-webkit-backdrop-filter:blur(24px) saturate(165%);border-bottom:1px solid transparent;transition:height .32s ease,background .32s ease,border-color .32s ease}.site-header.scrolled{height:60px;background:rgba(255,253,251,.94);border-color:var(--line)}.header-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.brand{justify-self:start;display:flex;align-items:center;gap:12px;font-weight:780;font-size:21px;letter-spacing:-.035em}.brand img{width:38px;height:38px;border-radius:11px;box-shadow:0 8px 22px rgba(117,103,255,.18);transition:.32s}.site-header.scrolled .brand img{width:31px;height:31px}.site-nav{display:flex;align-items:center;gap:43px}.site-nav a{position:relative;padding:29px 0 23px;font-size:14px;color:#343438;transition:color .2s}.site-header.scrolled .site-nav a{padding:20px 0 16px}.site-nav a:after{content:"";position:absolute;left:0;right:0;bottom:12px;height:2px;border-radius:2px;background:var(--purple);transform:scaleX(0);transition:transform .2s}.site-nav a:hover,.site-nav a.active{color:var(--purple)}.site-nav a.active:after{transform:scaleX(1)}.header-store-badge,.app-store-badge{display:inline-flex;align-items:center;gap:9px;background:#09090a;color:#fff;border-radius:9px;line-height:1;font-weight:650;box-shadow:0 10px 24px rgba(0,0,0,.14);transition:transform .22s,box-shadow .22s}.header-store-badge{justify-self:end;padding:8px 13px;font-size:14px}.header-store-badge small,.app-store-badge small{display:block;font-size:8px;font-weight:500;margin-bottom:3px}.apple{font-size:26px;line-height:1}.header-store-badge:hover,.app-store-badge:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(0,0,0,.19)}
.app-preview{position:relative;min-height:760px;padding:146px 0 72px;overflow:hidden;background:linear-gradient(180deg,#fffdfb 0%,#fffefa 66%,#fbf8ff 100%)}.preview-glow{position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}.preview-glow-left{width:620px;height:420px;left:-300px;bottom:-170px;background:radial-gradient(circle,rgba(120,105,255,.16),transparent 68%)}.preview-glow-right{width:580px;height:380px;right:-280px;top:90px;background:radial-gradient(circle,rgba(237,141,199,.12),transparent 68%)}.preview-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(390px,.78fr) minmax(0,1.72fr);gap:58px;align-items:center}.section-kicker{margin:0 0 24px;color:var(--purple);font-size:12px;font-weight:850;letter-spacing:.29em}.preview-copy h1{margin:0 0 28px;font-size:clamp(54px,5.3vw,82px);line-height:1.03;letter-spacing:-.075em}.preview-copy h1 span{color:var(--purple)}.preview-description{margin:0;color:var(--muted);font-size:19px;line-height:1.7}.preview-actions{display:flex;align-items:center;gap:18px;margin-top:40px}.app-store-badge{padding:11px 19px 10px;font-size:20px}.app-store-badge .apple{font-size:35px}.app-store-badge small{font-size:10px}.qr-placeholder{width:68px;height:68px;padding:7px;border-radius:10px;background:#fff;box-shadow:0 9px 26px rgba(0,0,0,.11)}.qr-placeholder span{display:block;width:100%;height:100%;background:repeating-conic-gradient(#111 0 25%,#fff 0 50%) 0/10px 10px;border:5px solid #fff;outline:2px solid #111}.prayer-count{display:flex;align-items:center;gap:17px;margin-top:42px;color:var(--muted)}.heart-line{font-size:48px;line-height:1;color:var(--purple);font-family:Georgia,serif}.prayer-count p{margin:0;font-size:16px;line-height:1.7}.prayer-count strong{color:#5f5f65;font-weight:650}.prayer-count em{font-style:normal;color:var(--purple)}
.preview-carousel{min-width:0}.preview-viewport{width:100%;overflow:hidden;padding:14px 0 22px}.preview-track{display:flex;gap:16px;will-change:transform;transition:transform .55s cubic-bezier(.22,.61,.36,1);touch-action:pan-y}.preview-card{flex:0 0 calc((100% - 48px)/4);min-width:0;height:526px;padding:28px 14px 0;border-radius:22px;border:1px solid rgba(255,255,255,.92);box-shadow:var(--shadow);overflow:hidden}.theme-purple{background:linear-gradient(180deg,#efeaff 0%,#f6f1ff 60%,#fff 100%)}.theme-pink{background:linear-gradient(180deg,#fff0f8 0%,#fff4fa 60%,#fff 100%)}.theme-peach{background:linear-gradient(180deg,#fff2e9 0%,#fff7f1 60%,#fff 100%)}.theme-mint{background:linear-gradient(180deg,#eaf8f2 0%,#f5fbf8 60%,#fff 100%)}.theme-blue{background:linear-gradient(180deg,#eef2ff 0%,#f6f8ff 60%,#fff 100%)}.card-heading{text-align:center;height:126px}.mini-symbol{display:block;margin:0 auto 9px;color:var(--pink);font-size:32px;line-height:1}.theme-purple .mini-symbol{color:var(--purple)}.theme-peach .mini-symbol{color:var(--peach)}.theme-mint .mini-symbol{color:var(--mint)}.theme-blue .mini-symbol{color:var(--blue)}.rosary-symbol{position:relative}.card-heading h2{margin:0 0 8px;font-size:19px;letter-spacing:-.04em}.card-heading p{margin:0;color:#6d6d73;font-size:11px}.screen-shell{height:400px;padding:7px 7px 0;border-radius:29px 29px 0 0;background:rgba(255,255,255,.92);box-shadow:0 15px 42px rgba(41,31,70,.12);overflow:hidden}.screen-shell img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:23px 23px 0 0}.carousel-controls{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.carousel-dots{display:flex;gap:9px}.dot{width:9px;height:9px;padding:0;border:0;border-radius:999px;background:#d8d3ef;cursor:pointer;transition:width .25s,background .25s}.dot.active{width:21px;background:var(--purple)}.carousel-arrows{display:flex;gap:12px}.carousel-button{width:38px;height:38px;border:1.5px solid var(--purple);border-radius:50%;background:#fff;color:var(--purple);font-size:28px;line-height:30px;cursor:pointer;transition:.2s}.carousel-button:hover{background:var(--purple);color:#fff}.carousel-button:disabled{opacity:.3;cursor:default}
.features-section{padding:72px 0 95px;background:#fff}.features-heading{text-align:center;margin-bottom:36px}.features-heading .section-kicker{margin-bottom:16px}.features-heading h2{margin:0 0 12px;font-size:40px;line-height:1.12;letter-spacing:-.055em}.features-heading>p:last-child{margin:0;color:var(--muted);font-size:16px}.compact-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.compact-feature{padding:26px 17px 23px;text-align:center;border:1px solid rgba(29,29,31,.08);border-radius:16px;background:#fff;box-shadow:0 8px 28px rgba(30,27,43,.035);transition:.25s}.compact-feature:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(58,43,103,.09)}.feature-icon{width:47px;height:47px;display:grid;place-items:center;margin:0 auto 15px;border-radius:50%;font-size:19px}.feature-icon.purple{color:var(--purple);background:#efebff}.feature-icon.pink{color:var(--pink);background:#fff0f7}.feature-icon.peach{color:var(--peach);background:#fff1e8}.feature-icon.mint{color:var(--mint);background:#e9f8f1}.feature-icon.blue{color:var(--blue);background:#edf1ff}.compact-feature h3{margin:0 0 9px;font-size:17px;letter-spacing:-.035em}.compact-feature p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.download-section{padding:110px 0;text-align:center}.download-panel{position:relative;padding:94px 30px;border-radius:48px;background:linear-gradient(145deg,#eee9ff,#fff5fa 70%,#fff);overflow:hidden;border:1px solid rgba(117,103,255,.1)}.download-mark{width:84px;height:84px;margin:0 auto 25px;border-radius:23px;box-shadow:0 20px 45px rgba(117,103,255,.25)}.download-panel h2,.legal-hero h1{margin:0 0 22px;font-size:clamp(42px,5.5vw,68px);line-height:1.04;letter-spacing:-.06em}.download-panel>p:not(.section-kicker):not(.coming-soon),.legal-hero p{color:var(--muted);font-size:19px;line-height:1.7}.coming-soon{margin:17px 0 0!important;font-size:13px!important;color:var(--muted)!important}.site-footer{padding:68px 0 28px;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;gap:40px}.footer-brand{font-size:21px;font-weight:760;letter-spacing:-.03em}.footer-inner p{margin:10px 0 0;color:var(--muted)}.footer-links{display:flex;gap:28px}.footer-links a{font-size:14px;color:var(--muted)}.footer-bottom{margin-top:48px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:13px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.22,.61,.36,1)}.reveal.visible{opacity:1;transform:none}
.legal-main{min-height:75vh;padding-top:78px}.legal-hero{padding:120px 0 72px;text-align:center;background:linear-gradient(180deg,#fffdfb,#faf7ff)}.legal-content{padding:32px 0 120px}.legal-content article{padding:38px 0;border-top:1px solid var(--line)}.legal-content h2{margin:0 0 18px;font-size:29px;letter-spacing:-.035em}.legal-content h3{margin:28px 0 10px;font-size:20px}.legal-content p{color:var(--muted);font-size:17px;line-height:1.8}.text-link{color:var(--purple);font-weight:700}.note{margin-top:32px;padding:20px 22px;border-radius:18px;background:#f7f3f0;font-size:14px!important}
@media(max-width:1180px){.preview-layout{grid-template-columns:360px minmax(0,1fr);gap:38px}.preview-card{flex-basis:calc((100% - 32px)/3)}.compact-feature-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.header-inner{grid-template-columns:1fr auto}.site-nav{display:none}.app-preview{padding-top:122px}.preview-layout{grid-template-columns:1fr;gap:48px}.preview-copy{text-align:center;max-width:720px;margin:auto}.preview-actions,.prayer-count{justify-content:center}.preview-card{flex-basis:calc((100% - 32px)/3)}.compact-feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.container{width:min(calc(100% - 28px),var(--container))}.site-header{height:64px}.site-header.scrolled{height:54px}.brand img{width:32px;height:32px}.brand span{font-size:18px}.header-store-badge{padding:7px 9px}.header-store-badge span:last-child{display:none}.app-preview{padding:108px 0 58px}.preview-copy h1{font-size:clamp(46px,13vw,61px)}.preview-description{font-size:16px}.preview-actions{gap:12px}.qr-placeholder{display:none}.prayer-count{margin-top:30px;text-align:left}.heart-line{font-size:39px}.prayer-count p{font-size:14px}.preview-viewport{overflow:visible}.preview-carousel{overflow:hidden}.preview-track{gap:14px}.preview-card{flex-basis:82%;height:510px}.carousel-controls{margin-top:18px}.features-section{padding:64px 0 75px}.features-heading h2{font-size:34px}.compact-feature-grid{grid-template-columns:1fr}.compact-feature{padding:22px}.download-section{padding:80px 0}.download-panel{padding:72px 20px;border-radius:34px}.footer-inner,.footer-bottom{flex-direction:column}.footer-links{flex-wrap:wrap}.footer-bottom{gap:8px}.legal-main{padding-top:64px}.legal-hero{padding:90px 0 52px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* =========================================================
   Feature Stories · Sprint 4
========================================================= */
.features-section{position:relative;padding:128px 0 136px;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fffdfc 42%,#faf7ff 100%)}
.feature-cross{position:absolute;right:-85px;top:82px;width:330px;height:330px;opacity:.032;transform:rotate(10deg);pointer-events:none}
.feature-cross span{position:absolute;display:block;background:#6f5bf2;border-radius:999px}
.feature-cross span:nth-child(1){width:92px;height:330px;left:119px;top:0}
.feature-cross span:nth-child(2){width:330px;height:92px;left:0;top:119px}
.feature-cross span:nth-child(3){width:122px;height:122px;left:104px;top:-42px;border-radius:50%}
.feature-cross span:nth-child(4){width:122px;height:122px;left:104px;bottom:-42px;border-radius:50%}
.features-heading{max-width:760px;margin:0 auto 66px;text-align:center}
.features-heading h2{font-size:clamp(42px,5vw,66px);line-height:1.06;letter-spacing:-.065em;margin-bottom:22px}
.features-heading>p:last-child{font-size:18px;line-height:1.7}
.feature-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.feature-story{position:relative;min-height:660px;padding:52px 48px 0;border-radius:38px;overflow:hidden;border:1px solid rgba(29,29,31,.065);box-shadow:0 20px 58px rgba(38,30,65,.075);isolation:isolate;transition:transform .4s cubic-bezier(.22,.61,.36,1),box-shadow .4s ease}
.feature-story:hover{transform:translateY(-7px);box-shadow:0 34px 80px rgba(45,35,78,.13)}
.feature-story:before{content:"";position:absolute;inset:0;z-index:-2}
.feature-story:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;filter:blur(2px);z-index:-1;pointer-events:none}
.feature-story-rosary:before{background:linear-gradient(145deg,#f0ebff 0%,#f9f6ff 53%,#fff 100%)}
.feature-story-rosary:after{right:-140px;bottom:-150px;background:radial-gradient(circle,rgba(119,100,255,.24),transparent 68%)}
.feature-story-record:before{background:linear-gradient(145deg,#fff0f7 0%,#fff9fc 56%,#fff 100%)}
.feature-story-record:after{left:-160px;bottom:-160px;background:radial-gradient(circle,rgba(238,136,194,.22),transparent 68%)}
.feature-story-liturgy:before{background:linear-gradient(145deg,#fff4e9 0%,#fffaf5 56%,#fff 100%)}
.feature-story-liturgy:after{right:-150px;top:-150px;background:radial-gradient(circle,rgba(244,163,121,.2),transparent 68%)}
.feature-story-notice:before{background:linear-gradient(145deg,#eaf8f2 0%,#f6fcf9 55%,#fff 100%)}
.feature-story-notice:after{right:-120px;bottom:-150px;background:radial-gradient(circle,rgba(95,202,153,.2),transparent 68%)}
.feature-story-copy{position:relative;z-index:4;max-width:440px}
.story-number{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.75);border:1px solid rgba(29,29,31,.06);font-size:12px;font-weight:760;color:#606066;box-shadow:0 8px 20px rgba(41,32,67,.06)}
.story-label{margin:24px 0 13px;font-size:12px;font-weight:790;letter-spacing:.18em;color:var(--purple)}
.feature-story-record .story-label{color:#d96fae}.feature-story-liturgy .story-label{color:#df895c}.feature-story-notice .story-label{color:#3fa879}
.feature-story h3{margin:0 0 20px;font-size:clamp(34px,3.2vw,49px);line-height:1.08;letter-spacing:-.06em}
.feature-story-copy>p:last-child{margin:0;color:#6f6f76;font-size:16px;line-height:1.75;max-width:410px}

/* Rosary visual */
.rosary-visual{position:absolute;left:44px;right:38px;bottom:0;height:295px}
.rosary-line{position:absolute;right:75px;top:0;width:3px;height:260px;background:linear-gradient(180deg,rgba(121,103,255,.15),rgba(121,103,255,.65));border-radius:99px}
.bead{position:absolute;right:60px;width:32px;height:32px;border-radius:50%;background:linear-gradient(145deg,#d8d0ff,#826fff);box-shadow:0 8px 18px rgba(105,87,220,.25),inset 0 1px 2px rgba(255,255,255,.75)}
.bead-1{top:0}.bead-2{top:45px}.bead-3{top:90px}.bead-4{top:135px}.bead-5{top:180px}.bead-6{top:225px;width:42px;height:42px;right:55px}
.rosary-progress{position:absolute;left:0;bottom:36px;width:min(330px,70%);padding:21px 22px;border-radius:22px;background:rgba(255,255,255,.84);backdrop-filter:blur(16px);box-shadow:0 18px 46px rgba(68,49,124,.14);border:1px solid rgba(255,255,255,.85)}
.rosary-progress strong,.rosary-progress span{display:block}.rosary-progress strong{font-size:15px;margin-bottom:7px}.rosary-progress span{font-size:12px;color:#77747f;margin-bottom:15px}.rosary-progress div{height:7px;border-radius:99px;background:#ece8fa;overflow:hidden}.rosary-progress i{display:block;width:64%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7564fb,#ef8bc7)}

/* Calendar visual */
.calendar-visual{position:absolute;left:42px;right:42px;bottom:-12px;padding:27px 26px 38px;border-radius:30px 30px 0 0;background:rgba(255,255,255,.9);box-shadow:0 22px 58px rgba(135,64,107,.13);border:1px solid rgba(255,255,255,.9)}
.calendar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.calendar-top span{font-size:18px;font-weight:750}.calendar-top b{font-size:11px;color:#d86cae;background:#fff0f7;padding:7px 10px;border-radius:99px}
.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;text-align:center}.calendar-week{margin-bottom:11px;color:#aaa7ae;font-size:10px}.calendar-days span{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;font-size:12px;color:#656269}.calendar-days .prayed{background:#f7ddec;color:#c65b9a;font-weight:750}.calendar-days .today{background:linear-gradient(145deg,#ec8bc5,#c969a5);color:#fff;font-weight:800;box-shadow:0 7px 18px rgba(204,103,164,.28)}

/* Liturgy visual */
.liturgy-visual{position:absolute;left:52px;right:52px;bottom:-28px;height:315px;perspective:1000px}
.liturgy-card{height:100%;padding:31px 32px;border-radius:30px 30px 0 0;background:#fffdf8;box-shadow:0 24px 60px rgba(142,86,49,.14);border:1px solid rgba(217,162,123,.18);transform:rotate(-2deg);transform-origin:bottom center}
.liturgy-date{display:inline-block;font-size:10px;letter-spacing:.18em;color:#d97b4c;font-weight:800;margin-bottom:16px}.liturgy-card>p{margin:0 0 12px;color:#9a8170;font-size:12px}.liturgy-card h4{margin:0 0 22px;font-family:Georgia,"AppleMyungjo",serif;font-size:25px;line-height:1.45;font-weight:500;color:#3c3029}.reading-lines{display:grid;gap:8px}.reading-lines i{display:block;height:5px;border-radius:99px;background:#eee6de}.reading-lines i:nth-child(2){width:88%}.reading-lines i:nth-child(3){width:94%}.reading-lines i:nth-child(4){width:71%}.read-more{display:inline-block;margin-top:20px;font-size:11px;color:#d37849;font-weight:750}

/* Notice visual */
.notice-visual{position:absolute;left:34px;right:34px;bottom:0;height:308px}
.notice-bell{position:absolute;right:16px;top:-8px;width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,#80d7ae,#48b985);color:#fff;font-size:25px;box-shadow:0 15px 30px rgba(68,175,125,.24);z-index:4}.notice-bell b{position:absolute;right:-5px;top:-6px;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#ee7da7;color:#fff;font-size:10px;border:3px solid #eefaf4}
.notice-card{position:absolute;left:0;right:0;padding:23px 25px;border-radius:24px;background:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 45px rgba(43,110,78,.12)}
.notice-card span,.notice-card strong,.notice-card p{display:block}.notice-card span{font-size:11px;color:#7b8580;margin-bottom:9px}.notice-card strong{font-size:16px;line-height:1.45}.notice-card p{margin:10px 0 0;color:#858b88;font-size:12px;line-height:1.5}.notice-card span i{font-style:normal;font-size:9px;background:#e3f7ed;color:#2fa06d;padding:4px 7px;border-radius:99px;margin-right:6px;font-weight:800}.notice-card-back{top:42px;transform:scale(.91);opacity:.55}.notice-card-front{top:102px}

@media(max-width:1080px){.feature-story{min-height:610px;padding:44px 38px 0}.feature-story h3{font-size:39px}.calendar-visual{left:30px;right:30px}.liturgy-visual{left:38px;right:38px}}
@media(max-width:800px){.features-section{padding:96px 0 104px}.feature-story-grid{grid-template-columns:1fr}.feature-story{min-height:620px}.feature-story-copy{max-width:500px}.feature-story h3{font-size:44px}.feature-cross{right:-170px}.rosary-progress{width:350px}.calendar-visual{max-width:570px;margin:auto}.liturgy-visual{max-width:560px;margin:auto}.notice-visual{max-width:560px;margin:auto}}
@media(max-width:520px){.features-section{padding:78px 0 84px}.features-heading{margin-bottom:42px}.features-heading h2{font-size:38px}.features-heading>p:last-child{font-size:15px}.feature-story-grid{gap:16px}.feature-story{min-height:570px;padding:34px 25px 0;border-radius:29px}.feature-story h3{font-size:36px}.feature-story-copy>p:last-child{font-size:14px;line-height:1.68}.story-number{width:32px;height:32px}.story-label{margin-top:18px}.rosary-visual{left:24px;right:18px;height:260px}.rosary-progress{width:68%;padding:17px}.bead{right:42px}.rosary-line{right:57px}.bead-6{right:37px}.calendar-visual{left:18px;right:18px;padding:22px 17px 31px}.calendar-days{gap:4px}.liturgy-visual{left:22px;right:22px;height:275px}.liturgy-card{padding:25px 23px}.liturgy-card h4{font-size:21px}.notice-visual{left:18px;right:18px;height:280px}.notice-card{padding:20px}.notice-bell{right:7px;width:54px;height:54px}.feature-cross{display:none}}

/* =========================================================
   Premium Hero
========================================================= */
.hero-premium{position:relative;min-height:100svh;padding:132px 0 72px;display:grid;align-items:center;overflow:hidden;background:linear-gradient(180deg,#fffdfb 0%,#fffdfa 58%,#fbf8ff 100%)}
.hero-premium-inner{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);align-items:center;gap:72px}
.hero-premium-copy{max-width:650px;padding-bottom:18px}
.hero-brand-label{margin:0 0 24px;color:var(--purple);font-size:13px;font-weight:820;letter-spacing:.28em}
.hero-premium h1{margin:0;font-size:clamp(52px,5.5vw,84px);line-height:1.06;letter-spacing:-.065em;font-weight:820}
.hero-premium h1 .hero-title-plain{color:var(--ink)}
.hero-premium h1 .hero-title-gradient{background:linear-gradient(105deg,#4f43d7 0%,#7656e8 48%,#c36fb1 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-premium-description{margin:30px 0 0;color:#707077;font-size:clamp(18px,1.65vw,23px);line-height:1.65;letter-spacing:-.025em}
.hero-store-badge{margin-top:38px;padding:12px 19px;font-size:19px;border-radius:12px}
.hero-store-badge small{font-size:10px}.hero-store-badge .apple{font-size:34px}
.hero-aurora{position:absolute;border-radius:50%;filter:blur(8px);pointer-events:none}
.hero-aurora-one{width:760px;height:610px;left:-390px;bottom:-310px;background:radial-gradient(circle,rgba(119,101,255,.17),rgba(237,141,199,.07) 45%,transparent 72%)}
.hero-aurora-two{width:680px;height:520px;right:-260px;top:8%;background:radial-gradient(circle,rgba(239,143,199,.16),rgba(244,184,145,.07) 47%,transparent 72%)}
.hero-watermark{position:absolute;z-index:1;width:min(46vw,670px);height:min(46vw,670px);left:7%;top:50%;transform:translateY(-44%) rotate(-7deg);opacity:.025;filter:grayscale(1);pointer-events:none}
.hero-device-stage{position:relative;z-index:3;min-height:650px;display:grid;place-items:center;isolation:isolate}
.hero-device-glow{position:absolute;width:610px;height:510px;border-radius:50%;background:radial-gradient(circle,rgba(123,104,255,.22),rgba(239,141,198,.11) 46%,transparent 72%);filter:blur(14px);z-index:-1}
.hero-device{position:relative;width:min(360px,68vw);padding:12px;border-radius:54px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,242,255,.94));box-shadow:0 42px 105px rgba(68,49,124,.22),0 12px 28px rgba(54,42,91,.11),inset 0 0 0 1px rgba(255,255,255,.9);transform:rotate(3deg)}
.hero-device:before{content:"";position:absolute;inset:6px;border-radius:48px;border:1px solid rgba(71,58,115,.08);pointer-events:none}
.hero-device img{width:100%;border-radius:43px;aspect-ratio:9/18.7;object-fit:cover;background:#f3efff}
.hero-device-top{position:absolute;z-index:5;top:19px;left:50%;transform:translateX(-50%);width:92px;height:25px;border-radius:99px;background:#19191d;display:grid;place-items:center;box-shadow:0 4px 9px rgba(0,0,0,.13)}
.hero-device-top span{width:7px;height:7px;border-radius:50%;background:#32323a;transform:translateX(25px)}
.hero-floating-note{position:absolute;padding:17px 19px;border-radius:19px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border:1px solid rgba(255,255,255,.92);box-shadow:0 17px 45px rgba(61,47,101,.13);display:grid;gap:4px;min-width:160px}
.hero-floating-note strong{font-size:14px;letter-spacing:-.02em}.hero-floating-note span{color:#85828c;font-size:11px}
.hero-note-one{left:0;top:27%;transform:rotate(-4deg)}.hero-note-two{right:1%;bottom:24%;transform:rotate(4deg)}
.hero-scroll-cue{position:absolute;z-index:5;left:50%;bottom:22px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:#96939c;font-size:10px;letter-spacing:.08em}
.hero-scroll-cue span{width:1px;height:28px;background:linear-gradient(180deg,transparent,#9388d6);animation:heroScroll 1.8s ease-in-out infinite}
@keyframes heroScroll{0%,100%{transform:scaleY(.45);transform-origin:top;opacity:.45}50%{transform:scaleY(1);transform-origin:top;opacity:1}}

/* App Preview now follows the Hero */
.app-preview{min-height:auto;padding-top:118px}

@media(max-width:1040px){
  .hero-premium{padding-top:118px}
  .hero-premium-inner{grid-template-columns:1fr 420px;gap:34px}
  .hero-device-stage{min-height:590px}
  .hero-device{width:320px}
  .hero-note-one{left:-12px}.hero-note-two{right:-8px}
}
@media(max-width:800px){
  .hero-premium{min-height:auto;padding:132px 0 90px;text-align:center}
  .hero-premium-inner{grid-template-columns:1fr;gap:42px}
  .hero-premium-copy{max-width:700px;margin:auto}
  .hero-device-stage{min-height:570px}
  .hero-device{width:310px;transform:rotate(2deg)}
  .hero-note-one{left:8%;top:24%;text-align:left}.hero-note-two{right:8%;bottom:22%;text-align:left}
  .hero-scroll-cue{display:none}
  .app-preview{padding-top:92px}
}
@media(max-width:520px){
  .hero-premium{padding:112px 0 72px}
  .hero-premium h1{font-size:45px;line-height:1.1}
  .hero-brand-label{margin-bottom:18px;font-size:11px}
  .hero-premium-description{font-size:17px;margin-top:24px}
  .hero-store-badge{margin-top:30px}
  .hero-device-stage{min-height:485px;margin-inline:-8px}
  .hero-device{width:260px;border-radius:43px;padding:9px}
  .hero-device img{border-radius:35px}.hero-device:before{border-radius:38px}
  .hero-device-top{top:15px;width:74px;height:21px}
  .hero-floating-note{min-width:132px;padding:13px 14px;border-radius:15px}
  .hero-note-one{left:0;top:25%}.hero-note-two{right:0;bottom:18%}
  .hero-watermark{width:520px;height:520px;left:-65%;top:34%}
}
@media(prefers-reduced-motion:reduce){.hero-scroll-cue span{animation:none}}

/* =========================================================
   Sprint 8 · Hero polish
========================================================= */
.hero-premium{min-height:92svh;padding:126px 0 84px;background:linear-gradient(180deg,#fffefa 0%,#fffdfb 64%,#fbf9ff 100%)}
.hero-premium-inner{grid-template-columns:minmax(0,.9fr) minmax(520px,1.1fr);gap:54px}
.hero-premium-copy{max-width:680px;padding:4px 0 28px}
.hero-brand-label{margin-bottom:16px;font-size:12px;letter-spacing:.32em}
.hero-english-line{margin:0 0 24px;color:#a19ca8;font-size:15px;font-weight:620;letter-spacing:.015em}
.hero-premium h1{font-size:clamp(54px,5.15vw,80px);line-height:1.075;letter-spacing:-.066em}
.hero-premium-description{margin-top:50px;font-size:clamp(18px,1.45vw,22px);line-height:1.72}
.hero-store-badge{margin-top:46px}
.hero-scripture{position:relative;margin:46px 0 0;padding:20px 22px 18px 24px;max-width:490px;border:1px solid rgba(119,105,255,.10);border-radius:20px;background:rgba(255,255,255,.56);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 18px 44px rgba(68,52,112,.055)}
.hero-scripture:before{content:"“";position:absolute;left:10px;top:3px;color:rgba(120,105,255,.18);font-family:Georgia,serif;font-size:45px;line-height:1}
.hero-scripture p{margin:0;color:#66636c;font-family:Georgia,"AppleMyungjo",serif;font-size:15px;line-height:1.7;letter-spacing:-.015em}
.hero-scripture cite{display:block;margin-top:7px;color:#9b96a3;font-size:11px;font-style:normal;letter-spacing:.04em}
.hero-aurora-one{opacity:.72;filter:blur(22px)}
.hero-aurora-two{opacity:.62;filter:blur(26px)}
.hero-watermark{opacity:.018;left:4%;transform:translateY(-43%) rotate(-8deg)}
.hero-device-stage{min-height:620px;perspective:1400px}
.hero-device-glow{width:680px;height:500px;opacity:.82;filter:blur(30px)}
.hero-device{position:absolute;width:285px;padding:10px;border-radius:46px;transition:transform .5s cubic-bezier(.22,.61,.36,1),filter .5s ease}
.hero-device img{border-radius:37px}
.hero-device:before{border-radius:41px}
.hero-device-top{top:16px;width:76px;height:22px}
.hero-device-main{z-index:3;width:326px;transform:translateY(-3px) rotate(0deg);box-shadow:0 48px 120px rgba(67,50,122,.23),0 14px 32px rgba(52,40,86,.12),inset 0 0 0 1px rgba(255,255,255,.92)}
.hero-device-left{z-index:1;left:1%;transform:translateY(43px) rotate(-8deg) scale(.91);filter:saturate(.86) brightness(1.02);opacity:.93}
.hero-device-right{z-index:2;right:0;transform:translateY(36px) rotate(8deg) scale(.92);filter:saturate(.9) brightness(1.02);opacity:.95}
.hero-device-stage:hover .hero-device-left{transform:translate(-10px,36px) rotate(-10deg) scale(.92)}
.hero-device-stage:hover .hero-device-right{transform:translate(10px,29px) rotate(10deg) scale(.93)}
.hero-device-stage:hover .hero-device-main{transform:translateY(-12px) scale(1.015)}
.hero-note-one{z-index:5;left:-2%;top:22%;transform:rotate(-3deg)}
.hero-note-two{z-index:5;right:-1%;bottom:19%;transform:rotate(3deg)}
.hero-scroll-cue{bottom:18px}

@media(max-width:1180px){
  .hero-premium-inner{grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);gap:28px}
  .hero-device-stage{min-height:570px}
  .hero-device-main{width:292px}.hero-device-left,.hero-device-right{width:250px}
  .hero-note-one{left:-4%}.hero-note-two{right:-3%}
}
@media(max-width:900px){
  .hero-premium{min-height:auto;padding:126px 0 92px;text-align:center}
  .hero-premium-inner{grid-template-columns:1fr;gap:40px}
  .hero-premium-copy{max-width:720px;margin:auto}
  .hero-scripture{margin:40px auto 0;text-align:left}
  .hero-device-stage{min-height:555px;max-width:650px;width:100%;margin:auto}
  .hero-device-main{width:290px}.hero-device-left,.hero-device-right{width:246px}
  .hero-device-left{left:8%}.hero-device-right{right:8%}
}
@media(max-width:620px){
  .hero-premium{padding:108px 0 72px}
  .hero-english-line{font-size:13px;margin-bottom:20px}
  .hero-premium h1{font-size:43px;line-height:1.11}
  .hero-premium-description{font-size:17px;margin-top:25px}
  .hero-store-badge{margin-top:32px}
  .hero-scripture{margin-top:32px;padding:18px 17px 16px 20px}
  .hero-scripture p{font-size:13px}
  .hero-device-stage{min-height:430px;margin-inline:-10px;width:auto}
  .hero-device-main{width:232px}.hero-device-left,.hero-device-right{width:193px}
  .hero-device-left{left:0;transform:translateY(33px) rotate(-8deg) scale(.88)}
  .hero-device-right{right:0;transform:translateY(30px) rotate(8deg) scale(.88)}
  .hero-device{border-radius:37px;padding:8px}.hero-device img{border-radius:30px}.hero-device:before{border-radius:33px}
  .hero-device-top{top:13px;width:61px;height:18px}
  .hero-floating-note{display:none}
}
@media(prefers-reduced-motion:reduce){
  .hero-device,.hero-device-stage:hover .hero-device-left,.hero-device-stage:hover .hero-device-right,.hero-device-stage:hover .hero-device-main{transition:none}
}
