*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#342d39;background:#fcfbf9;font:16px/1.62 system-ui,sans-serif}h1,h2,h3{line-height:1.14;color:#31203f}h1,h2,.brand{font-family:Georgia,serif}h1{font-size:clamp(38px,5vw,66px);letter-spacing:-.035em;margin:15px 0}h2{font-size:clamp(25px,3vw,37px);margin:0 0 15px}h3{font-size:17px;margin:0 0 6px}p{margin:8px 0 15px}a{color:#543575;text-underline-offset:.19em}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #007a7c;outline-offset:4px}header{background:white;border-bottom:1px solid #e0d9e3}.bar,main,footer{max-width:1180px;margin:auto;padding:20px clamp(18px,4vw,58px)}.bar{display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:bold;text-decoration:none;color:#30203f}.brand img{width:42px;height:42px;object-fit:contain}nav,.bulk,.related>div{display:flex;flex-wrap:wrap;gap:10px 20px}nav a,.back{font-size:14px}.hero{display:grid;grid-template-columns:1.18fr 1fr;gap:36px;align-items:center;padding:30px 0 35px}.hero img{width:100%;height:340px;object-fit:cover;border-radius:52px 6px 6px 6px}.lead{font-size:22px;line-height:1.35;color:#4e405a}.action,button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;background:#4e3068;color:white;font:600 15px/1.32 system-ui,sans-serif;border:1px solid #4e3068;border-radius:5px;text-decoration:none;cursor:pointer}button:disabled{background:#e4dfe5;color:#514857;border-color:#ccc;cursor:default}.path{background:#f1ebf3;border-left:4px solid #806292;padding:24px 30px;margin:0 0 36px}.directory-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.directory{scroll-margin-top:18px}.directory-head label,.pick label{display:grid;gap:4px;font-weight:600}.bulk{align-items:center;margin:20px 0}.bulk button,.secondary{color:#4e3068;background:#fff}.module{background:white;margin:12px 0;border:1px solid #dcd3df;border-radius:8px}.module summary{padding:16px 20px;cursor:pointer;color:#44304e}.module summary span{display:inline-block;vertical-align:middle;padding-left:8px}.module summary strong{font:600 22px Georgia,serif}.module summary small,.facts{display:block;font-size:14px;color:#57495b}.module-body{padding:0 20px 20px}.module-intro{max-width:78ch}.edition{display:grid;grid-template-columns:minmax(175px,.8fr) 1.4fr;gap:25px;border-top:1px solid #e6e2e5;padding:15px 0}.edition p{margin:0 0 5px}.topics{color:#554a59}.pick{display:flex;align-items:end;flex-wrap:wrap;gap:12px;background:#f6f3ed;padding:14px;border-radius:4px}input[type=search],select{min-height:44px;padding:8px;max-width:100%;border:1px solid #817481;border-radius:4px;font:inherit;background:white}.selection,.narrow{max-width:800px;margin:34px auto;background:white;border:1px solid #ded5e2;padding:clamp(18px,4vw,42px);border-radius:8px}.line,.review-line{padding:12px 0;border-top:1px solid #e2dbe4}.line{display:flex;justify-content:space-between;gap:12px;align-items:center}.line span{display:block;font-size:14px}.line button{background:white;color:#51386d}.cart-total{font:600 26px Georgia,serif;color:#362040;margin:14px 0}.selection fieldset{border:0;padding:0;margin:15px 0}.selection legend{font-weight:bold}.selection label{display:inline-block;padding:8px}.selection a{display:inline-flex;align-items:center;min-height:44px}.related{padding:30px 0}.related a{min-height:44px;align-content:center}.package-list article{border-top:1px solid #ded5e2;padding:16px 0}.review-line h2{font-size:22px}footer{border-top:1px solid #d9d2dc;font-size:14px}.test{color:#6c3e09}.skip{position:absolute;left:-9999px}.skip:focus{left:5px;top:5px;background:white}.notice{font-weight:600;color:#3e3152}details[hidden]{display:none}@media(max-width:720px){.bar,.directory-head{display:block}.bar nav{margin-top:7px}.bar nav a{display:flex;align-items:center;min-height:44px}.hero,.edition{grid-template-columns:1fr;gap:8px}.hero img{height:180px;margin-top:10px}.hero{padding-top:12px}.path{padding:16px}.pick label{width:100%}.module summary strong{font-size:20px}.narrow,.selection{margin:22px 0}.line{align-items:start}.bulk button{width:100%}}@media print{header,footer,button,nav,.pick,.bulk,.selection{display:none}.narrow{margin:0;padding:0;border:0}}
@media(max-width:720px){.pick label{min-width:0;grid-template-columns:minmax(0,1fr)}.pick select{width:100%;min-width:0}.edition{grid-template-columns:minmax(0,1fr);overflow-wrap:anywhere}}
