:root{--blue:#073cc7;--orange:#ff7a20;--navy:#101e44;--muted:#566079;--paper:#f4f6fc;--line:#dce1ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;color:var(--navy);font-family:Arial,Helvetica,sans-serif;line-height:1.55;background:white}a{color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:6px}button{font:inherit}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.skip{position:fixed;z-index:20;top:10px;left:10px;background:white;padding:12px;transform:translateY(-150%)}.skip:focus{transform:none}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-size:36px;line-height:1;font-weight:900;letter-spacing:-2px;text-decoration:none;position:relative}.logo span{color:var(--blue)}.logo i{display:block;width:47px;height:5px;background:var(--orange);margin:7px 0 0 2px;border-radius:4px;transform:rotate(-7deg)}nav{display:flex;align-items:center;gap:34px}.nav-link{font-size:14px;font-weight:700;text-decoration:none}.nav-link:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:34px;padding:19px 25px;background:var(--orange);color:var(--navy);border:0;border-radius:8px;text-decoration:none;font-weight:800;font-size:16px;transition:transform .2s,box-shadow .2s,background .2s}.button span{font-size:24px;line-height:1}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 #101e4415;background:#ff8b3c}.small{padding:14px 19px;font-size:14px;gap:24px}.hero{display:grid;grid-template-columns:1.03fr 1fr;min-height:630px;align-items:center;padding:35px 0 78px;gap:25px}.eyebrow{font-size:11px;letter-spacing:1.9px;font-weight:800;display:block}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:24px;font-size:10px}.spark{color:var(--orange);font-size:28px;line-height:1}h1,h2,h3,p{margin:0}h1{font-size:clamp(56px,5.5vw,80px);line-height:1.02;letter-spacing:-4px;font-weight:800}em{font-style:normal;color:var(--blue)}.intro{font-size:17px;max-width:460px;margin:27px 0 29px;color:var(--muted)}.hero-meta{display:flex;gap:18px;margin-top:19px;font-size:11px;color:var(--muted)}.hero-meta span+span:before{content:'•';margin-right:18px;color:var(--orange)}.hero-art{position:relative;min-width:0;height:535px}.loop-art{position:absolute;width:113%;height:100%;left:-5%;top:0}.art-note{position:absolute;display:flex;align-items:center;gap:13px;background:white;border:1px solid #e4e7ef;padding:17px 20px;border-radius:14px;box-shadow:0 16px 36px #14224910;font-weight:700;font-size:14px;transform:rotate(-5deg)}.art-note small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}.note-one{top:78px;left:8px}.note-two{bottom:49px;right:0;transform:rotate(4deg)}.note-icon{background:#fff0e6;color:#ad4200;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:22px}.note-icon.blue{background:#eaf0ff;color:var(--blue)}.art-label{position:absolute;left:34%;top:46%;font-weight:800;font-size:12px;letter-spacing:1.4px;line-height:1.7;transform:rotate(-7deg)}.art-star{position:absolute;right:1%;top:20%;font-size:72px;color:var(--orange);animation:turn 24s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}.bridge{background:var(--blue);color:white;padding:35px 0}.bridge-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.bridge .eyebrow{color:#c4d4ff;font-size:10px}.bridge p{font-size:26px;line-height:1.35;letter-spacing:-.7px}.bridge strong{font-weight:700}.bridge a{font-size:28px;text-decoration:none;border:1px solid #ffffff55;border-radius:50%;width:58px;height:58px;display:grid;place-items:center}.section{padding-top:105px;padding-bottom:105px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px}h2{font-size:clamp(38px,4vw,54px);line-height:1.08;letter-spacing:-2px;margin-top:17px}.section-heading>p{max-width:355px;color:var(--muted);font-size:16px;margin-bottom:3px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.steps article{border-top:1px solid var(--line);padding-top:27px}.number{display:grid;place-items:center;background:#fff0e5;width:45px;height:45px;border-radius:50%;font-size:13px;font-weight:800;color:#a44300;margin-bottom:23px}.steps h3{font-size:21px;letter-spacing:-.5px;margin-bottom:12px}.steps p{font-size:14px;color:var(--muted);max-width:310px}.patterns{background:var(--paper)}.pattern-explorer{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:stretch}.pattern-tabs{display:flex;flex-direction:column;gap:5px}.pattern-tab{border:0;background:transparent;display:flex;justify-content:space-between;align-items:center;text-align:left;color:var(--muted);padding:17px 20px;border-radius:8px;cursor:pointer;font-weight:700;font-size:16px;transition:background .2s,color .2s}.pattern-tab:hover{background:#e4eafd}.pattern-tab[aria-selected=true]{background:var(--blue);color:white}.pattern-tab b{font-weight:400}.pattern-card{background:white;padding:34px 38px;border-radius:16px;min-width:0;position:relative;overflow:hidden;box-shadow:0 14px 35px #0b265508}.pattern-top{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.pattern-top .eyebrow{font-size:9px}.pattern-card svg{width:calc(100% + 76px);height:155px;margin:20px -38px;color:var(--blue)}.pattern-card h3{font-size:30px;letter-spacing:-1px;line-height:1.15;margin-bottom:14px}.pattern-card p{font-size:15px;color:var(--muted);min-height:75px}.text-link{display:inline-flex;gap:25px;font-weight:700;color:var(--blue);text-decoration:none;font-size:14px;margin-top:23px}.text-link:hover{text-decoration:underline}.pattern-footnote{text-align:center;font-size:12px;color:var(--muted);margin-top:29px}.joe{display:grid;grid-template-columns:.9fr 1fr;align-items:center;gap:100px}.joe-image{position:relative;max-width:465px}.joe-image img{width:100%;height:520px;object-fit:cover;border-radius:120px 12px 12px 12px;display:block;object-position:50% 30%}.joe-badge{position:absolute;bottom:30px;right:-35px;background:var(--orange);border-radius:9px;padding:20px 24px;font-weight:700;font-size:14px;transform:rotate(-4deg);box-shadow:0 12px 30px #101e4420}.joe-copy h2{font-size:61px}.joe-name{font-weight:800;margin-top:25px;font-size:14px}.joe-name span{font-weight:400;color:var(--muted)}.joe-copy>p:not(.joe-name){color:var(--muted);font-size:15px;margin-top:18px;max-width:430px}.faq{padding-top:10px;display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.questions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:23px 0;cursor:pointer;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:23px;font-weight:400;color:var(--blue)}details[open] summary span{transform:rotate(45deg)}details p{padding-bottom:24px;font-size:14px;color:var(--muted)}details a{color:var(--blue)}.closing{background:var(--blue);color:white;text-align:center;padding:90px 0 140px;position:relative;overflow:hidden}.closing h2{font-size:clamp(40px,4.5vw,66px);margin-top:23px}.closing em{color:#ff9d5b}.closing p{color:#d5e0ff;margin:23px 0 28px}.closing-meta{display:block;font-size:11px;color:#d5e0ff;margin-top:19px}.closing svg{position:absolute;bottom:-1px;left:0;width:100%;height:90px}.footer{display:flex;align-items:center;gap:30px;padding-top:37px;padding-bottom:37px;font-size:11px;color:var(--muted)}.footer p{margin-right:auto}.footer>a:not(.norm-logo){text-decoration:none}.norm-logo{font-size:22px;font-weight:800;letter-spacing:-1px;color:var(--navy);text-decoration:none;position:relative;white-space:nowrap;padding-bottom:14px}.norm-logo svg{position:absolute;bottom:0;width:100%;height:14px;left:0}@media(min-width:1500px){.hero-art{height:555px}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.hero{gap:0}h1{font-size:58px;letter-spacing:-3px}.hero-art{height:445px}.art-note{padding:12px;font-size:12px}.note-one{top:55px}.art-label{font-size:10px}.hero-meta{gap:10px;font-size:10px}.hero-meta span+span:before{margin-right:10px}.pattern-explorer{gap:35px}.joe{gap:60px}.joe-copy h2{font-size:52px}.joe-image img{height:475px}.joe-badge{right:-15px}.bridge p{font-size:23px}.nav-link{display:none}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{height:86px}.logo{font-size:29px}.small{font-size:11px;padding:12px;gap:12px}.small span{font-size:19px}.hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:30px;min-height:0}.hero .eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:22px}h1{font-size:clamp(49px,11.5vw,76px);letter-spacing:-2.7px}.intro{font-size:16px;max-width:500px;margin:23px 0}.hero-meta{font-size:10px;gap:13px}.hero-meta span+span:before{margin-right:13px}.hero-art{height:390px;max-width:500px;width:100%;margin:27px auto 0}.loop-art{width:100%;left:0}.note-one{top:57px;left:0}.note-two{bottom:35px;right:0}.art-star{font-size:56px;right:5%}.art-label{left:37%;top:44%}.bridge{padding:27px 0}.bridge-inner{gap:15px;flex-wrap:wrap}.bridge .eyebrow{width:100%;font-size:9px}.bridge p{font-size:20px}.bridge a{width:44px;height:44px}.section{padding-top:65px;padding-bottom:65px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:22px;max-width:450px;font-size:15px}h2{font-size:42px}.eyebrow{font-size:9px;letter-spacing:1.5px}.steps{grid-template-columns:1fr;gap:27px}.steps article{display:grid;grid-template-columns:45px 1fr;column-gap:20px;padding-top:23px}.number{grid-row:span 2;margin:0}.steps h3{font-size:20px;margin-bottom:9px}.steps p{max-width:none}.pattern-explorer{grid-template-columns:1fr;gap:25px}.pattern-tabs{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px}.pattern-tab{font-size:12px;padding:10px 12px;background:#e8edf8;gap:15px}.pattern-tab b{display:none}.pattern-card{padding:27px;min-height:390px}.pattern-card svg{width:calc(100% + 54px);margin-left:-27px;margin-right:-27px;height:120px}.pattern-card h3{font-size:28px}.pattern-card p{min-height:0}.pattern-footnote{text-align:left}.joe{grid-template-columns:1fr;gap:47px}.joe-image{width:calc(100% - 15px);max-width:400px}.joe-image img{height:420px;border-top-left-radius:90px}.joe-badge{font-size:12px;padding:16px;right:-15px;bottom:25px}.joe-copy h2{font-size:52px}.faq{padding-top:0;grid-template-columns:1fr;gap:33px}.closing{padding:66px 0 120px}.closing h2{font-size:40px;letter-spacing:-1.6px}.closing svg{height:65px}.footer{flex-wrap:wrap;gap:20px;padding:30px 0}.footer p{width:100%;order:2;margin:0}.norm-logo{margin-right:auto;font-size:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Larger, clearer NORM typography and white lettering on orange accents. */
.button{font-size:20px;padding:20px 29px;color:#fff;background:var(--orange);line-height:1.3}
.button:hover{background:#ff8b3c}
.button span{font-size:27px}
.small{font-size:19px;padding:15px 20px;gap:20px}
.intro{font-size:20px;line-height:1.6;max-width:490px}
.eyebrow,.hero .eyebrow,.bridge .eyebrow{font-size:12px}
.hero-meta{font-size:14px;flex-wrap:wrap;gap:12px 19px;line-height:1.6}
.hero-meta span{display:inline-flex;align-items:center;gap:8px}
.hero-meta span:before,.hero-meta span+span:before{content:'✓';display:grid;place-items:center;width:20px;height:20px;background:var(--blue);border-radius:50%;color:white;font-size:12px;font-weight:800;margin:0;flex-shrink:0}
.section-heading>p{font-size:18px;line-height:1.65}
.steps h3{font-size:24px}.steps p{font-size:17px;line-height:1.65}
.number{width:52px;height:52px;font-size:20px;background:var(--orange);color:white}
.pattern-tab{font-size:18px}.pattern-card p{font-size:18px;line-height:1.65;min-height:100px}
.pattern-top,.pattern-top .eyebrow{font-size:12px}.pattern-footnote{font-size:14px}
.text-link{font-size:17px}.art-note{font-size:16px}.art-note small{font-size:13px}
.joe-copy>p:not(.joe-name){font-size:18px;line-height:1.65}.joe-name{font-size:17px}
.joe-badge{font-size:19px;color:white;background:var(--orange)}
summary{font-size:18px}details p{font-size:17px;line-height:1.65}
.closing p{font-size:20px}.closing-meta{font-size:14px}.footer{font-size:13px}
@media(max-width:1000px){.small{font-size:18px;background:var(--orange)}.hero-meta{font-size:13px}.art-note{font-size:14px}.art-label{font-size:12px}.hero .eyebrow{letter-spacing:1.3px}.pattern-explorer{gap:30px}}
@media(max-width:700px){
 .header{gap:12px}.small{font-size:14px;padding:13px 12px;gap:10px}.small span{font-size:21px}
 .intro{font-size:18px}.hero .eyebrow,.eyebrow,.bridge .eyebrow{font-size:12px;letter-spacing:1px}
 .hero .eyebrow{align-items:flex-start}.hero .spark{font-size:24px;flex-shrink:0}
 .hero-meta{font-size:13px;gap:12px 16px}.hero-meta span+span:before{margin:0}
 .button:not(.small){font-size:20px;padding:19px 23px;gap:22px;max-width:100%}
 .section-heading>p{font-size:17px}.steps article{grid-template-columns:52px 1fr;column-gap:18px}
 .steps h3{font-size:23px}.steps p{font-size:17px}.pattern-tab{font-size:15px;padding:12px 14px}
 .pattern-card p{font-size:17px;min-height:0}.pattern-card{min-height:420px}.pattern-top .eyebrow{font-size:11px}
 .joe-badge{font-size:19px;padding:17px}.joe-copy>p:not(.joe-name){font-size:17px}
 .closing p{font-size:18px}.closing-meta{font-size:13px}.footer{font-size:13px}
}
@media(max-width:360px){.logo{font-size:25px}.small{font-size:13px;gap:7px;padding:12px 9px}.small span{font-size:19px}.art-note{font-size:13px;padding:11px}.art-note small{font-size:12px}.note-two{bottom:28px}.closing .button{font-size:19px}.joe-badge{font-size:19px;padding:14px}}

/* Each relationship pattern has a distinct diagram and visual atmosphere. */
.pattern-visual{margin:24px 0 29px;border-radius:13px;padding:5px 8px 18px;background:#f0f4ff;overflow:hidden}
.pattern-visual #pattern-diagram svg{display:block;width:100%;height:190px;margin:0;color:var(--blue)}
.pattern-visual figcaption{font-size:13px;font-weight:700;text-align:center;color:var(--muted);padding:0 8px}
.pattern-card[data-pattern="balance"] .pattern-visual{background:linear-gradient(110deg,#eef2ff,#fff5ec)}
.pattern-card[data-pattern="layers"] .pattern-visual{background:#f7f3f0}
.pattern-card[data-pattern="drift"] .pattern-visual{background:linear-gradient(140deg,#edf3ff,white)}
.pattern-card[data-pattern="safety"] .pattern-visual{background:#fff4eb}
.pattern-card[data-pattern="trust"] .pattern-visual{background:linear-gradient(90deg,#eef3ff 48%,#fff3e9 52%)}
.pattern-card[data-pattern="voice"] .pattern-visual{background:#f0f2f8}
.pattern-card{min-height:560px;transition:border-color .25s; border:1px solid #e7ebf5}
.pattern-card h3{font-size:32px}.pattern-card p{min-height:120px}
.hero-meta{gap:10px}
.hero-meta span{padding:10px 12px;background:#f4f6fc;border:1px solid #e8edf8;border-radius:10px;font-size:13px;font-weight:600;transition:transform .25s,box-shadow .25s,border-color .25s}
.cursor-glow{position:relative;isolation:isolate}
.cursor-glow:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;background:radial-gradient(160px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ff7a2026,transparent 72%);opacity:0;transition:opacity .25s}
.pattern-tab{transition:background .2s,color .2s,transform .25s,box-shadow .25s}
.pattern-tab[aria-selected=true]:after{background:radial-gradient(180px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ffffff30,transparent 72%)}
.steps article{border-radius:12px;padding:27px 16px 16px;transition:transform .25s,box-shadow .25s}
@media(hover:hover) and (pointer:fine){
 .cursor-glow:hover:after{opacity:1}
 .hero-meta span:hover{transform:translateY(-4px);box-shadow:0 9px 21px #073cc711;border-color:#ff7a2070}
 .hero-meta span:hover:before{background:var(--orange)}
 .pattern-tab:hover{transform:translateX(5px);box-shadow:0 6px 17px #073cc70d}
 .steps article:hover{transform:translateY(-5px);box-shadow:0 12px 28px #073cc70c}
}
.pattern-tab:focus-visible:after{opacity:1}
@media(max-width:700px){.pattern-card{min-height:540px}.pattern-card p{min-height:0}.pattern-card h3{font-size:28px}.pattern-visual #pattern-diagram svg{height:175px}.hero-meta span{font-size:12px;padding:9px 10px}.steps article{padding:23px 10px 15px}.pattern-tab:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.cursor-glow:hover,.pattern-tab:hover,.steps article:hover,.hero-meta span:hover{transform:none!important}}

/* A calm pause before the quiz: clear answers and a warm reassurance. */
.faq{grid-template-columns:.85fr 1.15fr;gap:46px;align-items:start;padding-top:12px}
.faq-intro{background:var(--blue);color:white;border-radius:22px;padding:37px 38px;position:relative;overflow:hidden}
.faq-intro>.eyebrow{color:#d2ddff}.faq-intro h2{font-size:48px;line-height:1.08;margin-top:21px}
.faq-reassurance{border-top:1px solid #ffffff35;margin-top:32px;padding-top:27px;position:relative}
.faq-asterisk{color:var(--orange);font-size:48px;line-height:1;display:block;margin-bottom:20px}
.faq-reassurance p{font-size:25px;font-weight:700;line-height:1.2;letter-spacing:-.6px}
.faq-reassurance>span:last-child{display:block;font-size:15px;line-height:1.6;color:#d5e0ff;max-width:270px;margin-top:14px}
.faq-intro-bottom{display:block;font-size:10px;letter-spacing:1.4px;font-weight:700;margin-top:31px;color:#cfdaff}
.questions{border:0;display:flex;flex-direction:column;gap:13px;padding-top:2px}
.questions details{border:1px solid #e1e7f3;border-radius:15px;background:#f6f8fd;overflow:hidden;transition:background .25s,border-color .25s,box-shadow .25s,transform .25s}
.questions details[open]{background:white;border-color:#b8c8f4;box-shadow:0 9px 25px #073cc70b}
.questions summary{padding:23px 22px;display:grid;grid-template-columns:35px 1fr 32px;gap:14px;align-items:center;line-height:1.4}
.questions summary .faq-number{font-size:13px;font-weight:700;color:var(--blue);transform:none;letter-spacing:.4px}
.questions summary .faq-label{font-size:18px;font-weight:700;color:var(--navy);transform:none}
.questions summary .faq-toggle{font-size:25px;line-height:1;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:white;color:var(--blue);border:1px solid #dbe3f6;transition:transform .25s,background .25s,color .25s}
.questions details[open] .faq-toggle{transform:rotate(45deg);background:var(--orange);color:white;border-color:var(--orange)}
.questions .faq-answer{padding:0 68px 24px 71px}
.questions .faq-answer p{padding:0;font-size:16px;line-height:1.7;color:var(--muted)}
.questions details[open] .faq-answer{animation:answer-in .3s ease-out}
@keyframes answer-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.questions details:hover{border-color:#9bb3ef;transform:translateX(3px)}.questions details:hover .faq-toggle{box-shadow:0 3px 9px #073cc714}.questions details:hover:after{opacity:1}}
@media(max-width:1000px){.faq{gap:28px}.faq-intro{padding:30px}.faq-intro h2{font-size:43px}.questions summary{padding:21px 18px;gap:10px;grid-template-columns:28px 1fr 30px}.questions summary .faq-label{font-size:17px}.questions .faq-answer{padding:0 30px 24px 56px}}
@media(max-width:700px){.faq{grid-template-columns:1fr;gap:25px}.faq-intro{padding:29px;border-radius:17px}.faq-intro h2{font-size:42px}.faq-reassurance{margin-top:25px;padding-top:24px;display:grid;grid-template-columns:38px 1fr;column-gap:16px;align-items:start}.faq-asterisk{font-size:38px;margin:0;grid-row:span 2}.faq-reassurance p{font-size:23px}.faq-reassurance p br{display:none}.faq-reassurance>span:last-child{font-size:15px;margin-top:10px;max-width:none}.faq-intro-bottom{margin-top:24px;font-size:10px}.questions summary{padding:21px 17px;grid-template-columns:26px 1fr 30px;gap:10px}.questions summary .faq-label{font-size:17px}.questions .faq-answer{padding:0 21px 24px 53px}.questions .faq-answer p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.questions details:hover{transform:none}}
