/* LP components. Desktop uses the fixed 1160px canvas; phone layout is in
   landing-mobile.css. Entry typography is shared with login/registration. */
:root{--orange:#f48c47;--orange-deep:#e77735;--forest:#165b3b;--forest-deep:#10492e;--ink:#193c29}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%;background:linear-gradient(30deg,#a9c695 0%,#b8d0a7 44%,#d7e7cf 67%,#ffffff 96%) scroll}
body{margin:0;min-width:1160px;min-height:100%;background:linear-gradient(30deg,#a9c695 0%,#b8d0a7 44%,#d7e7cf 67%,#ffffff 96%) scroll;color:var(--ink);-webkit-font-smoothing:antialiased}
body.landing-page{font-family:"PAW M PLUS Rounded","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-weight:500}
body.landing-page :is(h1,h2,h3,strong,b,a,.paw-letter,.paw-feature-en){font-weight:700}
a{color:inherit;text-decoration:none}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,.value-card-image:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
h1,h2,h3,p{margin-top:0}
.container{width:1160px;margin-inline:auto}
section{scroll-margin-top:36px}
.section-pad{position:relative;padding:104px 0}
.section-heading{text-align:center;max-width:780px;margin:0 auto 49px}
.section-heading h2{font-size:37px;font-weight:900;letter-spacing:-.045em;line-height:1.55;color:var(--forest-deep);margin-bottom:14px}

/* Brand and entry links. */
.site-header{height:88px;position:relative;z-index:10;background:transparent;border-color:rgba(70,110,76,.12)}
.nav-inner{height:100%;display:flex;align-items:center;gap:32px;column-gap:12px}
.trial-link,.signup-link,.login-link{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;width:112px;min-width:0;flex:0 0 112px;min-height:43px;margin-left:0;padding:0 6px;border-radius:99px;font-size:13px;font-weight:800;text-align:center;transition:background .2s,transform .2s}
.trial-link,.signup-link{gap:normal}
.trial-link{border:3px solid #376b4b;background:#effbe8;color:#245a3a}
.trial-link:hover{background:#e2f2d9;transform:translateY(-1px)}
.site-header .trial-link{margin-left:auto}
.signup-link{border:3px solid #1c5434;background:#2d704b;color:#fff}
.signup-link:hover{background:#245e3e;transform:translateY(-1px)}
.login-link{gap:8px;border:3px solid #cf662a;background:var(--orange);color:#fff;box-shadow:0 8px 18px rgba(244,140,71,.22)}
.login-link:hover{background:var(--orange-deep);border-color:#b85b24;color:#fff;transform:translateY(-1px)}

/* Hero. Image height follows the copy, with its top aligned to the heading. */
.hero{position:relative;overflow:hidden;background:transparent}
.hero-inner{display:grid;position:relative;padding-block:64px 94px;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:34px;align-items:stretch;min-height:0}
.hero-copy{position:relative;z-index:2;max-width:none}
h1{margin:27px 0 22px;font-size:53px;font-weight:900;line-height:1.49;letter-spacing:-.06em;color:var(--forest-deep)}
#hero-heading{letter-spacing:.075em}
/* Keep the marker behind its text, rather than behind the page background. */
.orange-underline{position:relative;z-index:0;white-space:nowrap;color:var(--forest-deep)}
.orange-underline::after{content:"";position:absolute;z-index:-1;left:1%;right:0;height:14px;bottom:5px;background:#ffc99b;border-radius:70% 30% 40% 50%;transform:rotate(-2deg);opacity:.8}
.hero-description{max-width:580px;margin-bottom:0;color:#51685b;font-size:15px;line-height:1.9;letter-spacing:.005em;font-weight:500}
.hero-description strong{color:var(--forest-deep);font-weight:900}
.hero-visual{position:relative;width:100%;min-height:0;display:flex;align-items:center;justify-content:flex-end;align-self:stretch;margin-top:27px;padding-top:0}
.hero-visual .hero-shot{display:block;position:absolute;top:0;right:32px;width:auto;height:100%;max-width:none;border-radius:0;box-shadow:none;background:transparent;mix-blend-mode:normal}

/* Concerns and the bridge into P/A/W. */
.pain-section.section-pad{padding-top:42px;padding-bottom:20px;background:transparent}
.pain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.pain-card{border:1px solid #cee4c3;padding:26px 23px 28px;border-radius:18px;min-height:205px;background:#effbe8;box-shadow:0 8px 24px rgba(29,63,34,.07);backdrop-filter:blur(2px)}
.pain-card h3{font-size:21px;font-weight:900;line-height:1.6;margin-bottom:9px}
.pain-card .pain-emphasis{font-size:1.35em;line-height:1}
.pain-card p{font-size:13px;line-height:1.85;margin:0;color:#6d7b70}
.solution-bridge{align-items:center;justify-content:center;gap:15px;font-size:18px;font-weight:900;margin:83px auto 0;padding:16px 0 0;display:block;text-align:center;color:var(--forest-deep)}
.solution-bridge h2{max-width:1120px;margin:0 auto;font-size:51px;line-height:1.48;letter-spacing:-.055em;font-weight:900;text-wrap:balance}
.solution-bridge em{color:var(--forest-deep);font-style:normal}

/* Three learning mechanisms. */
.feature-section.section-pad{padding-top:28px;background:transparent}
.feature-section.section-pad:not(.value-section){padding-bottom:16px}
.paw-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.paw-feature-card{min-height:245px;padding:30px 27px 24px;border-radius:22px;border:1px solid #b4cba8;overflow:hidden;position:relative;display:flex;flex-direction:column;background:rgba(252,254,251,.82);box-shadow:0 8px 24px rgba(29,63,34,.07);backdrop-filter:blur(2px)}
.paw-feature-card::after{content:"";width:180px;height:180px;border-radius:50%;position:absolute;right:-86px;bottom:-92px;background:rgba(180,205,162,.20)}
.paw-feature-card:nth-child(2)::after{background:rgba(229,183,140,.17)}
.paw-feature-card:nth-child(3)::after{background:rgba(54,118,163,.12)}
.paw-feature-card>*{position:relative;z-index:1}
.paw-feature-card h3{margin-bottom:10px;font-size:22px;letter-spacing:-.035em;color:var(--forest-deep);font-weight:900;line-height:1.52}
.paw-feature-card p{margin:0;font-size:13px;line-height:1.83;color:#69796e;max-width:400px}
.paw-feature-badge{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.paw-letter{display:grid;place-items:center;border-radius:13px;width:55px;height:55px;background:#e5f3e7;color:#377b51;font-size:31px;font-weight:900}
.paw-feature-en{font-size:12px;letter-spacing:.025em;color:#5b926d;font-weight:900}
.paw-feature-card:nth-child(2) .paw-letter{background:#fbe7e7;color:#c44545}
.paw-feature-card:nth-child(2) .paw-feature-en{color:#c44545}
.paw-feature-card:nth-child(3) .paw-letter{background:#e3effa;color:#3676a3}
.paw-feature-card:nth-child(3) .paw-feature-en{color:#3676a3}

/* Two product previews with independent thumbnail crops and full-size dialogs. */
.value-section.section-pad{padding-top:64px;padding-bottom:76px}
.value-section-heading{margin-bottom:30px}
.value-section-heading h2{margin-bottom:0}
.value-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.value-story{min-width:0;--benefit-accent:#397650;--benefit-tint:#e5f0de}
.value-story-workbook{--benefit-accent:#3676a3;--benefit-tint:#e3effa}
.value-story>h3{margin:0 0 18px;text-align:center;font-size:28px;line-height:1.5;color:var(--forest-deep)}
.value-card-image{display:flex;flex-direction:column;min-width:0;width:100%;padding:0;min-height:0;align-self:start;border:0;border-radius:12px;background:transparent;overflow:hidden;cursor:zoom-in;box-shadow:0 14px 35px rgba(25,74,39,.075)}
.value-card-image img{display:block;width:100%;height:auto}
.learning-thumbnail{display:block;width:100%;aspect-ratio:3 / 2;overflow:hidden}
.learning-thumbnail-top,.learning-thumbnail-bottom{display:block;position:relative;overflow:hidden}
.learning-thumbnail-top{aspect-ratio:786 / 267}
.learning-thumbnail-bottom{aspect-ratio:786 / 674}
.learning-thumbnail-top img,.learning-thumbnail-bottom img{position:absolute;left:0}
.learning-thumbnail-top img{top:0}
.learning-thumbnail-bottom img{bottom:0}
.value-benefits{list-style:none;margin:24px 0 0;padding:0 0 0 2em}
.value-benefits li{position:relative;padding:0 0 9px 39px}
.value-benefits li+li{padding-top:9px}
.value-benefits li:last-child{padding-bottom:0}
.value-benefits li::before{content:'✓';position:absolute;left:0;top:2px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--benefit-tint);color:var(--benefit-accent);font-size:16px;font-weight:700}
/* Second/third check follows its title: 9px item inset + 2px marker offset. */
.value-benefits li+li::before{top:11px}
.value-benefits strong{display:block;font-size:17px;line-height:1.65;color:var(--forest-deep)}
.value-benefits p{margin:5px 0 0;font-size:14px;line-height:1.85;color:#4e6655}
html.image-preview-open{overflow:hidden;scrollbar-gutter:stable}
.image-preview-dialog{position:fixed;inset:0;margin:auto;padding:0;border:0;border-radius:12px;width:fit-content;height:fit-content;max-width:none;max-height:calc(100dvh - 32px);background:#20382d;color:#fff;overflow:hidden}
.image-preview-dialog::backdrop{background:rgba(0,0,0,.72)}
.image-preview-scroll{width:calc(var(--preview-image-width,786px) + 16px);max-width:none;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.image-preview-scroll img{display:block;width:var(--preview-image-width,786px);height:auto;max-width:none}
.image-preview-close{position:absolute;top:10px;right:10px;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:rgba(24,47,35,.9);color:#fff;font:700 28px/1 sans-serif;cursor:pointer}
.image-preview-close:focus-visible{outline:3px solid #fff;outline-offset:3px}

.footer{border-top:1px solid rgba(70,110,76,.12);padding:28px 0 32px;background:transparent}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer .paw-brand{font-size:20px}
.footer .paw-brand-mark{width:37px;height:37px;flex-basis:37px;font-size:15px}
.footer .paw-brand-mark .paw-logo{width:36px;height:36px}
.footer p{color:#829387;font-size:12px;margin:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
