:root{--ink:#24131c;--muted:#715e67;--paper:#fffaf5;--cream:#f6ede6;--white:#fff;--coral:#ff5c6c;--coral-dark:#d93856;--yellow:#ffce59;--peach:#ffb47b;--lilac:#c8b9ff;--line:#d9c8cf;--max:1240px;--display:'Manrope',sans-serif;--body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;object-fit:cover}a{color:inherit}button,input,textarea,select{font:inherit}.shell{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.narrow{max-width:850px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:999;top:10px;left:10px;padding:10px 14px;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}.eyebrow{display:inline-flex;gap:8px;align-items:center;color:var(--coral-dark);font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.eyebrow:before{content:'';width:24px;height:2px;background:currentColor}.eyebrow.light{color:var(--peach)}em{color:var(--coral-dark);font-family:Georgia,serif;font-weight:400}.section-pad{padding:clamp(76px,9vw,128px) 0}

/* Header */
.site-header{position:relative;z-index:100;color:var(--ink);background:var(--paper);border-bottom:2px solid var(--ink)}.header-row{display:grid;grid-template-columns:180px 1fr auto;align-items:center;min-height:78px}.brand{font-family:var(--display);font-size:1.55rem;font-weight:800;letter-spacing:-.08em;text-decoration:none}.brand span{color:var(--coral)}.desktop-nav{display:flex;justify-content:center;align-items:stretch;gap:32px;height:78px}.desktop-nav>a,.nav-group>button{display:flex;align-items:center;color:var(--ink);background:none;border:0;font-size:.76rem;font-weight:800;letter-spacing:.06em;text-decoration:none;text-transform:uppercase;cursor:pointer}.desktop-nav>a:hover,.nav-group>button:hover{color:var(--coral-dark)}.nav-group{position:relative;display:flex}.nav-group>button span{margin-left:8px}.nav-menu{position:absolute;top:77px;left:50%;display:none;width:310px;padding:12px;background:var(--paper);border:2px solid var(--ink);box-shadow:7px 7px 0 var(--peach);transform:translateX(-50%)}.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{display:block}.nav-menu a{display:flex;gap:18px;padding:13px 12px;border-bottom:1px solid var(--line);font-weight:700;text-decoration:none}.nav-menu a:last-child{border:0}.nav-menu a:hover{background:#fff}.nav-menu b{color:var(--coral-dark);font-size:.7rem}.header-cta{display:flex;align-items:center;gap:28px;padding:11px 15px;color:#fff;background:var(--ink);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--coral);font-size:.72rem;font-weight:800;text-decoration:none;text-transform:uppercase}.header-cta:hover{color:var(--ink);background:var(--yellow)}.menu-toggle,.mobile-menu{display:none}

/* Hero */
.hero{position:relative;background:var(--cream);border-bottom:2px solid var(--ink);overflow:hidden}.hero:before{content:'';position:absolute;inset:0;opacity:.35;background-image:radial-gradient(#d7a7b5 .8px,transparent .8px);background-size:20px 20px;pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(45px,7vw,95px);align-items:center;min-height:720px;padding-block:70px 95px}.hero-copy h1{max-width:750px;margin:20px 0 26px;font:800 clamp(3.65rem,6vw,6.55rem)/.92 var(--display);letter-spacing:-.075em}.hero-copy>p{max-width:650px;margin:0;color:var(--muted);font-size:clamp(1.05rem,1.4vw,1.25rem);line-height:1.65}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:36px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:54px;padding:13px 18px;border:2px solid var(--ink);font-size:.72rem;font-weight:800;letter-spacing:.055em;text-decoration:none;text-transform:uppercase;cursor:pointer}.button.primary{color:#fff;background:var(--coral-dark);box-shadow:5px 5px 0 var(--yellow)}.button.primary:hover{color:var(--ink);background:var(--yellow);transform:translate(-2px,-2px)}.button.dark{color:#fff;background:var(--ink);box-shadow:5px 5px 0 var(--coral)}.button.pale{background:var(--paper);box-shadow:5px 5px 0 var(--peach)}.text-link,.section-arrow-link{font-size:.75rem;font-weight:800;letter-spacing:.055em;text-decoration:none;text-transform:uppercase;border-bottom:2px solid var(--coral)}.trust-row{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:38px;color:#7f6873;font-size:.68rem;font-weight:700;text-transform:uppercase}.trust-row span:before{content:'✓';margin-right:7px;color:var(--coral-dark)}.hero-visual{position:relative;margin:0;transform:rotate(1.2deg)}.image-frame{padding:13px;background:#fff;border:2px solid var(--ink);box-shadow:14px 14px 0 var(--coral)}.image-frame img{width:100%;aspect-ratio:1/1}.hero-visual figcaption{display:flex;justify-content:space-between;margin:25px 0 0 8px;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-visual figcaption span{color:var(--muted)}.visual-sticker{position:absolute;right:-30px;bottom:44px;display:grid;place-items:center;width:122px;height:122px;padding:20px;color:var(--ink);background:var(--yellow);border:2px solid var(--ink);border-radius:50%;font:800 .78rem/1.2 var(--display);text-align:center;text-transform:uppercase;transform:rotate(-9deg)}.visual-sticker span{display:block}.hero-orbit{position:absolute;border:40px solid rgba(255,92,108,.12);border-radius:50%}.orbit-one{width:340px;height:340px;right:-170px;top:-180px}.orbit-two{width:220px;height:220px;left:42%;bottom:-180px;border-color:rgba(200,185,255,.2)}.ticker{position:relative;white-space:nowrap;overflow:hidden;color:#fff;background:var(--ink);border-top:2px solid var(--ink);font:700 .75rem var(--display);letter-spacing:.1em;text-transform:uppercase}.ticker div{display:inline-block;padding:18px 0;animation:ticker 24s linear infinite}.ticker i{margin:0 30px;color:var(--yellow)}@keyframes ticker{to{transform:translateX(-50%)}}

/* Home sections */
.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end;margin-bottom:48px;padding-bottom:28px;border-bottom:2px solid var(--ink)}.section-heading h2{margin:16px 0 0;font:800 clamp(2.5rem,4.8vw,5.1rem)/.96 var(--display);letter-spacing:-.065em}.section-heading>p{margin:0;color:var(--muted);font-size:1rem}.section-heading.compact h2{font-size:clamp(2.4rem,4vw,4.4rem)}.section-heading.compact>a{justify-self:end}.home-tools{background:var(--paper)}.featured-tool-grid{display:grid;grid-template-columns:.93fr 1.07fr;gap:28px}.featured-tool{position:relative;display:flex;flex-direction:column;min-height:590px;padding:34px;color:var(--ink);background:var(--yellow);border:2px solid var(--ink);box-shadow:9px 9px 0 var(--ink);text-decoration:none}.tool-top{display:flex;justify-content:space-between;font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.featured-tool h3{margin:28px 0 12px;font:800 clamp(2rem,3vw,3.2rem)/1 var(--display);letter-spacing:-.055em}.featured-tool p{max-width:500px;margin:0 0 24px;color:#5e4c37}.featured-tool>strong{margin-top:auto;padding-top:18px;border-top:2px solid var(--ink);font-size:.75rem;text-transform:uppercase}.featured-tool>strong span{float:right}.compass-art{position:relative;width:250px;height:250px;margin:20px auto 0;border:2px solid var(--ink);border-radius:50%;background:rgba(255,255,255,.36)}.compass-art:before,.compass-art:after{content:'';position:absolute;inset:50% 12px auto;height:2px;background:var(--ink)}.compass-art:after{transform:rotate(90deg)}.compass-art i{position:absolute;z-index:2;left:50%;top:50%;width:18px;height:100px;background:linear-gradient(to bottom,var(--coral) 0 50%,var(--ink) 50%);clip-path:polygon(50% 0,100% 50%,60% 50%,60% 100%,40% 100%,40% 50%,0 50%);transform:translate(-50%,-50%) rotate(27deg)}.compass-art span{position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:60px;height:60px;background:#fff;border:2px solid var(--ink);border-radius:50%;font-size:.65rem;font-weight:800;transform:translate(-50%,-50%)}.compass-art b{position:absolute;font-size:.65rem}.compass-art b:nth-of-type(1){left:50%;top:9px}.compass-art b:nth-of-type(2){left:50%;bottom:9px}.compass-art b:nth-of-type(3){right:11px;top:48%}.compass-art b:nth-of-type(4){left:11px;top:48%}.tool-stack{display:grid;gap:20px}.mini-tool{display:grid;grid-template-columns:60px 1fr 28px;gap:22px;align-items:start;min-height:175px;padding:28px;color:var(--ink);background:#fff;border:2px solid var(--ink);text-decoration:none;transition:.18s}.mini-tool:hover{transform:translate(-4px,-4px);box-shadow:8px 8px 0 var(--ink)}.mini-tool.yellow{box-shadow:7px 7px 0 var(--yellow)}.mini-tool.coral{box-shadow:7px 7px 0 var(--coral)}.mini-tool.lilac{box-shadow:7px 7px 0 var(--lilac)}.tool-no{display:grid;place-items:center;width:52px;height:52px;color:#fff;background:var(--ink);font-weight:800}.mini-tool small,.directory-tool span{font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.mini-tool h3{margin:8px 0 6px;font:800 1.55rem/1.05 var(--display);letter-spacing:-.045em}.mini-tool p{margin:0;color:var(--muted);font-size:.88rem}.mini-tool>b{font-size:1.3rem}.section-arrow-link{display:inline-flex;gap:35px;margin-top:38px}.manifesto{padding:90px 0;color:#fff;background:var(--ink)}.manifesto-grid{display:grid;grid-template-columns:120px 1.1fr .9fr;gap:50px;align-items:center}.manifesto-mark{color:var(--coral);font:180px/.4 Georgia}.manifesto-grid>p{margin:0;font:400 clamp(2.4rem,4vw,4.4rem)/1.05 Georgia}.manifesto-grid>p strong{color:var(--yellow);font-weight:400}.manifesto-grid>div:last-child p{color:#cfbec6}.manifesto-grid a{color:var(--peach);font-size:.74rem;font-weight:800;text-decoration:none;text-transform:uppercase}.pathways{background:var(--cream)}.pathway-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.pathway-card{display:grid;grid-template-columns:42% 58%;min-height:350px;background:#fff;border:2px solid var(--ink);text-decoration:none;transition:.2s}.pathway-card:hover{transform:translate(-4px,-4px);box-shadow:9px 9px 0 var(--ink)}.pathway-image{overflow:hidden;border-right:2px solid var(--ink)}.pathway-image img{width:100%;height:100%;transition:.35s}.pathway-card:hover img{transform:scale(1.035)}.pathway-copy{display:flex;flex-direction:column;padding:28px}.pathway-copy>span{font-size:.65rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pathway-copy h3{margin:30px 0 12px;font:800 2.1rem/1 var(--display);letter-spacing:-.05em}.pathway-copy p{margin:0;color:var(--muted);font-size:.9rem}.pathway-copy b{margin-top:auto;padding-top:18px;border-top:1px solid var(--ink);font-size:.7rem;text-transform:uppercase}.pathway-copy i{float:right;font-style:normal}.pathway-card.yellow{box-shadow:7px 7px 0 var(--yellow)}.pathway-card.coral{box-shadow:7px 7px 0 var(--coral)}.pathway-card.lilac{box-shadow:7px 7px 0 var(--lilac)}.pathway-card.peach{box-shadow:7px 7px 0 var(--peach)}.latest{background:var(--paper)}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 28px}.article-card{min-width:0}.card-image{position:relative;display:block;overflow:hidden;border:2px solid var(--ink)}.card-image img{width:100%;aspect-ratio:10/7;transition:.35s}.card-image:hover img{transform:scale(1.04)}.card-image>span{position:absolute;left:0;bottom:0;padding:8px 13px;color:#fff;background:var(--ink);font-size:.7rem;font-weight:800}.card-meta{display:flex;justify-content:space-between;margin-top:18px;color:var(--coral-dark);font-size:.65rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.article-card h2,.article-card h3{margin:12px 0 10px;font:800 1.6rem/1.1 var(--display);letter-spacing:-.045em}.article-card h2 a,.article-card h3 a{text-decoration:none}.article-card p{margin:0;color:var(--muted);font-size:.9rem}.read-link{display:inline-block;margin-top:18px;font-size:.7rem;font-weight:800;text-decoration:none;text-transform:uppercase;border-bottom:1px solid var(--coral)}.home-close{padding:110px 0;text-align:center;background:var(--yellow);border-top:2px solid var(--ink)}.home-close h2{margin:16px 0;font:800 clamp(3.2rem,6vw,6.5rem)/.92 var(--display);letter-spacing:-.075em}.home-close>div>span{font-size:.74rem;font-weight:800;text-transform:uppercase}.home-close p{margin:0 auto 28px}.home-close .button{margin:auto}

/* Interior heroes and directories */
.page-hero{padding:clamp(75px,10vw,140px) 0 85px;background:var(--cream);border-bottom:2px solid var(--ink)}.page-hero h1,.hub-hero h1,.tool-page-hero h1{margin:18px 0 24px;font:800 clamp(3.6rem,6.4vw,7rem)/.92 var(--display);letter-spacing:-.075em}.page-hero p,.hub-hero p,.tool-page-hero p{max-width:720px;color:var(--muted);font-size:1.15rem}.page-hero.simple{padding-bottom:60px}.search-form{max-width:660px;margin-top:38px}.search-form label{display:grid;grid-template-columns:1fr auto}.search-form input{min-height:60px;padding:0 18px;background:#fff;border:2px solid var(--ink);border-right:0}.search-form button{padding:0 22px;color:#fff;background:var(--ink);border:2px solid var(--ink);font-size:.72rem;font-weight:800;text-transform:uppercase}.topic-filter{display:flex;flex-wrap:wrap;margin-bottom:45px}.topic-filter a{margin:0 -2px -2px 0;padding:11px 17px;background:#fff;border:2px solid var(--ink);font-size:.69rem;font-weight:800;text-decoration:none;text-transform:uppercase}.topic-filter a:hover,.topic-filter a.active{color:#fff;background:var(--coral-dark)}.all-articles{grid-template-columns:repeat(3,1fr)}.empty-state{padding:70px;background:var(--cream);border:2px solid var(--ink)}.hub-hero{padding:36px 0 70px;background:var(--cream);border-bottom:2px solid var(--ink)}.hub-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.breadcrumb{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:70px;color:#7e6973;font-size:.65rem;font-weight:800;text-transform:uppercase}.breadcrumb a{text-decoration:none}.hub-hero figure{margin:45px 0 0;padding:12px;background:#fff;border:2px solid var(--ink);box-shadow:11px 11px 0 var(--coral);transform:rotate(1deg)}.hub-hero.yellow figure{box-shadow-color:var(--yellow)}.hub-hero.lilac figure{box-shadow-color:var(--lilac)}.hub-hero.peach figure{box-shadow-color:var(--peach)}.hub-hero figure img{width:100%;aspect-ratio:4/3}.hub-hero figcaption{padding:12px 3px 0;font-size:.68rem;font-weight:800;text-transform:uppercase}.question-strip{color:#fff;background:var(--ink)}.question-strip>.shell{display:grid;grid-template-columns:repeat(3,1fr)}.question-strip div>div{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:25px;border-left:1px solid #5e4b54}.question-strip div>div:last-child{border-right:1px solid #5e4b54}.question-strip span{color:var(--peach);font-size:.67rem;font-weight:800}.question-strip p{margin:0;font:600 1.05rem/1.35 var(--display)}.hub-tool-callout{padding:100px 0;color:#fff;background:var(--coral-dark);text-align:center}.hub-tool-callout h2{margin:15px 0 10px;font:800 clamp(3rem,5vw,5rem) var(--display);letter-spacing:-.06em}.hub-tool-callout p{margin:0 auto 25px;max-width:620px}.hub-tool-callout .button{margin:auto}

/* Articles */
.article-hero{padding:35px 0 70px;background:var(--cream);border-bottom:2px solid var(--ink)}.article-hero .breadcrumb{margin-bottom:55px}.article-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.article-hero h1{margin:18px 0 24px;font:800 clamp(3.2rem,5.6vw,6rem)/.94 var(--display);letter-spacing:-.07em}.article-hero .dek{max-width:720px;color:var(--muted);font-size:1.15rem}.article-hero figure{margin:0;padding:10px;background:#fff;border:2px solid var(--ink);box-shadow:10px 10px 0 var(--peach)}.article-hero figure img{width:100%;aspect-ratio:10/7}.article-hero figcaption{padding:10px 3px 0;font-size:.65rem;font-weight:800;text-transform:uppercase}.byline{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:35px;color:#735e68;font-size:.67rem;font-weight:800;text-transform:uppercase}.byline span:not(:last-child):after{content:'·';margin-left:22px}.article-layout{display:grid;grid-template-columns:250px minmax(0,740px);justify-content:space-between;gap:80px;padding-block:80px 120px}.article-aside>div:first-child{position:sticky;top:25px;display:flex;flex-direction:column;padding:20px;background:#fff;border:1px solid var(--line)}.article-aside span{margin-bottom:13px;color:var(--coral-dark);font-size:.65rem;font-weight:800;text-transform:uppercase}.article-aside a{padding:10px 0;border-bottom:1px solid var(--line);font-size:.78rem;font-weight:600;text-decoration:none}.article-aside a:hover{color:var(--coral-dark)}.aside-tool{margin-top:25px;padding:22px;background:var(--yellow);border:2px solid var(--ink)}.aside-tool b{display:block;font:700 1.15rem/1.25 var(--display)}.aside-tool p{font-size:.8rem}.aside-tool a{display:block;margin-top:15px;border:0;font-size:.68rem;text-transform:uppercase}.article-body{font-family:Georgia,serif;font-size:1.08rem;line-height:1.82}.standfirst{margin:0 0 65px;padding-left:25px;border-left:5px solid var(--coral);font-size:1.35rem;line-height:1.6}.article-body section{margin-bottom:65px;scroll-margin-top:30px}.section-number{font:800 .67rem var(--body);letter-spacing:.09em;text-transform:uppercase;color:var(--coral-dark)}.article-body h2{margin:9px 0 22px;font:800 clamp(2rem,3.4vw,3.1rem)/1.05 var(--display);letter-spacing:-.055em}.article-body p{color:#3d2b34}.check-list{list-style:none;margin:28px 0;padding:0;border-top:2px solid var(--ink)}.check-list li{position:relative;padding:14px 15px 14px 45px;border-bottom:1px solid var(--line);font-family:var(--body);font-size:.92rem}.check-list li:before{content:'✓';position:absolute;left:14px;color:var(--coral-dark);font-weight:800}.table-wrap{overflow-x:auto;margin-top:25px}.article-body table{width:100%;border-collapse:collapse;font-family:var(--body);font-size:.84rem}.article-body th,.article-body td{padding:15px;text-align:left;border:1px solid var(--ink)}.article-body th{background:var(--yellow);font-size:.7rem;text-transform:uppercase}.takeaway{margin:65px 0 35px;padding:35px;background:var(--ink);color:#fff;box-shadow:8px 8px 0 var(--coral)}.takeaway span{color:var(--yellow);font:800 .67rem var(--body);text-transform:uppercase}.takeaway p{margin:10px 0 0;color:#fff;font:500 1.6rem/1.4 Georgia}.article-actions{display:flex;gap:12px}.article-actions button,.article-actions a{padding:10px 15px;background:#fff;border:2px solid var(--ink);font:800 .67rem var(--body);text-decoration:none;text-transform:uppercase;cursor:pointer}.related{background:var(--cream);border-top:2px solid var(--ink)}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-grid>a{display:flex;flex-direction:column;min-height:260px;padding:26px;background:#fff;border:2px solid var(--ink);text-decoration:none}.related-grid>a:hover{box-shadow:7px 7px 0 var(--peach);transform:translate(-3px,-3px)}.related-grid span{color:var(--coral-dark);font-size:.65rem;font-weight:800;text-transform:uppercase}.related-grid h3{margin:18px 0 10px;font:800 1.55rem/1.1 var(--display);letter-spacing:-.04em}.related-grid p{margin:0;color:var(--muted);font-size:.86rem}.related-grid b{margin-top:auto;font-size:.7rem;text-transform:uppercase}

/* Tools */
.tools-hero{background:var(--lilac)}.tools-directory{display:grid;grid-template-columns:1fr 1fr;gap:26px}.directory-tool{position:relative;display:grid;grid-template-columns:72px 1fr;gap:25px;min-height:280px;padding:30px;background:#fff;border:2px solid var(--ink);text-decoration:none}.directory-tool:hover{transform:translate(-4px,-4px);box-shadow:9px 9px 0 var(--ink)}.directory-tool.yellow{box-shadow:7px 7px 0 var(--yellow)}.directory-tool.coral{box-shadow:7px 7px 0 var(--coral)}.directory-tool.lilac{box-shadow:7px 7px 0 var(--lilac)}.directory-tool.peach{box-shadow:7px 7px 0 var(--peach)}.tool-index{display:grid;place-items:center;width:62px;height:62px;color:#fff;background:var(--ink);font-weight:800}.directory-tool h2{margin:24px 0 10px;font:800 2rem/1 var(--display);letter-spacing:-.05em}.directory-tool p{margin:0;color:var(--muted);font-size:.9rem}.directory-tool div>b{display:block;margin-top:25px;font-size:.7rem;text-transform:uppercase}.directory-tool>i{position:absolute;right:25px;top:25px;font-size:1.2rem;font-style:normal}.privacy-note{display:grid;grid-template-columns:180px 1fr;gap:40px;margin-top:70px;padding:30px;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.privacy-note b{font:800 1.3rem var(--display)}.privacy-note p{margin:0;color:var(--muted)}.tool-page-hero{padding:35px 0 75px;background:var(--cream);border-bottom:2px solid var(--ink)}.tool-page-hero.yellow{background:#fff1ad}.tool-page-hero.coral{background:#ffe2e4}.tool-page-hero.lilac{background:#e9e3ff}.tool-page-hero.peach{background:#ffe1c8}.tool-page-hero .breadcrumb{margin-bottom:65px}.tool-page-hero h1{max-width:900px}.tool-workspace{padding:75px 0 110px;background:var(--paper)}.tool-layout{display:grid;grid-template-columns:minmax(0,820px) 280px;gap:50px;align-items:start}.tool-card{min-height:490px;padding:clamp(26px,5vw,55px);background:#fff;border:2px solid var(--ink);box-shadow:10px 10px 0 var(--peach)}.tool-intro{max-width:590px;margin:30px auto;text-align:center}.tool-intro>span{font-size:.68rem;font-weight:800;text-transform:uppercase}.tool-intro h2{margin:18px 0;font:800 clamp(2.4rem,4vw,4rem)/1 var(--display);letter-spacing:-.06em}.tool-intro p{color:var(--muted)}.tool-intro .button{margin:25px auto}.tool-sidebar{padding:25px;background:var(--cream);border-top:5px solid var(--coral)}.tool-sidebar>span{color:var(--coral-dark);font-size:.66rem;font-weight:800;text-transform:uppercase}.tool-sidebar h2{font:800 1.7rem/1.08 var(--display);letter-spacing:-.045em}.tool-sidebar p{color:var(--muted);font-size:.87rem}.tool-sidebar>div{margin:25px 0;padding-top:20px;border-top:1px solid var(--line)}.tool-sidebar a{font-size:.68rem;font-weight:800;text-transform:uppercase}.progress{height:7px;margin-bottom:25px;background:var(--cream)}.progress i{display:block;width:8.33%;height:100%;background:var(--coral);transition:.25s}.quiz-count{font-size:.68rem;font-weight:800;text-transform:uppercase}.quiz h2{min-height:110px;margin:25px 0;font:800 clamp(1.8rem,3vw,2.8rem)/1.15 var(--display);letter-spacing:-.05em}.scale-options{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.scale-options button{min-height:75px;padding:10px;background:#fff;border:2px solid var(--ink);font-size:.72rem;font-weight:700;cursor:pointer}.scale-options button:hover{background:var(--yellow)}.tool-card label{display:block;margin-bottom:24px;color:#5d4751;font-size:.69rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.tool-card label span{font-weight:500;text-transform:none}.tool-card input:not([type=range]):not([type=checkbox]),.tool-card select,.tool-card textarea{display:block;width:100%;min-height:52px;margin-top:8px;padding:10px 13px;color:var(--ink);background:#fffdfa;border:2px solid #8d737f;border-radius:0;outline:0;text-transform:none}.tool-card textarea{min-height:105px;resize:vertical}.tool-card input:focus,.tool-card select:focus,.tool-card textarea:focus{border-color:var(--coral);box-shadow:4px 4px 0 var(--peach)}.field-grid,.two-person-head,.generator-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.two-person-head{align-items:center}.two-person-head>span{display:none}.form-prompt{margin:10px 0 25px;font-weight:700}.range-row{display:grid!important;grid-template-columns:180px 55px 1fr 70px 24px;gap:10px;align-items:center;padding:12px 0;margin:0!important;border-top:1px solid var(--line)}.range-row small{font-size:.62rem;font-weight:500;text-transform:none}.range-row input{accent-color:var(--coral)}.range-row output{font-size:.8rem}.check-row{display:flex!important;gap:10px;align-items:flex-start;text-transform:none!important}.check-row input{margin-top:5px}.tool-result{margin-top:28px;padding:28px;background:var(--yellow);border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink)}.tool-result h2{margin:8px 0 12px;font:800 2.2rem/1 var(--display);letter-spacing:-.05em}.tool-result p{margin:8px 0}.tool-result .result-bars{display:grid;gap:12px;margin:24px 0}.result-bar div{display:flex;justify-content:space-between;font-size:.7rem;font-weight:800;text-transform:uppercase}.result-bar i{display:block;height:8px;margin-top:5px;background:var(--coral);border-right:2px solid var(--ink)}.tool-result button{margin-top:15px;padding:9px 13px;background:#fff;border:2px solid var(--ink);font-size:.68rem;font-weight:800;text-transform:uppercase;cursor:pointer}.prompt-card{margin-top:25px;padding:35px;background:var(--yellow);border:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink);text-align:center}.prompt-card>span{font-size:.66rem;font-weight:800;text-transform:uppercase}.prompt-card blockquote{margin:35px 0;font:500 clamp(1.8rem,3.5vw,3rem)/1.2 Georgia}.prompt-card button{margin:5px}.text-button{padding:12px;background:none;border:0;border-bottom:1px solid var(--ink);font-size:.68rem;font-weight:800;text-transform:uppercase;cursor:pointer}.tool-explainer{background:var(--cream);border-top:2px solid var(--ink)}.tool-explainer h2{margin:15px 0 45px;font:800 clamp(2.6rem,4vw,4rem)/1 var(--display);letter-spacing:-.055em}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.three-col>div{padding-top:18px;border-top:2px solid var(--ink)}.three-col b{color:var(--coral-dark);font-size:.68rem}.three-col h3{font:800 1.3rem var(--display)}.three-col p{color:var(--muted);font-size:.88rem}

/* Information and footer */
.prose .standfirst{font-family:Georgia,serif}.prose h2{margin:55px 0 15px;font:800 2.3rem var(--display);letter-spacing:-.05em}.prose p{color:#49363f;font-size:1.05rem}.contact-form{margin-top:40px;padding:35px;background:#fff;border:2px solid var(--ink);box-shadow:8px 8px 0 var(--peach)}.contact-form label{display:block;margin-bottom:22px;font-size:.7rem;font-weight:800;text-transform:uppercase}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;min-height:50px;margin-top:7px;padding:10px;border:2px solid var(--ink)}.contact-form textarea{height:150px}.success-panel{padding:35px;background:var(--yellow);border:2px solid var(--ink)}.not-found{min-height:650px;padding:100px 0;background:var(--cream)}.not-found>div>span{font-size:.7rem;font-weight:800;text-transform:uppercase}.not-found h1{margin:20px 0;font:800 clamp(5rem,12vw,10rem)/.78 var(--display);letter-spacing:-.09em}.newsletter{padding:75px 0;color:#fff;background:var(--coral-dark);border-top:2px solid var(--ink)}.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.newsletter h2{margin:15px 0 0;font:800 clamp(2.8rem,4.6vw,5rem)/.95 var(--display);letter-spacing:-.06em}.newsletter-form p{max-width:520px}.newsletter-form label{display:grid;grid-template-columns:1fr auto;margin-top:22px}.newsletter-form input{min-height:55px;padding:0 15px;border:2px solid var(--ink);border-right:0}.newsletter-form button{padding:0 18px;color:#fff;background:var(--ink);border:2px solid var(--ink);font-size:.7rem;font-weight:800;text-transform:uppercase}.newsletter-form button b{margin-left:20px}.newsletter-form small{display:block;margin-top:10px;opacity:.75}.form-success{margin-top:15px;padding:10px;color:var(--ink);background:var(--yellow);font-weight:700}.site-footer{color:#e5d8de;background:var(--ink)}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .7fr 1.1fr;gap:60px;padding-block:70px}.footer-grid>div{display:flex;flex-direction:column}.footer-grid .brand{color:#fff;font-size:2.2rem}.footer-grid b{margin-bottom:15px;color:var(--peach);font-size:.67rem;text-transform:uppercase}.footer-grid a:not(.brand){margin:5px 0;color:#e5d8de;font-size:.85rem;text-decoration:none}.footer-grid p{max-width:280px;color:#9e8c95;font-size:.82rem}.footer-note span{color:var(--peach);font-size:.66rem;text-transform:uppercase}.footer-note strong{margin:8px 0;font:700 1.45rem var(--display);color:#fff}.footer-bottom{display:flex;justify-content:space-between;padding-block:20px;border-top:1px solid #58464f;color:#9e8c95;font-size:.65rem;text-transform:uppercase}.footer-bottom a{color:inherit}

.reveal{animation:rise .65s both}.delay-one{animation-delay:.12s}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:980px){.header-row{grid-template-columns:1fr auto auto}.desktop-nav{display:none}.header-cta{margin-right:18px}.menu-toggle{display:flex;flex-direction:column;gap:4px;width:48px;padding:10px;background:none;border:0}.menu-toggle span{width:23px;height:2px;background:var(--ink)}.menu-toggle em{display:none}.mobile-menu{padding:15px 24px;background:var(--paper);border-top:1px solid var(--line)}.mobile-menu.open{display:flex;flex-direction:column}.mobile-menu a{padding:12px 0;border-bottom:1px solid var(--line);font-size:.76rem;font-weight:800;text-decoration:none;text-transform:uppercase}.hero-grid,.article-hero-grid,.hub-hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding-top:20px}.hero-visual{max-width:600px;margin:auto}.featured-tool-grid{grid-template-columns:1fr}.manifesto-grid{grid-template-columns:80px 1fr}.manifesto-grid>div:last-child{grid-column:2}.pathway-card{grid-template-columns:38% 62%}.article-grid,.all-articles{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.article-aside{display:none}.tool-layout{grid-template-columns:1fr}.tool-sidebar{display:grid;grid-template-columns:1fr 1.5fr;gap:20px}.tool-sidebar>a{grid-column:1/-1}.tools-directory{grid-template-columns:1fr}}
@media(max-width:720px){.shell{width:min(100% - 30px,var(--max))}.header-row{min-height:68px}.header-cta{display:none}.hero-grid{padding-block:60px}.hero-copy h1{font-size:clamp(3.1rem,16vw,5rem)}.visual-sticker{right:-5px;width:100px;height:100px}.section-heading{grid-template-columns:1fr;gap:20px}.section-heading.compact>a{justify-self:start}.featured-tool{min-height:530px;padding:25px}.compass-art{width:210px;height:210px}.manifesto-grid{grid-template-columns:1fr}.manifesto-mark{height:50px}.manifesto-grid>div:last-child{grid-column:auto}.pathway-grid{grid-template-columns:1fr}.pathway-card{grid-template-columns:1fr;min-height:0}.pathway-image{height:240px;border-right:0;border-bottom:2px solid var(--ink)}.pathway-copy{min-height:275px}.article-grid,.all-articles{grid-template-columns:1fr}.newsletter-grid,.footer-grid{grid-template-columns:1fr;gap:35px}.footer-bottom{gap:15px;flex-wrap:wrap}.hub-hero .breadcrumb,.article-hero .breadcrumb,.tool-page-hero .breadcrumb{margin-bottom:40px}.question-strip>.shell{grid-template-columns:1fr}.question-strip div>div{border-right:1px solid #5e4b54;border-bottom:1px solid #5e4b54}.article-layout{padding-block:55px 80px}.article-body{font-size:1rem}.related-grid{grid-template-columns:1fr}.tools-directory{grid-template-columns:1fr}.directory-tool{grid-template-columns:55px 1fr;padding:22px}.privacy-note{grid-template-columns:1fr;gap:12px}.tool-page-hero h1,.page-hero h1,.hub-hero h1{font-size:clamp(3rem,14vw,5rem)}.tool-card{padding:23px}.scale-options{grid-template-columns:1fr}.scale-options button{min-height:48px}.field-grid,.generator-controls,.two-person-head{grid-template-columns:1fr}.range-row{grid-template-columns:1fr 1fr 35px}.range-row>span{grid-column:1/-1}.range-row input{grid-column:1/3}.range-row small{display:none}.tool-sidebar{display:block}.three-col{grid-template-columns:1fr}.newsletter-form label,.search-form label{grid-template-columns:1fr}.newsletter-form input,.search-form input{border-right:2px solid var(--ink);border-bottom:0}.newsletter-form button,.search-form button{min-height:50px}.home-close{padding:80px 0}.home-close h2{font-size:clamp(3rem,14vw,5rem)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Homepage hero artwork sizing and editorial tilt. */
.hero-visual{width:85%;margin-inline:auto;transform:rotate(15deg)}
@media(max-width:720px){.hero-visual{width:78%;margin-block:25px 35px}}

/* Eyebrow labels are intentionally removed across every page family. */
.eyebrow,.eyebrow.light{display:none!important}

/* Tighter sitewide vertical rhythm between editorial sections. */
.section-pad{padding:clamp(48px,5.5vw,78px) 0}
.manifesto{padding:clamp(54px,6vw,72px) 0}
.section-heading{margin-bottom:36px;padding-bottom:20px}
.home-close{padding:clamp(68px,7vw,90px) 0}
@media(max-width:720px){.section-pad{padding:48px 0}.manifesto{padding:52px 0}.section-heading{margin-bottom:30px}}

/* Hover states highlight in place; interactive surfaces never shift or zoom. */
.button.primary:hover,
.mini-tool:hover,
.pathway-card:hover,
.related-grid>a:hover,
.directory-tool:hover{transform:none}
.pathway-card:hover img,
.card-image:hover img{transform:none}

/* Flat card treatment: borders and colors provide hierarchy without shadows. */
body *{box-shadow:none!important}

/* Compact homepage hero artwork while retaining its 15-degree tilt. */
.hero-visual{width:72%;max-width:460px}
.hero-visual .image-frame img{aspect-ratio:4/3;object-fit:cover}
@media(max-width:720px){.hero-visual{width:76%;max-width:390px}}

/* Personality tests and all 16 type profiles */
.home-personality{background:#efeaff;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.home-type-feature{display:grid;grid-template-columns:.8fr 1.2fr;border:2px solid var(--ink);background:#fff}
.home-type-feature>div:first-child{display:flex;flex-direction:column;padding:clamp(28px,4vw,50px);background:var(--lilac);border-right:2px solid var(--ink)}
.home-type-feature>div:first-child>span,.full-test-card>span{font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.home-type-feature h3{margin:35px 0 15px;font:800 clamp(2rem,3vw,3.4rem)/1 var(--display);letter-spacing:-.055em}
.home-type-feature p{margin:0;color:#51445d}.home-type-feature .button{align-self:flex-start;margin-top:auto}
.home-type-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.home-type-grid a{display:flex;flex-direction:column;justify-content:center;min-height:108px;padding:15px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}
.home-type-grid a:nth-child(4n){border-right:0}.home-type-grid a:nth-last-child(-n+4){border-bottom:0}
.home-type-grid a:hover{background:var(--yellow)}.home-type-grid b{font:800 1.25rem var(--display)}.home-type-grid span{color:var(--muted);font-size:.68rem}
.personality-hero{padding:clamp(75px,9vw,125px) 0;background:#efeaff;border-bottom:2px solid var(--ink);overflow:hidden}
.personality-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.personality-hero h1,.test-hero h1{margin:0 0 25px;font:800 clamp(3.7rem,6.3vw,6.8rem)/.92 var(--display);letter-spacing:-.075em}
.personality-hero p,.test-hero>div>p{max-width:690px;color:var(--muted);font-size:1.15rem}
.type-orbit{position:relative;width:min(460px,90vw);aspect-ratio:1;margin:auto;border:2px solid var(--ink);border-radius:50%}
.type-orbit:before,.type-orbit:after{content:'';position:absolute;left:50%;top:0;width:2px;height:100%;background:var(--ink)}.type-orbit:after{transform:rotate(90deg)}
.type-orbit strong{position:absolute;z-index:2;left:50%;top:50%;display:grid;place-items:center;width:130px;height:130px;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;font:800 1.25rem var(--display);transform:translate(-50%,-50%)}
.type-orbit>b,.type-orbit>span,.type-orbit>i,.type-orbit>em{position:absolute;z-index:2;padding:9px 13px;color:#fff;background:var(--ink);font:800 .75rem var(--display);font-style:normal}.type-orbit>b{left:12%;top:17%}.type-orbit>span{right:8%;top:25%}.type-orbit>i{left:13%;bottom:18%}.type-orbit>em{right:12%;bottom:14%}
.personality-start{background:var(--paper)}.test-directory{display:grid;grid-template-columns:.8fr 1.2fr;border:2px solid var(--ink)}
.full-test-card{display:flex;flex-direction:column;min-height:520px;padding:40px;background:var(--yellow);border-right:2px solid var(--ink);text-decoration:none}
.full-test-card h2{margin:50px 0 15px;font:800 clamp(2.3rem,3.5vw,3.7rem)/1 var(--display);letter-spacing:-.06em}.full-test-card p{color:#5d5035}.full-test-card b{margin-top:auto;font-size:.72rem;text-transform:uppercase}
.focused-test-grid{display:grid;grid-template-columns:1fr 1fr}.focused-test-grid a{display:flex;flex-direction:column;min-height:260px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none}.focused-test-grid a:nth-child(2n){border-right:0}.focused-test-grid a:nth-last-child(-n+2){border-bottom:0}.focused-test-grid a:hover{background:#fff3ed}.focused-test-grid span{color:var(--coral-dark);font-size:.65rem;font-weight:800;text-transform:uppercase}.focused-test-grid h3{margin:25px 0 9px;font:800 1.65rem/1.05 var(--display);letter-spacing:-.045em}.focused-test-grid p{margin:0;color:var(--muted);font-size:.86rem}.focused-test-grid b{margin-top:auto;font-size:.68rem;text-transform:uppercase}
.type-framework{padding:clamp(55px,7vw,95px) 0;color:#fff;background:var(--ink)}.type-framework .section-heading{border-color:#7c6972}.type-framework .section-heading p{color:#ccbbc3}
.dimension-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #69555f;border-left:1px solid #69555f}.dimension-grid>div{min-height:300px;padding:30px;border-right:1px solid #69555f;border-bottom:1px solid #69555f}.dimension-grid>div>span{color:var(--peach);font-size:.68rem;font-weight:800}.dimension-grid h3{margin:25px 0 12px;font:700 1.6rem/1.15 var(--display)}.dimension-grid p{color:#c9b9c0;font-size:.9rem}.dimension-grid dl{display:grid;grid-template-columns:35px 1fr;margin-top:25px}.dimension-grid dt{color:var(--yellow);font-weight:800}.dimension-grid dd{margin:0;color:#fff}
.all-types{background:var(--cream)}.type-group{margin-bottom:60px}.type-group:last-child{margin-bottom:0}.group-intro{display:grid;grid-template-columns:55px 1fr;gap:20px;align-items:start;margin-bottom:22px}.group-intro>span{display:grid;place-items:center;width:50px;height:50px;color:#fff;background:var(--ink);font-weight:800}.group-intro h3{margin:0;font:800 2rem var(--display);letter-spacing:-.05em}.group-intro p{max-width:700px;margin:4px 0 0;color:var(--muted)}
.type-card-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.type-card{display:flex;flex-direction:column;min-height:260px;padding:25px;background:#fff;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);text-decoration:none}.type-card:hover{background:var(--yellow)}.type-card>span{font:800 1.7rem var(--display)}.type-card h3{margin:30px 0 9px;font:800 1.35rem/1.05 var(--display);letter-spacing:-.04em}.type-card p{margin:0;color:var(--muted);font-size:.84rem}.type-card b{margin-top:auto;font-size:.67rem;text-transform:uppercase}.type-card.coral>span{color:var(--coral-dark)}.type-card.lilac>span{color:#705ac0}.type-card.peach>span{color:#ad5b25}
.type-disclaimer{padding:55px 0;background:var(--yellow);border-top:2px solid var(--ink)}.type-disclaimer>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.type-disclaimer h2{margin:0;font:800 2.3rem/1 var(--display);letter-spacing:-.05em}.type-disclaimer p{margin:0}
.test-hero{padding:35px 0 70px;background:var(--cream);border-bottom:2px solid var(--ink)}.test-hero.focused{background:#efeaff}.test-hero .breadcrumb{margin-bottom:55px}.personality-test-page{padding:65px 0 100px;background:var(--paper)}.test-shell{max-width:900px}.test-welcome,.type-quiz,.type-result{padding:clamp(28px,5vw,55px);background:#fff;border:2px solid var(--ink)}.test-welcome h2{margin:45px 0 15px;font:800 clamp(2.5rem,4vw,4rem)/1 var(--display);letter-spacing:-.06em}.test-welcome>p{max-width:650px;color:var(--muted)}.test-welcome .button{margin-top:25px}.test-facts{display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink)}.test-facts>div{padding:20px;border-right:2px solid var(--ink);text-align:center}.test-facts>div:last-child{border:0}.test-facts b{display:block;font:800 2rem var(--display)}.test-facts span{font-size:.65rem;font-weight:800;text-transform:uppercase}.test-progress{height:10px;background:var(--cream);border:1px solid var(--ink)}.test-progress i{display:block;width:2%;height:100%;background:var(--coral);transition:width .2s}.test-status{display:flex;justify-content:space-between;margin-top:15px;color:var(--muted);font-size:.66rem;font-weight:800;text-transform:uppercase}.type-quiz h2{min-height:150px;margin:55px 0 45px;font:800 clamp(2rem,3.4vw,3.2rem)/1.1 var(--display);letter-spacing:-.055em;text-align:center}.agreement-scale{display:grid;grid-template-columns:70px 1fr 70px;gap:16px;align-items:center}.agreement-scale>span{font-size:.65rem;font-weight:800;text-align:center;text-transform:uppercase}.agreement-scale>div{display:flex;justify-content:center;align-items:center;gap:14px}.agreement-scale button{display:grid;place-items:center;width:44px;height:44px;padding:0;background:#fff;border:2px solid var(--ink);border-radius:50%;cursor:pointer}.agreement-scale button:nth-child(1),.agreement-scale button:nth-child(7){width:62px;height:62px}.agreement-scale button:nth-child(2),.agreement-scale button:nth-child(6){width:53px;height:53px}.agreement-scale button:hover{background:var(--yellow)}.agreement-scale button i{width:10px;height:10px;background:var(--ink);border-radius:50%}.test-back{margin-top:45px;padding:8px 0;color:var(--muted);background:none;border:0;border-bottom:1px solid var(--line);font-size:.68rem;font-weight:800;text-transform:uppercase;cursor:pointer}.test-back:disabled{opacity:.35}.type-result{background:#fff}.result-code{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;padding-bottom:35px;border-bottom:2px solid var(--ink)}.result-code>b{display:grid;place-items:center;width:145px;height:145px;background:var(--yellow);border:2px solid var(--ink);font:800 2.1rem var(--display)}.result-code span{font-size:.67rem;font-weight:800;text-transform:uppercase}.result-code h2{margin:10px 0;font:800 clamp(2.3rem,4vw,4rem)/1 var(--display);letter-spacing:-.06em}.result-code p{margin:0;color:var(--muted)}.dimension-results{display:grid;gap:18px;margin:38px 0}.dimension-result>div{display:flex;justify-content:space-between;font-size:.7rem;font-weight:800;text-transform:uppercase}.dimension-result>i{position:relative;display:block;height:12px;margin-top:6px;background:linear-gradient(to right,var(--lilac) 0 50%,var(--coral) 50%)}.dimension-result>i:after{content:'';position:absolute;top:-4px;left:var(--score);width:4px;height:20px;background:var(--ink)}.result-actions{display:flex;flex-wrap:wrap;gap:20px}.focused-result{text-align:center}.focused-result>b{display:block;margin:20px;font:800 clamp(4rem,9vw,7rem) var(--display)}.focused-result h2{font:800 clamp(2.3rem,4vw,4rem)/1 var(--display);letter-spacing:-.06em}.focused-meter{position:relative;height:16px;margin:30px 0;background:linear-gradient(to right,var(--lilac),var(--coral));border:2px solid var(--ink)}.focused-meter i{position:absolute;top:-7px;left:var(--score);width:5px;height:27px;background:var(--ink)}.test-context{padding:65px 0;background:var(--yellow);border-top:2px solid var(--ink)}.test-context h2{font:800 2.5rem/1 var(--display);letter-spacing:-.05em}.test-context a{font-size:.72rem;font-weight:800;text-transform:uppercase}
.type-profile-hero{padding:35px 0 75px;background:var(--cream);border-bottom:2px solid var(--ink)}.type-profile-hero.lilac{background:#e8e1ff}.type-profile-hero.coral{background:#ffe0e4}.type-profile-hero.yellow{background:#fff0ae}.type-profile-hero.peach{background:#ffe1c8}.type-profile-hero .breadcrumb{margin-bottom:55px}.type-profile-title{display:grid;grid-template-columns:260px 1fr;gap:55px;align-items:center}.type-code-art{display:grid;place-items:center;aspect-ratio:1;background:#fff;border:2px solid var(--ink)}.type-code-art b{font:800 3.4rem var(--display)}.type-code-art span{font-size:.67rem;font-weight:800;text-transform:uppercase}.type-profile-title>div:last-child>span{font-size:.68rem;font-weight:800;text-transform:uppercase}.type-profile-title h1{margin:12px 0;font:800 clamp(3.6rem,6vw,6.5rem)/.92 var(--display);letter-spacing:-.075em}.type-profile-title p{margin:0;font:500 1.5rem Georgia}.type-profile-layout{display:grid;grid-template-columns:250px minmax(0,760px);justify-content:space-between;gap:80px;padding-block:75px 110px}.type-profile-layout aside>div{padding:22px;background:var(--cream);border:1px solid var(--line)}.type-profile-layout aside>div>span{font-size:.66rem;font-weight:800;text-transform:uppercase}.type-profile-layout aside p{display:grid;grid-template-columns:32px 1fr;gap:8px;margin:14px 0;font-size:.78rem}.type-profile-layout aside p b{color:var(--coral-dark);font-size:1rem}.type-profile-layout aside .button{margin-top:20px}.type-profile-body{font-family:Georgia,serif;font-size:1.07rem;line-height:1.8}.type-profile-body section{margin:60px 0}.type-profile-body h2{font:800 clamp(2.1rem,3.4vw,3.2rem)/1 var(--display);letter-spacing:-.055em}.profile-list{border-top:2px solid var(--ink)}.profile-list>div{display:grid;grid-template-columns:50px 1fr;border-bottom:1px solid var(--line)}.profile-list span{padding:15px;color:var(--coral-dark);font:800 .7rem var(--body)}.profile-list p{margin:0;padding:15px;border-left:1px solid var(--line);font-family:var(--body)}.profile-duo{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink)}.profile-duo section{margin:0;padding:25px}.profile-duo section:first-child{border-right:2px solid var(--ink)}.profile-duo span{font:800 .67rem var(--body);text-transform:uppercase}.profile-duo p{margin-bottom:0}.compare-callout{padding:55px 0;color:#fff;background:var(--coral-dark);border-block:2px solid var(--ink)}.compare-callout>.shell{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.compare-callout h2{margin:0;font:800 2.5rem/1 var(--display);letter-spacing:-.05em}.compare-callout p{margin-bottom:0}.compare-callout form{display:grid;grid-template-columns:1fr auto}.compare-callout select{min-height:54px;padding:0 12px;border:2px solid var(--ink);border-right:0}.compare-hero{padding:35px 0 75px;background:#efeaff;border-bottom:2px solid var(--ink)}.compare-hero .breadcrumb{margin-bottom:55px}.compare-title{display:grid;grid-template-columns:1fr auto 1fr;gap:35px;align-items:center}.compare-title>div{padding:28px;background:#fff;border:2px solid var(--ink)}.compare-title>div>span{font:800 1.5rem var(--display)}.compare-title h1{margin:15px 0 0;font:800 clamp(2rem,3.6vw,3.8rem)/1 var(--display);letter-spacing:-.055em}.compare-title>b{font-size:2.2rem}.compare-hero>div>p{max-width:720px;margin:30px auto 0;color:var(--muted);text-align:center}.comparison-summary{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink)}.comparison-summary>div{padding:30px}.comparison-summary>div:first-child{border-right:2px solid var(--ink);background:var(--yellow)}.comparison-summary span,.comparison-table>div:first-child{font-size:.67rem;font-weight:800;text-transform:uppercase}.comparison-summary h2{font:800 2rem var(--display);letter-spacing:-.04em}.comparison-table{margin-top:45px;border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.comparison-table>div{display:grid;grid-template-columns:150px 1fr 1fr}.comparison-table>div>*{margin:0;padding:18px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink)}.comparison-table p{font-size:.88rem}.comparison-table>div:first-child>*{background:var(--ink);color:#fff}.comparison-note{margin-top:45px;padding:35px;background:var(--cream);border:2px solid var(--ink)}.comparison-note h2{font:800 2rem var(--display);letter-spacing:-.04em}
@media(max-width:980px){.personality-hero-grid,.test-directory,.home-type-feature{grid-template-columns:1fr}.type-orbit{max-width:400px}.full-test-card,.home-type-feature>div:first-child{min-height:380px;border-right:0;border-bottom:2px solid var(--ink)}.type-card-grid{grid-template-columns:repeat(2,1fr)}.type-profile-layout{grid-template-columns:1fr}.type-profile-layout aside{display:none}.type-profile-title{grid-template-columns:190px 1fr}.compare-callout>.shell{grid-template-columns:1fr}.home-type-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:720px){.personality-hero{padding:65px 0}.personality-hero h1,.test-hero h1{font-size:clamp(3rem,14vw,5rem)}.type-orbit{width:85%}.type-orbit strong{width:100px;height:100px}.focused-test-grid,.dimension-grid,.type-card-grid{grid-template-columns:1fr}.focused-test-grid a,.dimension-grid>div,.type-card{border-right:2px solid var(--ink)}.type-disclaimer>div,.type-profile-title,.comparison-summary{grid-template-columns:1fr}.home-type-grid{grid-template-columns:repeat(2,1fr)}.home-type-grid a:nth-child(2n){border-right:0}.home-type-grid a:nth-child(4n){border-right:0}.home-type-grid a:nth-last-child(-n+4){border-bottom:1px solid var(--line)}.home-type-grid a:nth-last-child(-n+2){border-bottom:0}.agreement-scale{grid-template-columns:1fr}.agreement-scale>span:first-child{text-align:left}.agreement-scale>span:last-child{text-align:right}.agreement-scale>div{gap:7px;grid-row:2}.agreement-scale button{width:35px;height:35px}.agreement-scale button:nth-child(1),.agreement-scale button:nth-child(7){width:48px;height:48px}.agreement-scale button:nth-child(2),.agreement-scale button:nth-child(6){width:42px;height:42px}.type-quiz h2{min-height:190px;margin:35px 0}.result-code{grid-template-columns:1fr}.result-code>b{width:110px;height:110px}.profile-duo{grid-template-columns:1fr}.profile-duo section:first-child{border-right:0;border-bottom:2px solid var(--ink)}.compare-callout form{grid-template-columns:1fr}.compare-callout select{border-right:2px solid var(--ink);border-bottom:0}.compare-title{grid-template-columns:1fr}.compare-title>b{text-align:center}.comparison-summary>div:first-child{border-right:0;border-bottom:2px solid var(--ink)}.comparison-table{overflow-x:auto}.comparison-table>div{min-width:760px}.test-facts b{font-size:1.5rem}}

/* Requested 50% reduction of the homepage's right-hand hero artwork. */
.hero-visual{width:72%;max-width:460px}
.hero-visual .image-frame{height:230px;overflow:hidden}
.hero-visual .image-frame img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
.hero-visual .visual-sticker{width:82px;height:82px;padding:10px;font-size:.58rem}
@media(max-width:720px){.hero-visual{width:76%;max-width:390px}.hero-visual .image-frame{height:195px}.hero-visual .visual-sticker{width:68px;height:68px}}

/* Shared breadcrumb rail, following the streamlined THEM-YOU pattern. */
.breadcrumb-band{padding:30px 0 25px;background:var(--cream)}
.breadcrumbs{margin:0;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.breadcrumbs ol{display:flex;align-items:center;gap:8px;min-width:0;margin:0;padding:0;list-style:none}
.breadcrumbs li{display:flex;align-items:center;gap:8px;min-width:0}
.breadcrumbs li+li:before{content:"/";color:#9b858f}
.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs li[aria-current="page"] span{display:block;max-width:44ch;overflow:hidden;color:var(--coral-dark);font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.hub-hero,.article-hero,.tool-page-hero,.test-hero,.type-profile-hero,.compare-hero{padding-top:0}
@media(max-width:720px){.breadcrumb-band{padding:22px 0 19px}.breadcrumbs li[aria-current="page"] span{max-width:24ch}}

/* Wall-painting hero: 50% larger than the compact version and visibly tilted. */
.hero-visual{width:108%;max-width:690px;animation:none;transform:rotate(15deg)}
.hero-visual .image-frame{height:345px}
.hero-visual .visual-sticker{width:123px;height:123px;padding:15px;font-size:.72rem}
@media(max-width:720px){.hero-visual{width:90%;max-width:585px}.hero-visual .image-frame{height:293px}.hero-visual .visual-sticker{width:102px;height:102px}}

/* Compact image scale for narrow mobile screens. */
@media(max-width:720px){
  .hero-visual{width:62%;max-width:280px}
  .hero-visual .image-frame{height:155px;padding:7px}
  .hero-visual .visual-sticker{width:62px;height:62px;padding:6px;font-size:.48rem}
  .hub-hero figure,.article-hero figure{width:76%;max-width:360px;margin:24px auto 0;padding:7px}
  .hub-hero figure img,.article-hero figure img{aspect-ratio:4/3}
  .pathway-image{height:175px}
  .card-image{width:82%;margin-inline:auto}
  .card-image img{aspect-ratio:4/3}
}

/* Semantic heading variants introduced by the route-level SEO templates. */
.newsletter .newsletter-title{margin:15px 0 0;font:800 clamp(2.8rem,4.6vw,5rem)/.95 var(--display);letter-spacing:-.06em}.newsletter-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.newsletter-form .form-error{margin-top:15px;padding:10px;color:#fff;background:#7b1730;font-weight:700}.newsletter-form button:disabled{cursor:wait;opacity:.72}
.sitemap-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.sitemap-featured>section,.sitemap-directory>div,.comparison-sitemap>div{padding:28px;background:#fff;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--peach)}.sitemap-page h2{margin:0 0 22px;font:800 clamp(2rem,4vw,3.3rem)/1 var(--display);letter-spacing:-.04em}.sitemap-page h3{margin:0 0 14px;font:800 1.15rem var(--display)}.sitemap-page ul{margin:0;padding-left:20px}.sitemap-page li{margin:9px 0}.sitemap-page a{color:var(--ink);text-underline-offset:3px}.sitemap-section{margin-top:70px}.sitemap-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.sitemap-directory p{margin:0;color:#5e4b54}.comparison-sitemap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.comparison-sitemap>div{padding:22px;box-shadow:4px 4px 0 var(--lilac)}
.type-card h4{margin:30px 0 9px;font:800 1.35rem/1.05 var(--display);letter-spacing:-.04em}
.type-profile-body h3{margin:28px 0 8px;font:800 1.3rem/1.1 var(--display);letter-spacing:-.025em}
.compare-hero>div>h1{margin:0 auto 35px;max-width:900px;text-align:center;font:800 clamp(3rem,6vw,6rem)/.92 var(--display);letter-spacing:-.07em}
.compare-title .compare-name{margin:15px 0 0;font:800 clamp(2rem,3.6vw,3.8rem)/1 var(--display);letter-spacing:-.055em}
.comparison-summary .compare-summary-title{font:800 2rem var(--display);letter-spacing:-.04em}
.hub-tool-callout .hub-tool-grid{max-width:900px;margin:35px auto;text-align:left}.hub-tool-callout .hub-tool-grid>a{min-height:230px;color:var(--ink)}
.compare-title a{display:block;color:inherit;text-decoration:none}.compare-title a:hover .compare-name{color:var(--coral-dark)}

/* Truly compact mobile magazine thumbnails: constrain the frame, not just width. */
@media(max-width:720px){
  .article-grid .card-image{width:58%;max-width:260px;height:auto;aspect-ratio:16/10;margin-inline:auto}
  .article-grid .card-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center}
  .pathway-image{height:145px}
}

/* Explicit foregrounds prevent white text from leaking into light surfaces. */
.button.pale,.button.pale:visited,.button.pale *{color:var(--ink)!important}
.image-frame,
.mini-tool,
.pathway-card,
.article-card,
.directory-tool,
.tool-card,
.prompt-card,
.contact-form,
.test-welcome,
.type-quiz,
.type-result,
.focused-test-grid a,
.type-card,
.type-code-art,
.compare-title>div,
.comparison-note{color:var(--ink)}
.newsletter-form input,.search-form input,.compare-callout select{color:var(--ink);background:var(--white)}

/* Compact mobile reflection prompts instead of one oversized dark slab. */
@media(max-width:720px){
  .question-strip{padding:22px 0;background:var(--paper)}
  .question-strip>.shell{display:grid;grid-template-columns:1fr;gap:8px}
  .question-strip div>div{
    grid-template-columns:32px 1fr;
    gap:10px;
    min-height:0;
    padding:13px 15px;
    background:var(--ink);
    border:2px solid var(--ink)!important;
  }
  .question-strip span{align-self:center;font-size:.62rem}
  .question-strip p{align-self:center;font-size:.9rem;line-height:1.25}
}

/* Keep route-specific cluster links readable inside long-form editorial copy. */
.article-cluster-path{
  margin:-35px 0 60px;
  padding:18px 20px;
  background:var(--cream);
  border-left:3px solid var(--coral);
  font-family:var(--body);
  font-size:.88rem;
  line-height:1.6;
}
.article-cluster-path a{
  font-weight:700;
  text-decoration-color:var(--coral-dark);
  text-underline-offset:3px;
}
.dimension-next-step{
  margin:18px 0 0;
  padding:12px 15px;
  background:var(--cream);
  border-left:3px solid var(--lilac);
  font-size:.88rem;
}
.dimension-next-step a{font-weight:700;text-underline-offset:3px}
.comparison-shared-detail{
  display:grid;
  grid-template-columns:1fr 1fr;
  margin-top:24px;
  border:2px solid var(--ink);
}
.comparison-shared-detail p{margin:0;padding:20px}
.comparison-shared-detail p:first-child{background:var(--yellow);border-right:2px solid var(--ink)}
@media(max-width:720px){
  .comparison-shared-detail{grid-template-columns:1fr}
  .comparison-shared-detail p:first-child{border-right:0;border-bottom:2px solid var(--ink)}
}

/* Scannable editorial summaries for directories and policy pages. */
.directory-tool h3{margin:24px 0 10px;font:800 2rem/1 var(--display);letter-spacing:-.05em}
.prose h3{margin:30px 0 8px;font:800 1.35rem/1.15 var(--display);letter-spacing:-.025em}
.discover-paths{grid-template-columns:repeat(2,1fr);margin-top:32px}
.discover-paths a{font-size:.7rem;font-weight:800;text-transform:uppercase;text-underline-offset:4px}
.quick-summary{margin-top:36px;padding:26px 30px;background:var(--yellow);border:2px solid var(--ink);box-shadow:7px 7px 0 var(--peach)}
.quick-summary h3{margin-top:0}
.quick-summary ol{margin:15px 0 0;padding-left:22px}
.quick-summary li{padding:6px 0}
@media(max-width:720px){.discover-paths{grid-template-columns:1fr}.quick-summary{padding:22px}}
@media(max-width:900px){.comparison-sitemap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.sitemap-featured,.sitemap-directory,.comparison-sitemap{grid-template-columns:1fr}.sitemap-featured>section,.sitemap-directory>div,.comparison-sitemap>div{padding:22px}}

/* Persistent mobile navigation and scroll-aware page controls. */
.site-header{transition:box-shadow .2s ease}
.site-header.is-scrolled{box-shadow:0 8px 24px rgba(36,19,28,.14)}
.floating-scroll-tools{
  --scroll-progress:0%;
  position:fixed;
  z-index:120;
  right:max(20px,env(safe-area-inset-right));
  bottom:max(20px,env(safe-area-inset-bottom));
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(18px) scale(.92);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
}
.floating-scroll-tools.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.floating-scroll-tools:before{
  content:'';
  position:absolute;
  z-index:2;
  left:-7px;
  top:-7px;
  width:20px;
  height:20px;
  background:var(--yellow);
  border:2px solid var(--ink);
  border-radius:50% 50% 50% 8px;
  animation:float-control 2.4s ease-in-out infinite;
}
.back-to-top{
  position:relative;
  isolation:isolate;
  display:grid;
  place-content:center;
  gap:0;
  width:68px;
  height:68px;
  padding:0;
  color:#fff;
  background:conic-gradient(var(--coral) var(--scroll-progress),var(--cream) 0);
  border:2px solid var(--ink);
  border-radius:50%;
  box-shadow:5px 5px 0 var(--ink);
  cursor:pointer;
}
.back-to-top:before{content:'';position:absolute;z-index:-1;inset:5px;background:var(--ink);border-radius:50%}
.back-to-top:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--coral)}
.back-to-top:focus-visible{outline:4px solid var(--yellow);outline-offset:4px}
.back-to-top-arrow{color:var(--yellow);font:800 1.55rem/1 var(--display)}
.back-to-top-label{font:800 .55rem/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
@keyframes float-control{50%{transform:translateY(-5px) rotate(8deg)}}

@media(max-width:980px){
  html{scroll-padding-top:88px}
  body{padding-top:80px}
  body.menu-open{overflow:hidden}
  .site-header{position:fixed;inset:0 0 auto;width:100%}
  .mobile-menu{position:absolute;inset:100% 0 auto;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 14px 24px rgba(36,19,28,.18)}
  main [id]{scroll-margin-top:88px}
}
@media(max-width:720px){
  body{padding-top:70px}
  .mobile-menu{max-height:calc(100vh - 70px);max-height:calc(100dvh - 70px)}
  .floating-scroll-tools{right:max(15px,env(safe-area-inset-right));bottom:max(15px,env(safe-area-inset-bottom))}
  .back-to-top{width:60px;height:60px;box-shadow:4px 4px 0 var(--ink)}
}
@media print{.floating-scroll-tools{display:none!important}.site-header{position:static!important}.site-header+main{padding-top:0}}

/* “I like you” language learning cluster. */
.narrow-copy{max-width:840px}
.language-hero,.language-detail-hero{overflow:hidden;background:var(--cream);border-bottom:2px solid var(--ink)}
.language-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:70px;align-items:center;min-height:600px;padding-block:80px}
.language-hero h1,.language-detail-hero h1{max-width:850px;margin:18px 0 24px;font:800 clamp(3.5rem,6.2vw,6.7rem)/.92 var(--display);letter-spacing:-.075em}
.language-dek{max-width:730px;margin:0;color:var(--muted);font-size:1.15rem}
.language-hero-actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center;margin-top:34px}
.language-hero-actions>a:not(.button){font-size:.73rem;font-weight:800;text-underline-offset:5px;text-transform:uppercase}
.phrase-orbit{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:470px;margin:auto;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;box-shadow:14px 14px 0 var(--coral)}
.phrase-orbit:before,.phrase-orbit:after{content:'';position:absolute;border:2px solid var(--ink);border-radius:50%;inset:12%}
.phrase-orbit:after{inset:28%;background:var(--paper)}
.phrase-orbit strong{z-index:2;font:800 clamp(2rem,4vw,3.4rem)/1 var(--display);letter-spacing:-.05em;transform:rotate(-5deg)}
.phrase-orbit span{position:absolute;z-index:3;padding:5px 10px;background:var(--paper);border:1px solid var(--ink);font-weight:700}
.phrase-orbit span:nth-child(1){top:8%;left:10%;transform:rotate(-8deg)}
.phrase-orbit span:nth-child(2){top:18%;right:4%;transform:rotate(8deg)}
.phrase-orbit span:nth-child(3){bottom:12%;left:2%;transform:rotate(5deg)}
.phrase-orbit span:nth-child(4){right:8%;bottom:5%;transform:rotate(-6deg)}
.language-intro{background:var(--paper)}
.language-intro h2,.language-context h2,.language-faq>div>h2{margin:14px 0 24px;font:800 clamp(2.5rem,4.5vw,4.5rem)/.98 var(--display);letter-spacing:-.06em}
.language-intro>.shell>p{font-size:1.08rem}
.language-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.language-summary-grid>div{padding:25px;background:#fff;border:2px solid var(--ink);box-shadow:5px 5px 0 var(--peach)}
.language-summary-grid b{font:800 2.5rem/1 var(--display)}
.language-summary-grid h3{margin:10px 0 5px;font:800 1.1rem var(--display)}
.language-summary-grid p{margin:0;color:var(--muted);font-size:.83rem}
.language-directory{color:#fff;background:var(--ink)}
.language-directory .section-heading{border-color:#6b5661}
.language-directory .section-heading>p{color:#cdbfc6}
.language-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.language-card{position:relative;display:flex;flex-direction:column;min-height:260px;padding:26px;color:var(--ink);background:var(--paper);border:2px solid var(--paper);text-decoration:none;transition:.18s}
.language-card:nth-child(4n+2){box-shadow:6px 6px 0 var(--yellow)}.language-card:nth-child(4n+3){box-shadow:6px 6px 0 var(--coral)}.language-card:nth-child(4n+4){box-shadow:6px 6px 0 var(--lilac)}.language-card:nth-child(4n+1){box-shadow:6px 6px 0 var(--peach)}
.language-card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--coral)}
.language-card-number{position:absolute;right:22px;top:18px;color:#a28f98;font-size:.68rem;font-weight:800}
.language-card-flag{display:block;width:max-content;margin:18px 0 8px;font-size:2.25rem;line-height:1;filter:drop-shadow(2px 3px 0 rgba(36,19,28,.18))}
.language-card small{padding-right:30px;color:var(--coral-dark);font-size:.67rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.language-card h3{margin:18px 0 10px;font:800 clamp(1.5rem,2.3vw,2.2rem)/1.12 var(--display);letter-spacing:-.035em}
.language-card p{margin:0;color:var(--muted);font-size:.9rem}
.language-card>b{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);font-size:.67rem;text-transform:uppercase}
.language-card>b span{float:right}
.language-context{background:var(--yellow)}
.language-context-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}
.language-context h3{margin:0 0 8px;padding-top:22px;border-top:2px solid var(--ink);font:800 1.25rem var(--display)}
.language-context h3:not(:first-child){margin-top:30px}
.language-context p{margin:0}
.language-context i{color:inherit}
.language-faq{background:var(--paper)}
.faq-list{margin-top:32px;border-top:2px solid var(--ink)}
.faq-list details{border-bottom:1px solid var(--ink)}
.faq-list summary{padding:20px 0;cursor:pointer;list-style-position:outside}
.faq-list summary h3{display:inline;margin:0;font:800 1.12rem/1.35 var(--display)}
.faq-list details>p{margin:0;padding:0 0 22px;color:var(--muted)}
.source-note{margin-top:38px;padding:20px;background:var(--cream);border-left:4px solid var(--coral);font-size:.84rem}
.source-note a{font-weight:700;text-underline-offset:3px}
.love-directory-link,.love-language-link{padding:20px 22px;background:#fff;border:2px solid var(--ink);box-shadow:5px 5px 0 var(--coral);font-family:var(--body);font-size:.9rem}
.love-directory-link a,.love-language-link a{font-weight:800;text-decoration-color:var(--coral-dark);text-decoration-thickness:2px;text-underline-offset:4px}
.love-language-link{margin-top:30px;background:#fff3c8}
.language-next{padding:85px 0;color:#fff;background:var(--coral-dark);text-align:center}
.language-next h2{margin:12px auto;font:800 clamp(2.7rem,5vw,5.3rem)/.96 var(--display);letter-spacing:-.065em}
.language-next p{max-width:700px;margin:0 auto 28px}
.language-next>div>div{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:25px}
.language-next a:not(.button){color:#fff;font-size:.73rem;font-weight:800;text-transform:uppercase}
.button.light{color:var(--ink);background:var(--yellow);box-shadow:5px 5px 0 var(--ink)}

.language-detail-hero{background:linear-gradient(125deg,var(--cream) 0 65%,var(--lilac) 65%)}
.language-detail-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;min-height:520px;padding-block:70px}
.language-detail-hero h1{font-size:clamp(3.1rem,5.2vw,5.8rem)}
.answer-card{padding:38px;background:#fff;border:2px solid var(--ink);box-shadow:11px 11px 0 var(--coral);transform:rotate(1.5deg)}
.answer-card small{font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.answer-card p{margin:30px 0 12px;font:800 clamp(2rem,4vw,3.5rem)/1.15 var(--display);overflow-wrap:anywhere}
.answer-card>span{display:block;color:var(--muted);font-size:1rem}
.answer-card button{margin-top:28px;padding:10px 14px;background:var(--yellow);border:2px solid var(--ink);font-size:.66rem;font-weight:800;text-transform:uppercase;cursor:pointer}
.language-article-layout{display:grid;grid-template-columns:220px minmax(0,790px);justify-content:space-between;gap:80px}
.language-toc>div{position:sticky;top:105px;display:flex;flex-direction:column;padding:20px;background:var(--cream);border-top:4px solid var(--coral)}
.language-toc span{margin-bottom:10px;color:var(--coral-dark);font-size:.65rem;font-weight:800;text-transform:uppercase}
.language-toc a{padding:9px 0;border-bottom:1px solid var(--line);font-size:.79rem;font-weight:600;text-decoration:none}
.language-article{font-family:Georgia,serif;font-size:1.06rem;line-height:1.8}
.language-article>section{margin-bottom:65px;scroll-margin-top:105px}
.language-article h2{margin:9px 0 22px;font:800 clamp(2rem,3.5vw,3.2rem)/1.04 var(--display);letter-spacing:-.055em}
.language-article h3{font:800 1.25rem/1.2 var(--display)}
.language-article i{color:inherit}
.meaning-breakdown,.example-note,.caution-card{margin-top:28px;padding:24px 26px;background:var(--cream);border-left:4px solid var(--coral);font-family:var(--body)}
.meaning-breakdown h3,.example-note h3,.caution-card h3{margin:0 0 8px}
.meaning-breakdown p,.example-note p,.caution-card p{margin:0}
.pronunciation-row{display:grid;grid-template-columns:.72fr 1.28fr;border:2px solid var(--ink);font-family:var(--body)}
.pronunciation-row>div,.pronunciation-row>p{margin:0;padding:24px}
.pronunciation-row>div{background:var(--yellow);border-right:2px solid var(--ink)}
.pronunciation-row small{display:block;font-size:.62rem;font-weight:800;text-transform:uppercase}
.pronunciation-row strong{display:block;margin-top:8px;font-size:1.2rem}
.language-tip{padding:17px 20px;background:#fff;border:1px solid var(--line);font-family:var(--body);font-size:.88rem}
.language-article blockquote{margin:25px 0 10px;padding:32px;background:var(--ink);color:#fff;border:0;box-shadow:7px 7px 0 var(--yellow);font:500 clamp(1.55rem,3vw,2.45rem)/1.35 Georgia;overflow-wrap:anywhere}
.language-article table{display:table;width:100%;border-collapse:collapse;font-family:var(--body);font-size:.82rem}
.language-article th,.language-article td{padding:14px;text-align:left;vertical-align:top;border:1px solid var(--ink)}
.language-article th{background:var(--yellow);font-size:.67rem;text-transform:uppercase}
.reply-card{padding:28px;background:var(--lilac);border:2px solid var(--ink);box-shadow:7px 7px 0 var(--ink)}
.reply-card p{margin:0 0 8px;font:800 clamp(1.55rem,3vw,2.4rem)/1.25 var(--display);overflow-wrap:anywhere}
.reply-card span{font-family:var(--body);font-size:.85rem}
.language-practical-link{margin:20px 0 45px;padding:32px;background:var(--yellow);border:2px solid var(--ink);box-shadow:8px 8px 0 var(--coral);font-family:var(--body)}
.language-practical-link h2{margin-top:0}
.language-practical-link p{margin-bottom:0}
.language-siblings{color:#fff;background:var(--ink);border-top:2px solid var(--ink)}
.language-siblings>div{display:grid;grid-template-columns:repeat(3,1fr)}
.language-siblings a{display:flex;flex-direction:column;min-height:170px;padding:28px;color:#fff;border-left:1px solid #66515c;text-decoration:none}
.language-siblings a:last-child{border-right:1px solid #66515c}
.language-siblings a:hover{background:#3b2631}
.language-siblings small{color:var(--peach);font-size:.62rem;font-weight:800;text-transform:uppercase}
.language-siblings strong{margin:12px 0 6px;font:800 1.15rem var(--display)}
.language-siblings span{color:#cdbfc6;font-size:.84rem}
.all-languages-link{background:var(--coral-dark)}
.language-sitemap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.language-sitemap a{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;background:#fff;border:1px solid var(--line);text-decoration:none}
.language-sitemap span{color:var(--muted);text-align:right}
.home-language-callout{padding:75px 0;background:var(--lilac);border-block:2px solid var(--ink)}
.home-language-callout>.shell{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.home-language-callout>div>div:first-child>span{font-size:.68rem;font-weight:800;text-transform:uppercase}
.home-language-callout h2{margin:14px 0;font:800 clamp(3rem,5.4vw,5.7rem)/.94 var(--display);letter-spacing:-.07em}
.home-language-callout p{max-width:630px;margin:0 0 28px}
.home-phrase-stack{display:grid;grid-template-columns:1fr 1fr;gap:14px;transform:rotate(2deg)}
.home-phrase-stack span{display:grid;place-items:center;min-height:120px;padding:20px;background:var(--paper);border:2px solid var(--ink);box-shadow:6px 6px 0 var(--coral);font:800 clamp(1.2rem,2.5vw,2rem) var(--display);text-align:center}

@media(max-width:1100px) and (min-width:981px){.desktop-nav{gap:18px}.header-row{grid-template-columns:135px 1fr auto}.desktop-nav>a,.nav-group>button{font-size:.69rem}}
@media(max-width:980px){
  .language-hero-grid,.language-detail-hero-grid{grid-template-columns:1fr;padding-block:65px}
  .phrase-orbit{width:min(80vw,430px)}
  .answer-card{max-width:650px;transform:none}
  .language-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .language-article-layout{grid-template-columns:1fr}.language-toc{display:none}
  .home-language-callout>.shell{grid-template-columns:1fr}.home-phrase-stack{max-width:650px}
}
@media(max-width:720px){
  .language-hero h1,.language-detail-hero h1{font-size:clamp(3rem,14vw,5rem)}
  .language-summary-grid,.language-card-grid,.language-context-grid,.language-siblings>div,.language-sitemap{grid-template-columns:1fr}
  .language-context-grid{gap:35px}
  .phrase-orbit{width:min(76vw,340px)}
  .phrase-orbit span{font-size:.7rem}
  .language-card{min-height:230px}
  .pronunciation-row{grid-template-columns:1fr}.pronunciation-row>div{border-right:0;border-bottom:2px solid var(--ink)}
  .language-article{font-size:1rem;overflow:hidden}.language-article table{display:block;overflow-x:auto;white-space:normal}
  .answer-card{padding:26px}.language-article blockquote{padding:24px}
  .language-siblings a{border:0;border-bottom:1px solid #66515c;min-height:135px}
  .home-phrase-stack{grid-template-columns:1fr 1fr;transform:none}.home-phrase-stack span{min-height:90px}
}

/* Data tables outside the article body: hub signal tables, comparison
   snapshots, and the pair grid. Scoped to .table-wrap so a table always sits
   inside its own horizontal scroll container on a phone. */
.table-wrap table{width:100%;border-collapse:collapse;font-family:var(--body);font-size:.85rem;background:#fff;border:2px solid var(--ink)}
.table-wrap th,.table-wrap td{padding:13px 15px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.table-wrap thead th{background:var(--yellow);font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.table-wrap tbody th{width:22%;font-weight:800}
.table-wrap tbody tr:last-child th,.table-wrap tbody tr:last-child td{border-bottom:0}
.table-wrap tbody tr:nth-child(even){background:var(--cream)}
.table-wrap table.comparison-table{margin-top:0;border-left:2px solid var(--ink)}
.hub-faq h3{margin:32px 0 8px;font:800 1.35rem/1.25 var(--display);letter-spacing:-.03em}
.hub-faq p{color:#49363f}
.compare-scenarios h3{margin:34px 0 8px;font:800 1.45rem/1.2 var(--display);letter-spacing:-.035em}
.scenario-tip{margin-top:10px;padding:13px 16px;background:var(--cream);border-left:5px solid var(--coral)}
.scenario-tip strong{font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:var(--coral-dark)}

/* Homepage proof table and FAQ. The figure column is the only place on the
   site where a number carries the argument, so it gets display type. */
.home-proof .table-wrap{margin-top:38px}
.home-proof td.figure{font:800 1.35rem/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap;width:9ch}
.home-faq{background:var(--cream);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.home-faq h3{margin:30px 0 8px;font:800 1.3rem/1.25 var(--display);letter-spacing:-.03em}
.home-faq p{color:#49363f}

/* Mobile related-links overlay. The back-to-top control already follows the
   scroll on every screen; this second control appears only on phones, where the
   related-content blocks sit too far below the fold to be found. */
.floating-scroll-tools{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.related-dots{
  display:none;
  width:56px;height:56px;padding:0;
  align-items:center;justify-content:center;
  background:var(--coral-dark);color:#fff;
  border:2px solid var(--ink);border-radius:50%;
  box-shadow:4px 4px 0 var(--ink);
  cursor:pointer;
}
.related-dots:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}
.related-dots-grid{display:grid;grid-template-columns:repeat(3,6px);gap:5px;place-items:center}
.related-dots-grid i{width:6px;height:6px;background:#fff;border-radius:50%;display:block}
.related-dots[aria-expanded="true"]{background:var(--yellow)}
.related-dots[aria-expanded="true"] .related-dots-grid i{background:var(--ink)}

.related-overlay{position:fixed;inset:0;z-index:200;display:none}
.related-overlay.is-open{display:block}
.related-overlay-backdrop{position:absolute;inset:0;width:100%;padding:0;background:rgba(34,26,34,.55);border:0;cursor:pointer}
.related-overlay-panel{
  position:absolute;left:0;right:0;bottom:0;
  max-height:76vh;overflow-y:auto;
  padding:18px 18px max(22px,env(safe-area-inset-bottom));
  background:var(--paper);border-top:3px solid var(--ink);
  border-radius:16px 16px 0 0;
  animation:related-sheet .22s ease-out;
}
@keyframes related-sheet{from{transform:translateY(14px);opacity:.6}to{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.related-overlay-panel{animation:none}}
.related-overlay-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.related-overlay-head p{margin:0;font:800 1.35rem/1 var(--display);letter-spacing:-.03em}
.related-overlay-close{
  width:38px;height:38px;padding:0;background:#fff;color:var(--ink);
  border:2px solid var(--ink);border-radius:50%;font-size:.85rem;cursor:pointer;
}
.related-overlay ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.related-overlay a{
  display:grid;gap:2px;padding:13px 15px;text-decoration:none;color:var(--ink);
  background:#fff;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--peach);
}
.related-overlay a:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--peach)}
.related-overlay a span{font-size:.62rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--coral-dark)}
.related-overlay a b{font:700 1rem/1.3 var(--display)}
body.has-overlay{overflow:hidden}

.related-dots{display:inline-flex}

/* Desktop gets the same control, presented as a centred dialog rather than a
   thumb-reach sheet: there is no bottom edge to sweep up from with a mouse, and
   a wide sheet would put the links further from the pointer, not closer. */
@media(min-width:721px){
  .related-dots{width:60px;height:60px}
  .related-dots-grid{grid-template-columns:repeat(3,7px);gap:6px}
  .related-dots-grid i{width:7px;height:7px}
  .related-dots:hover{background:var(--yellow);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
  .related-dots:hover .related-dots-grid i{background:var(--ink)}
  .related-overlay-panel{
    left:50%;right:auto;bottom:auto;top:50%;
    width:min(560px,calc(100vw - 48px));
    max-height:min(70vh,640px);
    transform:translate(-50%,-50%);
    border:3px solid var(--ink);border-radius:6px;
    box-shadow:14px 14px 0 var(--coral);
    padding:26px 28px 28px;
    animation:related-dialog .18s ease-out;
  }
  @keyframes related-dialog{from{transform:translate(-50%,-46%);opacity:.5}to{transform:translate(-50%,-50%);opacity:1}}
  .related-overlay ul{grid-template-columns:1fr 1fr;gap:10px}
  .related-overlay a:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--peach)}
  .related-overlay-head p{font-size:1.6rem}
}
@media(min-width:721px) and (prefers-reduced-motion:reduce){
  .related-overlay-panel{animation:none}
}
