@charset "UTF-8";
:root{--purple:#5637d5;--ink:#16143f;--text:#45445e;--muted:#7c7a90;--soft:#eeeafe;--line:#e9e7f0;--orange:#ff8548;--green:#31966c;--radius:24px;--shadow:0 16px 50px #2720480b}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{border:0}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #a594f3;outline-offset:5px}button:disabled{cursor:default}[hidden]{display:none!important}h1,h2,h3,h4{color:var(--ink);line-height:1.16;margin:0;font-weight:760;letter-spacing:-.035em}h1{font-size:clamp(40px,4.65vw,64px);line-height:1.12;font-weight:790;letter-spacing:-.052em}h2{font-size:clamp(29px,3vw,40px);letter-spacing:-.038em}h3{font-size:21px;letter-spacing:-.023em}p{margin:16px 0 0}em{font-style:normal;color:var(--purple)}small,.small{font-size:13px;line-height:1.6;color:var(--muted)}.muted{color:var(--muted)}.icon{width:23px;height:23px;flex-shrink:0;vertical-align:middle}.container{max-width:1264px;margin:auto;padding:0 36px}.section{padding:80px 0}.eyebrow{display:block;font-size:11px;letter-spacing:.16em;font-weight:750;color:var(--purple);margin-bottom:17px}.lead{font-size:18px;line-height:1.8;color:#68657b;margin:25px 0 28px}.lead-small{font-size:17px;line-height:1.8}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;border-radius:14px;padding:17px 23px;line-height:1.3;font-size:14px;font-weight:650;min-height:54px;transition:background .2s,transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--purple);color:white;box-shadow:0 7px 20px #5637d51a}.button-primary:hover{background:#4728c2;box-shadow:0 9px 25px #5637d52a}.button .icon{width:20px;height:20px}.button-secondary{background:var(--soft);color:var(--purple)}.button-quiet{background:transparent;color:var(--ink);padding-left:8px;padding-right:8px}.text-link{display:inline-flex;align-items:center;gap:13px;color:var(--purple);font-size:14px;font-weight:650;background:transparent;padding:0;line-height:1.5}.text-link .icon{width:19px;height:19px;transition:transform .2s}.text-link:hover .icon{transform:translateX(4px)}.text-link:hover{text-decoration:underline;text-underline-offset:4px}.pill{display:inline-flex;align-items:center;gap:8px;background:#f0ebff;border:1px solid #e9e1fd;padding:8px 13px;border-radius:30px;font-size:12px;line-height:1.4;color:#695399;font-weight:560}.pill .icon{width:16px;height:16px}.round-icon{display:inline-flex;align-items:center;justify-content:center;background:#eee9fe;border-radius:15px;width:48px;height:48px;color:var(--purple);flex-shrink:0}.round-icon.green{background:#e5f5ed;color:var(--green)}.round-icon.peach{background:#fff0e8;color:#e98951}.tag{background:#fff9;border:1px solid #fff;border-radius:7px;color:#6b6581;padding:4px 9px;font-size:10px;font-weight:600}.lilac{background:#f0edfa}.peach-bg{background:#fff2e7}.skip-link{position:fixed;z-index:100;left:16px;top:-100px;background:var(--purple);color:white;padding:10px 20px;border-radius:10px}.skip-link:focus{top:12px}
/* Navigation */
.site-header{height:98px;background:#ffffffed;position:sticky;top:0;z-index:30;border-bottom:1px solid #efedf460;backdrop-filter:blur(16px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;width:159px;flex-shrink:0}.brand img{width:100%;height:62px;object-fit:contain}.desktop-nav{display:flex;gap:30px;align-items:center;margin-left:auto;margin-right:auto}.desktop-nav a{font-size:13px;color:#69657e;position:relative;padding:16px 0;white-space:nowrap}.desktop-nav a:hover,.desktop-nav a.active{color:var(--purple)}.desktop-nav a.active:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:var(--purple);bottom:5px;left:50%}.button-header{background:#f0ebff;color:var(--purple);min-height:43px;padding:12px 18px;border-radius:11px;font-size:12px}.button-header:hover{background:#e6ddfd}.header-actions{display:flex;align-items:center;gap:10px}.menu-toggle{display:none;background:var(--soft);border-radius:11px;width:44px;height:44px;align-items:center;justify-content:center}.mobile-nav{background:white;border-bottom:1px solid var(--line);box-shadow:0 16px 25px #23153a12;padding:12px 24px 20px}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:13px 6px;border-bottom:1px solid #f6f4fa;font-size:15px}
/* Homepage hero */
.home-hero{display:grid;grid-template-columns:1.06fr 1fr;align-items:center;min-height:616px;gap:8px;position:relative;padding:38px 0 34px}.hero-copy{position:relative;z-index:2}.hero-copy .pill{margin-bottom:23px}.hero-copy h1{font-size:clamp(40px,4.4vw,61px)}.hero-buttons{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.hero-trust{display:flex;gap:21px;margin-top:32px;font-size:11px;color:#858092}.hero-trust span{display:flex;gap:6px;align-items:center}.hero-trust .icon{width:15px;height:15px;color:#8c80a5}.hero-visual{position:relative;height:560px;display:flex;align-items:center;justify-content:center;isolation:isolate}.hero-orbit{position:absolute;width:96%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 55% 50%,#eee6ff 10%,#f4efff 57%,#faf7ff 70%);top:6%;z-index:-1}.hero-orbit:after{content:"";position:absolute;inset:20px;border:1px dashed #ddd2ef;border-radius:50%;transform:rotate(-18deg)}.hero-dog{width:112%;max-width:none;height:105%;object-fit:contain;position:relative;transform:translate(0,14px);filter:drop-shadow(0 18px 13px #32164a08)}.hero-spark{position:absolute;font-size:40px;line-height:1;color:#ffb77b;z-index:2}.spark-one{top:67px;right:53px}.spark-two{left:25px;top:152px;color:#b6a0ee;font-size:47px}.floating-card{position:absolute;background:#ffffffed;box-shadow:0 12px 34px #35214b0c;border:1px solid white;border-radius:17px;display:flex;align-items:center;gap:10px;padding:13px 17px;z-index:3}.floating-card strong{font-size:12px;line-height:1.4;display:block;color:var(--ink)}.floating-card small{font-size:10px;display:block;margin-top:3px}.floating-card .round-icon{height:36px;width:36px;border-radius:11px}.floating-card .icon{width:18px;height:18px}.floating-top{right:-5px;top:147px;transform:rotate(4deg)}.floating-bottom{left:9px;bottom:49px;transform:rotate(-4deg)}.mini-paw{margin-left:9px;color:#a895e4}.mini-paw .icon{width:24px;height:24px}
/* Section headings and entry cards */
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:33px}.section-heading p{font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 3px}.section-heading>.text-link{flex-shrink:0;margin-bottom:6px}.section-heading.centered{display:block;text-align:center;margin-bottom:48px}.section-heading.centered p{margin-top:18px}.start-section{padding-top:36px}.start-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.start-card{position:relative;min-height:313px;overflow:hidden;border-radius:var(--radius);padding:27px;transition:transform .25s,box-shadow .25s}.start-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.puppy-card{background:#f0eafa}.commands-card{background:#fff1e7}.home-card{background:#edf4ef}.card-kicker{font-size:9px;font-weight:700;letter-spacing:.15em;color:#80778f;position:relative;z-index:1}.start-card h3{font-size:23px;margin-top:12px;position:relative;z-index:1;max-width:250px}.start-card p{font-size:12px;line-height:1.75;margin-top:11px;position:relative;z-index:1;color:#82778d}.start-card img{position:absolute;bottom:-24px;right:-4px;width:205px;height:210px;object-fit:contain;object-position:bottom}.commands-card img{height:225px;width:156px;bottom:-25px;right:3px}.home-card img{width:233px;height:180px;bottom:-2px;right:-31px}.circle-arrow{display:flex;align-items:center;justify-content:center;background:#ffffffac;border-radius:50%;height:42px;width:42px;position:absolute;bottom:29px;left:27px;color:#51436e}.circle-arrow .icon{width:19px}.start-card:hover .circle-arrow{background:white}
/* Application showcase */
.features-section{padding-top:36px}.feature-layout{display:grid;grid-template-columns:1fr 340px 1fr;gap:57px;align-items:center;max-width:1060px;margin:0 auto}.feature-stack{display:grid;gap:47px}.feature-item .round-icon{margin-bottom:19px;width:43px;height:43px;border-radius:13px}.feature-item h3{font-size:19px}.feature-item p{font-size:13px;color:var(--muted);line-height:1.85;margin-top:12px}.feature-item small{display:block;font-size:10px;margin-top:10px;line-height:1.6}.phone-stage{position:relative;padding:35px 0 18px}.phone-stage:before{content:"";position:absolute;inset:100px -50px 85px;border-radius:50%;background:radial-gradient(#eae2fa,#f7f4fd 60%,#fff 74%);z-index:-1}.phone-caption{position:absolute;top:0;left:50%;transform:translateX(-50%) rotate(-4deg);font-size:11px;white-space:nowrap;color:#9b8baa}.app-phone{width:284px;min-height:535px;background:#fff;border:7px solid #272238;border-radius:42px;padding:15px 16px 8px;margin:auto;position:relative;box-shadow:0 28px 55px #43325820,0 0 0 2px #dad5e2;transform:rotate(-3deg);overflow:hidden}.phone-camera{position:absolute;width:64px;height:16px;border-radius:0 0 12px 12px;background:#272238;top:0;left:50%;transform:translateX(-50%)}.phone-status{display:flex;justify-content:space-between;font-size:9px;margin:1px 7px 22px;color:var(--ink)}.phone-status span{font-size:9px;letter-spacing:1px}.phone-greeting{font-size:10px;color:#92849e;display:flex;align-items:center;gap:7px}.phone-greeting .icon{width:13px;color:#cf9b5d}.app-phone h3{font-size:25px;line-height:1.15;margin-top:6px}.phone-pet{display:flex;align-items:center;position:relative;height:118px;background:#f4eefc;border-radius:15px;margin:15px 0}.phone-pet img{width:135px;height:135px;object-fit:contain;margin-left:-5px;margin-top:-9px}.phone-pet span{font-size:10px;line-height:1.6;padding-right:8px;color:#8e7ea5}.phone-plan-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.phone-plan-title strong{font-size:12px;color:var(--ink)}.phone-plan-title>span{font-size:9px;color:#a598b9}.phone-task{display:flex;align-items:center;gap:8px;padding:10px 6px;font-size:10px;border-radius:9px;margin-bottom:4px}.phone-task .icon{width:14px;height:14px}.phone-task small{font-size:8px;display:block;color:#9a91a6;margin-top:2px}.phone-task.done>.icon{background:#ddf4e8;border-radius:50%;padding:2px;color:#289767;width:18px;height:18px}.phone-task.current{background:#eee8fe;color:var(--purple)}.phone-task.current>.icon{margin-left:auto}.task-dot{height:16px;width:16px;border:1px solid #dad3e5;border-radius:50%;flex-shrink:0}.current .task-dot{border:4px solid var(--purple)}.phone-button{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;background:var(--purple);border-radius:10px;color:#fff;margin:13px 0 16px;padding:11px 7px;font-weight:600}.phone-button .icon{height:14px;width:14px}.phone-nav{display:flex;justify-content:space-around;padding:8px 5px 5px;border-top:1px solid #f4f1f8;color:#c2b9d0}.phone-nav .icon{width:16px;height:16px}.phone-nav .icon:first-child{color:var(--purple)}.phone-footnote{display:block;font-size:9px;text-align:center;color:#a19aa9;margin-top:24px}.tool-strip{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:47px}.tool-strip>div{display:flex;align-items:center;gap:15px;border:1px solid var(--line);padding:22px 23px;border-radius:18px}.tool-strip>div>.icon{color:var(--purple);width:27px;height:27px}.tool-strip strong{font-size:12px;color:var(--ink);display:block}.tool-strip small{font-size:10px;display:block;margin-top:4px}.tool-strip .text-link{font-size:11px;margin-left:auto;white-space:nowrap;gap:7px}.tool-strip .text-link .icon{width:15px;height:15px}
/* Philosophy and articles */
.approach-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;padding-top:50px}.approach-art{height:480px;background:#f5f2fb;border-radius:36px;position:relative;display:flex;align-items:center;justify-content:center}.approach-art img{width:115%;max-width:none;max-height:440px;object-fit:contain}.approach-sticker{position:absolute;bottom:34px;right:-23px;transform:rotate(-6deg);background:#fff7e9;color:#9a7752;padding:17px 20px;border-radius:13px;font-size:13px;line-height:1.7;box-shadow:var(--shadow)}.approach-sticker .icon{color:#db9860;margin-left:10px}.approach-copy h2{font-size:35px}.approach-copy .lead-small{font-size:14px;color:var(--muted);margin-bottom:25px}.principle{display:flex;gap:18px;margin-bottom:21px}.principle>span{font-size:12px;font-weight:650;color:#b6a3dc;line-height:24px}.principle h3{font-size:15px;line-height:1.5;letter-spacing:-.01em}.principle p{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.8}.approach-copy .text-link{margin-top:7px}.reading-section{padding-top:35px}.reading-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.reading-card{border:1px solid var(--line);border-radius:22px;display:grid;grid-template-columns:185px 1fr;overflow:hidden;transition:box-shadow .2s,transform .2s}.reading-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.reading-image{display:flex;align-items:center;justify-content:center;overflow:hidden}.reading-image img{width:115%;max-width:none;height:225px;object-fit:contain}.reading-image.peach-bg img{height:260px;transform:translateY(20px)}.reading-copy{padding:24px}.reading-copy .tag{background:#f6f3fa;border:0}.reading-copy h3{font-size:20px;line-height:1.3;margin-top:12px}.reading-copy p{font-size:12px;color:var(--muted);margin-top:11px;line-height:1.75}.reading-meta{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a198ad;margin-top:20px}.reading-meta .icon{width:19px;color:var(--purple)}
/* FAQ, download, footer */
.faq-section{display:grid;grid-template-columns:1fr 1.45fr;gap:100px;padding:60px 0 92px}.faq-section h2{font-size:34px}.faq-section>.muted,.faq-section>div>.muted{font-size:13px;line-height:1.8}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:21px 0;font-size:14px;font-weight:570;line-height:1.7;color:var(--ink)}summary::-webkit-details-marker{display:none}.faq-list summary>span{width:25px;height:25px;background:#f4f1fc;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.faq-list summary .icon{height:14px;width:14px;color:#8e7eab;transition:transform .2s}.faq-list details[open] summary .icon{transform:rotate(180deg)}.faq-answer{font-size:13px;line-height:1.85;padding:0 38px 23px 0;color:var(--muted)}.download-banner{background:linear-gradient(115deg,#6442db,#4829b4);border-radius:29px;position:relative;overflow:hidden;display:grid;grid-template-columns:1.5fr 1fr;margin:0 0 70px;min-height:354px;padding:43px 49px;color:white}.download-copy{position:relative;z-index:2}.download-banner .eyebrow{color:#cbbcee;font-size:10px}.download-banner h2{color:#fff;font-size:34px;line-height:1.22}.download-banner p{font-size:13px;color:#d6c9f5;margin:17px 0 21px;line-height:1.8}.download-banner .button{background:#fff;color:var(--purple);padding:14px 20px;min-height:48px;font-size:12px;box-shadow:none}.download-banner small{display:block;font-size:10px;color:#bdafe2;margin-top:12px}.download-art{position:relative;display:flex;align-items:center;justify-content:center}.download-art:before{content:"";height:365px;width:365px;position:absolute;background:#ffffff0c;border:1px solid #ffffff14;border-radius:50%;right:-30px;top:-20px}.download-art:after{content:"";height:285px;width:285px;position:absolute;border:1px dashed #ffffff28;border-radius:50%;right:10px;top:20px}.download-art img{position:absolute;max-width:none;width:350px;bottom:-78px;right:-5px;transform:rotate(7deg);z-index:1}.download-heart{position:absolute;right:6px;top:25px;transform:rotate(15deg);background:#fcdfc9;color:#d88e57;padding:15px;border-radius:15px;z-index:3}.download-heart .icon{width:31px;height:31px}.site-footer{background:#faf9fc;border-top:1px solid #f3f0f8;padding:51px 0 0}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr;gap:48px;padding-bottom:41px}.footer-brand img{width:155px;height:60px;object-fit:contain;object-position:left center}.footer-brand p{font-size:11px;color:#948c9e;margin-top:15px;line-height:1.9}.footer-col{padding-top:12px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col strong{font-size:12px;color:var(--ink);margin-bottom:5px}.footer-col a,.footer-link{font-size:11px;color:#948c9e}.footer-col a:hover,.footer-link:hover{color:var(--purple)}.footer-col .icon{width:14px;height:14px;margin-right:5px}.footer-link{padding:0;border:0;background:transparent}.footer-note{padding-top:12px}.footer-note>.icon{color:#cab5e7;width:26px;height:26px}.footer-note p{font-size:13px;line-height:1.6;color:#82718c;margin-top:10px}.footer-note a{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--purple);margin-top:17px}.footer-note a .icon{width:15px;height:15px}.footer-bottom{display:flex;justify-content:space-between;gap:18px;padding:21px 0;border-top:1px solid var(--line);font-size:10px;color:#a49cab}.footer-bottom .footer-link{font-size:10px}
/* Inner hubs */
.breadcrumbs{display:flex;align-items:center;gap:9px;font-size:10px;color:#a398b3;padding:28px 0 21px;flex-wrap:wrap;line-height:1.7}.breadcrumbs a:hover{color:var(--purple)}.breadcrumbs .icon{height:11px;width:11px;color:#bfb6ca}.breadcrumbs [aria-current]{color:#7b6e8d}.inner-hero{display:grid;grid-template-columns:1.2fr 1fr;position:relative;border-radius:29px;padding:49px 51px;background:#f7f3fc;gap:20px;min-height:458px;align-items:center;overflow:hidden}.inner-hero h1{font-size:52px;margin-top:24px}.inner-hero .lead{font-size:15px;margin-top:23px;line-height:1.9}.inner-hero .button{font-size:12px;min-height:47px;padding:15px 20px}.inner-hero-art{height:340px;position:relative;display:flex;align-items:center;justify-content:center}.inner-hero-art:before{content:"";width:350px;height:350px;background:#eee6f8;border:1px solid #e6dcf1;border-radius:50%;position:absolute;top:0}.inner-hero-art img{width:115%;max-width:none;position:relative;z-index:1}.art-bubble{position:absolute;bottom:-4px;left:9px;z-index:2;background:white;padding:13px 18px;font-size:12px;font-weight:600;box-shadow:var(--shadow);border-radius:13px;color:#7a6096;transform:rotate(-5deg)}.art-bubble .icon{height:17px;width:17px;margin-left:9px;color:#af8aca}.hero-subnote{display:block;font-size:10px;color:#a196b1;margin-top:13px}.commands-hero{background:#f9f5ee;min-height:432px}.commands-hero .pill{background:#fff8ee;border-color:#f0e7d8;color:#998364}.commands-hero .inner-hero-art:before{background:#f2e9dc;border-color:#ebdfcd}.commands-hero .inner-hero-art img{height:390px;width:100%;object-fit:contain;transform:translateY(24px)}.commands-hero .art-bubble{bottom:23px;left:0;color:#8b765d}.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.journey-card{position:relative;padding:12px 18px 0 0}.journey-number{position:absolute;font-size:45px;font-weight:700;color:#f0ecf7;right:15px;top:2px;line-height:1}.journey-card:not(:last-child):after{content:"";position:absolute;width:calc(100% - 77px);border-top:1px dashed #dcd2eb;top:37px;left:73px}.journey-card .round-icon{position:relative;z-index:1}.journey-card h3{font-size:17px;margin-top:24px;letter-spacing:-.02em}.journey-card p{font-size:13px;line-height:1.85;color:var(--muted);margin-top:12px}.featured-guide{display:grid;grid-template-columns:.85fr 1.2fr;gap:42px;border:1px solid var(--line);border-radius:26px;padding:35px 46px;background:#fff;align-items:center;overflow:hidden}.featured-guide-art{background:#eff5ef;border-radius:24px;display:flex;align-items:center;justify-content:center;height:300px}.featured-guide-art img{width:115%;max-width:none;object-fit:contain}.featured-guide h2{font-size:34px}.featured-guide p{font-size:14px;color:var(--muted);line-height:1.85;margin-bottom:22px}.featured-guide .small{display:block;font-size:10px;margin-top:17px}.large-link{font-size:15px}.topic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.topic-card{text-align:left;border:1px solid var(--line);background:white;border-radius:20px;padding:26px 22px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s}.topic-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.topic-card>.icon{width:26px;height:26px;color:#9980d0;margin-bottom:23px}.topic-card h3{font-size:18px}.topic-card p{font-size:12px;color:var(--muted);line-height:1.8;margin-top:14px;margin-bottom:28px}.topic-card>span{font-size:11px;color:var(--purple);display:flex;align-items:center;gap:8px;margin-top:auto;font-weight:600}.topic-card>span .icon{width:15px;height:15px}.soft-note{display:flex;gap:23px;background:#f6f3fc;border-radius:22px;padding:28px 34px;align-items:flex-start;margin:0 0 25px}.soft-note>.icon{color:#a995cb;width:33px;height:33px}.soft-note h3{font-size:20px}.soft-note p{font-size:13px;color:#8b7f99;line-height:1.9;margin-top:11px;max-width:870px}
/* Searchable catalogue */
.catalog-section{padding-top:63px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:36px}.filter-tabs{display:flex;gap:7px;flex-wrap:wrap}.filter-tab{background:#f6f4f9;border:1px solid transparent;border-radius:30px;color:#8c829b;padding:9px 16px;font-size:12px;transition:background .2s}.filter-tab:hover{background:#eee7fa}.filter-tab.selected{background:var(--purple);color:#fff}.search-box{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:9px 14px;border-radius:13px;background:#fff;max-width:250px}.search-box .icon{width:17px;height:17px;color:#b2a6c1}.search-box input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:12px;color:var(--ink)}.search-box:focus-within{box-shadow:0 0 0 3px #eae2fc;border-color:#b4a0ed}.search-box input:focus-visible{outline:0}.search-box input::placeholder{color:#afa4bc}.catalog-result{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#b3a8bf;margin:17px 0 22px}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lesson-card{border:1px solid var(--line);border-radius:23px;overflow:hidden;transition:box-shadow .2s}.lesson-card:hover{box-shadow:var(--shadow)}.lesson-image{height:206px;position:relative;overflow:hidden;display:flex;justify-content:center;align-items:center}.lesson-image .tag{position:absolute;top:17px;left:18px;z-index:2}.lesson-image img{height:210px;width:90%;object-fit:contain;transform:translateY(16px)}.lesson-copy{padding:25px}.lesson-copy h3{font-size:25px}.lesson-copy p{font-size:13px;line-height:1.8;color:var(--muted);min-height:48px;margin:12px 0 25px}.lesson-copy .text-link{font-size:12px}.search-empty{border:1px dashed #d4c5e8;border-radius:20px;background:#faf8fd;text-align:center;padding:48px 20px}.search-empty>.icon{width:36px;height:36px;color:#b69ed6;margin-bottom:20px}.search-empty p{font-size:14px;color:var(--muted)}.search-empty .button{margin-top:20px;font-size:12px}.preparation-band{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:35px;padding:33px;background:#f6f3fb;border-radius:23px;align-items:center;margin:0 0 25px}.preparation-band h2{font-size:26px}.preparation-band h3{font-size:15px}.preparation-band p{font-size:12px;line-height:1.8;color:#91859d;margin-top:9px}.preparation-band .eyebrow{font-size:9px}.preparation-band>div>span:not(.eyebrow){color:#a082c6;display:block;margin-bottom:14px}
/* Editorial pages */
.reading-progress{position:fixed;top:98px;left:0;right:0;height:3px;z-index:31;pointer-events:none}.reading-progress>div{height:100%;background:#9476e6;transform:scaleX(0);transform-origin:left}.article-hero{display:grid;grid-template-columns:1.5fr .8fr;align-items:center;gap:55px;padding:37px 0 49px;border-bottom:1px solid var(--line);margin-bottom:49px}.article-hero h1{font-size:49px;line-height:1.16;max-width:700px}.article-hero .lead{font-size:16px;line-height:1.85;margin:23px 0 27px;max-width:610px}.article-hero-image{position:relative;background:#f4effa;border-radius:40% 43% 42% 38%;height:300px;display:flex;align-items:center;justify-content:center}.article-hero-image img{height:112%;max-width:115%;object-fit:contain}.article-art-mark{position:absolute;right:-10px;bottom:20px;background:#fff3e5;color:#d1a069;display:flex;align-items:center;justify-content:center;width:63px;height:63px;border-radius:18px;transform:rotate(12deg)}.article-art-mark .icon{width:30px;height:30px}.article-meta{display:flex;gap:22px;flex-wrap:wrap;align-items:center;font-size:10px;color:#a596b7}.article-meta>span{display:flex;align-items:center;gap:6px}.article-meta .icon{width:15px;height:15px}.save-article{background:#f4effb;color:#8a72ae;display:flex;align-items:center;gap:6px;font-size:10px;border-radius:8px;padding:9px 12px}.save-article[aria-pressed=true]{color:var(--purple);background:#e9dffa}.article-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:76px;padding-bottom:77px;align-items:start}.article-aside{position:sticky;top:130px}.toc{display:flex;flex-direction:column;gap:0}.toc strong{font-size:9px;letter-spacing:.13em;color:#a79ab5;margin-bottom:17px}.toc a{border-left:2px solid #eee8f5;padding:9px 14px;font-size:12px;color:#92849f;line-height:1.6}.toc a:hover,.toc a.current{color:var(--purple);border-color:var(--purple);background:linear-gradient(90deg,#f6f0ff,transparent)}.aside-app{border:1px solid #e9e0f4;border-radius:18px;padding:20px;margin-top:37px;background:#faf8fd}.aside-app img{height:43px;width:43px;border-radius:12px;margin-bottom:14px}.aside-app h3{font-size:17px}.aside-app p{font-size:11px;color:#9b8ba9;margin-top:10px;margin-bottom:18px;line-height:1.8}.aside-app .button{font-size:10px;padding:12px;min-height:42px;gap:7px;border-radius:10px;width:100%}.aside-app .button .icon{width:15px;height:15px}.article-content{max-width:805px;font-size:16px;line-height:1.9}.article-content h2{font-size:29px;line-height:1.25;margin-bottom:19px}.article-content h3{font-size:20px;line-height:1.4}.article-content>section{margin-bottom:47px;scroll-margin-top:122px}.article-content p{color:#777084;margin:14px 0 0}.article-content .short-answer{padding:28px 31px;border-radius:20px;background:#f6f2fc;border:1px solid #eee6f8}.short-answer .eyebrow{font-size:10px;margin-bottom:10px}.short-answer p{margin:0;color:#746486;font-size:15px;line-height:1.9}.article-content #prepare>.muted{font-size:12px;margin-top:-7px;margin-bottom:20px;color:#a291b0}.preparation-checklist{border:1px solid var(--line);border-radius:18px;padding:4px 21px}.preparation-checklist label{display:flex;align-items:center;gap:14px;padding:18px 0;font-size:13px;line-height:1.8;cursor:pointer;position:relative}.preparation-checklist label:not(:last-child){border-bottom:1px solid #f1ebf6}.preparation-checklist input{position:absolute;opacity:0;width:22px;height:22px;left:0}.checkbox-ui{height:23px;width:23px;border:1.5px solid #d8cbe8;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:white}.checkbox-ui .icon{height:15px;width:15px;opacity:0;color:white}.preparation-checklist input:checked+.checkbox-ui{background:var(--purple);border-color:var(--purple)}.preparation-checklist input:checked+.checkbox-ui .icon{opacity:1}.preparation-checklist input:focus-visible+.checkbox-ui{outline:3px solid #ad99e8;outline-offset:3px}.preparation-checklist input:checked~span:last-child{color:#9b8ca9}.checklist-state{font-size:10px!important;text-align:right}.article-steps{margin-top:27px}.article-step{display:flex;gap:23px;margin:0;padding:0 0 34px;position:relative}.article-step:not(:last-child):before{content:"";position:absolute;left:19px;top:51px;bottom:13px;border-left:1px dashed #dfd4ec}.step-number{height:40px;width:40px;flex-shrink:0;background:#eee5fb;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:650;color:#8c64b7}.article-step h3{padding-top:4px}.article-step p{font-size:14px;line-height:1.9;margin-top:13px}.article-step:last-child{padding-bottom:0}.article-content .progress-note{background:#eef6f0;border-radius:19px;padding:28px;display:flex;gap:19px}.progress-note>.icon{color:#85aa89;width:28px;height:28px}.progress-note h2{font-size:21px;margin-bottom:11px}.progress-note p{font-size:13px;color:#758978;margin:0;line-height:1.9}.pitfalls{margin-top:24px}.pitfalls>div{position:relative;padding:0 0 23px 32px}.pitfalls>div>span{position:absolute;left:0;top:0;color:#ca9690}.pitfalls .icon{height:19px;width:19px}.pitfalls h3{font-size:16px}.pitfalls p{font-size:13px;line-height:1.8;margin-top:7px}.safety-note{display:flex;align-items:flex-start;gap:15px;border:1px solid #efe4d8;border-radius:15px;padding:20px;background:#fffaf3;margin-bottom:42px}.safety-note .icon{height:22px;width:22px;color:#c4a17b;flex-shrink:0;margin-top:3px}.safety-note p{margin:0;font-size:12px;line-height:1.8;color:#a18973}.article-content .faq-section{display:block;padding:0;margin-bottom:45px}.article-content .faq-section .eyebrow,.article-content .faq-section .muted{display:none}.article-content .faq-section h2{font-size:29px}.article-content .faq-list summary{font-size:14px}.article-content .faq-answer{font-size:13px}.article-cta{background:linear-gradient(120deg,#6641d3,#4c2cb4);color:white;padding:32px;border-radius:23px}.article-cta .eyebrow{color:#cab7f0;font-size:9px}.article-cta h2{font-size:28px;color:white;max-width:530px}.article-cta p{color:#d3c2ee;font-size:13px;margin:0 0 23px;line-height:1.9;max-width:590px}.article-cta .button{background:white;color:var(--purple);font-size:12px;padding:13px 17px;min-height:46px}.article-cta small{display:block;color:#b9a1da;font-size:9px;margin-top:12px}.editorial-note{border-bottom:1px solid var(--line);padding-bottom:27px;margin-top:-20px}.editorial-note strong{font-size:11px;color:#a08eaf}.editorial-note p{font-size:10px;color:#ad9cbb;line-height:1.8;margin-top:7px;max-width:630px}.related-card{display:flex;align-items:center;gap:21px;margin-top:27px;padding:18px;border:1px solid var(--line);border-radius:18px}.related-card img{width:73px;height:80px;object-fit:contain;flex-shrink:0}.related-card .eyebrow{font-size:8px;margin-bottom:9px}.related-card h3{font-size:17px;line-height:1.4}.related-card>.icon{margin-left:auto;color:#af98c8}.related-card:hover{background:#fbf8fe}
/* Dialogs and interactive demo */
.modal{border:1px solid var(--line);border-radius:27px;width:min(510px,calc(100vw - 32px));padding:40px;color:var(--text);box-shadow:0 25px 100px #23103924;max-height:calc(100dvh - 48px);overflow:auto}.modal::backdrop{background:#24133d7a;backdrop-filter:blur(5px)}.modal-close{position:absolute;right:15px;top:15px;height:33px;width:33px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f5f0fa;color:#9e85b8}.modal-close .icon{height:17px;width:17px}.modal h2{font-size:29px;line-height:1.2;margin-right:5px}.modal p{font-size:14px;line-height:1.85;color:#8a7c99;margin:18px 0}.modal p.small{font-size:11px}.modal .button{font-size:12px;padding:15px 19px;min-height:48px}.modal-app-icon{height:60px;width:60px;border-radius:17px;margin-bottom:23px}.modal .note{background:#f5effb;border-radius:14px;padding:20px;margin-bottom:23px;font-size:13px}.modal .note p{font-size:12px;margin:8px 0 0}.clicker-modal{text-align:center}.clicker-modal .eyebrow{margin-top:10px}.clicker-pad{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7651e5,#4f2ab7);color:#e3d5ff;width:130px;height:130px;border-radius:50%;margin:26px auto;box-shadow:0 10px 0 #382077,0 18px 35px #42288825;transition:transform .08s,box-shadow .08s}.clicker-pad .icon{height:53px;width:53px}.clicker-pad:active{transform:translateY(7px);box-shadow:0 3px 0 #382077,0 8px 18px #42288825}.volume-label{display:flex;align-items:center;gap:9px;font-size:11px;color:#aa91bc;margin:34px 0 20px}.volume-label .icon{width:17px;height:17px}.volume-label input{min-width:0;flex:1;accent-color:var(--purple)}
/* Compact desktop and tablets */
@media(min-width:1440px){.container{max-width:1312px;padding-left:48px;padding-right:48px}.home-hero{min-height:656px}.hero-copy h1{font-size:64px}.hero-visual{height:586px}}
@media(max-width:1100px){.container{padding:0 30px}.desktop-nav{gap:19px}.brand{width:140px}.header-inner{gap:20px}.button-header{font-size:11px;padding:12px}.home-hero{min-height:560px}.hero-copy h1{font-size:48px}.hero-visual{height:495px}.hero-buttons{gap:8px}.hero-buttons .button{font-size:12px;padding:15px}.hero-trust{gap:14px;font-size:10px}.floating-top{right:-8px;top:104px}.floating-bottom{left:10px;bottom:56px}.floating-card{padding:10px;gap:8px}.floating-card strong{font-size:11px}.floating-card small{font-size:8px}.feature-layout{grid-template-columns:1fr 290px 1fr;gap:28px}.feature-item p{font-size:12px}.tool-strip{gap:16px}.tool-strip>div{flex-wrap:wrap;padding:20px}.tool-strip .text-link{margin-left:42px}.start-card{padding:23px;min-height:310px}.start-card h3{font-size:21px}.start-card p{font-size:11px}.start-card img{width:175px;height:181px}.commands-card img{width:128px;height:203px}.home-card img{width:210px;right:-42px}.approach-section{gap:50px}.approach-art{height:420px}.approach-copy h2{font-size:30px}.reading-card{grid-template-columns:140px 1fr}.reading-copy{padding:21px}.reading-copy h3{font-size:18px}.faq-section{gap:50px}.footer-top{gap:25px}.inner-hero{padding:40px 34px}.inner-hero h1{font-size:45px}.inner-hero-art:before{width:300px;height:300px;top:22px}.article-hero h1{font-size:43px}.article-layout{grid-template-columns:210px 1fr;gap:43px}.article-hero{gap:40px}.topic-grid{gap:12px}.topic-card{padding:22px 18px}.topic-card h3{font-size:17px}.featured-guide{padding:30px;gap:35px}.featured-guide h2{font-size:30px}.preparation-band{gap:24px}.preparation-band h2{font-size:23px}.preparation-band h3{font-size:13px}}
@media(max-width:850px){.desktop-nav{display:none}.menu-toggle{display:flex}.site-header{height:82px}.reading-progress{top:82px}.header-actions{margin-left:auto}.header-inner{gap:20px}.brand{width:143px}.home-hero{min-height:490px;gap:0;padding-top:22px}.hero-copy h1{font-size:40px}.hero-copy .pill{font-size:10px;padding:7px 10px}.lead{font-size:15px}.hero-visual{height:440px}.floating-top{top:88px;right:-5px}.floating-bottom{left:-16px;bottom:28px}.hero-trust{flex-wrap:wrap;gap:10px;margin-top:23px}.hero-buttons .button-quiet{font-size:11px}.hero-buttons .button-primary{font-size:11px}.hero-buttons .button .icon{width:16px;height:16px}.hero-orbit{width:106%;top:15%}.hero-dog{width:129%;height:103%;transform:translateY(25px)}.spark-one{right:25px;top:52px}.spark-two{left:4px;top:129px}.section{padding:60px 0}.start-section{padding-top:25px}.section-heading{gap:24px;align-items:start}.section-heading h2{font-size:31px}.section-heading p{font-size:12px}.start-grid{gap:12px}.start-card{min-height:295px;padding:20px}.start-card h3{font-size:19px;max-width:160px}.start-card p{font-size:10px;max-width:160px}.start-card img{height:157px;width:156px;bottom:-6px;right:-10px}.commands-card img{height:185px;width:125px;bottom:-22px}.home-card img{right:-52px;width:190px;bottom:2px}.circle-arrow{height:35px;width:35px;left:20px;bottom:22px}.card-kicker{font-size:8px}.feature-layout{grid-template-columns:1fr 260px 1fr;gap:18px}.app-phone{width:250px;padding:14px 12px 7px;min-height:510px}.phone-pet img{width:120px}.phone-pet span{font-size:9px}.feature-item h3{font-size:16px}.feature-item p{font-size:11px;line-height:1.8}.feature-item small{font-size:9px}.feature-stack{gap:34px}.tool-strip>div{gap:12px;padding:17px}.tool-strip strong{font-size:11px}.tool-strip small{font-size:9px}.tool-strip>div>.icon{width:23px;height:23px}.tool-strip .text-link{margin-left:35px}.approach-section{gap:34px}.approach-art{height:375px}.approach-sticker{font-size:11px;padding:12px;right:-12px}.approach-copy h2{font-size:27px}.approach-copy .lead-small{font-size:12px}.principle{gap:12px;margin-bottom:17px}.principle h3{font-size:13px}.principle p{font-size:11px}.reading-grid{gap:16px}.reading-card{grid-template-columns:110px 1fr}.reading-copy{padding:18px}.reading-copy h3{font-size:17px}.reading-copy p{font-size:11px}.reading-image img{height:190px;width:155%}.reading-image.peach-bg img{height:240px}.faq-section{gap:33px;padding:50px 0 67px;grid-template-columns:1fr 1.5fr}.faq-section h2{font-size:28px}.faq-list summary{font-size:13px;padding:17px 0}.download-banner{padding:36px;grid-template-columns:1.8fr 1fr;min-height:329px}.download-banner h2{font-size:28px}.download-art img{width:300px;right:-48px;bottom:-62px}.download-art:before{right:-120px}.download-art:after{right:-80px}.download-heart{right:-12px;top:22px}.footer-top{grid-template-columns:1.2fr 1fr 1.2fr;gap:32px}.footer-note{display:none}.inner-hero{padding:32px;min-height:407px;grid-template-columns:1.25fr 1fr}.inner-hero h1{font-size:39px}.inner-hero .pill{font-size:10px}.inner-hero .lead{font-size:13px}.inner-hero-art{height:300px}.inner-hero-art:before{height:240px;width:240px}.inner-hero-art img{width:130%}.commands-hero .inner-hero-art img{height:335px}.art-bubble{font-size:10px;padding:10px;bottom:18px;left:0}.journey-grid{gap:14px}.journey-card h3{font-size:15px}.journey-card p{font-size:11px}.journey-number{font-size:35px;right:8px;top:8px}.journey-card:not(:last-child):after{width:calc(100% - 68px)}.featured-guide{gap:25px;padding:25px}.featured-guide h2{font-size:26px}.featured-guide p{font-size:12px}.featured-guide-art{height:275px}.large-link{font-size:13px}.topic-grid{grid-template-columns:1fr 1fr;gap:18px}.topic-card h3{font-size:19px}.topic-card p{font-size:13px}.topic-card>span{font-size:12px}.filter-tabs{gap:5px}.filter-tab{padding:9px 12px;font-size:11px}.search-box{max-width:210px}.lesson-grid{gap:17px}.lesson-copy{padding:20px}.lesson-copy h3{font-size:22px}.lesson-copy p{font-size:12px;min-height:67px}.lesson-copy .text-link{font-size:11px}.lesson-image{height:181px}.lesson-image img{height:186px}.preparation-band{grid-template-columns:repeat(3,1fr);padding:27px}.preparation-band>div:first-child{grid-column:1/-1}.preparation-band h2{font-size:27px}.preparation-band .eyebrow{margin-bottom:9px}.article-hero{grid-template-columns:1.5fr .8fr;gap:25px;padding:24px 0 38px}.article-hero h1{font-size:36px}.article-hero .lead{font-size:14px}.article-hero-image{height:240px}.article-meta{gap:12px;font-size:9px}.article-meta .save-article{font-size:9px}.article-layout{grid-template-columns:180px 1fr;gap:27px}.toc a{font-size:11px}.aside-app{padding:17px}.aside-app .button{font-size:9px;padding:11px 8px}.aside-app .button .icon{width:12px;height:12px}.article-content h2{font-size:26px}.article-content h3{font-size:18px}.article-content .short-answer{padding:24px}.short-answer p{font-size:13px}.article-content p{font-size:13px}.article-step{gap:16px}.article-step p{font-size:13px}.article-cta{padding:26px}.article-cta h2{font-size:25px}.article-content .progress-note{padding:22px;gap:14px}.progress-note h2{font-size:20px}.article-content .faq-section h2{font-size:26px}}
/* Phone layouts */
@media(max-width:640px){html{scroll-padding-top:90px}.container{padding:0 22px}.site-header{height:75px}.brand{width:136px}.brand img{height:53px}.button-header{font-size:10px;min-height:37px;padding:10px 11px;border-radius:10px;gap:5px}.button-header .icon{width:14px;height:14px}.header-actions{gap:8px}.header-inner{gap:10px}.menu-toggle{width:38px;height:38px;border-radius:10px}.menu-toggle .icon{width:21px;height:21px}.home-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:34px 0 26px}.hero-copy h1{font-size:clamp(35px,8.8vw,47px);line-height:1.16;letter-spacing:-.045em}.hero-copy .pill{margin-bottom:20px;font-size:10px}.hero-copy .lead{font-size:15px;line-height:1.8;margin:19px 0 24px}.hero-buttons{gap:9px;flex-wrap:nowrap;align-items:stretch}.hero-buttons .button-primary{font-size:12px;padding:15px 16px;min-height:51px;gap:9px}.hero-buttons .button-quiet{font-size:11px;padding:12px 4px;gap:7px;min-height:51px}.hero-buttons .button-quiet>.icon{width:14px}.hero-buttons .button-primary>.icon:last-child{display:none}.hero-trust{margin-top:22px;font-size:10px;gap:17px;flex-wrap:wrap}.hero-trust .icon{width:14px;height:14px}.hero-visual{height:365px;width:100%;margin:8px auto 0;max-width:420px}.hero-orbit{width:90%;height:auto;top:9%;left:5%}.hero-dog{width:109%;height:113%;transform:translateY(7px)}.spark-one{top:38px;right:35px;font-size:29px}.spark-two{top:119px;left:13px;font-size:33px}.floating-top{top:91px;right:-1px;padding:10px;gap:7px;transform:rotate(5deg)}.floating-card strong{font-size:10px}.floating-card small{font-size:8px}.floating-card .round-icon{height:31px;width:31px;border-radius:9px}.floating-card .icon{height:16px;width:16px}.floating-bottom{left:4px;bottom:17px;padding:11px 14px;transform:rotate(-4deg)}.floating-bottom strong{font-size:11px}.mini-paw{margin-left:3px}.section{padding:47px 0}.start-section{padding-top:15px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:29px;line-height:1.21}.section-heading p{font-size:13px;margin-top:17px}.section-heading>.text-link{margin-top:19px;font-size:12px}.eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:14px}.start-grid{grid-template-columns:1fr;gap:13px}.start-card{min-height:221px;padding:24px;border-radius:22px}.card-kicker{font-size:8px}.start-card h3{font-size:23px;max-width:220px;margin-top:10px}.start-card p{font-size:12px;max-width:220px;margin-top:9px;line-height:1.7}.start-card img{width:187px;height:185px;bottom:-21px;right:-2px}.start-card.commands-card img{width:145px;height:204px;bottom:-32px;right:1px}.start-card.home-card img{width:226px;height:158px;bottom:-6px;right:-46px}.circle-arrow{left:24px;bottom:22px;z-index:2;width:35px;height:35px}.start-card.commands-card h3{max-width:205px}.start-card.commands-card p{max-width:190px}.start-card.commands-card p br{display:none}.features-section{padding-top:28px}.section-heading.centered{margin-bottom:30px}.section-heading.centered h2{font-size:29px}.section-heading.centered p{font-size:12px;margin-top:17px}.feature-layout{grid-template-columns:1fr 1fr;gap:27px 21px}.phone-stage{grid-column:1/-1;grid-row:1;padding-top:27px;margin-bottom:9px}.app-phone{width:265px;min-height:521px;padding:15px 14px 7px}.phone-pet img{width:125px}.phone-stage:before{inset:80px 0 90px}.phone-caption{font-size:10px}.phone-footnote{font-size:9px;margin-top:22px}.feature-stack{gap:30px;height:100%;align-content:start}.feature-item .round-icon{width:39px;height:39px;border-radius:12px;margin-bottom:15px}.feature-item .round-icon .icon{width:20px;height:20px}.feature-item h3{font-size:17px;line-height:1.35}.feature-item p{font-size:12px;line-height:1.8;margin-top:9px}.feature-item small{font-size:9px;line-height:1.7}.tool-strip{grid-template-columns:1fr;gap:13px;margin-top:34px}.tool-strip>div{padding:19px;gap:13px}.tool-strip strong{font-size:12px}.tool-strip small{font-size:10px}.tool-strip .text-link{margin-left:auto;font-size:10px;gap:5px}.tool-strip .text-link .icon{width:13px}.tool-strip>div:first-child>.text-link{margin-left:36px}.approach-section{display:flex;flex-direction:column;gap:34px;padding-top:25px}.approach-art{width:100%;height:325px;border-radius:26px}.approach-art img{width:111%;max-height:340px}.approach-sticker{right:9px;bottom:19px;font-size:11px;padding:12px 15px}.approach-copy h2{font-size:31px;line-height:1.2}.approach-copy .lead-small{font-size:14px;line-height:1.85;margin-top:20px}.principle{gap:18px;margin-bottom:22px}.principle h3{font-size:15px}.principle p{font-size:12px;margin-top:6px;line-height:1.85}.approach-copy .text-link{font-size:13px}.reading-section{padding-top:27px}.reading-grid{grid-template-columns:1fr;gap:17px}.reading-card{grid-template-columns:112px 1fr;border-radius:19px}.reading-image img{width:158%;height:185px}.reading-image.peach-bg img{height:240px}.reading-copy{padding:20px}.reading-copy h3{font-size:19px;line-height:1.3;margin-top:13px}.reading-copy p{font-size:11px;line-height:1.8}.reading-meta{margin-top:17px;font-size:9px}.reading-copy .tag{font-size:9px}.faq-section{display:block;padding:36px 0 53px}.faq-section h2{font-size:29px}.faq-section>div>.muted{font-size:12px;margin-bottom:20px}.faq-list summary{font-size:13px;line-height:1.75;padding:18px 0;gap:17px}.faq-answer{font-size:12px;line-height:1.9;padding-right:24px}.download-banner{display:block;padding:29px 26px 219px;margin-bottom:42px;border-radius:24px;min-height:0}.download-banner h2{font-size:28px;line-height:1.24}.download-banner h2 br{display:none}.download-banner .eyebrow{font-size:8px}.download-banner p{font-size:12px;line-height:1.9;margin-top:17px}.download-banner p br{display:none}.download-banner .button{font-size:12px;padding:14px 18px}.download-banner small{font-size:9px;margin-top:11px}.download-art{position:absolute;bottom:0;right:0;height:220px;width:100%}.download-art img{width:271px;bottom:-90px;right:24px;transform:rotate(8deg)}.download-art:before{height:260px;width:260px;top:-8px;right:19px}.download-art:after{height:207px;width:207px;right:46px;top:18px}.download-heart{height:45px;width:45px;display:flex;align-items:center;justify-content:center;padding:10px;right:29px;top:35px;border-radius:12px;transform:rotate(15deg)}.download-heart .icon{height:24px;width:24px}.site-footer{padding-top:30px}.footer-top{grid-template-columns:1fr 1fr;gap:26px 22px;padding-bottom:31px}.footer-brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px}.footer-brand img{width:127px;height:50px}.footer-brand p{margin:0;font-size:9px;line-height:1.8;max-width:173px}.footer-col{gap:10px;padding-top:0}.footer-col strong{font-size:11px}.footer-col a,.footer-col .footer-link{font-size:10px}.footer-col .icon{width:12px;height:12px;margin-right:2px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:10px 24px;padding:19px 0;font-size:9px}.footer-bottom .footer-link{font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%;font-size:8px}.footer-bottom>.footer-link{margin-left:auto}.breadcrumbs{font-size:9px;gap:6px;padding:22px 0 18px}.breadcrumbs .icon{width:10px;height:10px}.inner-hero{display:block;padding:29px 26px 20px;border-radius:24px;min-height:0}.inner-hero .pill{font-size:9px;padding:7px 10px}.inner-hero .pill .icon{height:14px;width:14px}.inner-hero h1{font-size:36px;margin-top:22px;line-height:1.16}.inner-hero .lead{font-size:13px;line-height:1.85;margin:19px 0 23px}.inner-hero .lead br{display:none}.inner-hero .button{font-size:11px;min-height:44px;padding:14px 18px}.hero-subnote{font-size:9px}.inner-hero-art{height:261px;margin:9px auto 0;max-width:340px}.inner-hero-art:before{height:237px;width:237px;top:19px}.inner-hero-art img{width:105%;height:290px;object-fit:contain}.art-bubble{font-size:10px;bottom:8px;left:-1px;padding:11px 13px}.commands-hero .inner-hero-art{height:280px}.commands-hero .inner-hero-art img{height:309px;transform:translateY(13px)}.commands-hero .art-bubble{bottom:15px;left:0}.journey-grid{grid-template-columns:1fr;gap:0}.journey-card{padding:0 0 30px 65px;min-height:125px}.journey-card:last-child{padding-bottom:0}.journey-card .round-icon{position:absolute;top:0;left:0;width:44px;height:44px;border-radius:13px}.journey-card .round-icon .icon{width:21px;height:21px}.journey-card:not(:last-child):after{top:55px;bottom:9px;left:22px;width:0;border-left:1px dashed #dcd2eb;border-top:0}.journey-number{font-size:30px;top:0;right:0}.journey-card h3{font-size:18px;margin:4px 30px 10px 0}.journey-card p{font-size:13px;line-height:1.85;max-width:320px;margin:0}.featured-guide{grid-template-columns:1fr;gap:24px;padding:22px;border-radius:23px}.featured-guide-art{height:210px}.featured-guide-art img{height:230px;width:110%;object-fit:contain}.featured-guide h2{font-size:26px;line-height:1.25}.featured-guide p{font-size:13px}.featured-guide .eyebrow{font-size:8px}.featured-guide .large-link{font-size:12px;line-height:1.7;gap:9px}.featured-guide .small{font-size:9px;margin-top:13px}.topic-grid{gap:12px}.topic-card{padding:20px 16px;border-radius:17px}.topic-card>.icon{height:24px;width:24px;margin-bottom:18px}.topic-card h3{font-size:17px;line-height:1.35}.topic-card p{font-size:11px;line-height:1.8;margin-top:10px;margin-bottom:21px}.topic-card>span{font-size:10px;gap:7px;line-height:1.5}.topic-card>span .icon{width:13px;height:13px}.soft-note{padding:24px 21px;gap:15px;border-radius:20px;margin-bottom:0}.soft-note>.icon{width:25px;height:25px}.soft-note h3{font-size:20px}.soft-note p{font-size:12px;line-height:1.85}.catalog-section{padding-top:40px}.catalog-toolbar{flex-direction:column;align-items:stretch;gap:18px;margin-top:26px}.filter-tabs{gap:6px}.filter-tab{font-size:10px;padding:9px 13px}.search-box{max-width:none;padding:12px 15px;border-radius:12px}.search-box input{font-size:13px}.catalog-result{font-size:9px;align-items:start;margin:15px 0 20px}.catalog-result>span:last-child{text-align:right;max-width:210px}.lesson-grid{grid-template-columns:1fr 1fr;gap:13px}.lesson-image{height:158px}.lesson-image img{height:171px;width:106%;transform:translateY(19px)}.lesson-image .tag{font-size:8px;padding:3px 6px;top:11px;left:11px}.lesson-card{border-radius:18px}.lesson-copy{padding:19px 15px}.lesson-copy h3{font-size:22px}.lesson-copy p{font-size:11px;line-height:1.8;min-height:79px;margin-top:12px;margin-bottom:16px}.lesson-copy .text-link{font-size:10px;gap:8px;line-height:1.6}.lesson-copy .text-link .icon{width:14px;height:14px}.preparation-band{grid-template-columns:1fr;gap:23px;padding:25px}.preparation-band>div:first-child{margin-bottom:2px}.preparation-band h2{font-size:28px}.preparation-band>div:not(:first-child){position:relative;padding-left:43px}.preparation-band>div>span:not(.eyebrow){position:absolute;left:0;top:0;margin:0}.preparation-band h3{font-size:15px}.preparation-band p{font-size:12px;margin-top:7px}.article-hero{display:block;padding:13px 0 28px;margin-bottom:29px}.article-hero h1{font-size:35px;line-height:1.2;letter-spacing:-.04em}.article-hero .eyebrow{font-size:9px}.article-hero .lead{font-size:14px;line-height:1.85;margin:21px 0 24px}.article-meta{gap:13px;font-size:10px}.article-meta>span:nth-child(2){display:none}.article-meta .save-article{font-size:10px;margin-left:auto}.article-hero-image{height:225px;margin:31px auto 0;max-width:315px;border-radius:41% 44% 41% 40%}.article-hero-image img{height:112%;max-width:115%}.article-art-mark{height:48px;width:48px;border-radius:15px;right:-3px;bottom:15px}.article-art-mark .icon{height:25px;width:25px}.article-layout{display:flex;flex-direction:column;gap:28px;padding-bottom:47px}.article-aside{position:static;width:100%}.toc{border:1px solid var(--line);padding:19px 21px;border-radius:17px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}.toc strong{grid-column:1/-1;margin-bottom:9px;font-size:8px}.toc a{font-size:10px;border:0;padding:5px 0;line-height:1.7}.toc a.current{background:transparent}.aside-app{display:none}.article-content{width:100%}.article-content>section{margin-bottom:36px;scroll-margin-top:100px}.article-content .short-answer{padding:23px;border-radius:18px}.short-answer .eyebrow{font-size:9px}.article-content p{font-size:14px;line-height:1.9}.short-answer p{font-size:13px;line-height:1.95}.article-content h2{font-size:26px;line-height:1.25;margin-bottom:17px}.article-content #prepare>.muted{font-size:11px;line-height:1.8;margin-bottom:19px}.preparation-checklist{padding:2px 16px;border-radius:17px}.preparation-checklist label{padding:16px 0;gap:12px;font-size:12px;line-height:1.8}.checkbox-ui{height:22px;width:22px;border-radius:6px}.article-content .checklist-state{font-size:10px!important;margin-top:11px}.article-content h3{font-size:18px;line-height:1.4}.article-step{gap:14px;padding-bottom:29px}.step-number{height:33px;width:33px;border-radius:11px;font-size:13px}.article-step h3{padding-top:3px}.article-step p{font-size:13px;line-height:1.95;margin-top:11px}.article-step:not(:last-child):before{left:16px;top:44px;bottom:10px}.article-content .progress-note{padding:22px 20px;gap:12px;display:block}.progress-note>.icon{margin-bottom:12px;width:25px;height:25px}.progress-note h2{font-size:22px}.progress-note p{font-size:13px;line-height:1.9}.article-content #mistakes>p{font-size:13px}.pitfalls h3{font-size:15px}.pitfalls p{font-size:12px;line-height:1.85}.pitfalls>div{padding-left:28px;padding-bottom:24px}.safety-note{gap:13px;padding:18px;margin-bottom:34px}.safety-note p{font-size:11px;line-height:1.9}.article-content .faq-section{margin-bottom:36px}.article-content .faq-section h2{font-size:26px}.article-content .faq-list summary{font-size:13px}.article-content .faq-answer{font-size:12px;line-height:1.9}.article-cta{padding:26px 23px;border-radius:21px}.article-cta h2{font-size:25px}.article-cta p{font-size:12px;line-height:1.9}.article-cta .eyebrow{font-size:8px}.article-cta small{font-size:8px}.editorial-note{margin-top:-9px;padding-bottom:22px}.editorial-note p{font-size:10px}.related-card{gap:15px;padding:15px;margin-top:24px}.related-card img{height:65px;width:54px}.related-card h3{font-size:14px;line-height:1.5}.related-card .eyebrow{font-size:7px;margin-bottom:7px}.related-card>.icon{width:18px;height:18px}.reading-progress{top:75px}.modal{padding:34px 25px;border-radius:22px}.modal h2{font-size:27px;margin-top:5px}.modal p{font-size:13px}.modal .button{font-size:12px}.modal-close{right:12px;top:12px}.modal-app-icon{height:52px;width:52px;border-radius:15px}.volume-label{font-size:10px}}
@media(max-width:370px){.container{padding:0 17px}.brand{width:121px}.button-header{font-size:9px;padding:10px}.button-header .icon{display:none}.home-hero{padding-top:28px}.hero-copy h1{font-size:33px}.hero-copy .lead{font-size:13px}.hero-buttons .button-primary{font-size:11px;padding:13px}.hero-buttons .button-quiet{font-size:10px}.hero-trust{font-size:9px;gap:11px}.hero-visual{height:325px}.floating-top{right:-5px;top:79px}.floating-card small{font-size:7px}.floating-card strong{font-size:9px}.floating-card{gap:6px;padding:9px}.floating-bottom{bottom:16px}.inner-hero{padding:25px 20px 20px}.inner-hero h1{font-size:32px}.article-hero h1{font-size:32px}.feature-layout{gap:25px 16px}.tool-strip .text-link{margin-left:36px}.lesson-copy{padding:17px 12px}.lesson-copy h3{font-size:20px}.lesson-copy .text-link{font-size:9px;gap:4px}.filter-tab{font-size:9px;padding:8px 12px}.footer-brand p{font-size:8px}.footer-brand img{width:115px}.article-meta{font-size:9px;gap:9px}.toc{gap:4px 8px;padding:18px}.toc a{font-size:9px}.download-banner h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(min-width:641px) and (max-width:850px){.hero-dog{width:112%}}
.hero-orbit{overflow:hidden}
@media(min-width:851px){.mobile-nav{display:none}}

/* Design pass 2: closer rhythm, layered surfaces and visible resting depth.
   Kept separate from the first concept so the owner can compare directions. */
:root {
  --shadow-card: 0 2px 5px #36225607, 0 12px 28px -8px #39205b26;
  --shadow-panel: 0 3px 8px #36225605, 0 18px 46px -20px #39205b29;
  --shadow-raised: 0 5px 10px #3622560d, 0 20px 37px -13px #39205b38;
  --shadow: var(--shadow-raised);
  --muted: #736c82;
  --line: #e1daeb;
}

body {
  background: radial-gradient(ellipse 900px 640px at 85% 0%, #eae0fa8c, transparent),
    #f7f5fa;
}
.site-header {
  height: 84px;
  background: #ffffffed;
  border-bottom-color: #e6deef;
  box-shadow: 0 4px 20px #37224f08;
}
.section { padding: 42px 0; }
.section-heading { margin-bottom: 24px; }
.section-heading.centered { margin-bottom: 24px; }
.eyebrow { margin-bottom: 12px; }
.section-heading p { color: #746c83; }

/* A bounded first screen: light on the left, warmer around the illustration. */
.home-hero {
  min-height: 0;
  margin: 22px 0 10px;
  padding: 26px 32px;
  gap: 0;
  border: 1px solid #fff;
  border-radius: 32px;
  background: radial-gradient(ellipse at 88% 52%, #e8dafa 0%, #f3ecfc 36%, transparent 68%),
    linear-gradient(125deg, #fff 28%, #faf7ff 75%);
  box-shadow: var(--shadow-panel), inset 0 0 0 1px #f2ecf8;
}
.hero-visual { height: 465px; }
.hero-copy h1 { font-size: clamp(39px, 4vw, 57px); }
.hero-copy .lead { font-size: 16px; margin: 20px 0 24px; }
.hero-copy .pill { margin-bottom: 20px; background: #eae1fb; border-color: #ded2f4; }
.hero-trust { margin-top: 23px; gap: 15px; color: #7e6c91; }
.hero-orbit {
  width: min(96%, 430px);
  background: linear-gradient(150deg, #f7edff 5%, #deccef 90%);
  border: 1px solid #ffffffc9;
  box-shadow: inset 0 0 35px #ffffff88, 0 12px 35px #9c73c918;
}
.hero-orbit:after { border-color: #c5aadd; }
.hero-dog { width: 110%; filter: drop-shadow(0 16px 9px #57376d1c); }
.floating-card { box-shadow: var(--shadow-raised); border-color: #fff; }
.floating-top { top: 103px; right: -8px; }
.floating-bottom { bottom: 28px; left: 6px; }
.button-primary { box-shadow: 0 3px 0 #4320ae, 0 8px 19px #5637d52b; }
.button-primary:hover { box-shadow: 0 3px 0 #351590, 0 12px 25px #5637d539; }
.button-quiet { background: #ffffffa8; border: 1px solid #e3d8ef; padding: 15px; }
.button-header { border: 1px solid #e2d7f7; box-shadow: 0 3px 8px #5637d50a; }
.round-icon { box-shadow: inset 0 1px 1px #fff, 0 4px 8px #64419a12; }

/* Resting shadows, not only hover feedback. Artwork stays part of each card. */
.start-section { padding-top: 28px; padding-bottom: 36px; }
.start-grid { gap: 19px; }
.start-card {
  min-height: 279px;
  border: 1px solid #ffffffc4;
  box-shadow: var(--shadow-card), inset 0 0 0 1px #ffffff38;
}
.puppy-card { background: linear-gradient(135deg, #f2eafe, #dfcef2); }
.commands-card { background: linear-gradient(135deg, #fff3e9, #f4dcc7); }
.home-card { background: linear-gradient(135deg, #eef8f0, #d4e5d9); }
.start-card:hover { box-shadow: var(--shadow-raised); }
.start-card h3 { font-size: 22px; }
.start-card p { color: #786781; }
.start-card img { filter: drop-shadow(0 9px 7px #5d3e6920); }
.circle-arrow { background: #fff; box-shadow: 0 4px 9px #3c214f12; }
.card-kicker { color: #796385; }

/* Feature cards live on one shared lavender surface, around the phone. */
.features-section {
  margin: 12px 0 30px;
  padding: 32px 27px 26px;
  border: 1px solid #e5dbf2;
  border-radius: 29px;
  background: radial-gradient(ellipse at 50% 53%, #e6d8f7, transparent 62%),
    linear-gradient(140deg, #f1eaf9, #f7f2fc 55%, #ede5f6);
  box-shadow: inset 0 1px 0 #fff, var(--shadow-panel);
}
.features-section .section-heading h2 { font-size: 35px; }
.features-section .section-heading p { margin-top: 12px; }
.feature-layout { grid-template-columns: 1fr 306px 1fr; gap: 25px; max-width: none; }
.feature-stack { gap: 16px; }
.feature-item {
  background: #fffffff0;
  border: 1px solid #ffffff;
  border-radius: 21px;
  padding: 22px;
  box-shadow: var(--shadow-card);
}
.feature-item .round-icon { margin-bottom: 14px; }
.feature-item h3 { font-size: 18px; }
.feature-item p { font-size: 12px; line-height: 1.8; margin-top: 10px; }
.feature-item small { font-size: 10px; color: #897490; }
.phone-stage { padding: 27px 0 7px; }
.phone-stage:before { display: none; }
.phone-caption { color: #857191; }
.phone-footnote { margin-top: 18px; color: #8d789b; }
.app-phone { box-shadow: 0 25px 35px -10px #44305936, 0 4px 8px #2b1c441a, 0 0 0 2px #dfd3e9; }
.tool-strip { margin-top: 22px; gap: 17px; }
.tool-strip>div { background: #ffffffd9; border-color: #fff; box-shadow: 0 5px 15px #4b2c680b; padding: 19px; }

/* Editorial rhythm: useful separation without huge blank bands. */
.approach-section { gap: 45px; padding: 16px 0 36px; }
.approach-art {
  height: 416px;
  border: 1px solid #fff;
  background: radial-gradient(ellipse at 52% 80%, #e3d7ec, transparent 65%), #efe8f5;
  box-shadow: var(--shadow-panel), inset 0 1px 0 #fff;
}
.approach-art img { width: 108%; max-height: 395px; filter: drop-shadow(0 14px 7px #3e225b14); }
.approach-sticker { box-shadow: 0 9px 20px #64462620; }
.approach-copy h2 { font-size: 33px; }
.approach-copy .lead-small { margin-bottom: 20px; }
.principle { margin-bottom: 16px; }
.principle>span {
  height: 28px; width: 28px; flex-shrink: 0; text-align: center;
  background: #e9dff5; color: #86679e; border: 1px solid #fff;
  border-radius: 9px; line-height: 26px;
}
.reading-section { padding: 27px 0 35px; }
.reading-card, .lesson-card, .topic-card, .featured-guide, .related-card {
  background: #fff;
  border-color: #e5dceb;
  box-shadow: var(--shadow-card);
}
.reading-card:hover, .lesson-card:hover, .topic-card:hover, .related-card:hover { box-shadow: var(--shadow-raised); }
.reading-copy { padding: 22px; }
.reading-image.lilac, .lesson-image.lilac { background: radial-gradient(ellipse at 60% 95%, #ddcdef, transparent 75%), #efe6f8; }
.reading-image.peach-bg, .lesson-image.peach-bg { background: radial-gradient(ellipse at 60% 95%, #f2d7bd, transparent 75%), #fcf0e5; }
.reading-image img, .lesson-image img { filter: drop-shadow(0 9px 5px #5c3a6315); }
.faq-section { padding: 28px 0 42px; gap: 50px; grid-template-columns: .85fr 1.5fr; }
.faq-list { display: grid; gap: 9px; align-content: start; }
.faq-list details {
  border: 1px solid #e7dfee; border-radius: 14px;
  background: #fff; padding: 0 19px;
  box-shadow: 0 3px 9px #3c21590a;
}
.faq-list details[open] { background: #fdfbff; border-color: #cbb8e7; box-shadow: var(--shadow-card); }
.faq-list summary { padding: 17px 0; font-size: 13px; }
.faq-answer { padding-bottom: 19px; }
.download-banner { margin-bottom: 40px; min-height: 0; padding: 34px 40px; border: 1px solid #8563e7; box-shadow: 0 6px 12px #54308d1a, 0 24px 38px -20px #48237c77, inset 0 1px 0 #a18af5; }
.download-banner .button, .article-cta .button { box-shadow: 0 4px 12px #25104724; }
.site-footer { padding-top: 30px; background: #f0ebf5; border-color: #e2d8ec; }
.footer-top { padding-bottom: 28px; }
.footer-col a, .footer-link, .footer-brand p { color: #82718e; }

/* Give hubs and instructions the same material language. */
.breadcrumbs { padding-top: 20px; padding-bottom: 17px; }
.inner-hero {
  min-height: 0; padding: 33px 40px; border: 1px solid #fff;
  background: linear-gradient(130deg, #fdfaff, #ede0f8);
  box-shadow: var(--shadow-panel), inset 0 0 0 1px #e6d9f1;
}
.inner-hero-art { height: 310px; }
.inner-hero h1 { font-size: 47px; }
.commands-hero { background: linear-gradient(130deg, #fffaf4, #f1e2d0); }
.commands-hero .inner-hero-art img { height: 345px; transform: translateY(12px); }
.journey-grid { gap: 16px; }
.journey-card {
  padding: 22px 20px; background: #fff; border: 1px solid #e5dceb;
  border-radius: 21px; box-shadow: var(--shadow-card);
}
.journey-number { top: 19px; right: 18px; color: #e0d2ee; font-size: 35px; }
.journey-card:not(:last-child):after { display: none; }
.journey-card h3 { margin-top: 19px; }
.journey-card p { font-size: 12px; }
.featured-guide { padding: 27px; }
.featured-guide-art { height: 264px; background: linear-gradient(140deg, #edf7ed, #dce9dc); }
.topic-card { padding: 23px; }
.soft-note, .preparation-band { border: 1px solid #e1d4ed; background: #ede4f6; box-shadow: inset 0 1px 0 #fff; }
.catalog-section { padding-top: 38px; }
.catalog-toolbar { margin-top: 23px; padding: 15px; border-radius: 18px; background: #eee7f5; border: 1px solid #e3d8ee; }
.filter-tab { background: #ffffffa6; border-color: #e6dcef; }
.filter-tab.selected { box-shadow: 0 3px 8px #4927872c; border-color: #5637d5; }
.search-box { box-shadow: inset 0 2px 4px #46235e08; }
.catalog-result { color: #8b759e; margin: 13px 2px 18px; }
.lesson-copy { padding: 22px; }
.lesson-copy p { margin-bottom: 19px; }
.article-hero {
  padding: 30px 34px; margin-bottom: 28px; gap: 40px;
  background: linear-gradient(115deg, #fff 20%, #f1e7f9);
  border: 1px solid #fff; border-radius: 28px; box-shadow: var(--shadow-panel);
}
.article-hero h1 { font-size: 44px; }
.article-hero-image { height: 261px; box-shadow: inset 0 0 30px #c4a3e61c; }
.article-layout { gap: 32px; padding-bottom: 42px; }
.article-aside { top: 109px; }
.toc { padding: 22px 17px; background: #fff; border: 1px solid #e5dceb; border-radius: 19px; box-shadow: var(--shadow-card); }
.aside-app { margin-top: 20px; background: linear-gradient(145deg,#fff,#ede3f8); box-shadow: var(--shadow-card); }
.article-content { padding: 28px; background: #fff; border: 1px solid #e7dfee; border-radius: 24px; box-shadow: var(--shadow-panel); }
.article-content>section { margin-bottom: 34px; }
.article-content .short-answer { background: #f0e7f9; border-color: #e2d3ef; box-shadow: inset 0 1px 0 #ffffffb3; }
.preparation-checklist { background: #fcfafe; box-shadow: inset 0 2px 5px #39205b04; }
.article-step { padding-bottom: 26px; }
.article-content .progress-note { background: #eaf4ec; border: 1px solid #d6e5d8; }
.article-content .faq-section { padding: 0; margin-bottom: 30px; }
.article-content .faq-list details { box-shadow: none; }
.article-cta { box-shadow: 0 9px 22px #59389726, inset 0 1px 0 #b29cee; }
.article-content .related-card { box-shadow: 0 3px 10px #3c21590a; }
.reading-progress { top: 84px; }

@media (max-width: 1100px) {
  .home-hero { padding: 25px; }
  .hero-copy h1 { font-size: 45px; }
  .hero-copy .lead { font-size: 14px; }
  .hero-visual { height: 430px; }
  .hero-trust { gap: 11px; }
  .hero-buttons { gap: 9px; }
  .hero-buttons .button { font-size: 11px; padding: 14px; }
  .features-section { padding: 28px 22px 22px; }
  .feature-layout { grid-template-columns: 1fr 275px 1fr; gap: 17px; }
  .feature-item { padding: 18px; }
  .feature-item h3 { font-size: 16px; }
  .feature-item p { font-size: 11px; }
  .feature-item small { font-size: 9px; }
  .app-phone { width: 256px; }
  .tool-strip .text-link { margin-left: 36px; }
  .approach-art { height: 378px; }
  .approach-copy h2 { font-size: 29px; }
  .journey-card { padding: 20px 16px; }
  .journey-card h3 { font-size: 16px; }
  .inner-hero { padding: 29px 32px; }
  .inner-hero h1 { font-size: 42px; }
  .article-hero { gap: 26px; padding: 27px; }
  .article-hero h1 { font-size: 39px; }
  .article-hero-image { height: 235px; }
  .article-layout { gap: 24px; }
  .article-content { padding: 25px; }
}

@media (min-width: 641px) and (max-width: 850px) {
  .hero-copy h1 { font-size: 36px; }
  .hero-visual { height: 375px; }
  .hero-dog { width: 110%; }
  .hero-trust { gap: 8px; font-size: 9px; }
  .hero-copy .lead { font-size: 13px; }
  .hero-copy .lead br { display: none; }
  .floating-top { top: 70px; right: -5px; }
  .floating-bottom { left: -13px; bottom: 17px; }
  .start-card { padding: 19px; min-height: 271px; }
  .start-card h3 { font-size: 19px; }
  .features-section .section-heading h2 { font-size: 31px; }
  .feature-layout { grid-template-columns: 1fr 240px 1fr; gap: 12px; }
  .feature-item { padding: 15px; border-radius: 17px; }
  .feature-item h3 { font-size: 15px; }
  .feature-item p { font-size: 11px; }
  .app-phone { width: 231px; padding-left: 10px; padding-right: 10px; }
  .phone-caption { font-size: 9px; }
  .phone-pet img { width: 106px; }
  .tool-strip>div { padding: 15px; gap: 10px; }
  .approach-section { gap: 28px; }
  .approach-copy h2 { font-size: 26px; }
  .approach-art { height: 338px; }
  .reading-copy { padding: 18px; }
  .journey-grid { grid-template-columns: 1fr 1fr; }
  .inner-hero h1 { font-size: 37px; }
  .inner-hero-art { height: 275px; }
  .inner-hero-art img { width: 115%; }
  .commands-hero .inner-hero-art img { height: 300px; }
  .article-hero h1 { font-size: 34px; }
  .article-hero-image { height: 214px; }
  .article-layout { grid-template-columns: 170px minmax(0,1fr); gap: 20px; }
  .toc { padding: 18px 12px; }
  .article-content { padding: 22px; }
}

@media (max-width: 850px) {
  .site-header { height: 76px; }
  .reading-progress { top: 76px; }
}

@media (max-width: 640px) {
  body { background: #f6f3f9; }
  .container { padding-left: 18px; padding-right: 18px; }
  .site-header { height: 70px; }
  .section { padding: 30px 0; }
  .section-heading { margin-bottom: 19px; }
  .section-heading h2 { font-size: 28px; }
  .section-heading p { margin-top: 12px; font-size: 12px; }
  .home-hero { margin-top: 15px; margin-bottom: 6px; padding: 23px 21px 15px; border-radius: 25px; }
  .hero-copy h1 { font-size: clamp(30px, 7.9vw, 43px); }
  .hero-copy .pill { font-size: 9px; margin-bottom: 18px; }
  .hero-copy .lead { font-size: 13px; line-height: 1.85; margin: 17px 0 21px; }
  .hero-copy .lead br { display: none; }
  .hero-buttons { gap: 8px; flex-wrap: wrap; }
  .hero-buttons .button { min-height: 45px; font-size: 10px; padding: 12px; gap: 7px; }
  .hero-buttons .button-quiet { background: #ffffffbd; }
  .hero-buttons .button .icon { width: 14px; height: 14px; }
  .hero-trust { gap: 12px; font-size: 9px; margin-top: 20px; }
  .hero-visual { height: 308px; margin-top: 4px; }
  .hero-dog { width: 116%; height: 110%; }
  .floating-top { top: 66px; right: -12px; padding: 9px; }
  .floating-bottom { bottom: 7px; left: -7px; padding: 10px; }
  .floating-card strong { font-size: 9px; }
  .floating-card small { font-size: 7px; }
  .floating-card .round-icon { width: 29px; height: 29px; }
  .spark-one { top: 19px; right: 20px; }
  .spark-two { top: 86px; left: -3px; }
  .start-section { padding: 25px 0 30px; }
  .start-grid { gap: 13px; }
  .start-card { min-height: 211px; padding: 22px; }
  .start-card h3 { font-size: 22px; }
  .start-card p { font-size: 12px; }
  .start-card img { width: 168px; height: 170px; }
  .start-card.commands-card img { width: 130px; height: 190px; }
  .start-card.home-card img { width: 207px; height: 150px; }
  .circle-arrow { left: 22px; bottom: 19px; }
  .features-section { margin: 6px 0 26px; padding: 25px 16px 19px; border-radius: 24px; }
  .features-section .section-heading h2 { font-size: 26px; }
  .features-section .section-heading p { font-size: 12px; line-height: 1.8; }
  .features-section .eyebrow { font-size: 8px; }
  .feature-layout { display: flex; flex-direction: column; gap: 12px; }
  .phone-stage { order: -1; width: 100%; margin-bottom: 10px; padding-top: 22px; padding-bottom: 0; }
  .app-phone { width: 250px; }
  .feature-stack { width: 100%; gap: 12px; }
  .feature-item { padding: 17px 18px; border-radius: 17px; display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 0 13px; }
  .feature-item .round-icon { grid-row: 1 / 4; width: 36px; height: 36px; border-radius: 11px; margin: 0; }
  .feature-item h3 { font-size: 16px; line-height: 1.4; padding-top: 1px; }
  .feature-item p, .feature-item small { grid-column: 2; }
  .feature-item p { font-size: 12px; line-height: 1.8; margin-top: 7px; }
  .feature-item small { font-size: 9px; margin-top: 7px; }
  .tool-strip { margin-top: 15px; gap: 11px; }
  .tool-strip>div { padding: 15px; gap: 10px; border-radius: 16px; }
  .tool-strip strong { font-size: 11px; }
  .tool-strip small { font-size: 9px; }
  .tool-strip .text-link, .tool-strip>div:first-child>.text-link { margin-left: 33px; }
  .approach-section { padding: 5px 0 28px; gap: 27px; }
  .approach-art { height: 286px; border-radius: 24px; }
  .approach-art img { width: 106%; max-height: 283px; }
  .approach-copy h2 { font-size: 29px; }
  .approach-copy .lead-small { font-size: 13px; margin-top: 16px; margin-bottom: 20px; }
  .principle { gap: 13px; margin-bottom: 16px; }
  .reading-section { padding-top: 23px; padding-bottom: 26px; }
  .reading-copy { padding: 18px; }
  .reading-copy h3 { font-size: 18px; }
  .faq-section { padding: 22px 0 31px; }
  .faq-section>div>.muted { margin-top: 12px; margin-bottom: 18px; }
  .faq-list { gap: 9px; }
  .faq-list details { padding: 0 15px; border-radius: 13px; }
  .faq-list summary { font-size: 12px; line-height: 1.75; padding: 15px 0; }
  .faq-answer { padding-right: 15px; font-size: 12px; }
  .download-banner { padding: 26px 23px 191px; margin-bottom: 30px; }
  .download-banner h2 { font-size: 27px; }
  .download-art { height: 201px; }
  .download-art img { width: 253px; bottom: -87px; right: 22px; }
  .site-footer { padding-top: 24px; }
  .footer-top { padding-bottom: 24px; }
  .inner-hero { padding: 25px 24px 17px; border-radius: 24px; }
  .inner-hero h1 { font-size: 35px; }
  .inner-hero-art { height: 233px; margin-top: 7px; }
  .inner-hero-art:before { height: 214px; width: 214px; }
  .inner-hero-art img { height: 263px; }
  .commands-hero .inner-hero-art { height: 253px; }
  .commands-hero .inner-hero-art img { height: 280px; }
  .journey-grid { gap: 12px; }
  .journey-card { padding: 21px 20px 21px 73px; min-height: 0; border-radius: 18px; }
  .journey-card:last-child { padding-bottom: 21px; }
  .journey-card .round-icon { top: 20px; left: 18px; width: 37px; height: 37px; }
  .journey-card h3 { margin: 0 23px 9px 0; font-size: 17px; }
  .journey-card p { font-size: 12px; }
  .journey-number { top: 19px; right: 14px; font-size: 24px; }
  .featured-guide { padding: 20px; }
  .featured-guide-art { height: 194px; }
  .topic-card { padding: 19px 16px; }
  .catalog-section { padding-top: 29px; }
  .catalog-toolbar { padding: 13px; gap: 13px; margin-top: 20px; }
  .filter-tabs { gap: 5px; }
  .filter-tab { font-size: 9px; padding: 9px 11px; }
  .search-box { padding: 11px 13px; }
  .lesson-copy { padding: 18px 14px; }
  .lesson-copy h3 { font-size: 21px; }
  .lesson-copy p { font-size: 11px; }
  .article-hero { padding: 24px 22px 19px; margin-bottom: 23px; border-radius: 23px; }
  .article-hero h1 { font-size: 31px; }
  .article-hero .lead { font-size: 13px; margin-top: 17px; margin-bottom: 19px; }
  .article-meta { gap: 10px; font-size: 9px; }
  .article-meta .save-article { font-size: 9px; padding: 9px; }
  .article-hero-image { height: 198px; margin-top: 23px; }
  .article-layout { gap: 21px; padding-bottom: 30px; }
  .toc { padding: 18px; }
  .article-content { padding: 23px 18px; border-radius: 21px; }
  .article-content>section { margin-bottom: 28px; }
  .article-content .short-answer { padding: 20px; }
  .article-content h2, .article-content .faq-section h2 { font-size: 24px; }
  .article-content h3 { font-size: 17px; }
  .article-step { gap: 11px; }
  .article-step p { font-size: 13px; }
  .article-content .progress-note { padding: 20px; }
  .article-content .progress-note h2 { font-size: 21px; }
  .preparation-checklist { padding: 2px 13px; }
  .article-content .faq-list details { padding: 0 13px; }
  .article-content .faq-list summary { font-size: 12px; }
  .article-cta { padding: 23px 21px; }
  .article-cta h2 { font-size: 24px; }
  .reading-progress { top: 70px; }
}

@media (max-width: 370px) {
  .container { padding-left: 14px; padding-right: 14px; }
  .home-hero { padding-left: 18px; padding-right: 18px; }
  .hero-copy h1 { font-size: 29px; }
  .hero-copy .lead { font-size: 12px; }
  .hero-buttons .button { padding: 11px 10px; font-size: 9px; }
  .hero-trust { gap: 8px; font-size: 8px; }
  .hero-visual { height: 273px; }
  .floating-top { right: -10px; top: 62px; }
  .floating-card { padding: 8px; }
  .floating-card small { font-size: 6px; }
  .features-section { padding-left: 13px; padding-right: 13px; }
  .features-section .section-heading h2 { font-size: 24px; }
  .app-phone { width: 229px; }
  .phone-caption { font-size: 9px; }
  .feature-item { padding: 15px 13px; gap: 0 10px; }
  .feature-item h3 { font-size: 15px; }
  .feature-item p { font-size: 11px; }
  .filter-tab { font-size: 8px; padding: 8px 10px; }
  .article-hero { padding-left: 19px; padding-right: 19px; }
  .article-hero h1 { font-size: 29px; }
  .article-content { padding-left: 15px; padding-right: 15px; }
  .article-meta .save-article { font-size: 8px; }
  .inner-hero h1 { font-size: 31px; }
}

/* On phones a short horizontal lesson card leaves readable room for its title. */
@media (max-width: 480px) {
  .lesson-grid { grid-template-columns: 1fr; gap: 13px; }
  .lesson-card { display: grid; grid-template-columns: 108px minmax(0,1fr); }
  .lesson-image { height: 100%; min-height: 166px; }
  .lesson-image img { height: 166px; width: 168%; max-width: none; transform: translateY(14px); }
  .lesson-image .tag { top: 10px; left: 9px; font-size: 8px; }
  .lesson-copy { padding: 18px 16px; }
  .lesson-copy h3 { font-size: 21px; }
  .lesson-copy p { min-height: 0; font-size: 12px; line-height: 1.8; margin: 10px 0 14px; }
  .lesson-copy .text-link { font-size: 11px; gap: 7px; }
}

/* Production knowledge base: same TailLingo surfaces, compact editorial blocks. */
img{height:auto}
.phone-greeting,.phone-pet span,.phone-plan-title>span,.phone-task small,.phone-caption,.phone-nav,.utility-strip p,.care-strip p,.reading-meta,.footer-col a,.footer-bottom,.footer-link{color:#645773}
.approach-sticker{color:#775631}.principle>span{color:#665078}
.preparation-band p{color:#645773}
.breadcrumbs,.breadcrumbs span,.save-article,.toc strong,.toc a,.article-content #short-answer p,.article-content #prepare>.muted,.article-content .editorial-note,.article-content .editorial-note p,.article-content .editorial-note strong,.footer-brand p{color:#645773}
.article-content #progress p{color:#4e6854}.article-content .safety-note p{color:#796148}
.breadcrumbs span:last-child{color:#645773}
.knowledge-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.knowledge-card {display:flex;flex-direction:column;gap:12px;padding:24px;border:1px solid #E6E0F5;background:#fff;border-radius:24px;box-shadow:0 8px 24px #3020650d;transition:transform .2s,box-shadow .2s}
.knowledge-card:hover {transform:translateY(-3px);box-shadow:0 14px 32px #30206519}
.knowledge-card h3 {font-size:21px;line-height:1.25;margin:0}.knowledge-card p {margin:0;color:#626278;line-height:1.6}.knowledge-card .text-link {margin-top:auto}
.knowledge-card img {width:110px;height:100px;object-fit:contain;align-self:flex-end}
.article-content table {width:100%;border-collapse:collapse;font-size:15px;line-height:1.6;margin:20px 0;background:#fff}
.article-content th,.article-content td {padding:13px 15px;border:1px solid #E6E0F5;text-align:left;vertical-align:top}
.article-content th {background:#F1EDFD;color:#332367}.article-content .table-scroll {overflow-x:auto}
.article-content ul,.article-content ol {padding-left:24px;line-height:1.8}.article-content li+li{margin-top:8px}
.article-content a:not(.button):not(.related-card) {color:#5637D5;text-decoration:underline;text-underline-offset:3px}
.source-list {font-size:14px;overflow-wrap:anywhere}.related-links {display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.related-links a {padding:10px 14px;background:#F1EDFD;border-radius:12px;text-decoration:none!important;font-size:14px}
.tool-panel {padding:30px;border-radius:28px;background:#fff;box-shadow:0 16px 45px #37206c16;border:1px solid #E2DAF7;display:grid;grid-template-columns:200px 1fr;align-items:center;gap:28px;margin:24px 0}
.tool-panel .clicker-pad,.tool-panel .whistle-pad {width:170px;height:170px;border-radius:50%;border:0;background:linear-gradient(145deg,#7453ec,#4b2ebb);color:#fff;box-shadow:0 10px 0 #362181,0 16px 32px #5637d533;cursor:pointer;font:700 20px inherit;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;touch-action:manipulation}
.tool-panel [data-play-sound]{font-family:inherit;font-weight:700;font-size:20px}
.tool-panel button:active {transform:translateY(5px);box-shadow:0 5px 0 #362181}.tool-panel .icon {width:40px;height:40px}
.tool-controls {display:grid;gap:20px}.tool-controls label {display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-weight:600}.tool-controls select {font:inherit;padding:9px;border:1px solid #d8cff0;border-radius:10px;background:#fff;max-width:100%}.tool-controls input[type=range]{accent-color:#5637d5;flex:1;min-width:100px}.tool-controls p {margin:0;font-size:14px;line-height:1.6;color:#626278}
.page-prose {max-width:850px;margin:0 auto;padding:30px 0 50px}.page-prose>section {padding:28px 32px;margin:20px 0;background:white;border:1px solid #E6E0F5;border-radius:24px;box-shadow:0 8px 25px #30206509}.page-prose p,.page-prose li {line-height:1.8}.page-prose a:not(.button) {color:#5637d5;text-decoration:underline}.page-prose h2{font-size:29px}.page-prose h3{font-size:20px}.page-prose ul{padding-left:22px}.page-prose li+li{margin-top:8px}
.demo-caption{font-size:13px;color:#626278;margin-top:10px}.scenario {padding:18px;border-left:4px solid #7453ec;background:#f4f0ff;border-radius:0 14px 14px 0;margin:20px 0}.scenario strong{display:block;margin-bottom:7px}
.site-map-grid {display:grid;grid-template-columns:1fr 1fr;gap:24px}.site-map-grid ul{margin:12px 0}.site-map-grid a{display:inline-block;padding:5px 0}
.footer-bottom{flex-wrap:wrap;gap:16px}.footer-bottom a{font-size:12px}
.article-content .faq-section {display:block}.article-content .faq-section>div:first-child{margin-bottom:20px}
.article-content .editorial-note {font-size:14px;line-height:1.7}.article-content .editorial-note p{margin-bottom:8px}
.desktop-nav{gap:22px}.header-inner{gap:24px}.knowledge-intro{max-width:860px;font-size:18px;line-height:1.8}
@media(max-width:1100px){.desktop-nav{gap:15px}.header-actions .button-header{padding:12px 16px;font-size:13px}.knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.knowledge-grid{grid-template-columns:1fr}.knowledge-card{padding:22px}.tool-panel{grid-template-columns:1fr;justify-items:center;padding:24px 20px}.tool-controls{width:100%}.page-prose>section{padding:23px 19px}.site-map-grid{grid-template-columns:1fr}.article-content table{font-size:13px}.article-content th,.article-content td{padding:9px}.page-prose h2{font-size:25px}.footer-bottom{gap:14px}.article-content .related-card h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.knowledge-card{transition:none}}

/* The download link is the primary action in the header. */
.header-actions .button-header {
  background:#5637d5;
  color:#fff;
  border-color:#4b2cbe;
  font-weight:750;
  box-shadow:0 3px 0 #3e239f,0 8px 20px #5637d533;
}
.header-actions .button-header:hover {
  background:#4524ba;
  box-shadow:0 3px 0 #321881,0 10px 24px #5637d54d;
}
.header-actions .button-header:active {transform:translateY(1px);box-shadow:0 1px 0 #3e239f,0 4px 10px #5637d526}
.header-actions .button-header:focus-visible {outline:3px solid #20104e;outline-offset:4px}
@media(min-width:1101px){.header-actions .button-header{min-height:48px;padding:14px 22px;font-size:14px}}
@media(max-width:650px){
  .header-inner{gap:10px}
  .header-actions .button-header{width:112px;min-height:44px;padding:8px 10px;font-size:11px;gap:6px;flex-shrink:0}
  .header-actions .button-header .icon{display:none}
}
@media(max-width:370px){.header-actions .button-header{width:98px;padding:8px}}
