*{box-sizing:border-box;margin:0;padding:0}:root{--cream:#F6F1EA;--cream-dark:#ECE4D6;--cream-mid:#EFE8DC;--navy:#1B2A3F;--navy-light:#2E4260;--peach:#D4856A;--peach-light:#E8B09A;--peach-pale:#F5E8E2;--warm-white:#FBF7F1;--text-muted:#7A7066;--grey-warm:#6B7280;--rule:rgba(27,42,63,.08);--rule-strong:rgba(27,42,63,.15)}html{scroll-behavior:smooth}body{background:var(--warm-white);font-family:Jost,sans-serif;font-weight:300;color:var(--navy);font-size:15px;line-height:1.75;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.1rem 2.25rem;background:#fbf7f1db;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--rule)}.nav-logo{font-family:Cormorant Garamond,serif;font-weight:400;font-size:1.05rem;letter-spacing:.16em;color:var(--navy);text-transform:uppercase;text-decoration:none}.nav-logo span{color:var(--peach);font-style:italic}.nav-links{display:flex;gap:2.25rem;list-style:none}.nav-links a{font-size:10.5px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;transition:color .2s;position:relative;padding-bottom:3px}.nav-links a:hover,.nav-links a.is-current{color:var(--navy)}.nav-links a.is-current:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--peach)}.nav-cta{font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--warm-white);background:var(--navy);padding:.75rem 1.4rem;border-radius:2px;text-decoration:none;transition:background .2s;white-space:nowrap}.nav-cta:hover{background:var(--peach)}.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px}.nav-hamburger span{display:block;width:22px;height:1.5px;background:var(--navy)}section{padding:6rem 2rem}.section-inner{max-width:1140px;margin:0 auto}.section-narrow{max-width:760px;margin:0 auto}.section-label{font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--peach);margin-bottom:1rem;display:inline-flex;align-items:center;gap:.85rem}.section-label:before{content:"";width:22px;height:1px;background:var(--peach);opacity:.7}.section-label-centred{justify-content:center}.section-heading{font-family:Cormorant Garamond,serif;font-weight:300;font-size:2.5rem;line-height:1.15;letter-spacing:-.005em;color:var(--navy);margin-bottom:1.5rem;text-wrap:balance}.section-heading em{font-style:italic;color:var(--peach)}.section-lead{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1.2rem;line-height:1.85;color:var(--navy);margin-bottom:1.5rem;text-wrap:pretty}.section-body{font-size:14.5px;font-weight:300;line-height:1.9;color:var(--text-muted);margin-bottom:1.25rem;text-wrap:pretty}.section-body:last-child{margin-bottom:0}.section-body b{color:var(--navy);font-weight:400}.btn-primary{font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);background:var(--peach-light);padding:1rem 1.85rem;border-radius:2px;text-decoration:none;display:inline-block;transition:all .2s}.btn-primary:hover{background:var(--peach);color:#fff}.btn-navy{font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--warm-white);background:var(--navy);padding:.95rem 1.85rem;border-radius:2px;text-decoration:none;display:inline-block;transition:background .2s}.btn-navy:hover{background:var(--peach)}.btn-cream{font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);background:var(--cream);padding:.95rem 1.85rem;border-radius:2px;text-decoration:none;display:inline-block;transition:background .2s}.btn-cream:hover{background:var(--peach-light)}.btn-ghost{font-size:11px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;border-bottom:1px solid var(--rule-strong);padding-bottom:3px;transition:all .2s}.btn-ghost:hover{color:var(--navy);border-color:var(--peach)}.btn-ghost-light{font-size:11px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:#f6f1ea8c;text-decoration:none;border-bottom:1px solid rgba(246,241,234,.2);padding-bottom:3px;transition:all .2s}.btn-ghost-light:hover{color:var(--cream);border-color:#f6f1ea80}.btn-row{display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}.page-hero{background:var(--navy);color:var(--cream);padding:9rem 2rem 5rem;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;top:-180px;right:-200px;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,rgba(232,176,154,.1),transparent 70%);pointer-events:none}.page-hero-inner{max-width:1140px;margin:0 auto;position:relative;z-index:1}.page-hero-eyebrow{display:inline-flex;align-items:center;gap:.85rem;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--peach-light);margin-bottom:1.5rem}.page-hero-eyebrow:before{content:"";width:34px;height:1px;background:var(--peach-light);opacity:.6}.page-hero-title{font-family:Cormorant Garamond,serif;font-weight:300;font-size:3.5rem;line-height:1.05;letter-spacing:-.01em;color:var(--cream);max-width:880px;text-wrap:balance}.page-hero-title em{font-style:italic;color:var(--peach-light);font-weight:300}.page-hero-sub{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1.25rem;line-height:1.7;color:#f6f1eab3;max-width:640px;margin-top:1.75rem;text-wrap:pretty}.site-footer{background:var(--navy);padding:5rem 2.25rem 2.5rem}.footer-inner{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(246,241,234,.08)}.footer-brand .nav-logo{color:var(--cream);display:inline-block;margin-bottom:1rem}.footer-brand .nav-logo span{color:var(--peach-light)}.footer-tagline{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1rem;line-height:1.7;color:#f6f1ea8c;max-width:280px;text-wrap:pretty}.footer-col h4{font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--peach-light);margin-bottom:1.1rem}.footer-col ul{list-style:none}.footer-col li{margin-bottom:.55rem}.footer-col a{font-size:13px;font-weight:300;color:#f6f1eaa6;text-decoration:none;transition:color .2s}.footer-col a:hover{color:var(--cream)}.footer-bottom{max-width:1140px;margin:0 auto;padding-top:2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.footer-copy{font-size:10.5px;color:#f6f1ea4d;letter-spacing:.04em}.footer-creds{font-size:10.5px;color:#f6f1ea4d;letter-spacing:.18em;text-transform:uppercase}.breadcrumb{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#f6f1ea8c;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.breadcrumb a{color:#f6f1ea8c;text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--peach-light)}.breadcrumb-sep{opacity:.5}.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.eyebrow-rule{width:40px;height:1px;background:var(--peach);margin:0 0 2rem;opacity:.7}.eyebrow-rule-centred{margin-left:auto;margin-right:auto}.callout{background:var(--cream);border-left:2px solid var(--peach);padding:1.5rem 1.75rem;margin:2rem 0}.callout-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--peach);font-weight:500;margin-bottom:.5rem}.callout-body{font-size:14px;line-height:1.85;color:var(--navy)}.callout-body b{font-weight:500}.spec-row{display:flex;align-items:baseline;gap:1.5rem;padding:1rem 0;border-bottom:1px solid var(--rule)}.spec-row:last-child{border-bottom:none}.spec-label{width:160px;flex-shrink:0;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--peach);font-weight:500}.spec-value{font-size:14.5px;line-height:1.7;color:var(--navy);flex:1}.spec-value b{font-weight:500}.prog-page-hero{background:var(--navy);padding:9rem 2rem 0;position:relative;overflow:hidden}.prog-page-hero:before{content:"";position:absolute;top:-180px;right:-200px;width:520px;height:520px;border-radius:50%;background:radial-gradient(closest-side,rgba(232,176,154,.1),transparent 70%);pointer-events:none}.prog-page-hero-inner{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:5rem;align-items:end;position:relative;z-index:1}.prog-page-hero-copy{padding-bottom:5rem}.prog-page-hero h1{font-family:Cormorant Garamond,serif;font-weight:300;font-size:3.4rem;line-height:1.05;letter-spacing:-.01em;color:var(--cream);margin:1.5rem 0;text-wrap:balance}.prog-page-hero h1 em{font-style:italic;color:var(--peach-light)}.prog-page-hero-lead{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1.3rem;line-height:1.75;color:#f6f1eac7;margin-top:2rem;max-width:500px;text-wrap:pretty}.prog-page-hero-img{display:block;width:100%;aspect-ratio:4/5;border-radius:2px 2px 0 0;box-shadow:0 -20px 60px -20px #0000004d}.prog-page-hero-img::part(frame){background:linear-gradient(160deg,var(--cream-dark) 0%,var(--cream-mid) 100%);border-radius:2px 2px 0 0}.prog-section{padding:6rem 2rem}.prog-section.is-cream{background:var(--cream)}.prog-section.is-warm{background:var(--warm-white)}.prog-section-inner{max-width:880px;margin:0 auto}.prog-section-wide{max-width:1140px;margin:0 auto}.prog-h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:2.3rem;line-height:1.15;letter-spacing:-.005em;color:var(--navy);margin-bottom:1.5rem;text-wrap:balance}.prog-h2 em{font-style:italic;color:var(--peach)}.prog-lead{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1.3rem;line-height:1.75;color:var(--navy);margin-bottom:1.75rem;text-wrap:pretty}.prog-body{font-size:15px;font-weight:300;line-height:1.9;color:var(--text-muted);margin-bottom:1.25rem;text-wrap:pretty}.prog-body:last-child{margin-bottom:0}.prog-body b{color:var(--navy);font-weight:400}.prog-divider{width:40px;height:1px;background:var(--peach);margin:1.5rem 0 2.25rem;opacity:.7}.prog-twocol{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem}.prog-twocol .col-label{font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--peach);margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--rule);display:flex;align-items:baseline;gap:.85rem}.prog-twocol .col-label:before{content:"";width:22px;height:1px;background:var(--peach);opacity:.8}.prog-details{background:var(--navy);padding:5.5rem 2rem;color:var(--cream)}.prog-details-inner{max-width:880px;margin:0 auto}.prog-details .section-label{color:var(--peach-light)}.prog-details .section-label:before{background:var(--peach-light)}.prog-details h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:2.1rem;line-height:1.15;color:var(--cream);margin-bottom:2rem;text-wrap:balance}.prog-details h2 em{font-style:italic;color:var(--peach-light)}.prog-details .spec-row{border-color:#f6f1ea1f;padding:1.25rem 0}.prog-details .spec-label{color:var(--peach-light)}.prog-details .spec-value{color:#f6f1ead9}.prog-details .spec-value b{color:var(--cream);font-weight:500}.prog-cta{margin-top:3rem;display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}.prog-close{background:var(--cream);padding:6rem 2rem;text-align:center}.prog-close-inner{max-width:680px;margin:0 auto}.prog-close-quote{font-family:Cormorant Garamond,serif;font-weight:300;font-style:italic;font-size:1.6rem;line-height:1.6;color:var(--navy);margin-bottom:2rem;text-wrap:pretty}.prog-close-rule{width:40px;height:1px;background:var(--peach);margin:0 auto 2.25rem;opacity:.7}.prog-close-actions{display:flex;gap:1.25rem;justify-content:center;align-items:center;flex-wrap:wrap}.prog-numbered{list-style:none;margin-top:1.5rem;border-top:1px solid var(--rule)}.prog-numbered li{display:grid;grid-template-columns:auto 1fr;gap:1.75rem;padding:1.5rem 0;border-bottom:1px solid var(--rule);align-items:start}.prog-num-marker{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:1.1rem;color:var(--peach);width:32px}.prog-numbered-content b{display:block;color:var(--navy);font-weight:400;font-size:15.5px;margin-bottom:.4rem}.prog-numbered-content{font-size:14.5px;line-height:1.85;color:var(--text-muted);text-wrap:pretty}@media (max-width:960px){.prog-page-hero-inner{grid-template-columns:1fr;gap:0}.prog-page-hero-copy{padding-bottom:3rem}.prog-page-hero h1{font-size:2.5rem}.prog-twocol{grid-template-columns:1fr;gap:2.5rem}}@media (max-width:768px){.prog-page-hero{padding:7rem 1.25rem 0}.prog-page-hero h1{font-size:2rem}.prog-section,.prog-details,.prog-close{padding:4rem 1.25rem}.prog-h2{font-size:1.85rem}.prog-close-quote{font-size:1.3rem}}@media (max-width:480px){.prog-cta,.prog-close-actions{flex-direction:column;align-items:stretch}}@media (max-width:960px){.page-hero-title{font-size:2.6rem}.section-heading{font-size:2.1rem}.footer-inner{grid-template-columns:1fr 1fr;gap:2.5rem}}@media (max-width:768px){.site-nav{padding:.9rem 1.25rem}.nav-links{display:none}.nav-hamburger{display:flex}.nav-cta{font-size:10px;padding:.6rem 1.1rem}section{padding:4rem 1.25rem}.section-heading{font-size:1.85rem}.page-hero{padding:7rem 1.25rem 4rem}.page-hero-title{font-size:2.1rem}.page-hero-sub{font-size:1.1rem}.site-footer{padding:3.5rem 1.25rem 2rem}.footer-inner{grid-template-columns:1fr;gap:2rem;padding-bottom:2rem}.footer-bottom{flex-direction:column;align-items:flex-start}.spec-row{flex-direction:column;gap:.4rem;padding:.85rem 0}.spec-label{width:auto}}@media (max-width:480px){.page-hero-title{font-size:1.85rem}.btn-row{flex-direction:column;align-items:stretch}.btn-row .btn-primary,.btn-row .btn-navy,.btn-row .btn-cream{text-align:center}}.image-slot-placeholder{display:flex;align-items:center;justify-content:center;text-align:center;min-height:180px;width:100%;background:var(--cream-mid, #EFE8DC);border:1px dashed var(--rule-strong, rgba(27,42,63,.15));color:var(--text-muted, #7A7066);font-family:Jost,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:1rem}.image-slot-placeholder span{opacity:.75}
