/* Read · Mark · Keep · a self-contained visual system derived from the two extensions' dusk/lagoon palettes. */
:root {
  --c1:#e6b8b5; --c2:#b8cbda; --c3:#d7cee7; --c4:#c0ccae; --c5:#a9cdc6; --c6:#ebc86c;
  --paper:#f5f3f2; --card:#fffdfb; --field:#fff; --ink:#30374b; --ink-soft:#555b70; --muted:#7d8294;
  --line:#e7e4eb; --line-soft:#f0edf1; --accent:#5d6a8f; --accent-strong:#4f5b7e; --accent-pale:#eceef6;
  --navy:#3e4865; --navy-light:#7d86ad; --glow:rgba(215,206,231,.43);
  --serif:Georgia,'Noto Serif SC','Songti SC','STSong',serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','Noto Sans SC','PingFang SC','Microsoft YaHei',sans-serif;
  --shadow:0 24px 60px rgba(43,49,74,.075);
  color-scheme:light;
}
html[data-theme="lagoon"] {
  --c1:#82afa0; --c2:#b7c9a0; --c3:#ebc86c; --c4:#aacbdc; --c5:#e3c4ae; --c6:#a3bea7;
  --paper:#f4f6f0; --card:#fffefa; --field:#fff; --ink:#314940; --ink-soft:#587165; --muted:#73877b;
  --line:#e0e8de; --line-soft:#edf1ea; --accent:#416c58; --accent-strong:#416c58; --accent-pale:#edf5ed;
  --navy:#34574b; --navy-light:#82afa0; --glow:rgba(183,201,160,.39);
  --shadow:0 24px 60px rgba(44,71,55,.065);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:95px; overflow-x:clip; }
