/* Ariadne — threads, intersections, and a little room for curiosity. */
:root{--primary:#f3a18e;--primary-light:#ffc4ae;--primary-glow:rgba(243,161,142,.12);--bg:#111213;--text:#f3efe6;--text-secondary:#aaa9a4;--text-muted:#93918d;--glass-border:rgba(239,228,213,.12);--glass:rgba(239,228,213,.025);--accent:#b8a1d5}
html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--bg);color:var(--text)}::selection{background:#f3a18e;color:#111213}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #ffc4ae;outline-offset:6px}a{color:inherit}.container{max-width:1360px;padding:0 64px}.nav{padding:22px 0;background:rgba(17,18,19,.92);border-bottom:1px solid var(--glass-border)}.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.wordmark{font-family:Georgia,'Times New Roman',serif;font-size:36px;letter-spacing:-1.8px;line-height:1}.brand-dot{color:var(--primary)}.thread-mark{display:grid;place-items:center;width:32px;height:38px;border:1px solid #f3a18e;border-radius:50%;font:italic 35px/1 Georgia,serif;color:var(--primary);transform:rotate(-22deg)}.nav-links{gap:30px}.nav-links a{font-size:12px;color:#c9c6bf}.nav-links .nav-explore{border:1px solid #77716a;border-radius:5px;padding:10px 16px;color:var(--text);display:flex;gap:25px}.nav-explore:hover{background:#282623;border-color:var(--primary)}.lang-toggle{margin-left:5px;gap:0}.lang-btn{font-size:11px;padding:6px}.lang-btn.active{color:var(--text);background:transparent}.lang-divider{margin:0 3px}.hero{min-height:auto;text-align:left;padding:156px 0 0;background:radial-gradient(ellipse at 75% 45%,rgba(108,68,69,.1),transparent 48%);overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.04fr 1fr;gap:0 20px;align-items:center}.hero-content{position:relative;z-index:2;padding:18px 0 55px;max-width:650px}.hero-eyebrow{font-size:9px;font-weight:500;letter-spacing:1.6px;display:flex;align-items:center;gap:10px;color:#c4bab0;margin-bottom:32px}.status-dot{height:5px;width:5px;border-radius:50%;background:var(--primary);box-shadow:0 0 12px #eea18b}.hero-title{font-size:clamp(50px,5.7vw,82px);font-weight:400;letter-spacing:-4.2px;line-height:1.04;margin-bottom:26px;color:var(--text)}.hero-title em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--primary);letter-spacing:-3px}.hero-subtitle{font-size:14px;line-height:1.9;max-width:390px;margin:0 0 30px;color:var(--text-secondary)}.hero-cta{justify-content:flex-start;display:flex;align-items:center;gap:28px;margin-bottom:17px}.btn-primary{background:var(--primary);color:#201915;box-shadow:none;border:1px solid var(--primary)}.btn-primary:hover{background:#ffc4ae;box-shadow:0 8px 24px #0003;transform:translateY(-2px)}.btn-large{padding:15px 22px;border-radius:5px;font-size:13px;gap:36px}.hero-secondary{font-size:12px;text-decoration:none;color:#dad5cd;display:flex;gap:14px;align-items:center}.hero-secondary:hover{color:var(--primary)}.hero-note{font-size:10px;color:#a8a19a;letter-spacing:.2px}.hero-note span{color:var(--primary);margin-right:5px}.thread-art{position:relative;height:540px;align-self:start;isolation:isolate}.thread-weave{position:absolute;width:132%;max-width:none;height:113%;left:-17%;top:-5%;object-fit:contain;animation:thread-arrive 1.5s ease-out both;pointer-events:none}.art-grid{position:absolute;inset:10% -10% 8%;background-image:radial-gradient(#ded0bc25 .65px,transparent .65px);background-size:24px 24px;-webkit-mask-image:radial-gradient(ellipse,#000 20%,transparent 70%);mask-image:radial-gradient(ellipse,#000 20%,transparent 70%);z-index:-1}.art-coordinate{position:absolute;left:4%;top:5px;color:#9b9690;font:8px/1.5 monospace;letter-spacing:1.4px}.thread-node{position:absolute;display:flex;align-items:center;gap:12px;min-width:180px;padding:14px 17px;border:1px solid #66524b;border-radius:7px;background:#1c1c1af0;box-shadow:0 12px 35px #0004;text-decoration:none;font-size:11px;color:#ece5dc;transition:transform .25s,border-color .25s,background .25s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.thread-node:hover{transform:translateY(-5px);border-color:var(--primary);background:#29231f}.thread-node small{display:block;font-size:8px;letter-spacing:.15px;color:#b5aaa0;margin-top:4px}.thread-node>span:last-child{margin-left:auto;color:#c7aa99}.node-dot{width:7px;height:7px;border-radius:50%;background:#f3a18e;box-shadow:0 0 0 4px #f3a18e15;flex-shrink:0}.node-math{left:2%;top:26%}.node-physics{right:-1%;top:48%;border-color:#635873}.node-physics .node-dot{background:#b8a1d5;box-shadow:0 0 0 4px #b8a1d515}.node-philosophy{left:14%;bottom:13%;border-color:#575d4b}.node-philosophy .node-dot{background:#b0c29a;box-shadow:0 0 0 4px #b0c29a15}.art-caption{position:absolute;bottom:3%;right:0;font:italic 14px Georgia,serif;color:#bdb1a5;display:flex;gap:14px;align-items:center}.caption-line{width:35px;height:1px;background:#b59c84}.curriculum-scale{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1.1fr;gap:25px;align-items:center;padding:30px 0;border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border)}.scale-intro{font-size:12px;line-height:1.75;color:#b7b1a7}.curriculum-scale strong{font:36px/1.1 Georgia,serif;display:block;letter-spacing:-1px}.curriculum-scale div>span{display:block;color:#a6a096;font-size:10px;margin-top:7px}.curriculum-scale>a{font-size:10px;text-decoration:none;display:flex;gap:20px;align-items:center;justify-content:flex-end}.curriculum-scale>a:hover{color:var(--primary)}section{padding:90px 0}.section-title{font:400 39px/1.2 Georgia,serif;letter-spacing:-1.2px;text-align:left;max-width:650px}.section-subtitle{text-align:left;margin:18px 0 36px;max-width:620px;font-size:13px;line-height:1.85}.subjects-section{background:none}.subjects-grid{grid-template-columns:repeat(3,1fr);gap:12px}.subject-card{padding:25px;border-radius:7px;background:var(--glass);border:1px solid var(--glass-border);transition:background .2s,transform .2s,border-color .2s}.subject-card:hover{background:#232221;transform:translateY(-3px);border-color:var(--card-color)}.subject-icon{font:24px Georgia,serif;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:18px;background:color-mix(in srgb,var(--card-color) 12%,transparent)}.subject-card h3{font-size:14px;margin-bottom:10px}.subject-card p{font-size:11px;line-height:1.85;color:#aca9a2}.subject-levels{font-size:9px;margin-top:20px;padding-top:14px;border-top:1px solid var(--glass-border);display:block;color:#b8b1a7}.how-section{background:#181919;border-block:1px solid var(--glass-border)}.how-grid{position:relative;gap:40px}.how-grid:before{content:'';position:absolute;top:23px;left:0;right:0;border-top:1px solid #74534a}.how-card{position:relative;padding:0;text-align:left;background:none;border:0}.how-number{position:relative;z-index:1;background:#181919;border:1px solid #95685a;color:var(--primary);font:italic 22px Georgia,serif;width:48px;height:48px;border-radius:50%;margin:0 0 24px}.how-card h3{font-size:16px}.how-card p{font-size:12px}.faq-section{background:none}.faq-list{max-width:none}.faq-item summary{font-size:13px;padding:24px 0}.faq-item p{font-size:12px;max-width:840px}.cta-section{padding:100px 0;background:radial-gradient(ellipse at center,#ad705317,transparent 65%);border-top:1px solid var(--glass-border)}.cta-section h2{font:italic 52px Georgia,serif;color:var(--primary)}.cta-section p{font-size:14px;line-height:1.85}.btn-secondary{border-radius:5px;font-size:13px}.footer{background:#0e0f10;border-top:1px solid var(--glass-border)}.footer-brand img{max-width:135px;height:auto}.footer-brand p,.footer-links a,.footer-disclaimer,.footer-bottom,.footer-compliance{font-size:11px}.footer-links h4{font-size:12px}.footer-grid{gap:50px}.footer-bottom{border-color:var(--glass-border)}
/* The explorer uses the same identity while keeping its existing map interactions. */
.explorer-page{background:#111213;height:100dvh}.explorer-page .top-bar{background:#171818;border-color:var(--glass-border);padding:18px 0}.explorer-page .top-bar-content{max-width:none;padding:0 30px;gap:35px}.explorer-page .nav-logo{gap:8px}.explorer-page .wordmark{font-size:30px}.explorer-page .thread-mark{width:25px;height:30px;font-size:27px}.explorer-page .search-trigger{border-radius:7px;background:#222323;border-color:#ffffff15;padding:12px 15px;color:#c3bdb3;font-size:12px}.explorer-page .search-trigger-kbd{color:#b9b0a6}.explorer-page .view-toggle{border-radius:6px}.explorer-page .view-btn.active{color:#f5c2b2;background:#f3a18e15}.explorer-page .path-trigger{border-color:#b48a7155;color:#f3c1a9;border-radius:6px}.explorer-page .breadcrumbs{border:1px solid #d3bd9e25;border-radius:6px;background:#20201de8}.explorer-page .canvas-tip-inner{border-radius:6px;background:#22221fe8;border-color:#d3bd9e25;color:#bfb7ac}.explorer-page .detail-panel{background:#181918f5;border-color:#b8a68d30}.explorer-page .detail-header{background:#1c1d1bf5}.explorer-page .detail-course-name{font-family:Georgia,serif;font-weight:400}.explorer-page .loading-overlay{background:#111213}
@keyframes thread-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{padding-top:175px}.thread-art{height:570px}}
@media(max-width:1050px){.container{padding:0 35px}.nav-links{gap:20px}.hero-title{font-size:62px;letter-spacing:-3px}.hero-eyebrow{font-size:8px;letter-spacing:1px}.thread-art{height:520px}.thread-node{min-width:150px;padding:12px;font-size:10px}.node-physics{right:-3%}.hero-cta{gap:18px}.btn-large{gap:20px}.curriculum-scale{gap:15px}.curriculum-scale>a{line-height:1.6}.explorer-page .top-bar-content{gap:15px;padding:0 18px}}
@media(max-width:768px){.container{padding:0 24px}.nav{padding:18px 0}.wordmark{font-size:30px}.thread-mark{width:26px;height:32px;font-size:28px}.nav-links{background:#191a19;top:75px;border-bottom:1px solid var(--glass-border);padding:25px;gap:22px}.nav-links .lang-toggle{margin:0}.hamburger{padding:10px;min-width:44px;min-height:44px}.hero{padding-top:115px}.hero-layout{grid-template-columns:1fr}.hero-content{padding:14px 0 0}.hero-title{font-size:clamp(49px,9vw,70px);letter-spacing:-2.7px}.hero-eyebrow{margin-bottom:25px;font-size:8px}.hero-subtitle{font-size:13px;max-width:420px}.hero-note{font-size:9px}.thread-art{height:390px;max-width:560px;width:100%;margin:25px auto 0}.thread-weave{width:118%;left:-10%}.art-coordinate{top:12px;left:0}.thread-node{min-width:158px}.node-math{top:25%;left:2%}.node-physics{right:0}.node-philosophy{left:13%;bottom:10%}.art-caption{bottom:0;font-size:12px}.curriculum-scale{grid-template-columns:repeat(3,1fr);margin-top:30px;padding:25px 0;gap:22px 15px}.scale-intro{grid-column:1/-1}.scale-intro br{display:none}.curriculum-scale strong{font-size:32px}.curriculum-scale div>span{font-size:9px}.curriculum-scale>a{grid-column:1/-1;justify-content:flex-start;margin-top:5px}.subjects-grid{grid-template-columns:repeat(2,1fr)}.subject-card{padding:20px}.section-title{font-size:32px}section{padding:65px 0}.how-grid{gap:30px}.how-grid:before{display:none}.how-number{margin-bottom:18px}.cta-section{padding:75px 0}.cta-section h2{font-size:39px}.cta-buttons{align-items:center}.cta-buttons .btn{width:auto}.explorer-page .top-bar-content{gap:12px;flex-wrap:wrap}.explorer-page .search-trigger{order:3;max-width:none;flex-basis:100%;display:flex}.explorer-page .top-bar-right{margin-left:auto}.explorer-page .wordmark{font-size:26px}.explorer-page .top-bar{padding:12px 0}.explorer-page .search-trigger-kbd{display:none}}
@media(max-width:430px){.subjects-grid{grid-template-columns:1fr}.hero-cta{gap:20px}.btn-large{padding:14px 17px;font-size:12px}.hero-secondary{font-size:11px;gap:8px}.thread-art{height:350px}.thread-node{min-width:145px;padding:10px;gap:9px}.thread-node small{font-size:7.5px}.explorer-page .top-bar-content{padding:0 12px;gap:8px}.explorer-page .top-bar-right{gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.explorer-page .ariadne-search-card,.explorer-page .ariadne-path-card{background:#1c1d1c;border-color:#b8a68d40}.explorer-page .ariadne-search-input{color:#f3efe6}
@media(max-width:768px){.hero-cta{flex-direction:row}.hero-cta .btn{width:auto}}
/* Brand: the Inquisitive Flow logo + product name, exactly as inquisitiveflow.ca presents Ariadne (product colour #f472b6). */
.nav-logo{gap:14px}
.nav-logo img{height:48px;width:auto;opacity:.95;transition:transform .25s,opacity .25s}
.nav-logo:hover img{transform:scale(1.04);opacity:1}
.brand-product{font:700 21px/1 Inter,sans-serif;letter-spacing:-.02em;color:#f472b6;padding-left:14px;border-left:1px solid var(--glass-border);white-space:nowrap}
.explorer-page .nav-logo img{height:36px}
.explorer-page .brand-product{font-size:17px;padding-left:12px}
@media(max-width:768px){.nav-logo img{height:40px}.brand-product{font-size:17px}}
@media(max-width:650px){.explorer-page .nav-logo img{height:30px}.explorer-page .brand-product{display:none}}
/* Hero art: the Ariadne artwork used on the inquisitiveflow.ca product card. */
.hero-art-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%;border-radius:14px;border:1px solid var(--glass-border);box-shadow:0 30px 80px #0006;animation:thread-arrive 1.2s ease-out both;z-index:0}
.thread-art .thread-node,.thread-art .art-coordinate,.thread-art .art-caption{z-index:2}
.thread-art .art-coordinate,.thread-art .art-caption{text-shadow:0 1px 6px #000c}
/* Readable labels: nothing on the landing below 11px, explorer chrome ≥10px; the MEQ disclaimer is body-size. */
.hero-eyebrow,.hero-note,.curriculum-scale div>span,.subject-levels,.how-card .feature-number,.lang-btn,.footer-brand p,.footer-links a,.footer-bottom,.footer-compliance{font-size:11px}
.footer-disclaimer,.footer-disclaimer p{font-size:12px;line-height:1.7}
.explorer-page .atlas-kicker,.explorer-page .sidebar-heading,.explorer-page .sidebar-context,.explorer-page .sidebar-footer,.explorer-page .atlas-legend>span,.explorer-page .atlas-controls output,.explorer-page .directory-name small,.explorer-page .detail-section-title,.explorer-page .detail-subject-badge,.explorer-page .atlas-caption p{font-size:10px}
.explorer-page .atlas-edition{display:none}

/* One-sentence Québec H1: phone size so it reads as a headline, not a wall */
@media(max-width:768px){.hero-title{font-size:clamp(40px,10vw,52px);letter-spacing:-2px;line-height:1.06}}
/* Readability floor (the "small words everywhere" pass): no label under 12px, no link, button or running text under 13px. */
.hero-eyebrow,.lang-btn,.subject-levels,.curriculum-scale div>span{font-size:12px}
.hero-note,.hero-secondary,.curriculum-scale a,.subject-card p,.footer-brand p,.footer-location,.footer-links a,.footer-bottom p,.footer-compliance,.footer-compliance span{font-size:13px}
/* Hero portrait: the clip turns to face the visitor once and holds its last frame (no loop); the still is the reduced-motion fallback. */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%;border-radius:14px;border:1px solid var(--glass-border);box-shadow:0 30px 80px #0006;animation:thread-arrive 1.2s ease-out both;z-index:0}
.hero-still{display:none}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}.hero-still{display:block}}
