:root{--joy:#d9b75f;--mochi:#bea898;--mocha:#aa7c68;--blue:#86a7b3;--brown:#7b6254;--plum:#654552;--nigiri:#c99a82;--mapped:#7f9b9e;--cream:#f7f3ed;--ink:#292725;--white:#fff;--radius:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0}.brand{text-decoration:none;font-weight:800;font-size:1.25rem;letter-spacing:-.04em}.brand i{color:var(--mocha);font-style:normal}.navlinks{display:flex;align-items:center;gap:28px}.navlinks a{text-decoration:none;font-weight:650}.navlinks a:hover,.navlinks a[aria-current=page]{color:var(--plum)}.nav-cta{background:var(--ink);color:white;padding:11px 18px;border-radius:999px}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding:72px 0 96px}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:800;color:var(--plum)}h1,h2,h3{line-height:1.05;letter-spacing:-.045em;margin:0}h1{font-size:clamp(3.3rem,7vw,6.8rem);max-width:850px}h2{font-size:clamp(2.35rem,5vw,4.2rem)}h3{font-size:1.35rem}p{margin:0}.lead{font-size:clamp(1.1rem,2vw,1.35rem);max-width:650px;margin:28px 0;color:#56504c}.buttons{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:10px;text-decoration:none;padding:14px 22px;border-radius:999px;background:var(--plum);color:white;font-weight:750}.button.secondary{background:transparent;color:var(--ink);border:1px solid #b9aea6}.process-visual{background:var(--blue);border-radius:42px 42px 120px 42px;padding:32px;min-height:500px;position:relative;overflow:hidden}.visual-title{color:white;font-size:1rem;font-weight:750}.flow{display:grid;gap:14px;margin-top:55px}.flow-row{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,.91);border-radius:18px;padding:17px 19px;box-shadow:0 14px 30px rgba(54,66,72,.10)}.num{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--joy);font-weight:850}.flow-row:nth-child(2){margin-left:38px}.flow-row:nth-child(3){margin-left:76px}.spark{position:absolute;width:160px;height:160px;background:var(--nigiri);border-radius:50%;right:-45px;bottom:-45px}.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:110px}.stat{border-top:1px solid #b9aea6;padding:20px 0}.stat strong{display:block;font-size:1.45rem}.section{padding:110px 0}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:54px}.section-head p{font-size:1.1rem;color:#5b5652}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{min-height:290px;padding:30px;border-radius:var(--radius);display:flex;flex-direction:column;justify-content:space-between}.card:nth-child(1){background:var(--joy)}.card:nth-child(2){background:var(--mochi)}.card:nth-child(3){background:var(--mapped);color:white}.card-tag{font-size:.8rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800}.card p{margin-top:14px}.method{background:var(--plum);color:white}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.25);border-radius:26px;overflow:hidden;margin-top:55px}.step{background:var(--plum);padding:30px;min-height:245px}.step span{color:var(--joy);font-weight:850}.step h3{margin:35px 0 14px}.step p{color:#eadfe3}.cta{margin:110px auto;background:var(--mocha);color:white;border-radius:40px;padding:70px;display:flex;justify-content:space-between;align-items:end;gap:40px}.cta h2{max-width:700px}.cta .button{background:white;color:var(--ink)}footer{padding:35px 0 45px;border-top:1px solid #cfc5bd}.foot{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;color:#665f5a}.about-hero{padding:80px 0 100px}.about-hero h1{font-size:clamp(3.2rem,7vw,6.4rem)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:60px}.about-panel{border-radius:34px;padding:50px;min-height:380px}.about-panel:first-child{background:var(--joy)}.about-panel:last-child{background:var(--blue);color:white}.about-panel p{font-size:1.15rem;margin-top:24px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.value{background:white;border-radius:24px;padding:28px}.value h3{margin-bottom:15px}.mobile-toggle{display:none;border:0;background:transparent;font:inherit;font-weight:800}
@media(max-width:820px){.wrap{width:min(100% - 28px,1180px)}.mobile-toggle{display:block}.navlinks{display:none;position:absolute;z-index:5;top:72px;left:14px;right:14px;background:white;padding:20px;border-radius:20px;box-shadow:0 16px 40px #443a3420;flex-direction:column;align-items:stretch}.navlinks.open{display:flex}.nav-cta{text-align:center}.hero,.section-head,.about-grid{grid-template-columns:1fr}.hero{padding:50px 0 70px;gap:40px}.process-visual{min-height:430px}.strip,.cards,.values{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.cta{padding:40px 28px;align-items:flex-start;flex-direction:column}.section{padding:80px 0}.about-panel{padding:35px;min-height:unset}}@media(max-width:520px){h1{font-size:3.15rem}.steps{grid-template-columns:1fr}.flow-row:nth-child(2),.flow-row:nth-child(3){margin-left:0}.process-visual{padding:23px;border-radius:30px 30px 80px 30px}}
@media(prefers-reduced-motion:no-preference){.flow-row{animation:rise .65s ease both}.flow-row:nth-child(2){animation-delay:.1s}.flow-row:nth-child(3){animation-delay:.2s}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}

body{overflow-x:hidden;background:#faf7f1}.hero-new{display:grid;grid-template-columns:.92fr 1.08fr;gap:54px;align-items:center;padding:58px 0 95px}.hero-copy{position:relative;z-index:2}.hero-new h1,.quote-hero h1{font-size:clamp(4rem,8vw,7.7rem)}h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:var(--mocha)}.scribble{display:inline-block;transform:rotate(-3deg);background:var(--joy);padding:8px 15px;border-radius:6px 18px 8px 16px;font-family:Georgia,serif;font-style:italic;margin:0 0 25px 25px}.mini-proof{display:flex;align-items:center;gap:14px;margin-top:32px;font-size:.92rem}.faces{letter-spacing:-5px;color:var(--plum);font-size:1.4rem}.hero-photo-wrap{position:relative;min-height:610px}.hero-photo{width:100%;height:610px;object-fit:cover;border-radius:46% 46% 24px 24px;box-shadow:18px 20px 0 var(--joy)}.float-card{position:absolute;background:white;padding:15px 19px;border-radius:16px;box-shadow:0 18px 50px #2b24202a;display:flex;align-items:center;gap:10px;transform:rotate(-4deg)}.float-card span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--nigiri);color:white}.float-one{left:-40px;top:23%}.float-two{right:-24px;bottom:16%;transform:rotate(5deg)}.float-two span{background:var(--mapped)}.star{position:absolute;font-size:3rem;color:var(--plum)}.star-a{right:-20px;top:4%}.star-b{left:-15px;bottom:4%;color:var(--mocha)}.ticker{background:var(--plum);color:white;transform:rotate(-1.5deg);width:102%;margin-left:-1%;overflow:hidden;white-space:nowrap;padding:16px 0;font-weight:850;letter-spacing:.08em}.ticker div{display:inline-block;min-width:200%;animation:marquee 24s linear infinite}@keyframes marquee{to{transform:translateX(-50%)}}.playful-intro{padding-top:130px}.bento{display:grid;grid-template-columns:1.35fr .8fr .65fr;grid-template-rows:235px 235px;gap:18px}.bento-card,.bento-image{border-radius:30px;margin:0;overflow:hidden}.bento-card{padding:34px}.bento-card.big{grid-row:1/3;background:var(--joy);display:flex;flex-direction:column;justify-content:space-between}.bento-card.big h3{font-size:clamp(2.2rem,4vw,3.8rem);max-width:560px}.bubble-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bubble-row span{background:#fff9;padding:9px 15px;border-radius:999px;font-weight:750}.bubble-row .pop{background:var(--plum);color:white}.bubble-row i{font-style:normal}.bento-image{grid-row:1/3;position:relative}.bento-image img{width:100%;height:100%;object-fit:cover}.bento-image figcaption{position:absolute;left:16px;right:16px;bottom:16px;background:#fffffff0;padding:13px 15px;border-radius:14px;font-weight:700}.bento-card.small{display:flex;flex-direction:column;justify-content:center;transform:rotate(2deg)}.bento-card.small strong{font-family:Georgia,serif;font-size:3.2rem;font-style:italic}.bento-card.small span{font-weight:750}.peach{background:var(--nigiri);color:white}.blue{background:var(--blue);color:white;transform:rotate(-2deg)!important}.method-head{display:flex;justify-content:space-between;align-items:end}.loop{font-size:6rem;color:var(--joy);line-height:1}.founder-strip{display:grid;grid-template-columns:340px 1fr;gap:60px;align-items:center;margin-top:110px;margin-bottom:110px;background:#ede2d8;border-radius:160px 34px 34px 160px;padding:22px 65px 22px 22px}.founder-strip img{width:340px;height:340px;object-fit:cover;border-radius:50%}.founder-strip h2{margin:10px 0 18px}.founder-strip p:not(.eyebrow){font-size:1.1rem;max-width:640px}.founder-strip a{display:inline-block;margin-top:20px;font-weight:800;color:var(--plum)}.offer-band{position:relative;margin-top:110px;margin-bottom:110px;background:var(--blue);color:white;border-radius:38px;padding:70px;display:grid;grid-template-columns:1fr auto;gap:25px 55px;align-items:end;overflow:hidden}.offer-band h2{max-width:780px}.offer-band p:not(.eyebrow){font-size:1.1rem;max-width:650px;margin-top:22px}.offer-band .eyebrow{color:#fff}.button.light{background:white;color:var(--ink);white-space:nowrap}.offer-shape{position:absolute;right:34%;top:-60px;font-size:13rem;color:#ffffff17;font-weight:900}.quote-hero{padding:80px 0 70px;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end}.quote-note{background:var(--joy);padding:32px;border-radius:60px 25px 25px 25px;transform:rotate(2deg)}.quote-note>span{font-size:2.5rem;color:var(--plum)}.quote-note strong{display:block;font-size:1.4rem;line-height:1.2;margin:8px 0 12px}.quote-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;padding-bottom:110px}.quote-form,.quote-aside{padding:42px;border-radius:32px}.quote-form{background:white;display:grid;gap:20px;box-shadow:0 22px 70px #5a463513}.quote-form label{display:grid;gap:8px;font-weight:750}.quote-form input,.quote-form textarea{width:100%;border:1px solid #d5cac2;background:#faf7f1;border-radius:14px;padding:15px 16px;font:inherit;color:inherit}.quote-form input:focus,.quote-form textarea:focus{outline:3px solid #86a7b355;border-color:var(--blue)}.quote-form .button{border:0;justify-self:start;cursor:pointer;font-size:1rem}.form-status{background:#e7efec;border-radius:14px;padding:14px}.quote-aside{background:var(--plum);color:white}.quote-aside .eyebrow{color:var(--joy)}.quote-aside ol{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:25px;counter-reset:item}.quote-aside li{display:grid;gap:4px;padding-left:52px;position:relative}.quote-aside li:before{counter-increment:item;content:'0' counter(item);position:absolute;left:0;color:var(--joy);font-weight:850}.quote-aside li span{color:#e6dce0}
@media(max-width:900px){.hero-new,.quote-hero,.quote-layout{grid-template-columns:1fr}.hero-photo-wrap{min-height:520px}.hero-photo{height:520px}.bento{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bento-card.big{grid-row:auto;grid-column:1/3;min-height:390px}.bento-image{grid-row:auto;height:420px}.offer-band{grid-template-columns:1fr}.float-one{left:-8px}.float-two{right:-8px}.founder-strip{grid-template-columns:220px 1fr;border-radius:120px 30px 30px 120px;padding-right:35px;gap:35px}.founder-strip img{width:220px;height:220px}}@media(max-width:600px){.hero-new h1,.quote-hero h1{font-size:3.8rem}.hero-photo-wrap{min-height:420px}.hero-photo{height:420px;box-shadow:10px 12px 0 var(--joy)}.float-card{font-size:.8rem;padding:10px}.star{display:none}.bento{grid-template-columns:1fr}.bento-card.big{grid-column:auto;min-height:390px}.bento-image{height:480px}.offer-band{padding:45px 28px}.quote-form,.quote-aside{padding:28px}.method-head{align-items:flex-start}.loop{font-size:4rem}.founder-strip{grid-template-columns:1fr;border-radius:120px 120px 30px 30px;padding:18px 25px 36px;text-align:center}.founder-strip img{width:100%;height:auto;aspect-ratio:1;border-radius:50%;object-position:center 22%}.founder-strip p:not(.eyebrow){font-size:1rem}}
.spam-field{position:absolute!important;left:-9999px!important}.privacy-note{font-size:.84rem;color:#746b65}.form-status.success{background:#e4eee8;color:#244b36}.form-status.error{background:#f7e3df;color:#7c2d22}.quote-form button:disabled{opacity:.65;cursor:wait}

/* jjvmarketing signature edition */
:root{--ink:#201d1c;--cream:#f4efe8;--plum:#553745;--joy:#d7b45a;--blue:#7898a2;--mocha:#a57360;--nigiri:#c58f76}body{background:var(--cream);background-image:radial-gradient(#55374512 1px,transparent 1px);background-size:25px 25px;color:var(--ink)}header.wrap{position:sticky;top:12px;z-index:20}.nav{margin-top:12px;padding:10px 12px 10px 22px;border:1px solid #ffffffa8;border-radius:999px;background:#f9f5efdc;box-shadow:0 14px 50px #4d3b3014;backdrop-filter:blur(18px)}.brand{font-family:Georgia,serif;font-size:1.45rem;font-weight:500}.brand i{font-family:Inter,ui-sans-serif,sans-serif;font-size:.92em;font-weight:800}.navlinks{gap:8px}.navlinks>a:not(.nav-cta){padding:10px 14px;border-radius:999px;font-size:.9rem}.navlinks>a:not(.nav-cta):hover{background:white}.nav-cta{background:var(--plum);padding:12px 19px}.hero-new{min-height:760px;padding-top:72px;gap:76px}.hero-copy:before{content:"JJV / 01";display:block;font-size:.7rem;letter-spacing:.2em;color:#766b65;margin-bottom:28px}.scribble{margin-left:0;border-radius:0;background:transparent;padding:0 0 7px;border-bottom:2px solid var(--joy);transform:none;color:var(--plum);font-size:1rem}.hero-new h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em;line-height:.89}.hero-new h1 em{position:relative}.hero-new h1 em:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:9px;background:var(--joy);border-radius:50%;opacity:.8;transform:rotate(-1deg)}.hero-new .lead{border-left:1px solid #a99d93;padding-left:24px}.button{border-radius:2px;padding:16px 24px;letter-spacing:.01em;box-shadow:5px 5px 0 #d7b45a;transition:transform .25s,box-shadow .25s}.button:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 #d7b45a}.button.secondary{box-shadow:none;border-radius:2px;background:#ffffff7a}.hero-photo-wrap:before{content:"";position:absolute;inset:-18px 24px 34px -18px;border:1px solid #6e5850;z-index:-1;border-radius:48% 48% 2px 2px}.hero-photo{border-radius:48% 48% 2px 2px;filter:saturate(.82) contrast(1.03);box-shadow:22px 24px 0 var(--joy)}.float-card{border-radius:2px;border:1px solid #e5ddd5;box-shadow:0 18px 45px #2b242021}.float-card span{border-radius:2px}.star{font-family:Georgia,serif}.ticker{background:var(--ink);transform:rotate(-.6deg);padding:18px 0;font-family:Georgia,serif;font-weight:400}.playful-intro{position:relative}.playful-intro:before{content:"02";position:absolute;right:0;top:65px;font-family:Georgia,serif;font-size:8rem;color:#5537450b}.section-head h2{font-family:Georgia,serif;font-weight:400}.bento{gap:12px}.bento-card,.bento-image{border-radius:2px}.bento-card.big{background:var(--plum);color:white;padding:46px}.bento-card.big .card-tag{color:var(--joy)}.bento-card.big h3{font-family:Georgia,serif;font-weight:400}.bubble-row span{border-radius:2px;color:var(--ink)}.bubble-row .pop{background:var(--joy);color:var(--ink)}.bento-image:after{content:"PROCESS / DETAIL";position:absolute;right:12px;top:14px;background:#201d1ce8;color:white;padding:7px 10px;font-size:.64rem;letter-spacing:.15em}.bento-image figcaption{border-radius:2px}.bento-card.small{transform:none;border-top:5px solid #fff}.bento-card.small strong{font-weight:400}.blue{transform:none!important}.method{position:relative;background:var(--ink);overflow:hidden}.method:after{content:"FLOW";position:absolute;right:-35px;bottom:-90px;font-family:Georgia,serif;font-size:19rem;line-height:1;color:#ffffff05}.steps{position:relative;z-index:1;border-radius:2px;background:#ffffff18}.step{background:var(--ink);border-top:1px solid #ffffff38;transition:background .3s,color .3s}.step:hover{background:var(--joy);color:var(--ink)}.step:hover p{color:#3e352e}.step h3{font-family:Georgia,serif;font-size:1.65rem;font-weight:400}.founder-strip{position:relative;border-radius:2px;background:#e7d9cd;padding:34px 70px 34px 34px;overflow:hidden}.founder-strip:after{content:"JJV";position:absolute;right:-18px;bottom:-73px;font-family:Georgia,serif;font-size:12rem;color:#ffffff52}.founder-strip img{border-radius:2px;filter:saturate(.78);position:relative;z-index:1}.founder-strip>div{position:relative;z-index:1}.founder-strip h2{font-family:Georgia,serif;font-weight:400}.offer-band{border-radius:2px;background:var(--blue);box-shadow:18px 18px 0 var(--plum)}.offer-band h2{font-family:Georgia,serif;font-weight:400}.button.light{box-shadow:5px 5px 0 var(--joy)}footer{background:var(--ink);color:#e8dfd8;border:0;padding:48px 0}.quote-hero h1{font-family:Georgia,serif;font-weight:400}.quote-note,.quote-form,.quote-aside{border-radius:2px}.quote-note{transform:none;border-left:8px solid var(--plum)}.quote-form{box-shadow:14px 14px 0 #d7b45a}.quote-aside{background:var(--ink)}.quote-form input,.quote-form textarea{border-radius:2px;background:#fbf9f6}.about-panel{border-radius:2px}.about-panel h2{font-family:Georgia,serif;font-weight:400}.value{border-radius:2px;border-top:4px solid var(--joy);box-shadow:8px 8px 0 #55374514}
@media(max-width:820px){header.wrap{top:6px}.nav{margin-top:6px}.navlinks{border-radius:2px}.hero-new{min-height:auto}.offer-band{box-shadow:10px 10px 0 var(--plum)}}@media(max-width:600px){.hero-new h1,.quote-hero h1{font-size:3.55rem}.hero-photo-wrap:before{inset:-10px 12px 20px -10px}.founder-strip{border-radius:2px}.founder-strip img{border-radius:2px}.playful-intro:before{font-size:5rem}}

.brand{display:inline-flex;align-items:center;gap:10px;position:relative;letter-spacing:-.045em;line-height:1}.brand:before{content:"J";display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--plum);background:var(--plum);color:var(--joy);font-family:Georgia,serif;font-size:1.25rem;font-style:italic;box-shadow:3px 3px 0 var(--joy)}.brand:after{content:"PROCESS STUDIO";position:absolute;left:45px;top:35px;font-family:Inter,ui-sans-serif,sans-serif;font-size:.42rem;font-weight:700;letter-spacing:.19em;color:#7b6f68;white-space:nowrap}.brand i{position:relative;margin-left:-8px;padding-left:8px;font-style:normal;color:var(--plum)}.brand i:before{content:"";position:absolute;left:0;top:1px;width:1px;height:16px;background:var(--joy)}@media(max-width:480px){.brand{font-size:1.12rem;gap:8px}.brand:before{width:31px;height:31px}.brand:after{left:39px;top:32px;font-size:.36rem}.brand i{margin-left:-6px;padding-left:6px}}

.josephine-story{display:grid;grid-template-columns:minmax(280px,.78fr) 1.22fr;gap:80px;align-items:center;padding:25px 0 85px}.josephine-photo{position:relative}.josephine-photo:before{content:"";position:absolute;inset:-15px 22px 28px -15px;border:1px solid #6e5850;z-index:-1}.josephine-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;filter:saturate(.82);box-shadow:18px 20px 0 var(--joy)}.josephine-photo span{position:absolute;right:-28px;bottom:34px;background:var(--plum);color:white;padding:12px 18px;font-family:Georgia,serif;font-size:1.05rem;font-style:italic;transform:rotate(-2deg)}.josephine-copy h2{font-family:Georgia,serif;font-weight:400;margin:10px 0 28px}.josephine-copy>p:not(.eyebrow){font-size:1.08rem;color:#514b47;margin-top:18px;max-width:680px}.josephine-copy .josephine-highlight{border-left:4px solid var(--joy);padding:4px 0 4px 24px;color:var(--ink);font-weight:650}@media(max-width:820px){.josephine-story{grid-template-columns:1fr;gap:55px;padding-bottom:45px}.josephine-photo{width:min(100%,520px)}.josephine-photo span{right:-8px}}@media(max-width:480px){.josephine-story{gap:42px}.josephine-photo span{right:-4px;bottom:20px;font-size:.95rem}.josephine-copy>p:not(.eyebrow){font-size:1rem}}

.process-page-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end;padding:95px 0 115px}.process-page-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.8rem,7vw,7rem);max-width:920px}.process-page-hero .lead{margin-bottom:0}.process-hero-card{background:var(--joy);padding:40px;box-shadow:14px 14px 0 var(--plum);transform:rotate(1deg)}.process-hero-card span{display:block;font-size:.72rem;letter-spacing:.18em;font-weight:800;margin-bottom:35px}.process-hero-card strong{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;font-weight:400}.process-hero-card p{margin-top:25px;border-top:1px solid #201d1c55;padding-top:18px}.process-roadmap{background:var(--ink);color:white;padding:110px 0;position:relative;overflow:hidden}.process-roadmap:after{content:"FLOW";position:absolute;right:-45px;top:-70px;font-family:Georgia,serif;font-size:20rem;line-height:1;color:#ffffff05}.process-intro{display:grid;grid-template-columns:.75fr 1.3fr 1fr;gap:40px;align-items:end;position:relative;z-index:1}.process-intro h2{font-family:Georgia,serif;font-weight:400}.process-intro>p:last-child{color:#cfc7c2}.process-page-steps{margin-top:75px;position:relative;z-index:1}.process-page-steps article{display:grid;grid-template-columns:130px 1fr;padding:48px 0;border-top:1px solid #ffffff38}.process-page-steps article>span{font-family:Georgia,serif;font-size:3.5rem;color:var(--joy)}.process-page-steps article>div{display:grid;grid-template-columns:1fr 1fr;gap:20px 60px}.process-page-steps .step-label{grid-column:1/-1;color:var(--joy);text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:800}.process-page-steps h3{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.35rem);font-weight:400}.process-page-steps article>div>p:not(.step-label){color:#d8d0cc;font-size:1.05rem}.process-page-steps ul{grid-column:2;list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}.process-page-steps li{padding-left:22px;position:relative}.process-page-steps li:before{content:"✦";position:absolute;left:0;color:var(--joy)}.process-result{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:120px 0}.process-result figure{margin:0;position:relative}.process-result img{display:block;width:100%;height:620px;object-fit:cover;filter:saturate(.82);box-shadow:18px 18px 0 var(--joy)}.process-result figcaption{position:absolute;left:20px;right:20px;bottom:20px;background:#f9f5efed;padding:16px 18px;font-weight:650}.process-result h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 35px}.result-list{display:grid}.result-list p{display:grid;grid-template-columns:155px 1fr;gap:22px;padding:21px 0;border-top:1px solid #bdb1a8}.result-list span{color:#5e5752}@media(max-width:900px){.process-page-hero,.process-result{grid-template-columns:1fr}.process-intro{grid-template-columns:1fr 1fr}.process-intro>.eyebrow{grid-column:1/-1}.process-page-steps article>div{grid-template-columns:1fr}.process-page-steps ul{grid-column:1}.process-result img{height:520px}}@media(max-width:600px){.process-page-hero{padding:65px 0 85px}.process-page-hero h1{font-size:3.55rem}.process-roadmap{padding:80px 0}.process-intro{grid-template-columns:1fr}.process-page-steps{margin-top:45px}.process-page-steps article{grid-template-columns:1fr;padding:36px 0}.process-page-steps article>span{font-size:2.4rem;margin-bottom:18px}.process-result{gap:55px;padding:85px 0}.process-result img{height:440px}.result-list p{grid-template-columns:1fr;gap:4px}}

.nav-dropdown{position:relative}.nav-dropdown>a{display:flex;gap:6px;align-items:center}.nav-dropdown>a span{font-size:.8rem}.submenu{display:none;position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%);width:310px;background:#f9f5ef;padding:10px;border:1px solid #ffffffa8;box-shadow:0 20px 60px #201d1c24;z-index:30}.submenu:before{content:"";position:absolute;left:0;right:0;top:-15px;height:15px}.submenu a{display:block;padding:12px 14px!important;border-radius:0!important;font-size:.86rem!important}.submenu a:hover,.submenu a[aria-current=page]{background:white!important;color:var(--plum)}.nav-dropdown:hover .submenu,.nav-dropdown:focus-within .submenu{display:block}.services-hero{padding:100px 0 70px}.services-hero h1{font-family:Georgia,serif;font-weight:400}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-bottom:20px}.services-grid>a{position:relative;display:grid;grid-template-rows:330px 1fr;text-decoration:none;background:white;overflow:hidden;min-height:520px;transition:transform .25s,box-shadow .25s}.services-grid>a:hover{transform:translateY(-6px);box-shadow:12px 14px 0 var(--joy)}.services-grid>a>span{position:absolute;top:16px;left:16px;z-index:2;background:var(--ink);color:white;padding:8px 11px;font-size:.72rem;letter-spacing:.12em}.services-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.services-grid>a>div{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.services-grid p{color:var(--plum);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.services-grid h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,3vw,3rem);margin:12px 0 25px}.services-grid strong{margin-top:auto;color:var(--plum)}.service-hero{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center;padding:90px 0 110px}.service-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.6rem,6vw,6.4rem)}.service-hero img{width:100%;height:590px;object-fit:cover;filter:saturate(.8);box-shadow:20px 22px 0 var(--joy)}.service-body{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;padding-bottom:120px}.service-body aside{align-self:start;background:var(--plum);color:white;padding:34px;box-shadow:10px 10px 0 var(--joy)}.service-body aside>p{text-transform:uppercase;letter-spacing:.13em;color:var(--joy);font-size:.75rem;font-weight:800}.service-body ul{padding:0;margin:24px 0 0;list-style:none;display:grid;gap:13px}.service-body li{position:relative;padding-left:22px}.service-body li:before{content:"✦";position:absolute;left:0;color:var(--joy)}.service-copy h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 24px}.service-copy>p:not(.eyebrow){font-size:1.1rem;color:#5a534e;max-width:760px}.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:45px}.service-columns>div{border-top:4px solid var(--joy);background:white;padding:28px}.service-columns h3{font-family:Georgia,serif;font-weight:400;font-size:1.65rem}.service-columns ul{margin-top:20px}.service-columns li:before{color:var(--plum)}.service-delivery{background:var(--ink);color:white;padding:100px 0}.service-delivery h2{font-family:Georgia,serif;font-weight:400;max-width:850px;margin:12px 0 50px}.service-delivery>.wrap>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff38}.service-delivery article{padding:34px 30px 20px 0;border-right:1px solid #ffffff38}.service-delivery article+article{padding-left:30px}.service-delivery article:last-child{border-right:0}.service-delivery article span{color:var(--joy);font-weight:800}.service-delivery h3{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;margin:25px 0 13px}.service-delivery article p{color:#d6ceca}.service-results{padding:110px 0 20px}.service-results h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 40px}.service-results>div{display:flex;gap:10px;flex-wrap:wrap}.service-results span{background:var(--blue);color:white;padding:12px 18px;font-weight:700}.service-results span:nth-child(even){background:var(--joy);color:var(--ink)}@media(max-width:900px){.service-hero,.service-body{grid-template-columns:1fr}.service-hero img{height:500px}.services-grid{grid-template-columns:1fr}.service-body{gap:45px}.service-body aside{max-width:550px}}@media(max-width:820px){.nav-dropdown>a span{margin-left:auto}.submenu{display:grid;position:static;transform:none;width:auto;box-shadow:none;border:0;border-left:2px solid var(--joy);margin:6px 0 4px 12px;padding:2px 0 2px 10px;background:transparent}.submenu:before{display:none}.submenu a{padding:8px 10px!important;font-size:.82rem!important}.services-hero{padding-top:70px}}@media(max-width:600px){.services-grid>a{grid-template-rows:250px 1fr;min-height:450px}.service-hero{padding:65px 0 85px}.service-hero h1{font-size:3.35rem}.service-hero img{height:390px}.service-body{padding-bottom:80px}.service-columns{grid-template-columns:1fr}.service-delivery{padding:80px 0}.service-delivery>.wrap>div{grid-template-columns:1fr}.service-delivery article,.service-delivery article+article{padding:28px 0;border-right:0;border-bottom:1px solid #ffffff38}.service-delivery article:last-child{border-bottom:0}.service-results{padding-top:80px}}
.package-menu{width:270px}.package-head{max-width:1000px}.package-head .lead{max-width:760px}.package-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding-bottom:80px}.package-grid>a{background:white;text-decoration:none;display:grid;grid-template-columns:42% 58%;min-height:310px;overflow:hidden;transition:transform .25s,box-shadow .25s}.package-grid>a:hover{transform:translateY(-5px);box-shadow:10px 12px 0 var(--joy)}.package-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.78)}.package-grid a>div{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.package-grid span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--plum);font-weight:800}.package-grid h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:16px 0 12px}.package-grid p{color:#665d57}.package-grid strong{margin-top:auto;color:var(--plum)}.scope-note{background:var(--ink);color:white;padding:52px;margin-bottom:110px;display:grid;grid-template-columns:.4fr 1.1fr;gap:14px 50px;box-shadow:14px 14px 0 var(--joy)}.scope-note strong{font-family:Georgia,serif;font-size:2.1rem;font-weight:400;grid-row:1/3}.scope-note p{font-size:1.05rem}.scope-note small{color:#cfc6c1}.package-hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:90px 0 100px}.package-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.7rem,6vw,6.8rem)}.package-hero img{width:100%;height:590px;object-fit:cover;filter:saturate(.78);box-shadow:20px 22px 0 var(--joy)}.package-price{margin-top:35px;border-top:1px solid #a99d93;padding-top:24px;display:grid;grid-template-columns:auto 1fr;align-items:end;column-gap:15px;width:max-content}.package-price span{grid-column:1/3;text-transform:uppercase;letter-spacing:.15em;font-size:.7rem}.package-price strong{font-family:Georgia,serif;font-size:3rem;font-weight:400;color:var(--plum)}.package-price small{padding-bottom:8px}.package-content{display:grid;grid-template-columns:1.12fr .88fr;gap:65px;padding-bottom:120px}.package-content h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 22px}.package-content>article>p:not(.eyebrow){font-size:1.08rem;color:#625a54}.package-content aside{align-self:start;background:#e5d8cc;padding:34px;box-shadow:12px 12px 0 var(--plum)}.package-content aside h3{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin-bottom:22px}.package-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:38px}.package-columns>div{background:white;padding:28px;border-top:4px solid var(--joy)}.package-columns h3{font-family:Georgia,serif;font-weight:400;font-size:1.5rem}.package-columns ul{list-style:none;padding:0;display:grid;gap:10px}.package-columns li{padding-left:20px;position:relative}.package-columns li:before{content:'✦';position:absolute;left:0;color:var(--plum)}.quote-form.compact{padding:0;background:transparent;box-shadow:none}.quote-form.compact label{font-size:.9rem}.quote-form.compact input,.quote-form.compact textarea{background:#fff}.home-packages{margin-top:110px;margin-bottom:110px;display:grid;grid-template-columns:.85fr 1.15fr;background:#e5d8cc}.home-packages-intro{padding:65px}.home-packages-intro h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 22px}.home-packages-intro .button{margin-top:25px}.home-package-list{background:var(--plum);padding:36px;color:white;display:flex;flex-direction:column;justify-content:center}.home-package-list>a{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:15px;color:white;text-decoration:none;padding:24px 6px;border-bottom:1px solid #ffffff3a}.home-package-list>a:hover{color:var(--joy)}.home-package-list>a>span{color:var(--joy);font-size:.72rem}.home-package-list div{display:grid}.home-package-list small{color:#d8cdd2;margin-top:4px}.home-package-list strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:400}.home-package-list>p{font-size:.75rem;color:#d8cdd2;margin-top:18px}@media(max-width:1000px){.package-grid{grid-template-columns:1fr}.package-hero,.package-content{grid-template-columns:1fr}.package-hero img{height:500px}.home-packages{grid-template-columns:1fr}.scope-note{grid-template-columns:1fr}.scope-note strong{grid-row:auto}}@media(max-width:600px){.package-grid>a{grid-template-columns:1fr;grid-template-rows:250px 1fr}.package-hero{padding:65px 0 80px}.package-hero h1{font-size:3.4rem}.package-hero img{height:390px}.package-content{padding-bottom:80px}.package-columns{grid-template-columns:1fr}.package-content aside{padding:25px}.scope-note{padding:35px 25px}.home-packages-intro{padding:42px 26px}.home-package-list{padding:25px}.home-package-list>a{grid-template-columns:30px 1fr}.home-package-list strong{grid-column:2}.home-package-list>a>span{grid-row:1/3}}
.custom-analysis{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:start;margin-bottom:110px;padding:75px;background:var(--blue);color:white;box-shadow:16px 16px 0 var(--plum)}.custom-analysis h2{font-family:Georgia,serif;font-weight:400;margin:12px 0 22px}.custom-analysis h2 em{color:var(--joy)}.custom-analysis-copy>p:not(.eyebrow){font-size:1.05rem;max-width:520px}.custom-analysis .eyebrow{color:white}.custom-analysis-note{display:flex;gap:14px;margin-top:36px;padding-top:24px;border-top:1px solid #ffffff66}.custom-analysis-note>span{color:var(--joy);font-size:1.4rem}.custom-analysis-note p{display:grid;gap:4px}.custom-analysis-form{grid-template-columns:1fr 1fr;box-shadow:12px 12px 0 var(--joy);color:var(--ink)}.custom-analysis-form .full-field{grid-column:1/3}.quote-form select{width:100%;border:1px solid #d5cac2;background:#faf7f1;border-radius:2px;padding:15px 16px;font:inherit;color:inherit}.quote-form select:focus{outline:3px solid #86a7b355;border-color:var(--blue)}@media(max-width:900px){.custom-analysis{grid-template-columns:1fr;padding:50px;gap:40px}}@media(max-width:600px){.custom-analysis{padding:38px 22px;box-shadow:10px 10px 0 var(--plum)}.custom-analysis-form{grid-template-columns:1fr}.custom-analysis-form .full-field{grid-column:auto}}

/* Mobile story order: lead with imagery, then make every package action visible. */
@media(max-width:900px){
  .hero-new .hero-photo-wrap{order:-1;margin-bottom:18px}
  .hero-new .hero-copy{order:1}
}
@media(max-width:600px){
  .hero-new{padding-top:38px;gap:34px}
  .hero-new .hero-photo-wrap{min-height:390px}
  .hero-new .hero-photo{height:390px;object-position:center 28%}
  .package-grid{gap:28px}
  .package-grid>a{display:block;min-height:0;overflow:visible;background:white}
  .package-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
  .package-grid a>div{display:block;padding:26px 22px 28px}
  .package-grid h2{margin:12px 0 10px}
  .package-grid p{margin-bottom:22px}
  .package-grid strong{display:inline-flex;padding:12px 17px;background:var(--plum);color:white;box-shadow:4px 4px 0 var(--joy)}
}

/* Portal prototype */
.portal-button{width:43px;height:43px;padding:0!important;border-radius:50%!important;background:var(--joy)!important;color:var(--ink)!important;display:grid!important;place-items:center;box-shadow:4px 4px 0 var(--plum);font-size:1.55rem;line-height:1}.portal-button span{transform:translateY(-1px)}
.auth-page,.portal-page{background:#f5f0e9;background-image:radial-gradient(#55374510 1px,transparent 1px);background-size:24px 24px}.auth-header{width:min(1180px,calc(100% - 40px));margin:auto;padding:25px 0;display:flex;justify-content:space-between;align-items:center}.auth-header>a:last-child{font-size:.9rem;font-weight:700;text-decoration:none}.auth-layout{width:min(1180px,calc(100% - 40px));margin:35px auto 90px;display:grid;grid-template-columns:1fr 480px;gap:90px;align-items:center;min-height:680px}.auth-intro h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.6rem,6vw,6.5rem);margin:15px 0 28px}.auth-intro>p:not(.eyebrow){font-size:1.15rem;color:#5c5550;max-width:580px}.demo-pill{display:inline-flex;align-items:center;background:var(--joy);color:var(--ink);padding:7px 12px;border-radius:999px;font-size:.72rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.auth-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}.auth-points span{background:white;padding:10px 14px;font-weight:700;font-size:.86rem}.auth-card{background:white;padding:42px;box-shadow:15px 15px 0 var(--plum)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #ddd0c7;margin-bottom:34px}.auth-tabs button{border:0;background:transparent;padding:13px;font:inherit;font-weight:800;color:#7a706a;border-bottom:3px solid transparent;cursor:pointer}.auth-tabs button.active{color:var(--plum);border-color:var(--joy)}.auth-panel{display:none}.auth-panel.active{display:block}.auth-panel h2{font-family:Georgia,serif;font-weight:400;font-size:2.35rem;margin-bottom:9px}.auth-panel>p{color:#726963;margin-bottom:28px}.auth-panel form{display:grid;gap:18px}.auth-panel label,.profile-form label,.upload-form label{display:grid;gap:7px;font-weight:750}.auth-panel input,.profile-form input,.upload-form input,.upload-form select,.upload-form textarea,.portal-toolbar input{width:100%;border:1px solid #d5cac2;background:#fbf8f4;padding:14px 15px;font:inherit;color:inherit}.auth-panel input:focus,.profile-form input:focus,.upload-form input:focus,.upload-form select:focus,.upload-form textarea:focus,.portal-toolbar input:focus{outline:3px solid #d7b45a55;border-color:var(--joy)}.form-row{display:flex;justify-content:space-between;gap:15px;align-items:center}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;font-size:.85rem;font-weight:600!important}.check input{width:auto!important}.text-button{border:0;background:none;color:var(--plum);text-decoration:underline;cursor:pointer;font:inherit;font-size:.86rem}.auth-submit{border:0;justify-content:center;font-size:1rem;cursor:pointer}.demo-help{font-size:.78rem;text-align:center;margin:16px 0 0!important}.demo-status{background:#e4eee8;color:#244b36;padding:11px 13px;font-size:.86rem}.back-login{margin-top:22px}
.portal-shell{display:grid;grid-template-columns:278px 1fr;min-height:100vh}.portal-sidebar{position:sticky;top:0;height:100vh;background:var(--ink);color:white;padding:30px 24px;display:flex;flex-direction:column}.portal-brand{color:white;font-size:1.35rem;margin-bottom:38px}.portal-person{display:flex;gap:13px;align-items:center;padding:16px 0 24px;border-bottom:1px solid #ffffff28;margin-bottom:20px}.portal-person>span{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--joy);color:var(--ink);font-weight:850}.portal-person div{display:grid}.portal-person small{color:#bfb4b0}.portal-sidebar nav{display:grid;gap:4px}.portal-sidebar nav button{display:flex;gap:13px;align-items:center;border:0;background:transparent;color:#d7ceca;padding:12px 13px;text-align:left;font:inherit;font-weight:650;cursor:pointer;border-left:3px solid transparent}.portal-sidebar nav button:hover,.portal-sidebar nav button.active{background:#ffffff10;color:white;border-color:var(--joy)}.portal-sidebar nav button:first-letter{color:var(--joy)}.portal-logout{margin-top:auto;color:#c8beba;text-decoration:none;padding:12px}.portal-main{min-width:0;padding:0 55px 80px}.portal-top{height:95px;display:flex;align-items:center;justify-content:flex-end;gap:30px;border-bottom:1px solid #d8cec7;margin-bottom:45px}.portal-top>div{display:grid;text-align:right}.portal-top small{color:#776e68}.portal-menu-toggle{display:none;border:0;background:var(--ink);color:white;width:42px;height:42px;font-size:1.3rem}.portal-view{display:none;max-width:1240px;margin:auto}.portal-view.active{display:block}.portal-heading{display:flex;justify-content:space-between;gap:35px;align-items:center;margin-bottom:38px}.portal-heading h1,.portal-title h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3rem,5vw,5.2rem);margin:8px 0 12px}.portal-heading>div>p:last-child,.portal-title>p:last-child{color:#6a625d;font-size:1.05rem}.progress-ring{width:150px;height:150px;border-radius:50%;background:conic-gradient(var(--joy) 42%,#ded4cc 0);display:grid;place-content:center;text-align:center;position:relative}.progress-ring:after{content:"";position:absolute;inset:13px;background:#f5f0e9;border-radius:50%}.progress-ring strong,.progress-ring span{z-index:1}.progress-ring strong{font-family:Georgia,serif;font-size:2rem}.progress-ring span{font-size:.7rem}.portal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:25px}.portal-stats article{background:white;padding:24px;border-top:4px solid var(--joy)}.portal-stats article>span{color:var(--plum);font-weight:850}.portal-stats strong{display:block;font-size:1.1rem;margin:18px 0 3px}.portal-stats p{color:#746b65;font-size:.9rem}.portal-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.portal-feature,.portal-panel{padding:38px;background:white;min-height:285px}.plum-card{background:var(--plum);color:white}.plum-card .eyebrow{color:var(--joy)}.portal-feature h2,.portal-panel h2,.document-card h2,.certificate-card h2,.empty-card h2,.course-grid h2{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:16px 0 12px}.portal-feature button,.portal-panel button,.course-grid button,.document-card button,.certificate-card button,.portal-table button{border:0;background:transparent;color:inherit;padding:0;font:inherit;font-weight:800;cursor:pointer;text-align:left}.portal-feature button,.portal-panel button{margin-top:25px}.mini-progress{height:8px;background:#ffffff32;margin:30px 0 12px;overflow:hidden}.portal-panel .mini-progress{background:#e7ded6}.mini-progress i{display:block;height:100%;background:var(--joy)}.status-line{display:flex;justify-content:space-between;gap:20px;font-size:.78rem}.status-line strong{color:var(--joy)}.portal-title{margin-bottom:35px}.profile-form,.upload-form{background:white;padding:40px;max-width:900px;display:grid;gap:25px}.profile-form>div{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-form h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin-top:15px}.profile-form .wide{grid-column:1/3}.profile-form .button,.upload-form .button{border:0;justify-self:start;font-size:1rem;cursor:pointer}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course-grid article{background:white;padding:30px;display:flex;flex-direction:column;min-height:355px}.course-grid article>small{margin-top:25px;color:#756b65}.course-grid article>p{color:#655d58}.course-grid article>button{margin-top:auto;color:var(--plum)}.course-icon{width:62px;height:62px;background:var(--joy);display:grid;place-items:center;font-size:1.8rem}.blue-bg{background:var(--blue);color:white}.peach-bg{background:var(--nigiri);color:white}.document-card,.certificate-card{display:grid;grid-template-columns:auto 1fr auto auto;gap:25px;align-items:center;background:white;padding:28px;margin-bottom:16px;border-left:5px solid #cfc3ba}.active-doc{border-color:var(--joy)}.doc-icon{width:55px;height:55px;background:#e9dfd7;display:grid;place-items:center;font-size:1.5rem}.document-card h2{font-size:1.5rem;margin:6px 0}.document-card small,.document-card p,.certificate-card small{color:#776e68}.document-card button,.certificate-card button{background:var(--plum);color:white;padding:11px 14px}.document-card button:disabled{background:#c9c1bc}.status-badge{padding:7px 10px;font-size:.75rem;font-weight:800}.pending{background:#f3e6bd}.done{background:#deebe3;color:#27523a}.new{background:#dde9ec;color:#315662}.portal-table{background:white}.table-row{display:grid;grid-template-columns:1fr 2fr 1fr 1fr auto;gap:20px;align-items:center;padding:20px 24px;border-bottom:1px solid #ebe4df}.table-head{background:var(--ink);color:white;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.paid{background:#4c9a68}.open{background:var(--joy)}.certificate-card{grid-template-columns:auto 1fr auto;border-left-color:var(--joy)}.certificate-mark{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:var(--joy);font-size:2.3rem}.empty-card{margin-top:25px;border:1px dashed #bbaa9f;padding:35px;text-align:center}.empty-card>span{font-size:2rem;color:var(--plum)}.empty-card p{max-width:650px;margin:auto;color:#6d645e}.admin-person>span{background:var(--nigiri);color:white}.activity{display:flex;gap:15px;padding:18px 0;border-bottom:1px solid #e7dfd9}.activity>span{width:42px;height:42px;display:grid;place-items:center;background:#e8dcd3;border-radius:50%;font-weight:850}.activity p{display:grid}.activity small{color:#80766f}.portal-toolbar{display:flex;gap:15px;margin-bottom:22px}.portal-toolbar input{flex:1}.admin-client{grid-template-columns:1.25fr 1.25fr 1.25fr 1fr auto}.upload-form label{max-width:680px}.upload-zone{border:2px dashed #c8b9ae;padding:35px;text-align:center;cursor:pointer}.upload-zone input{position:absolute;opacity:0;pointer-events:none}.upload-zone span{font-size:1.05rem}.upload-zone small{color:#81766e}.add-course{border:2px dashed #bbaa9f;background:transparent!important;align-items:center;justify-content:center;text-align:center}.add-course>span{font-size:3rem;color:var(--plum)}
@media(max-width:1050px){.auth-layout{grid-template-columns:1fr;gap:45px}.auth-intro{max-width:760px}.portal-shell{grid-template-columns:230px 1fr}.portal-main{padding-left:30px;padding-right:30px}.course-grid{grid-template-columns:1fr 1fr}.document-card{grid-template-columns:auto 1fr}.document-card>.status-badge,.document-card>button{grid-column:2}.table-row{grid-template-columns:1fr 1.5fr 1fr}.table-row>*:nth-child(4),.table-row>*:nth-child(5){grid-column:auto}.table-head{display:none}.admin-client{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.portal-button{width:auto;height:auto;border-radius:999px!important;padding:11px 18px!important;box-shadow:none;display:flex!important}.portal-button:after{content:'Klantportaal';font-size:1rem;margin-left:8px}.portal-shell{display:block}.portal-sidebar{position:fixed;z-index:50;left:-290px;width:278px;transition:left .25s}.portal-shell.menu-open .portal-sidebar{left:0;box-shadow:20px 0 60px #201d1c55}.portal-main{padding:0 20px 60px}.portal-top{justify-content:space-between;margin-bottom:35px}.portal-menu-toggle{display:block}.portal-top>div{display:none}.portal-heading{align-items:flex-start}.progress-ring{width:115px;height:115px;flex:none}.portal-stats,.portal-grid{grid-template-columns:1fr}.profile-form>div{grid-template-columns:1fr}.profile-form .wide{grid-column:auto}.document-card,.certificate-card{grid-template-columns:1fr}.document-card>.status-badge,.document-card>button{grid-column:auto;justify-self:start}.portal-table{background:transparent;display:grid;gap:14px}.table-row,.admin-client{background:white;display:grid;grid-template-columns:1fr;padding:22px}.table-row button{justify-self:start}.course-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.auth-header{width:min(100% - 28px,1180px)}.auth-header>a:last-child{font-size:.78rem}.auth-layout{width:min(100% - 28px,1180px);margin-top:15px;min-height:0}.auth-intro h1{font-size:3.4rem}.auth-card{padding:28px 22px;box-shadow:8px 8px 0 var(--plum)}.form-row{align-items:flex-start;flex-direction:column}.portal-top .demo-pill{font-size:.62rem}.portal-heading{display:block}.progress-ring{margin-top:25px}.portal-title h1,.portal-heading h1{font-size:3rem}.portal-feature,.portal-panel,.profile-form,.upload-form{padding:27px 22px}.course-grid{grid-template-columns:1fr}.status-line{display:grid}.certificate-mark{width:64px;height:64px}.portal-toolbar{flex-direction:column}.portal-toolbar .button{justify-content:center}}
.admin-demo-link{display:block;text-align:center;margin-top:10px;font-size:.78rem;font-weight:800;color:var(--plum)}
.subscription-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;max-width:1000px}.subscription-card,.subscription-note,.locked-empty{background:white;padding:38px}.subscription-card{border-top:5px solid var(--joy)}.subscription-card h2,.subscription-note h2,.locked-empty h2{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:20px 0 12px}.subscription-card ul{list-style:none;padding:0;margin:28px 0;display:grid;gap:12px}.subscription-card li{padding-left:24px;position:relative}.subscription-card li:before{content:'✦';position:absolute;left:0;color:var(--plum)}.subscription-card button,.locked-empty button{border:0;background:var(--plum);color:white;padding:13px 18px;font:inherit;font-weight:800}.subscription-card button:disabled,.locked-empty button:disabled{background:#c7beb8;cursor:not-allowed}.subscription-note{background:var(--blue);color:white;align-self:start}.subscription-note>span{font-size:2rem;color:var(--joy)}.locked-empty{text-align:center;max-width:850px;border:1px dashed #bbaa9f}.locked-empty>span{display:grid;place-items:center;width:66px;height:66px;margin:auto;background:var(--joy);font-size:2rem}.locked-empty p{max-width:620px;margin:0 auto 25px;color:#6c635d}.locked-empty button:not(:disabled){cursor:pointer}
@media(max-width:820px){.subscription-layout{grid-template-columns:1fr}}
/* Mobile navigation and horizontal scroll lock */
html,body{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
@supports(overflow:clip){html,body{overflow-x:clip}}
@media(max-width:820px){
  body{touch-action:pan-y}
  header,main,footer,.wrap{max-width:100%}
  body>header:not(.auth-header){position:relative;z-index:140}
  .mobile-toggle{position:relative;z-index:142;display:inline-flex;align-items:center;justify-content:center;background:#a6544e;color:#fff;border:0;border-radius:999px;padding:10px 18px;min-height:44px;box-shadow:3px 3px 0 var(--joy);cursor:pointer;touch-action:manipulation}
  .navlinks{z-index:141;gap:5px;max-height:calc(100dvh - 92px);overflow-y:auto;overscroll-behavior:contain;padding:18px}
  .navlinks>a,.nav-dropdown>a{padding:11px 12px}
  .nav-dropdown>a{width:100%;justify-content:space-between}
  .nav-dropdown>a span{transition:transform .2s}
  .nav-dropdown.mobile-open>a span{transform:rotate(180deg)}
  .nav-dropdown .submenu{display:none!important;position:static;transform:none;width:auto;box-shadow:none;border:0;border-left:2px solid var(--joy);margin:2px 0 8px 12px;padding:4px 0 4px 10px;background:#f6f0e9}
  .nav-dropdown.mobile-open .submenu{display:grid!important}
  .submenu .mobile-overview-link{font-weight:850!important;color:var(--plum)!important;background:#fff!important}
  .nav-cta{margin-top:8px;text-align:center}
  .portal-button{order:99;width:100%!important;height:auto!important;margin-top:7px;padding:13px 18px!important;border-radius:12px!important;background:var(--joy)!important;color:var(--ink)!important;box-shadow:4px 4px 0 var(--plum)!important;display:flex!important;justify-content:center;font-size:1.25rem!important}
  .portal-button:after{content:'Klantportaal';font-size:1rem;margin-left:9px;font-weight:850}
  .ticker{max-width:100vw}
  img{max-width:100%}
}

/* Clickable learning environment */
.demo-course-card{background:white;border-top:5px solid var(--joy);padding:42px;display:flex;justify-content:space-between;align-items:end;gap:35px;max-width:1000px}.demo-course-card h2{font-family:Georgia,serif;font-weight:400;font-size:2.4rem;margin:10px 0 15px}.demo-course-card .eyebrow{margin-top:25px}.course-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px}.course-meta span{background:#eee5dd;padding:8px 11px;font-size:.82rem;font-weight:750}.demo-course-card .button{white-space:nowrap}
.learning-page{background:#f5f0e9;background-image:radial-gradient(#55374510 1px,transparent 1px);background-size:24px 24px}.learning-shell{display:grid;grid-template-columns:330px 1fr;min-height:100vh}.learning-sidebar{background:var(--ink);color:white;padding:28px 22px;position:sticky;top:0;height:100vh;overflow-y:auto}.back-portal{display:block;margin:25px 0 30px;color:#d5cbc6;font-size:.85rem;text-decoration:none}.course-side-title h1{font-family:Georgia,serif;font-size:1.75rem;font-weight:400;line-height:1.15;margin:17px 0 9px}.course-side-title p{color:#bbb0aa;font-size:.85rem}.course-total-progress{padding:25px 0;border-bottom:1px solid #ffffff25}.course-total-progress>div{display:flex;justify-content:space-between;font-size:.8rem}.course-total-progress>i{display:block;height:7px;background:#ffffff22;margin-top:11px;overflow:hidden}.course-total-progress b{display:block;height:100%;width:0;background:var(--joy);transition:width .25s}.learning-sidebar nav{display:grid;gap:4px;padding-top:18px}.course-module{display:flex;gap:12px;align-items:center;width:100%;background:transparent;color:#d6ceca;border:0;border-left:3px solid transparent;padding:13px 10px;text-align:left;font:inherit;cursor:pointer}.course-module:hover,.course-module.active{background:#ffffff0e;border-color:var(--joy);color:white}.course-module>span{width:31px;height:31px;border-radius:50%;background:#ffffff12;display:grid;place-items:center;font-size:.72rem;color:var(--joy);font-weight:850;flex:none}.course-module>div{display:grid}.course-module strong{font-size:.9rem}.course-module small{font-size:.72rem;color:#aea39e}.learning-main{min-width:0;padding:0 5vw 45px}.learning-top{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d7cdc5;margin-bottom:45px;gap:25px}.learning-top>div{display:grid}.learning-top small{color:#746a64}.learning-top strong{font-size:.92rem}.save-state{font-size:.78rem;color:#61766a;background:#e4ece7;padding:8px 11px}.learning-menu-toggle{display:none}.lesson-content{max-width:900px;margin:auto;background:white;padding:clamp(32px,5vw,70px);min-height:620px;box-shadow:12px 12px 0 #e1d5cb}.lesson-content h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.8rem,5vw,5rem);margin:12px 0 25px}.lesson-content h2{font-family:Georgia,serif;font-weight:400;font-size:1.8rem;margin:35px 0 18px}.lesson-lead{font-size:1.18rem;line-height:1.75;color:#5f5752;max-width:760px}.learning-callout{background:var(--plum);color:white;padding:32px;margin-top:40px}.learning-callout>span{color:var(--joy);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:850}.learning-callout ul{display:grid;gap:10px;margin-bottom:0}.process-example{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:42px 0;padding:28px;background:#eee4dc}.process-example>span{width:120px;height:85px;display:grid;place-content:center;text-align:center;background:white;font-family:Georgia,serif;font-size:1.5rem}.process-example small{font-family:Inter,system-ui,sans-serif;font-size:.75rem}.process-example i{font-style:normal;color:var(--plum);font-size:1.4rem}.lesson-list{display:grid;gap:13px;padding-left:23px}.lesson-list.numbered{list-style:decimal}.learning-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:38px}.learning-grid section{padding:25px;background:#ede3db;border-top:4px solid var(--joy)}.learning-grid strong{font-family:Georgia,serif;font-size:1.45rem;font-weight:400}.case-box{background:var(--blue);color:white;padding:30px;margin:25px 0 35px}.case-box span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--joy)}.case-box p{font-size:1.08rem;margin-top:9px}.practice-form fieldset,.quiz-form fieldset{border:0;padding:0;margin:0 0 30px}.practice-form legend,.quiz-form legend{font-family:Georgia,serif;font-size:1.55rem;line-height:1.25;margin-bottom:18px}.practice-form label,.quiz-form label{display:flex;align-items:flex-start;gap:12px;border:1px solid #d9cec6;padding:14px;margin-bottom:9px;cursor:pointer}.practice-form label:has(input:checked),.quiz-form label:has(input:checked){border-color:var(--plum);background:#f1e8e1}.practice-form input,.quiz-form input{margin-top:5px}.lesson-button{border:0;background:var(--plum);color:white;padding:13px 20px;font:inherit;font-weight:800;cursor:pointer}.lesson-button.secondary{background:transparent;color:var(--ink);border:1px solid #b9aea6}.lesson-button:disabled{opacity:.35;cursor:not-allowed}.answer-feedback,.quiz-result{margin-top:20px;padding:22px;display:flex;gap:20px;align-items:center}.answer-feedback.correct,.quiz-result.passed{background:#e0ebe4;color:#28503a}.answer-feedback.incorrect,.quiz-result.failed{background:#f2dfdb;color:#78382f}.answer-feedback p{margin-top:4px}.quiz-form{display:grid;gap:12px;margin-top:35px}.quiz-form legend{display:flex;gap:12px;align-items:flex-start}.quiz-form legend>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:var(--joy);font:800 .8rem Inter,system-ui,sans-serif;flex:none}.quiz-result>span{font-family:Georgia,serif;font-size:2.6rem}.previous-score{display:inline-block;background:#eee4dc;padding:10px 14px;margin-top:20px}.waste-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:40px}.waste-list span{padding:14px 18px;background:#e9ddd4;font-weight:750}.choice-stack{display:grid;gap:1px;background:#d8cdc5;margin-top:35px}.choice-stack section{display:grid;grid-template-columns:65px 1fr;gap:22px;background:white;padding:23px}.choice-stack b{font-size:1.4rem;color:var(--plum)}.choice-stack h2{margin:0 0 5px}.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:38px}.plan-cards section{background:#e9dfd7;padding:25px}.plan-cards span{color:var(--plum);text-transform:uppercase;font-size:.72rem;font-weight:850}.plan-cards h2{margin:18px 0 10px}.priority-matrix{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:35px}.priority-matrix>span{min-height:150px;background:#e8ddd4;padding:25px;display:flex;flex-direction:column;justify-content:space-between}.priority-matrix .quick{background:var(--joy)}.priority-matrix small{margin-top:25px}.lesson-controls{max-width:900px;margin:30px auto 0;display:flex;justify-content:space-between;align-items:center}.lesson-controls span{font-size:.82rem;color:#756b65}
@media(max-width:900px){.learning-shell{display:block}.learning-sidebar{position:fixed;left:-350px;width:330px;z-index:60;transition:left .25s}.learning-shell.menu-open .learning-sidebar{left:0;box-shadow:20px 0 60px #201d1c55}.learning-main{padding:0 20px 40px}.learning-top{justify-content:flex-start}.learning-menu-toggle{display:grid;place-items:center;width:44px;height:44px;background:var(--plum);color:white;border:0;font-size:1.2rem}.learning-top .save-state{margin-left:auto}.demo-course-card{display:grid;align-items:start}}
@media(max-width:600px){.lesson-content{padding:30px 22px;min-height:560px;box-shadow:7px 7px 0 #e1d5cb}.lesson-content h1{font-size:2.8rem}.learning-top>div{display:none}.save-state{font-size:.68rem}.learning-grid,.plan-cards,.priority-matrix{grid-template-columns:1fr}.process-example{display:grid;grid-template-columns:1fr}.process-example>span{width:100%}.process-example i{transform:rotate(90deg);text-align:center}.lesson-controls{gap:10px}.lesson-button{padding:11px 14px}.demo-course-card{padding:28px 22px}.demo-course-card h2{font-size:2rem}.quiz-form legend{font-size:1.3rem}}
.course-module.locked{opacity:.62}.course-module.locked:hover{background:transparent;border-color:transparent;color:#d6ceca}.exam-link{margin-top:12px;border-top:1px solid #ffffff20;padding-top:20px}.certificate-download{display:inline-flex;margin-top:14px;background:var(--plum);color:white;text-decoration:none;padding:12px 16px;font-weight:800}.quiz-result.passed .certificate-download{color:white}.course-lock-message{position:fixed;right:24px;bottom:24px;z-index:100;background:var(--ink);color:white;padding:18px 21px;border-left:5px solid var(--joy);box-shadow:0 12px 35px #201d1c38;display:grid;gap:4px;max-width:360px}.course-lock-message span{color:#d7ceca;font-size:.86rem}
@media(max-width:600px){.quiz-result{align-items:flex-start;flex-direction:column}.course-lock-message{left:16px;right:16px;bottom:16px}.certificate-download{width:100%;justify-content:center;text-align:center}}

/* Public course and subscription page */
.course-sales-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;padding:72px 0 105px}.course-sales-copy h1{font-size:clamp(4rem,7.5vw,7rem)}.course-subscribe-button{background:#a6544e}.course-access-note{margin-top:16px;color:#6d645e;font-size:.9rem}.course-subscription-card{position:relative;background:var(--plum);color:white;padding:52px;border-radius:40px 40px 120px 40px;box-shadow:16px 18px 0 var(--joy);overflow:hidden}.course-subscription-card .eyebrow{color:var(--joy)}.course-subscription-card h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.2rem,4vw,3.5rem);margin:16px 0 28px}.course-subscription-card ul{list-style:none;padding:0;margin:0 0 34px;display:grid;gap:14px}.course-subscription-card li{position:relative;padding-left:27px}.course-subscription-card li:before{content:'✓';position:absolute;left:0;color:var(--joy);font-weight:900}.course-star{position:absolute;right:30px;top:18px;color:var(--joy);font-size:2rem}.course-how{padding:95px 0}.course-how>div:first-child{display:grid;grid-template-columns:.5fr 1fr;gap:40px;align-items:end;margin-bottom:45px}.course-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.course-steps article{min-height:270px;padding:28px;background:white;border-top:5px solid var(--joy)}.course-steps article:nth-child(2){border-color:var(--blue)}.course-steps article:nth-child(3){border-color:var(--nigiri)}.course-steps article:nth-child(4){border-color:var(--plum)}.course-steps span{color:var(--plum);font-weight:900}.course-steps h3{font-family:Georgia,serif;font-weight:400;font-size:1.65rem;margin:35px 0 13px}.course-steps p{color:#655d58}.course-final-cta{margin-top:30px;margin-bottom:110px;padding:60px;background:var(--joy);border-radius:35px;display:flex;align-items:end;justify-content:space-between;gap:35px}.course-final-cta h2{max-width:760px;margin-top:12px}.course-final-cta .button{white-space:nowrap;background:var(--plum)}
@media(max-width:1000px){.navlinks{gap:16px}.course-sales-hero{grid-template-columns:1fr}.course-subscription-card{max-width:760px}.course-steps{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.course-sales-hero{padding:45px 0 75px}.course-subscription-card{padding:36px 28px;border-radius:28px 28px 78px 28px;box-shadow:9px 11px 0 var(--joy)}.course-how>div:first-child{grid-template-columns:1fr}.course-final-cta{padding:38px 26px;align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.course-sales-copy h1{font-size:3.4rem}.course-steps{grid-template-columns:1fr}.course-steps article{min-height:0}.course-final-cta .button,.course-subscription-card .button{width:100%;justify-content:center;text-align:center}}

/* Course subscription prices */
.course-pricing{padding:25px 0 80px}.course-pricing-head{max-width:760px;margin-bottom:35px}.course-pricing-head h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.5rem,5vw,4.5rem);margin:12px 0 16px}.course-pricing-head>p:last-child{color:#655d58;font-size:1.05rem}.course-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:980px}.course-price-grid article{position:relative;background:white;padding:38px;border-top:5px solid var(--blue);display:flex;flex-direction:column;align-items:flex-start}.course-price-grid article.recommended{border-color:var(--joy);box-shadow:12px 14px 0 var(--plum)}.course-price-grid h3{font-family:Georgia,serif;font-weight:400;font-size:2rem;margin:14px 0 20px}.course-price-grid article>p:not(.eyebrow){color:#655d58;margin:18px 0 28px}.course-price-grid .button{margin-top:auto}.course-price{display:flex;align-items:end;gap:10px}.course-price strong{font-family:Georgia,serif;font-size:3.4rem;font-weight:400;color:var(--plum);line-height:1}.course-price span{padding-bottom:6px;color:#6a625d}.saving-badge{position:absolute;right:24px;top:24px;background:var(--joy);padding:8px 12px;font-weight:850;font-size:.8rem}.portal-plan-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.portal-plan-options section{position:relative;border:1px solid #d8ccc4;padding:22px;display:grid;gap:7px}.portal-plan-options section.recommended{border:2px solid var(--plum);background:#f7f0e9}.portal-plan-options h3{font-family:Georgia,serif;font-weight:400;font-size:1.5rem}.portal-plan-options strong{font-family:Georgia,serif;font-size:2.4rem;font-weight:400;color:var(--plum)}.portal-plan-options span{font-size:.82rem;color:#6e655f;min-height:34px}.portal-plan-options b{position:absolute;right:12px;top:12px;background:var(--joy);padding:5px 8px;font-size:.7rem}.portal-plan-options button{margin-top:12px;width:100%}
@media(max-width:700px){.course-price-grid,.portal-plan-options{grid-template-columns:1fr}.course-price-grid article{padding:30px 24px}.saving-badge{position:static;margin-bottom:12px}.course-price strong{font-size:3rem}}
.student-discount{margin-top:26px;padding:26px;background:#f0e6de;border-left:5px solid var(--blue)}.student-discount h3{font-family:Georgia,serif;font-size:1.7rem;font-weight:400;margin:10px 0}.student-discount>p:not(.eyebrow):not(.demo-status){color:#655d58;margin-bottom:18px}.student-discount label{display:grid;gap:7px;font-weight:750}.student-discount input{background:white}.student-discount>button{margin-top:14px;background:var(--plum);cursor:pointer}.student-prices{display:flex;gap:12px;margin-top:18px}.student-prices button{background:white;color:var(--plum);display:grid;gap:2px;text-align:left;cursor:pointer}.student-prices strong{font-family:Georgia,serif;font-size:1.7rem;font-weight:400}.student-prices small{font-family:Inter,system-ui,sans-serif;font-size:.72rem;color:#6b625d}.cancel-subscription{margin:14px 0 0;background:transparent!important;color:var(--plum)!important;border:1px solid var(--plum)!important;cursor:pointer}.payment-busy{opacity:.65;pointer-events:none}@media(max-width:600px){.student-prices{display:grid}}

/* Portal onboarding and student plan */
.portal-plan-options{grid-template-columns:repeat(3,1fr)}
.portal-plan-options section.student-plan{border-top:5px solid var(--blue)}
.portal-plan-options span{min-height:50px}
.student-discount[data-student-panel][hidden]{display:none}
.student-discount[data-student-panel]{scroll-margin-top:25px}
.onboarding-notice{grid-column:1/-1;background:var(--plum);color:white;padding:24px;border-left:6px solid var(--joy)}
.onboarding-notice span{color:var(--joy);font-size:.76rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.onboarding-notice h2{margin:8px 0 6px;color:white}
.onboarding-notice p{margin:0;color:#f3ece7}
.profile-onboarding .portal-sidebar nav button:not([data-portal-view="gegevens"]){opacity:.45}
.profile-onboarding #gegevens .profile-form{box-shadow:0 0 0 3px #d7b45a55}
@media(max-width:1000px){.portal-plan-options{grid-template-columns:1fr}.portal-plan-options span{min-height:0}}

/* Homepage subscription offer */
.subscription-popup{position:fixed;z-index:120;right:24px;top:50%;width:min(390px,calc(100vw - 40px));padding:38px 32px 30px;background:var(--plum);color:white;border-radius:34px 34px 80px 34px;box-shadow:0 28px 80px #241a1f66;border:1px solid #ffffff24;transform:translate(35px,-50%);opacity:0;transition:opacity .25s ease,transform .25s ease}.subscription-popup.visible{opacity:1;transform:translate(0,-50%)}.subscription-popup-close{position:absolute;right:17px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:#ffffff18;color:white;font:400 1.7rem/1 Inter,sans-serif;cursor:pointer}.subscription-popup-close:hover{background:#ffffff2b}.subscription-popup-badge{display:inline-block;background:var(--joy);color:var(--ink);padding:7px 11px;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;transform:rotate(-2deg);margin-bottom:18px}.subscription-popup .eyebrow{color:var(--joy)}.subscription-popup h2{font-family:Georgia,serif;font-weight:400;font-size:2.25rem;line-height:1.04;margin:10px 0 22px}.subscription-popup-price{display:flex;align-items:end;gap:10px;margin-bottom:15px}.subscription-popup-price strong{font-family:Georgia,serif;font-size:3.5rem;font-weight:400;line-height:1;color:var(--joy)}.subscription-popup-price span{padding-bottom:5px;color:#e9dfe3}.subscription-popup>p:not(.eyebrow){color:#eee5e8}.subscription-popup .button{width:100%;justify-content:center;background:var(--joy);color:var(--ink);margin-top:24px}.subscription-popup small{display:block;text-align:center;margin-top:11px;color:#d7cbd0}.subscription-popup-backdrop{display:none}
@media(max-width:700px){.subscription-popup-backdrop{display:block;position:fixed;inset:0;z-index:119;background:#211b1d8a;backdrop-filter:blur(3px);opacity:0;transition:opacity .25s}.subscription-popup-backdrop.visible{opacity:1}.subscription-popup{left:50%;right:auto;top:50%;width:min(370px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:34px 24px 26px;border-radius:28px 28px 65px 28px;transform:translate(-50%,-45%)}.subscription-popup.visible{transform:translate(-50%,-50%)}.subscription-popup h2{font-size:2rem}.subscription-popup-price strong{font-size:3.1rem}}
@media(prefers-reduced-motion:reduce){.subscription-popup,.subscription-popup-backdrop{transition:none}}

/* Homepage courses */
.home-courses{margin-top:110px;margin-bottom:110px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--plum);color:white;border-radius:38px;overflow:hidden}.home-courses-copy{padding:64px}.home-courses .eyebrow{color:var(--joy)}.home-courses-copy h2{max-width:650px;margin:10px 0 22px}.home-courses-copy>p:not(.eyebrow){max-width:670px;color:#eee5e8;font-size:1.08rem}.home-course-benefits{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.home-course-benefits span{background:#ffffff12;border:1px solid #ffffff20;padding:9px 12px;font-size:.86rem;font-weight:750}.home-courses .button{background:var(--joy);color:var(--ink)}.home-courses .button.secondary{background:transparent;color:white;border-color:#ffffff50}.home-course-card{position:relative;background:var(--joy);color:var(--ink);padding:58px 48px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.home-course-card:after{content:'↗';position:absolute;right:-20px;bottom:-80px;font-size:15rem;line-height:1;color:#ffffff2b;font-weight:900}.home-course-card .eyebrow{color:var(--plum)}.home-course-number{position:absolute;right:28px;top:22px;font:400 5rem Georgia,serif;color:#65455224}.home-course-card h3{font:400 clamp(2.15rem,4vw,3.6rem) Georgia,serif;max-width:540px;margin:12px 0 20px}.home-course-card>p:not(.eyebrow){font-size:1.05rem;max-width:520px}.home-course-meta{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}.home-course-meta span{background:#fff8;padding:8px 11px;font-size:.8rem;font-weight:800}.home-course-card>a{position:relative;z-index:1;font-weight:850;color:var(--plum)}
@media(max-width:900px){.home-courses{grid-template-columns:1fr}.home-course-card{min-height:430px}}
@media(max-width:600px){.home-courses{margin-top:75px;margin-bottom:75px;border-radius:28px}.home-courses-copy,.home-course-card{padding:42px 25px}.home-courses-copy .buttons{display:grid}.home-courses-copy .button{justify-content:center;text-align:center}.home-course-card{min-height:390px}.home-course-card h3{font-size:2.5rem}}

/* Production customer portal */
.secure-pill{background:#e3ece8;color:#2c5840;padding:8px 12px;font-size:.72rem;font-weight:850}.portal-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.portal-action-grid button{min-height:190px;border:0;background:white;padding:28px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;cursor:pointer;border-top:5px solid var(--joy);transition:transform .2s,box-shadow .2s}.portal-action-grid button:nth-child(2n){border-color:var(--blue)}.portal-action-grid button:hover{transform:translateY(-4px);box-shadow:8px 10px 0 #e4d9d1}.portal-action-grid button>span{width:47px;height:47px;display:grid;place-items:center;background:var(--plum);color:white;font-size:1.35rem;margin-bottom:24px}.portal-action-grid strong{font:400 1.65rem Georgia,serif}.portal-action-grid small{margin-top:8px;color:#706660;font-size:.85rem}.profile-type-options{grid-template-columns:repeat(3,1fr)!important}.profile-type-options label{display:flex!important;align-items:center;gap:10px;background:#f3ece6;padding:16px;cursor:pointer}.profile-type-options input{width:auto!important}.conditional-profile{display:grid!important;grid-template-columns:1fr 1fr;gap:20px;background:#f7f3ed;padding:22px}.conditional-profile[hidden]{display:none!important}.profile-subscription{max-width:900px;background:var(--blue);color:white;padding:30px;margin-top:20px}.profile-subscription h2{font:400 1.8rem Georgia,serif;margin-bottom:10px}.portal-list{display:grid;gap:14px;max-width:1050px}.portal-empty{background:white;border:1px dashed #bbaa9f;padding:35px;color:#6d645e}.scan-request-form{max-width:850px;background:white;padding:32px;display:grid;grid-template-columns:1fr 1.5fr auto;gap:16px;align-items:end;margin-bottom:28px}.scan-request-form label{display:grid;gap:7px;font-weight:750}.scan-request-form select,.scan-request-form textarea{width:100%;border:1px solid #d5cac2;background:#faf7f1;padding:13px;font:inherit}.scan-request-form textarea{resize:vertical}.scan-request-form .demo-status{grid-column:1/-1}.student-discount form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:15px}.student-discount form .demo-status{grid-column:1/-1}.admin-page{background:#f7f3ed}.admin-wrap{width:min(1100px,calc(100% - 40px));margin:55px auto 100px}.admin-wrap>h1{font:400 clamp(3rem,6vw,5rem) Georgia,serif;margin:10px 0 15px}.admin-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}.upload-form h2{font:400 2rem Georgia,serif;margin:0 0 10px}.upload-form select,.upload-form input{width:100%;border:1px solid #d5cac2;background:#faf7f1;padding:13px;font:inherit}
@media(max-width:900px){.portal-action-grid{grid-template-columns:1fr 1fr}.scan-request-form{grid-template-columns:1fr}.admin-upload-grid{grid-template-columns:1fr}}
@media(max-width:600px){.portal-action-grid{grid-template-columns:1fr}.portal-action-grid button{min-height:155px}.profile-type-options,.conditional-profile{grid-template-columns:1fr!important}.student-discount form{grid-template-columns:1fr}.secure-pill{display:none}}

/* FAQ knowledge page */
.about-faq-block{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:end;background:var(--joy);padding:55px 60px;border-radius:34px;margin-bottom:110px}.about-faq-block h2{max-width:780px;margin:10px 0 18px}.about-faq-block p:not(.eyebrow){max-width:760px;font-size:1.05rem}.about-faq-block .button{white-space:nowrap}
.faq-hero{padding:75px 0 55px}.faq-hero h1{font-size:clamp(4rem,8vw,7.2rem);margin:10px 0 24px}.faq-hero>p:not(.eyebrow){font-size:1.15rem;color:#615954;max-width:800px}.faq-category-nav{display:flex;flex-wrap:wrap;gap:9px;margin-top:35px}.faq-category-nav a{background:white;border:1px solid #d5cac2;padding:9px 13px;text-decoration:none;font-size:.86rem;font-weight:750}.faq-category-nav a:hover{background:var(--plum);color:white;border-color:var(--plum)}.faq-content{display:grid;gap:85px;padding-bottom:110px}.faq-category{scroll-margin-top:25px}.faq-category-head{display:grid;grid-template-columns:85px 1fr;gap:20px;align-items:end;margin-bottom:24px}.faq-category-head>span{font:400 3.8rem Georgia,serif;color:var(--mocha);line-height:1}.faq-category-head h2{font-size:clamp(2.3rem,4vw,3.7rem);margin-top:5px}.faq-list{border-top:1px solid #cfc3bb}.faq-item{border-bottom:1px solid #cfc3bb;background:#fff0}.faq-item[open]{background:white}.faq-item summary{display:grid;grid-template-columns:55px 1fr 35px;gap:15px;align-items:center;padding:22px 18px;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary>span{font-size:.76rem;font-weight:850;color:var(--mocha)}.faq-item summary h3{font-family:Georgia,serif;font-weight:400;font-size:1.35rem;line-height:1.25;letter-spacing:-.02em}.faq-item summary i{font-style:normal;font-size:1.7rem;color:var(--plum);transition:transform .2s}.faq-item[open] summary i{transform:rotate(45deg)}.faq-answer{padding:0 70px 25px 88px;max-width:980px}.faq-answer p{color:#5f5752;font-size:1.02rem}.faq-answer a{display:inline-block;margin-top:12px;color:var(--plum);font-weight:800}.faq-contact{display:flex;align-items:end;justify-content:space-between;gap:40px;background:var(--blue);color:white;padding:60px;margin-bottom:110px;border-radius:35px}.faq-contact .eyebrow{color:white}.faq-contact h2{margin:10px 0 15px}.faq-contact p:not(.eyebrow){font-size:1.05rem}.faq-contact .button{white-space:nowrap}
@media(max-width:820px){.about-faq-block{grid-template-columns:1fr;align-items:start}.faq-contact{align-items:flex-start;flex-direction:column}.faq-category-head{grid-template-columns:60px 1fr}.faq-category-head>span{font-size:3rem}}
@media(max-width:600px){.about-faq-block{padding:38px 24px;margin-bottom:75px}.about-faq-block .button{white-space:normal;text-align:center;justify-content:center}.faq-hero{padding-top:45px}.faq-hero h1{font-size:3.6rem}.faq-content{gap:65px;padding-bottom:75px}.faq-item summary{grid-template-columns:42px 1fr 25px;padding:19px 10px}.faq-item summary h3{font-size:1.16rem}.faq-answer{padding:0 20px 22px 52px}.faq-contact{padding:42px 25px;margin-bottom:75px}.faq-contact .button{width:100%;justify-content:center}}

/* Blogs */
.blog-hero{padding:80px 0 55px}.blog-hero h1{font-size:clamp(4rem,8vw,7.2rem);max-width:1000px;margin:10px 0 24px}.blog-hero>p:not(.eyebrow){font-size:1.15rem;color:#615954;max-width:770px}.blog-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:110px}.blog-card{background:white;overflow:hidden}.blog-card>a:first-child{display:block;aspect-ratio:3/2;overflow:hidden}.blog-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.blog-card:hover img{transform:scale(1.025)}.blog-card>div{padding:34px}.blog-card h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,3.2vw,3rem);margin:10px 0 18px}.blog-card h2 a{text-decoration:none}.blog-card>div>p:not(.eyebrow){color:#625a55}.blog-card>div>span{display:block;color:#81756d;font-size:.82rem;margin:20px 0 10px}.blog-read{font-weight:850;color:var(--plum)}
.blog-article{padding-bottom:110px}.article-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:36px 0 52px;font-size:.85rem;color:#746a64}.article-header{max-width:1050px;margin-bottom:44px}.article-header h1{font-size:clamp(3.5rem,7vw,6.5rem);margin:12px 0 28px}.article-meta{display:flex;gap:10px 24px;flex-wrap:wrap;color:#756b65;font-size:.9rem}.article-image{margin:0 0 65px}.article-image img{width:100%;max-height:670px;object-fit:cover;display:block}.article-image figcaption{font-size:.78rem;color:#786e68;margin-top:8px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 310px;gap:75px;align-items:start;justify-content:center}.article-body{font-size:1.08rem;line-height:1.82}.article-body .article-lead{font-size:1.28rem;line-height:1.65;color:#554e49}.article-body p{margin:0 0 24px}.article-body h2{font:400 clamp(2rem,3.5vw,3rem) Georgia,serif;letter-spacing:-.035em;margin:58px 0 20px}.article-body a{color:var(--plum);font-weight:750}.article-side{position:sticky;top:30px;background:var(--joy);padding:30px}.article-side h2{font:400 2.1rem Georgia,serif;margin:9px 0 16px}.article-side .button{margin:24px 0 16px;width:100%;justify-content:center;text-align:center}.article-side>a:last-child{display:block;color:var(--plum);font-weight:800;font-size:.85rem}.blog-next{background:var(--plum);color:white;margin-bottom:110px;padding:55px 60px;display:flex;align-items:end;justify-content:space-between;gap:40px}.blog-next .eyebrow{color:var(--joy)}.blog-next h2{margin-top:10px}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr}.article-layout{grid-template-columns:1fr;gap:45px}.article-side{position:static}.blog-next{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.blog-hero{padding-top:45px}.blog-hero h1{font-size:3.6rem}.blog-grid{padding-bottom:75px}.blog-card>div{padding:27px 22px}.article-breadcrumb{padding:25px 0 35px}.article-header h1{font-size:3.15rem}.article-image{margin-bottom:42px}.article-body{font-size:1rem}.article-body .article-lead{font-size:1.15rem}.article-body h2{margin-top:45px}.blog-next{padding:40px 25px;margin-bottom:75px}.blog-next .button{width:100%;justify-content:center}}

/* Discourage copying website photography without blocking search indexing */
img{-webkit-user-drag:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