body { margin:0; background:var(--paper); color:var(--ink); font:15px/1.65 var(--sans); -webkit-font-smoothing:antialiased; transition:background .35s,color .35s; overflow-x:hidden; }
body::before { content:""; pointer-events:none; position:absolute; inset:0 0 auto; height:920px; z-index:-1; background:radial-gradient(ellipse 34% 28% at 82% 15%,var(--glow),transparent),radial-gradient(ellipse 25% 28% at 5% 35%,color-mix(in srgb,var(--c1) 19%,transparent),transparent); }
::selection { background:color-mix(in srgb,var(--c3) 72%,transparent); color:var(--ink); }
a { color:inherit; text-decoration:none; }
button { font:inherit; cursor:pointer; }
a:focus-visible, button:focus-visible { outline:3px solid var(--c3); outline-offset:4px; }
img { max-width:100%; display:block; }
.wrap { width:min(1220px,calc(100% - 88px)); margin-inline:auto; }
.skip-link { position:fixed; z-index:1000; left:10px; top:-80px; background:var(--ink);color:#fff; padding:10px 18px; border-radius:12px; }
.skip-link:focus {top:10px;}
.top-progress { position:fixed;top:0;left:0;right:0;height:3px;transform-origin:0 50%;transform:scaleX(0);z-index:100; background:linear-gradient(90deg,var(--c1),var(--c2),var(--c3),var(--c4),var(--c5),var(--c6)); pointer-events:none; }

/* Navigation */
.site-header { position:relative; z-index:10; border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent); }
.header-inner { min-height:86px; display:flex;align-items:center;justify-content:space-between;gap:28px; }
.site-brand { display:inline-flex;align-items:center;gap:12px;flex-shrink:0; }
.brand-insignia { width:33px;height:33px;display:grid;grid-template-columns:repeat(3,6px);align-items:end;justify-content:center;gap:3px;border-radius:11px;background:linear-gradient(145deg,#536080,#818bb0);padding-bottom:9px;transform:rotate(-8deg);box-shadow:0 5px 13px rgba(57,66,93,.16); }
html[data-theme="lagoon"] .brand-insignia { background:linear-gradient(145deg,#416c58,#82afa0);box-shadow:0 5px 13px rgba(44,71,55,.16); }
.brand-insignia i { display:block;width:6px;border-radius:4px;transform:rotate(10deg);height:11px;background:#fff7ee; }
.brand-insignia i:nth-child(2){height:18px;background:#efcd76;}.brand-insignia i:nth-child(3){height:13px;background:#c4e1d9;}
.site-brand-text,.footer-brand { font:600 17px var(--serif);letter-spacing:-.045em;white-space:nowrap; }
.brand-dot,.footer-brand span { color:#e5a9a8; }
.site-nav { display:flex;align-items:center;gap:34px;margin-left:auto; }
.site-nav a { font-size:12.5px;font-weight:600;color:var(--ink-soft); transition:color .2s; }
.site-nav a:hover,.text-link:hover { color:var(--accent); }
.nav-github { letter-spacing:.01em; }
.nav-github span { padding-left:2px;font-size:14px; }
.header-actions { display:flex;align-items:center;gap:14px;flex-shrink:0; }
.theme-button { border:1px solid var(--line);background:color-mix(in srgb,var(--card) 83%,transparent);border-radius:100px;min-width:88px;height:34px;padding:5px 12px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--ink-soft);font-size:12px;font-weight:600;transition:border .2s,background .2s; }
.theme-button:hover {border-color:var(--c3);background:var(--card);}
.theme-orb {width:13px;height:13px;border-radius:100%;background:linear-gradient(135deg,#e6b8b5 20%,#d7cee7 57%,#b8cbda);box-shadow:0 0 0 3px var(--accent-pale);}
html[data-theme="lagoon"] .theme-orb {background:linear-gradient(140deg,#82afa0,#ebc86c);}
.header-divider {width:1px;height:19px;background:var(--line);}
.language-switch {display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--muted);}
.language-switch button {background:none;border:0;padding:7px 2px;font-size:11.5px;color:var(--muted);font-weight:600;}
.language-switch button[aria-pressed="true"] {color:var(--ink);}

/* Hero */
.hero { min-height:670px;display:grid;grid-template-columns:51% 49%;align-items:center;gap:0;padding-block:76px 58px; }
.hero-copy {position:relative;z-index:2;padding-right:22px;padding-bottom:20px;}
.eyebrow,.section-kicker,.product-index,.mock-small,.mock-reading-label,.mock-reading .browser-topbar { letter-spacing:.16em; }
.eyebrow { display:flex;align-items:center;gap:14px;color:var(--accent);font-size:10.5px;font-weight:800;margin-bottom:27px; }
.eyebrow-line { width:30px;height:2px;background:linear-gradient(90deg,var(--c1),var(--c3),var(--c5)); }
h1,h2,h3,h4,p {margin-top:0;}
.hero h1 {font:500 clamp(47px,5.1vw,72px)/1.28 var(--serif);letter-spacing:-.069em;max-width:670px;margin-bottom:27px;}
.hero h1 em {font-weight:400;font-style:normal;color:var(--accent);}
.hero-description {color:var(--ink-soft);font-size:16px;line-height:2.05;max-width:475px;margin-bottom:31px;}
.hero-actions,.product-actions,.closing-actions {display:flex;align-items:center;flex-wrap:wrap;gap:15px;}
.button {min-height:49px;display:inline-flex;gap:26px;align-items:center;justify-content:center;padding:12px 20px;border-radius:12px;font-size:13px;font-weight:650;transition:transform .22s,box-shadow .22s,background .22s;white-space:nowrap;}
.button:hover { transform:translateY(-2px);}
.button-primary {background:var(--accent-strong);color:#fffdfb;box-shadow:0 9px 20px color-mix(in srgb,var(--accent) 19%,transparent);}
.button-primary:hover{background:var(--navy);box-shadow:0 14px 24px color-mix(in srgb,var(--accent) 27%,transparent);}
.button-arrow {font-size:18px;line-height:1;font-weight:400;}
.button-quiet {background:transparent;color:var(--accent);gap:9px;padding-left:6px;}
.button-quiet:hover {box-shadow:none;}
.button-quiet:disabled {border:0;cursor:default;transform:none;}
.hero-footnote {display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;margin-top:39px;letter-spacing:.025em;}
.tiny-spark {color:var(--accent);font-size:13px;}

.hero-art {height:528px;position:relative;isolation:isolate;}
.hero-art-halo {position:absolute;width:450px;height:450px;border-radius:50%;left:9%;top:5%;background:radial-gradient(circle,var(--glow),transparent 69%);filter:blur(8px);}
.hero-paper {position:absolute;width:372px;border-radius:19px;background:var(--card);box-shadow:0 27px 52px rgba(42,50,77,.13);border:1px solid color-mix(in srgb,var(--line) 88%,white);}
.paper-back {height:305px;transform:rotate(-11deg);left:8%;top:38px;opacity:.9;padding:27px 30px;}
.paper-eyebrow {color:var(--muted);font-size:9.5px;letter-spacing:.2em;font-weight:800;}
.paper-rule {height:1px;background:var(--line);margin:25px 0;}
.paper-text {height:8px;border-radius:10px;background:var(--line);margin-bottom:13px;}
.paper-front {height:330px;transform:rotate(6deg);left:21%;top:94px;padding:27px 29px 19px;}
.paper-top {display:flex;align-items:center;justify-content:space-between;}
.paper-dots {color:var(--c1);font-size:9px;letter-spacing:4px;}
.paper-quote {font:italic 22px/1.58 var(--serif);letter-spacing:-.02em;color:var(--ink);margin-top:35px;}
.paper-highlight {height:8px;width:64%;border-radius:20px;background:var(--c6);margin-top:28px;transform:rotate(-2deg);opacity:.78;}
.paper-chips {display:flex;gap:7px;margin:23px 0 27px;}
.paper-chips i {display:block;width:17px;height:17px;border-radius:50%;background:var(--c1);}.paper-chips i:nth-child(2){background:var(--c2);}.paper-chips i:nth-child(3){background:var(--c3);}.paper-chips i:nth-child(4){background:var(--c4);}.paper-chips i:nth-child(5){background:var(--c5);}.paper-chips i:nth-child(6){background:var(--c6);}
.paper-bottom {display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px;font:italic 12px var(--serif);color:var(--accent);}
.mini-card {position:absolute;z-index:4;display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--card) 95%,transparent);padding:10px 13px 10px 9px;border:1px solid var(--line);border-radius:13px;box-shadow:0 12px 28px rgba(47,56,83,.12);font-weight:700;font-size:11px;}
.mini-card img {width:30px;height:30px;border-radius:8px;}.mini-check {color:#4f9675;margin-left:5px;}
.mini-card-phrase {top:56px;right:-2%;transform:rotate(8deg);}.mini-card-select{bottom:70px;left:4%;transform:rotate(-8deg);}
.art-caption {position:absolute;bottom:3px;right:0;display:flex;align-items:center;gap:11px;font-size:9px;letter-spacing:.18em;font-weight:750;color:var(--muted);}
.art-caption-line {width:32px;height:1px;background:var(--c3);}
.section-divider {display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:63px;color:var(--muted);font-size:11.5px;letter-spacing:.07em;}
.section-divider>span:nth-child(2){color:var(--accent);font-size:12px;letter-spacing:9px;}

/* Product collection */
.products {padding-top:112px;padding-bottom:34px;}
.section-heading {display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:38px;}
.section-kicker {display:block;color:var(--accent);font-size:10px;font-weight:800;margin-bottom:17px;}
.section-kicker span {color:var(--muted);}
.section-heading h2,.philosophy h2 {font:500 clamp(32px,3.5vw,49px)/1.35 var(--serif);letter-spacing:-.05em;margin:0;}
.section-heading p {max-width:370px;color:var(--ink-soft);font-size:13px;line-height:1.95;margin:0 0 4px;}
.product {display:grid;grid-template-columns:47% 53%;background:var(--card);border:1px solid var(--line);border-radius:27px;min-height:625px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:30px;}
.product-copy {padding:48px 49px 43px;display:flex;flex-direction:column;min-width:0;}
.product-topline {display:flex;align-items:center;gap:19px;margin-bottom:35px;}
.product-index {font-size:10px;color:var(--accent);white-space:nowrap;font-weight:800;}
.product-line {flex:1;height:1px;background:var(--line);}
.product-title-row{display:flex;align-items:center;gap:16px;margin-bottom:34px;}
.product-title-row img {width:58px;height:58px;border-radius:15px;box-shadow:0 8px 18px rgba(55,64,89,.13);}
.product-category {display:block;color:var(--muted);font-size:11px;margin-bottom:5px;letter-spacing:.015em;}
.product-title-row h3 {font:600 clamp(22px,2.15vw,30px)/1.2 var(--serif);letter-spacing:-.04em;margin:0;white-space:nowrap;}
.product-tagline{font:500 clamp(26px,2.65vw,37px)/1.44 var(--serif);letter-spacing:-.055em;margin:0 0 21px;white-space:pre-line;}
.product-description{font-size:13.5px;line-height:1.95;color:var(--ink-soft);max-width:390px;margin:0 0 23px;}
.feature-list {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 29px;}
.feature-list span {font-size:11px;background:var(--accent-pale);padding:6px 10px;border:1px solid color-mix(in srgb,var(--line) 65%,var(--accent-pale));border-radius:8px;color:var(--accent-strong);}
.product-actions{gap:21px;margin-top:auto;}
.product-actions .button {min-height:46px;gap:15px;font-size:12px;padding-inline:15px;}
.text-link {font-size:12.5px;color:var(--ink-soft);font-weight:700;white-space:nowrap;}
.product-foot {font-size:10.5px;color:var(--muted);padding-top:25px;letter-spacing:.03em;}
.product-stage {position:relative;overflow:hidden;isolation:isolate;min-width:0;}
.stage-phrase {background:linear-gradient(146deg,#e9e4f0 0%,#dfebec 53%,#edf0e6 100%);}
.stage-select {background:linear-gradient(130deg,#e2eee8 3%,#edf0e5 50%,#e1e5ee 100%);}
html[data-theme="lagoon"] .stage-phrase {background:linear-gradient(135deg,#dce9dc,#dae8e5 55%,#ecedd5);}
html[data-theme="lagoon"] .stage-select {background:linear-gradient(140deg,#dbe7db,#f0eddb 45%,#dae8e6);}
.stage-grain {position:absolute;inset:0;background-image:radial-gradient(rgba(76,76,106,.07) .65px,transparent .65px);background-size:17px 17px;opacity:.55;}
.float-bubble {position:absolute;color:#fff;opacity:.65;font-size:70px;font-weight:200;z-index:1;}.bubble-one{top:6px;right:46px;}.bubble-two{bottom:28px;left:20px;font-size:34px;}
.mock-browser {position:absolute;z-index:2;background:#fffdfb;border:1px solid #e2dfdf;box-shadow:0 23px 50px rgba(48,51,78,.14);border-radius:17px;overflow:hidden;}
.phrase-browser {width:71%;height:407px;top:68px;left:7%;transform:rotate(-5deg);}
.browser-topbar,.select-browser-bar {height:43px;display:flex;align-items:center;gap:14px;background:#f7f7f8;border-bottom:1px solid #edebf0;padding:0 17px;}
.window-dots {display:flex;gap:5px;flex-shrink:0;}.window-dots i{display:block;width:7px;height:7px;border-radius:50%;background:#e3a9a8;}.window-dots i:nth-child(2){background:#e6ca85;}.window-dots i:nth-child(3){background:#9bbcac;}
.url-bar {height:23px;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.02em;flex:1;border-radius:8px;background:white;border:1px solid #ebebed;color:#a0a4b3;white-space:nowrap;overflow:hidden;}
.browser-menu {font-size:17px;color:#a6a8b3;}
.mock-reading {padding:30px 28px;color:#50566b;}
.mock-reading-label {font-size:8.5px;font-weight:800;color:#8890a7;}
.mock-reading-label span {color:#dba9a8;}
.mock-reading-h {font:600 27px/1.27 var(--serif);letter-spacing:-.05em;color:#3b4054;margin:22px 0 27px;}
.mock-reading-h span {display:block;}
.mock-reading p {font:15px/1.9 Georgia,serif;max-width:280px;}
.mock-reading mark {background:#f2e5ab;box-decoration-break:clone;padding:1px 3px;border-radius:2px;color:#40465b;}
.mock-reading-rule {height:7px;width:92%;background:#edeef0;margin-top:20px;border-radius:20px;}.mock-reading-rule.short{width:70%;margin-top:12px;}
.phrase-result {position:absolute;z-index:3;right:5%;top:190px;width:320px;background:#fffefa;border-radius:18px;box-shadow:0 22px 60px rgba(45,49,78,.2);overflow:hidden;transform:rotate(4deg);border:1px solid #e9e7ed;}
.phrase-result-head {display:flex;align-items:center;gap:11px;padding:20px 19px 17px;border-bottom:1px solid #ecebf0;}
.phrase-result-head img {width:34px;height:34px;border-radius:10px;}.phrase-result-head strong{display:block;color:#394158;font:500 20px var(--serif);margin-top:1px;}
.mock-small {color:#8690a6;font-size:8px;font-weight:800;}.result-star {margin-left:auto;color:#d8b768;font-size:23px;}
.result-item {padding:14px 20px 10px;border-bottom:1px solid #f3f0f1;}.result-item small{color:#8790a4;font-size:9px;letter-spacing:.1em;font-weight:800;}.result-item p {font-size:12px;line-height:1.75;color:#4f5367;margin:5px 0 0;}.result-example {font:italic 13px/1.7 Georgia,serif!important;}
.result-save {display:flex;align-items:center;gap:8px;padding:12px 19px;background:#f0f4ef;color:#467863;font-size:11px;font-weight:750;}.save-dot {display:grid;place-items:center;background:#9fceb1;color:#fff;border-radius:50%;height:18px;width:18px;}.save-arrow {margin-left:auto;font-size:17px;}
.stage-label {position:absolute;z-index:5;bottom:27px;font-size:9.5px;font-weight:800;letter-spacing:.17em;color:#7c8499;}.phrase-stage-label{left:37px;}
/* Second product reverses its stage, like turning to a facing page. */
.product-select .product-stage {order:-1;}.product-select .product-copy {padding-left:50px;}
.select-orbit {position:absolute;border:1px solid rgba(255,255,255,.65);border-radius:50%;width:530px;height:530px;top:-75px;left:-100px;}
.select-browser {position:absolute;width:74%;height:410px;background:#fffdfb;left:5%;top:62px;transform:rotate(-4deg);border:1px solid #e4e5e8;border-radius:15px;box-shadow:0 24px 55px rgba(47,68,65,.13);overflow:hidden;}
.select-browser-bar {gap:10px;font-size:10px;color:#9ea4ae;}.select-browser-bar span:nth-child(2){text-align:center;flex:1;}
.select-body {padding:30px 24px;}.select-article-label{font-size:9px;letter-spacing:.13em;color:#9ca1ae;font-weight:800;margin-bottom:21px;}.article-faux-title{width:78%;height:14px;border-radius:10px;background:#586178;margin:0 0 11px;opacity:.7;}.article-faux-title.smaller{width:54%;}
.article-lines{margin:28px 0 12px;display:flex;flex-direction:column;gap:10px;}.article-lines b{display:block;height:6px;background:#e8e7e9;border-radius:15px;}.article-lines b:nth-child(2){width:92%}.article-lines b:nth-child(3){width:83%}.article-lines b:nth-child(4){width:62%;}
.highlight-row{position:relative;font:14px/1.9 Georgia,serif;color:#515568;background:#faedb8;box-decoration-break:clone;border-radius:3px;padding:4px 6px;}.article-lines.lower {margin-top:20px;}
.note-window{position:absolute;z-index:3;width:70%;right:2%;top:224px;background:#fffefa;transform:rotate(4deg);border-radius:14px;box-shadow:0 23px 45px rgba(43,58,68,.2);border:1px solid #dfe4e2;overflow:hidden;}
.note-head{display:flex;gap:9px;align-items:center;height:42px;background:#f5f5f7;border-bottom:1px solid #e9e9ed;padding:0 13px;font-size:9px;color:#868da0;font-weight:800;letter-spacing:.06em;}.note-icon{font-size:17px;color:#8188a6;}.note-check{margin-left:auto;color:#4d8e74;font-size:8px;white-space:nowrap;}
.note-content {padding:22px 23px 20px;}.note-h{font:600 16px var(--serif);color:#3d4457;margin-bottom:16px;}.note-quote{padding:4px 0 4px 11px;border-left:3px solid #eac978;font:12px/1.7 Georgia,serif;color:#5d6275;}.note-swatch{color:#deb658;margin-right:6px;}.note-comment{border-top:1px solid #f0edf0;margin-top:14px;padding-top:12px;color:#70798c;font-size:10px;line-height:1.55;}.note-comment strong{display:block;color:#676c83;font-size:10px;margin-bottom:3px;}.note-source{margin-top:11px;color:#6b8d83;font-size:10px;}
.select-stage-label{left:34px;bottom:24px;}

/* Philosophy and closing */
.philosophy {display:grid;grid-template-columns:48% 52%;gap:0;border-top:1px solid var(--line);padding-block:105px 121px;}
.philosophy-left{padding-right:60px;}.philosophy .section-kicker {margin-bottom:22px;}.philosophy h2{font-size:clamp(34px,3.7vw,52px);line-height:1.4;white-space:pre-line;}
.philosophy h2 span {display:block;}
html[lang="zh-CN"] .philosophy h2 span {white-space:nowrap;}
.philosophy-right {padding-left:60px;border-left:1px solid var(--line);}
.philosophy-right>p {color:var(--ink-soft);max-width:490px;line-height:2.05;font-size:15px;margin:0 0 36px;}
.philosophy-points {display:flex;flex-direction:column;gap:13px;}
.philosophy-points div {display:flex;gap:24px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:11px;}
.philosophy-points .point-number {font:12px var(--serif);color:var(--accent);}.philosophy-points p {margin:0;font-size:13px;color:var(--ink-soft);}.philosophy-points strong {font-weight:700;color:var(--accent);}
.closing {margin-bottom:98px;}.closing-inner {position:relative;overflow:hidden;background:linear-gradient(115deg,#4f5b7e,#464c6b 54%,#5b5375);border-radius:27px;color:#fffdfb;min-height:385px;text-align:center;padding:70px 32px 67px;isolation:isolate;}
html[data-theme="lagoon"] .closing-inner {background:linear-gradient(115deg,#4e7867,#3d6856 55%,#537c72);}
.closing-inner::before {content:"";position:absolute;inset:-100px auto auto -140px;width:400px;height:420px;background:radial-gradient(circle,rgba(215,206,231,.23),transparent 70%);z-index:-1;}
.closing-inner::after {content:"";position:absolute;inset:auto -80px -260px auto;width:470px;height:470px;border:1px solid rgba(255,255,255,.15);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.03),0 0 0 135px rgba(255,255,255,.025);z-index:-1;}
.closing-sparkle {position:absolute;right:63px;top:32px;color:var(--c6);font-size:40px;font-weight:200;}
.closing-kicker {display:block;font-size:10px;font-weight:700;letter-spacing:.22em;color:#e3dfe9;margin-bottom:20px;}
.closing h2{font:400 clamp(30px,3.1vw,42px)/1.43 var(--serif);letter-spacing:-.055em;white-space:pre-line;margin:0 0 13px;}
.closing p{color:#e7e4ee;font-size:12.5px;margin-bottom:28px;}.closing-actions{justify-content:center;gap:12px;}
.closing-actions a {display:flex;align-items:center;gap:10px;padding:9px 16px 9px 9px;min-height:52px;border-radius:12px;background:#fffdfb;color:#3a4560;font-size:12.5px;font-weight:750;box-shadow:0 10px 25px rgba(36,42,61,.12);transition:transform .2s,background .2s;}
.closing-actions a:hover {transform:translateY(-3px);background:#f5f3f2;}.closing-actions img {width:32px;height:32px;border-radius:9px;}.closing-actions a span{margin-left:9px;font-size:17px;font-weight:400;}
.site-footer {display:grid;grid-template-columns:1fr 1fr;row-gap:60px;column-gap:20px;padding-bottom:27px;}.footer-brand{font-size:22px;letter-spacing:-.06em;}.site-footer p{color:var(--muted);font-size:12px;margin:13px 0 0;}
.footer-links {display:grid;grid-template-columns:1fr 1fr;gap:20px;}.footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px;}.footer-links small{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:4px;}.footer-links a{font-size:12px;color:var(--ink-soft);}.footer-links a:hover{color:var(--accent);}
.footer-bottom {grid-column:1/-1;display:flex;justify-content:space-between;gap:14px;align-items:center;border-top:1px solid var(--line);padding-top:21px;font-size:10px;color:var(--muted);letter-spacing:.04em;}
@media (max-width:1120px) {
  .wrap{width:min(100% - 64px,1220px);}
  .site-nav{gap:21px;}.hero{grid-template-columns:52% 48%;}.hero-art{transform:scale(.86);transform-origin:center left;}
  .product-copy{padding:39px 35px 35px;}.product-select .product-copy{padding-left:35px;}
  .product-title-row h3{font-size:25px;}.product-tagline{font-size:30px;}.product-actions{gap:13px;}
  .phrase-browser{left:5%;width:78%;}.phrase-result{right:3%;width:285px;}
}
@media (max-width:900px) {
  .site-nav {gap:16px;}.site-nav a{font-size:12px;}.hero{min-height:auto;padding-top:88px;padding-bottom:65px;grid-template-columns:1fr;}
  .hero-copy{padding:0;max-width:700px;}.hero h1{font-size:clamp(52px,8vw,74px);}.hero-description{max-width:550px;}
  .hero-art{width:650px;max-width:100%;height:445px;margin:35px auto 0;transform:scale(.91);transform-origin:center center;}
  .mini-card-phrase {right:3%;}.art-caption{right:5%;}
  .products{padding-top:85px;}.product{grid-template-columns:1fr;}.product-copy,.product-select .product-copy{padding:42px 45px 38px;}
  .product-stage,.product-select .product-stage{order:1;min-height:530px;}.product-copy,.product-select .product-copy{order:0;}.product-topline{margin-bottom:24px;}.product-title-row{margin-bottom:25px;}.product-tagline{font-size:34px;}.feature-list{margin-bottom:20px;}.product-foot{padding-top:21px;}
  .phrase-browser{width:64%;left:12%;}.phrase-result{right:12%;width:310px;}.select-browser{width:68%;left:10%;}.note-window{width:58%;right:11%;}
  .philosophy {padding-block:70px 90px;}.philosophy-right{padding-left:34px;}.philosophy-left{padding-right:34px;}
}
@media (max-width:680px) {
  .wrap{width:calc(100% - 36px);}.header-inner{min-height:72px;gap:0 11px;flex-wrap:wrap;padding-top:12px;}.site-brand-text{font-size:15px;}.brand-insignia{width:29px;height:29px;}
  .site-nav{display:flex;order:3;width:100%;margin:6px 0 0;gap:24px;}.site-nav a{display:inline-flex;align-items:center;min-height:40px;}.header-actions{gap:8px;margin-left:auto;}.theme-button{min-width:71px;min-height:40px;padding-inline:8px;}.header-divider{display:none;}.language-switch{gap:5px;}.language-switch button{min-height:40px;min-width:30px;}
  .hero{padding-top:66px;padding-bottom:46px;grid-template-columns:minmax(0,1fr);overflow:clip;}.hero h1{font-size:clamp(38px,9.3vw,60px);line-height:1.35;letter-spacing:-.07em;margin-bottom:24px;}
  .eyebrow{font-size:9px;letter-spacing:.14em;margin-bottom:22px;}.hero-description{font-size:14px;line-height:2;}.hero-actions{gap:5px;}.hero-actions .button{font-size:12px;}.button{min-height:46px;padding:11px 16px;}.hero-footnote{margin-top:25px;}
  .hero-art{height:335px;width:100%;max-width:450px;margin:25px auto 0;transform:scale(.74);transform-origin:center top;left:-3%;}
  .hero-paper{width:360px;}.paper-back{left:0;top:8px;}.paper-front{left:14%;top:51px;}.mini-card-phrase{top:22px;right:-4%;}.mini-card-select{bottom:5px;left:-5%;}.art-caption{display:none;}
  .section-divider{height:58px;font-size:10px;}.section-divider>span:nth-child(2){font-size:10px;letter-spacing:4px;white-space:nowrap;}
  .products{padding-top:64px;}.section-heading{display:block;margin-bottom:25px;}.section-heading h2{font-size:34px;}.section-heading p{margin-top:16px;font-size:12px;}
  .product{border-radius:21px;margin-bottom:22px;}.product-copy,.product-select .product-copy{padding:28px 23px 30px;}.product-topline{margin-bottom:25px;}.product-title-row{gap:12px;margin-bottom:25px;}.product-title-row img{width:48px;height:48px;border-radius:13px;}
  .product-title-row>div{min-width:0;}.product-title-row h3{font-size:clamp(22px,6vw,28px);white-space:normal;overflow-wrap:anywhere;}.product-category{font-size:10px;}.product-tagline{font-size:29px;margin-bottom:15px;}
  .product-description{font-size:12.7px;line-height:1.9;}.feature-list{gap:7px;}.feature-list span{font-size:10px;padding:5px 8px;}.product-actions{gap:18px;}.product-actions .button{font-size:11.5px;min-height:45px;}.product-foot{font-size:10px;}
  .product-stage,.product-select .product-stage{height:360px;min-height:0;}.phrase-browser{height:305px;top:30px;left:2%;width:73%;}.browser-topbar,.select-browser-bar{height:34px;padding-inline:11px;}.mock-reading{padding:17px 15px;}.mock-reading-h{font-size:19px;margin:16px 0;}.mock-reading p{font-size:11.5px;}.mock-reading-rule{margin-top:12px;}
  .phrase-result{width:55%;right:2%;top:93px;border-radius:13px;}.phrase-result-head{padding:11px 10px 9px;gap:7px;}.phrase-result-head img{width:26px;height:26px;border-radius:7px;}.phrase-result-head strong{font-size:15px;}.mock-small{font-size:6px;}.result-star{font-size:16px;}.result-item{padding:10px;}.result-item p{font-size:10px;}.result-item small{font-size:7px;}.result-example{font-size:10px!important;}.result-save{padding:9px;font-size:9px;}.save-dot{width:15px;height:15px;}.stage-label{font-size:7px;letter-spacing:.11em;bottom:14px;left:15px;}
  .select-browser{height:310px;top:29px;left:2%;width:75%;}.select-body{padding:19px 14px;}.select-article-label{font-size:7px;}.article-lines{margin-top:18px;gap:7px;}.highlight-row{font-size:10px;}.note-window{width:65%;right:2%;top:139px;}.note-head{height:35px;padding:0 8px;font-size:7px;gap:5px;}.note-icon{font-size:13px;}.note-check{font-size:6px;}.note-content{padding:13px;}.note-h{font-size:12px;margin-bottom:9px;}.note-quote{font-size:9px;}.note-comment{font-size:8px;padding-top:6px;margin-top:7px;}.note-comment strong{font-size:8px;}.note-source{font-size:8px;margin-top:8px;}
  .philosophy{display:block;padding-block:52px 66px;}.philosophy-left{padding:0 0 25px;}.philosophy h2{font-size:37px;}.philosophy-right{border-left:0;border-top:1px solid var(--line);padding:24px 0 0;}.philosophy-right>p{font-size:13px;margin-bottom:26px;}.philosophy-points p{font-size:12px;}
  .closing{margin-bottom:63px;}.closing-inner{border-radius:21px;padding:62px 20px 56px;min-height:0;}.closing h2{font-size:30px;}.closing-sparkle{right:19px;top:18px;font-size:29px;}.closing-actions{flex-direction:column;}.closing-actions a{width:min(100%,290px);justify-content:flex-start;}.closing-actions a span{margin-left:auto;}
  .site-footer{grid-template-columns:1fr;row-gap:32px;}.footer-links{gap:12px;}.footer-bottom{display:block;}.footer-bottom span{display:block;margin-top:5px;}
}
@media (max-width:380px) {
  .wrap{width:calc(100% - 28px);}.site-brand-text{font-size:13.4px;}.site-brand{gap:7px;}.header-actions{gap:4px;}.theme-button{font-size:10px;gap:5px;min-width:60px;}.language-switch{font-size:10px;}.hero h1{font-size:36px;}.hero-art{left:-10%;transform:scale(.69);}
  .product-title-row h3{font-size:21px;}.product-actions .button{font-size:10.7px;}
}
@media (prefers-reduced-motion:reduce) {*,*::before,*::after{transition:none!important;animation:none!important;}html{scroll-behavior:auto;}}
