
:root{--navy:#0b1726;--navy2:#13223a;--ivory:#faf9f6;--ivory2:#f2efe8;--gold:#b59a70;--gold2:#9c8259;--slate:#748091;--forest:#103b32;--ink:#0b1726;--ink2:#3c4656;--line:#e4dfd5;--dline:rgba(250,249,246,.14)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font:16.5px/1.75 Inter,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;font-weight:400;letter-spacing:-.01em;line-height:1.12;margin:0 0 .5em}
h1{font-size:clamp(40px,6.2vw,80px)}h2{font-size:clamp(30px,3.8vw,48px)}h3{font-size:23px;line-height:1.25}
p{margin:0 0 1.1em}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.narrow{max-width:760px}
.eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:22px;display:block}
.wm{display:inline-flex;flex-direction:column;align-items:flex-end;text-decoration:none;line-height:1}
.wm .wt{font-family:"Playfair Display",Georgia,serif;font-size:42px;font-weight:500;letter-spacing:-.01em;color:var(--navy);display:inline-flex;align-items:baseline}
.wm .ring{width:.6em;height:.6em;margin:0 .01em;transform:translateY(.04em)}
.wm .wc{font-size:12px;letter-spacing:.44em;color:var(--gold);font-weight:600;margin:4px -.44em 0 0}
.wm img{display:block;width:200px;height:auto}footer .wm img{width:250px}@media(max-width:600px){.wm img{width:160px}}
@media(max-width:600px){.wm .wt{font-size:34px}.wm .wc{font-size:10.5px}}
.dark .wm .wt{color:var(--ivory)}
header.top{position:absolute;top:0;left:0;right:0;z-index:20}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:112px}
header.top.solid{position:relative;background:var(--ivory);border-bottom:1px solid var(--line)}
nav.main{display:flex;gap:34px;align-items:center}nav.main a{text-decoration:none;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:500;opacity:.85}
nav.main a:hover,nav.main a.on{opacity:1;color:var(--gold)}
.dark nav.main a{color:var(--ivory)}
#menu{display:none;background:none;border:1px solid currentColor;color:inherit;font:inherit;font-size:12px;letter-spacing:.18em;text-transform:uppercase;padding:8px 14px}
@media(max-width:900px){nav.main{display:none;position:absolute;top:112px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:18px;padding:26px 24px;background:var(--navy)}nav.main.open{display:flex}nav.main a{color:var(--ivory)!important}#menu{display:block}}
.dark #menu{color:var(--ivory)}
.btn{display:inline-flex;align-items:center;gap:12px;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;text-decoration:none;padding:17px 30px;border:1px solid var(--gold);background:var(--gold);color:var(--navy);transition:background .25s,color .25s}
.btn:hover{background:transparent;color:var(--gold)}
.btn.line{background:transparent;color:inherit;border-color:currentColor}.btn.line:hover{border-color:var(--gold);color:var(--gold)}
.hero{background:var(--navy);color:var(--ivory);position:relative;overflow:hidden;min-height:min(92vh,920px);display:flex;align-items:center;padding:150px 0 110px}
.hero .bigring{position:absolute;right:6vw;top:50%;width:min(36vw,500px);height:min(36vw,500px);transform:translateY(-50%);opacity:.95;pointer-events:none;filter:drop-shadow(0 30px 60px rgba(0,0,0,.45));opacity:1;height:auto}
@media(max-width:900px){.hero .bigring{right:-30vw;top:8%;transform:none;width:70vw;height:70vw;opacity:.28}}

.hero .wrap{position:relative;width:100%}
.hero h1{max-width:760px}.hero .lead{max-width:600px}.hero .lead{font-size:clamp(17px,1.6vw,20px);color:#c9cdd5;max-width:640px;line-height:1.7}
.hero .ctas{display:flex;gap:16px;flex-wrap:wrap;margin-top:42px}
.rule{width:64px;height:1px;background:var(--gold);margin:0 0 30px}
section{padding:120px 0}@media(max-width:700px){section{padding:76px 0}}
section.navy{background:var(--navy);color:var(--ivory)}section.navy p{color:#c4c9d2}
section.forest{background:var(--forest);color:var(--ivory)}section.forest p{color:#c7d3cf}
section.alt{background:var(--ivory2)}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}@media(max-width:900px){.split{grid-template-columns:1fr;gap:30px}}
.big{font-family:"Playfair Display",Georgia,serif;font-size:clamp(22px,2.2vw,28px);line-height:1.45;color:var(--ink)}
.navy .big,.forest .big{color:var(--ivory)}
.focus{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin-top:60px}
@media(max-width:980px){.focus{grid-template-columns:1fr 1fr}}@media(max-width:600px){.focus{grid-template-columns:1fr}}
.focus div{padding:36px 30px 10px 0;border-right:1px solid var(--line);margin-right:30px}.focus div:last-child{border-right:0}
@media(max-width:980px){.focus div{border-right:0;margin-right:0;border-bottom:1px solid var(--line);padding:30px 0}}
.num{font-family:"Playfair Display",Georgia,serif;font-size:15px;color:var(--gold);display:block;margin-bottom:16px;letter-spacing:.05em}
.focus p,.prin p{color:var(--ink2);font-size:15.5px}
.prin{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--dline);margin-top:56px}
@media(max-width:760px){.prin{grid-template-columns:1fr}}
.prin div{padding:38px 40px 30px 0;border-bottom:1px solid var(--dline)}.prin div:nth-child(odd){border-right:1px solid var(--dline);margin-right:0}
.prin div:nth-child(even){padding-left:40px}@media(max-width:760px){.prin div{border-right:0!important;padding:30px 0!important}}
.navy .prin p,.forest .prin p{color:#c4c9d2}
.steps{margin-top:56px;border-top:1px solid var(--line)}
.step{display:grid;grid-template-columns:90px 260px 1fr;gap:20px;padding:34px 0;border-bottom:1px solid var(--line);align-items:baseline}
@media(max-width:760px){.step{grid-template-columns:50px 1fr}.step p{grid-column:2}}
.step h3{margin:0}.step p{margin:0;color:var(--ink2)}
.cta{text-align:center}.cta .narrow{margin:0 auto}.cta .ctas{justify-content:center;display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}
.pagehead{background:var(--navy);color:var(--ivory);padding:190px 0 110px;position:relative;overflow:hidden}
.pagehead .bigring{position:absolute;right:-140px;top:-160px;width:560px;height:560px;opacity:.22}@media(max-width:760px){.pagehead .bigring{opacity:.18;right:-300px}}
.pagehead .wrap{position:relative}.pagehead .lead{color:#c9cdd5;font-size:19px;max-width:680px}
.prose h2{margin-top:1.6em}.prose p{color:var(--ink2)}
.list{border-top:1px solid var(--line);margin-top:40px}.list div{display:grid;grid-template-columns:320px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}
@media(max-width:760px){.list div{grid-template-columns:1fr;gap:6px}}.list h3{margin:0;font-size:21px}.list p{margin:0;color:var(--ink2)}
form.enq{display:grid;gap:22px}form.enq label{display:grid;gap:8px;font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--slate);font-weight:600}
form.enq input,form.enq select,form.enq textarea{font:inherit;font-size:16px;letter-spacing:0;text-transform:none;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #cfc8ba;padding:10px 2px;border-radius:0;width:100%}
form.enq select{appearance:none;-webkit-appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23b59a70' stroke-width='1.5'/%3E%3C/svg%3E") right 4px center/12px no-repeat}
form.enq textarea{min-height:130px;resize:vertical}form.enq input:focus,form.enq select:focus,form.enq textarea:focus{outline:none;border-bottom-color:var(--gold)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:22px}@media(max-width:600px){.row2{grid-template-columns:1fr}}
form.enq button{justify-self:start;cursor:pointer;font-family:inherit}
.hp{position:absolute;left:-5000px}.msg{font-size:14px;color:#9b3b2a}.ok{border-left:2px solid var(--gold);padding:6px 0 6px 20px;font-family:"Playfair Display",Georgia,serif;font-size:22px;line-height:1.5}
.ok small{display:block;font-family:Inter,sans-serif;font-size:14.5px;color:var(--ink2);margin-top:8px}
.facts{border-top:1px solid var(--line);margin-top:10px}.facts div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);font-size:15px}
.facts span{color:var(--slate);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
footer{background:var(--navy);color:#aab1bd;padding:90px 0 40px;font-size:14px;border-top:1px solid var(--dline)}
footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}@media(max-width:760px){footer .cols{grid-template-columns:1fr}}
footer a{text-decoration:none;display:block;margin:.5em 0;color:#d6dae1}footer a:hover{color:var(--gold)}
footer h4{font-size:11.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin:6px 0 16px;font-weight:600;font-family:Inter,sans-serif}
footer .base{border-top:1px solid var(--dline);margin-top:60px;padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12.5px;letter-spacing:.04em}
footer .wm .wt{color:var(--ivory)}
.fade{opacity:0;transform:translateY(14px);transition:opacity 1s ease,transform 1s ease}.fade.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.fade{opacity:1;transform:none;transition:none}}
header.top.solid{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line)}header.top.solid nav.main a{color:var(--navy)}header.top.solid #menu{color:var(--navy)}
header.top.solid .wrap{height:104px}@media(max-width:900px){nav.main{top:104px}}
.hero{padding:90px 0 110px;min-height:min(84vh,860px)}.pagehead{padding:120px 0 100px}
section{padding:92px 0}@media(max-width:700px){section{padding:64px 0}}
section.rl{border-top:1px solid var(--line)}
.prin{border-top-color:var(--line)}.prin div{border-bottom-color:var(--line)!important}.prin div:nth-child(odd){border-right-color:var(--line)!important}.prin p{color:var(--ink2)}
.navy .prin,.navy .prin div{border-color:var(--dline)!important}
.hero{min-height:0;padding:110px 0 120px}
