:root{--green:#173b2d;--muted:#657269;--cream:#f7f7ef;--gold:#c6b771}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--green);font:18px/1.7 "Open Sans",sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #aa8525;outline-offset:5px}.topline{text-align:center;background:var(--green);color:#e3e7cf;font-size:14px;letter-spacing:2px;padding:9px}.public-header{display:flex;align-items:center;justify-content:space-between;padding:22px 6%;border-bottom:1px solid #dce1d4;gap:24px}.wordmark{display:flex;align-items:center;gap:10px;font:bold 27px "Open Sans",sans-serif;letter-spacing:1px}.wordmark img{width:46px;height:46px;object-fit:contain}.public-header nav{display:flex;gap:34px;font-size:16px}.login-link{font-size:16px;border-bottom:1px solid;padding:8px 0}.landing-hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px}.hero-copy{padding:80px 9% 65px 12%;align-self:center}.eyebrow{font-size:14px;letter-spacing:2px;font-weight:600}h1,h2,h3{font-family:"Open Sans",sans-serif;font-weight:600;line-height:1.2}h1{font-size:clamp(42px,4.7vw,70px);letter-spacing:-1px;margin:20px 0 24px}h2{font-size:38px;margin:15px 0 22px}h3{font-size:27px;margin:14px 0}p{color:var(--muted)}.hero-copy p{max-width:480px;margin-bottom:30px}.button{display:inline-block;border:0;background:var(--green);color:white;padding:15px 24px;font-size:16px;cursor:pointer}.button:hover{background:#31563e}.button:disabled{opacity:.5;cursor:wait}.text-link{font-size:16px;border-bottom:1px solid;display:inline-block;margin:15px}.hero-image{position:relative;background:#b4bf9f;overflow:hidden;display:grid;place-items:center}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image span{position:absolute;bottom:24px;left:30px;font-size:14px;letter-spacing:2px;color:white;background:#183b2dcc;padding:8px 12px}.values-strip{display:flex;justify-content:space-around;gap:20px;padding:21px 6%;background:#e7ebdf;text-transform:uppercase;letter-spacing:2px;font-size:14px}.section{padding:65px 6%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.section-heading h2{margin-bottom:0}.section-heading a{font-size:16px;white-space:nowrap}.editorial-grid,.product-grid,.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.feature img{width:100%;aspect-ratio:1.1;object-fit:cover}.feature small{display:block;margin-top:20px;font-size:14px;letter-spacing:2px}.feature p{font-size:16px}.story-band{background:#193c2d;color:#f2f3e7;padding:75px 15%;text-align:center}.story-band h2{font-size:55px}.story-band p{color:#bfcdbd;max-width:600px;margin:0 auto 30px}.light{background:#e7ebd6;color:var(--green)}.public-footer{padding:60px 6% 25px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;border-top:1px solid #dce1d4}.public-footer div>a:not(.wordmark){display:block;font-size:16px;margin:10px 0}.public-footer b{font-size:16px}.public-footer small{grid-column:1/-1;border-top:1px solid #dce1d4;padding-top:20px;color:var(--muted);font-size:14px}.page-intro{padding:65px 6% 12px;max-width:1000px}.product-card{background:#fff}.product-card img{width:100%;aspect-ratio:1.2;object-fit:cover;display:block}.product-card>div{padding:23px}.product-card small{font-size:14px;letter-spacing:1px;text-transform:uppercase}.product-card h2{font-size:27px;margin:12px 0}.product-card p{margin:12px 0 0;color:var(--green)}.product-card span{font-size:14px}.product-card b{float:right;font-size:16px;font-weight:400}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding:70px 6%;align-items:center}.product-detail>img{width:100%;max-height:620px;object-fit:contain}.product-detail h1{font-size:50px}.product-detail a:not(.button){font-size:16px}.product-price{font:36px "Open Sans",sans-serif;color:var(--green)}.product-price small{font:14px "Open Sans",sans-serif}.fine-print{font-size:16px;color:var(--muted)}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:50px 6% 80px;align-items:center}.about-section img{width:100%}.package{border:1px solid #d5ddcb;background:#fff;padding:28px}.package>small{font-size:14px;letter-spacing:2px}.package .button{display:block;text-align:center;margin-top:25px}.package-grid+.section{padding-top:0}.access{display:grid;grid-template-columns:1fr 1fr;max-width:1100px;margin:60px auto;padding:0 24px}.access-art{background:#243e2e;color:white;overflow:hidden}.access-art img{width:100%;display:block;aspect-ratio:1.25;object-fit:cover}.access-art h2,.access-art>p{margin:30px 40px}.access-art>p{color:#c9d3c2}.access-form{padding:45px;background:white}.access-form h1{font-size:42px}.access-form form{display:grid;gap:18px;margin:25px 0}.access-form label{display:grid;gap:6px;font-size:16px}.access-form input,.access-form select{min-width:0;width:100%;padding:12px;border:1px solid #cbd5c6;background:#fff;border-radius:0;color:var(--green)}.access-form p,.access-form small{font-size:16px}.access-form p a{text-decoration:underline}#form-status{color:#875218}.register{align-items:start}.register .access-art{position:sticky;top:20px}@media(max-width:800px){.public-header{flex-wrap:wrap;padding:16px 5%}.public-header nav{order:3;width:100%;justify-content:center;gap:25px}.wordmark{font-size:22px}.wordmark img{width:36px;height:36px}.landing-hero,.product-detail,.about-section,.access{grid-template-columns:1fr}.hero-copy{padding:50px 7%}.hero-image{min-height:300px}.hero-image img{max-height:450px}.values-strip{flex-wrap:wrap;gap:12px 20px}.editorial-grid,.product-grid,.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{display:block}.section-heading a{display:inline-block;margin-top:18px}.section{padding:45px 6%}.story-band{padding:55px 8%}.story-band h2{font-size:42px}.access{margin:30px auto}.access-art{display:none}.access-form{padding:30px}.product-detail,.about-section{gap:30px;padding:35px 6%}.public-footer{grid-template-columns:1fr 1fr}.public-footer>div:first-child{grid-column:1/-1}}@media(max-width:480px){.editorial-grid,.product-grid,.package-grid{grid-template-columns:1fr}.page-intro{padding-top:40px}.login-link{font-size:14px}.product-detail h1{font-size:40px}}

/* Distinct membership colours; tier names remain visible independently of colour. */
.package--basic { --tier: #28633c; --tier-tint: #f0f7ee; }
.package--bronze { --tier: #895125; --tier-tint: #fbf1e7; }
.package--silver { --tier: #526171; --tier-tint: #f0f3f6; }
.package--platinum { --tier: #655086; --tier-tint: #f4f0fa; }
.package--gold { --tier: #7b5b0e; --tier-tint: #fff8df; }
.package--diamond { --tier: #176479; --tier-tint: #eaf7fb; }
.package { background: var(--tier-tint, #fff); border-color: var(--tier, #d5ddcb); border-top-width: 7px; }
.package h2, .package .product-price { color: var(--tier); }
.package .button { background: var(--tier); color: #fff; }
.package .button:hover { filter: brightness(.88); }
.public-header nav { flex-wrap: wrap; }
.product-card b { float: none; display: block; margin-top: 8px; }
.access-form input, .access-form select { font-size: 18px; min-height: 48px; }
.button { min-height: 48px; }
.section-heading a { white-space: normal; }
@media (max-width: 1000px) {
 .public-header { flex-wrap: wrap; }
 .public-header nav { order: 3; width: 100%; justify-content: center; }
 .package-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
 .package-grid { grid-template-columns: 1fr; }
 .public-header nav { gap: 16px; }
 .login-link { font-size: 16px; }
}
