
:root{--ink:#000000;--muted:#4a4a4a;--gold:#C5A253;--cream:#ffffff;--line:#dedede;--serif:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#ffffff;color:var(--ink);font:17px/1.7 Arial,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}.wrap{max-width:1250px;margin:auto;padding:0 48px}.reviewbar{background:#000000;color:#ffffff;font-size:12px;letter-spacing:.03em;text-align:center;padding:9px 15px}.reviewbar a{margin-left:15px;color:var(--gold)}header{background:#000000;color:#ffffff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:30px}.logo{text-decoration:none;display:flex;align-items:center;gap:11px;font-size:25px;letter-spacing:-1px;white-space:nowrap}.logo b{font-weight:600}.logo em{font-style:normal;color:var(--gold);font-weight:500}.brand-logo{display:block;width:280px;height:70px;object-fit:contain}footer .brand-logo{width:300px;height:75px;object-fit:contain;background:transparent;padding:0}nav{display:flex;align-items:center;gap:27px;font-size:13px}nav a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;text-decoration:none;border:1px solid var(--ink);background:var(--ink);color:#fff;padding:15px 24px;font-size:14px;cursor:pointer;line-height:1.4}.btn:hover{background:#222222}.btn.light{background:transparent;color:var(--ink)}.btn.gold{background:var(--gold);color:#000000;border-color:var(--gold)}.nav .btn{padding:12px 17px;background:#ffffff;color:#000000;border-color:#ffffff}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 24px}.hero{display:grid;grid-template-columns:1.06fr .94fr;gap:70px;padding-top:86px;padding-bottom:76px;align-items:center}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(48px,5.2vw,76px);margin:0 0 27px}h1 i,h2 i{font-weight:400;color:var(--gold)}h2{font-size:clamp(35px,3.7vw,52px);margin:0 0 25px}h3{font-size:27px;margin:0 0 18px}p{margin:0 0 20px}.lead{font-size:19px;line-height:1.65;color:var(--muted);max-width:620px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:33px}.textlink{font-size:14px;text-underline-offset:5px}.caption{font-size:12px;line-height:1.65;color:var(--muted)}.hero .caption{margin-top:18px}.photo{min-height:405px;background:#f2f2f2;position:relative;overflow:hidden;border:1px solid #d5d1c5;display:flex;flex-direction:column;justify-content:flex-end;padding:32px}.photo:before{content:'';position:absolute;inset:24px;border:1px solid #bdb6a4;pointer-events:none}.photo .frame-label{position:absolute;top:45px;left:45px;right:45px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#6c695d}.photo .shape{position:absolute;width:175px;height:225px;border-radius:100px 100px 10px 10px;background:#dedede;left:50%;top:90px;transform:translateX(-50%)}.photo .shape:before{content:'';position:absolute;width:85px;height:85px;left:45px;top:-40px;border-radius:50%;background:#dedede}.photo .photo-text{position:relative;background:#ffffff;padding:20px;z-index:1}.photo strong{display:block;font-size:14px;margin-bottom:7px}.photo span{font-size:12px;line-height:1.55;display:block;color:#656358}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.strip .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px;font-size:13px}.strip b{font-weight:500;color:var(--gold)}section{padding:90px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.bigquote{font:italic 34px/1.35 var(--serif);border-left:2px solid var(--gold);padding-left:28px;max-width:480px}.question-section{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}.section-heading p{max-width:390px;color:var(--muted)}.tabs{display:flex;gap:10px;border-bottom:1px solid #d8d5cb;margin-bottom:30px;flex-wrap:wrap}.tab{background:transparent;border:0;border-bottom:3px solid transparent;padding:16px 22px;font-size:14px;cursor:pointer;color:#626458}.tab[aria-selected=true]{color:var(--ink);border-color:var(--gold);font-weight:700}.qpanel{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;min-height:300px}.qpanel[hidden]{display:none}.qpanel h3{font-size:35px}.qpanel ul{list-style:none;padding:0;margin:0}.qpanel li{border-bottom:1px solid var(--line);padding:18px 0 18px 33px;position:relative;font:23px/1.45 var(--serif)}.qpanel li:before{content:'↗';position:absolute;left:0;color:var(--gold);font:18px Arial}.dark{background:#000000;color:#ffffff}.dark .lead,.dark .caption{color:#b9bdaf}.mapgrid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.map-sheet{background:#ffffff;color:var(--ink);padding:35px;transform:rotate(-2deg);box-shadow:none}.sheet-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #c8c6bb;padding-bottom:18px}.sheet-top strong{font-size:12px;letter-spacing:.13em;text-transform:uppercase}.sheet-top span{font-size:10px;color:#76776b}.map-sheet h3{font-size:32px;margin:24px 0 6px}.map-sheet .caption{color:var(--muted)}.maprow{display:grid;grid-template-columns:90px 1fr;gap:17px;border-bottom:1px solid #d8d6cc;padding:15px 0;font-size:12px}.maprow b{font-weight:600}.maprow span{color:#646659}.sheet-bottom{font-size:11px;margin:22px 0 0;color:#696b60}.value{display:flex;align-items:center;gap:24px;border-top:1px solid #4b5046;border-bottom:1px solid #4b5046;padding:24px 0;margin:30px 0 18px}.value b{font:42px var(--serif);color:var(--gold)}.value span{font-size:14px}.checklist{padding-left:20px;color:#d2d6c9;font-size:15px}.checklist li{margin:9px 0}.process{margin-top:45px;border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:80px 260px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:27px 0;align-items:start}.step .number{font:30px var(--serif);color:var(--gold)}.step h3{font-size:24px;margin:5px 0 7px}.step p{font-size:15px;color:var(--muted);margin:3px 0}.step small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.fitgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}.fitlist{list-style:none;padding:0;margin:0}.fitlist li{padding:23px 0;border-bottom:1px solid #d5d1c6}.fitlist b{display:block;font-size:17px;font-weight:500}.fitlist span{font-size:14px;color:var(--muted)}.aboutgrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:center}.aboutgrid .photo{min-height:420px}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:45px}.media-grid .photo{min-height:270px}.media-grid .photo:before{inset:15px}.media-grid .frame-label{left:30px;top:30px}.media-grid .photo-text{margin-top:70px}.media-grid .photo{padding:25px}.faq{max-width:850px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font:24px/1.4 var(--serif);padding-right:25px}.faq details p{padding-top:18px;font-size:15px;color:var(--muted)}.cta{text-align:center;background:#ffffff}.cta h2{max-width:760px;margin:0 auto 25px}.cta .lead{margin:0 auto 25px}.cta .caption{margin:20px auto 0;max-width:700px}footer{background:#000000;color:#ffffff;padding:55px 0 30px}footer .logo{color:white}footer .top{display:flex;justify-content:space-between;gap:35px;border-bottom:1px solid #44483e;padding-bottom:30px;margin-bottom:25px}footer .caption{color:#a3a89a;font-size:11px}footer .links{display:flex;gap:20px;font-size:12px}dialog{border:1px solid #d4c9af;background:#ffffff;color:var(--ink);max-width:600px;padding:40px;width:calc(100% - 40px)}dialog::backdrop{background:#141812b3}dialog h2{font-size:35px}dialog .close{float:right;background:transparent;border:0;font-size:26px;cursor:pointer}dialog p{font-size:15px} .review-layout{max-width:970px}.review-layout h1{font-size:56px}.review-layout h2{font-size:31px;margin-top:48px}.review-layout table{border-collapse:collapse;width:100%;font-size:14px}.review-layout th,.review-layout td{text-align:left;vertical-align:top;padding:15px;border-bottom:1px solid var(--line)}.review-layout th{background:var(--cream)}.review-layout li{margin:10px 0}.mobile-menu{display:none}
@media(max-width:1000px){.wrap{padding:0 28px}.hero{gap:35px}nav{gap:16px}.nav .btn{display:none}.step{grid-template-columns:55px 220px 1fr}.intro-grid,.mapgrid,.fitgrid,.aboutgrid{gap:40px}}@media(max-width:740px){.wrap{padding:0 23px}.reviewbar{font-size:10px}.reviewbar a{margin-left:7px}.nav{min-height:94px;gap:10px}.logo{font-size:22px}nav{display:none;position:absolute;top:94px;left:0;right:0;background:#000000;padding:25px;flex-direction:column;border-bottom:1px solid var(--line)}nav.open{display:flex}.mobile-menu{display:block;background:transparent;color:#ffffff;border:1px solid #ffffff;padding:8px 12px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:50px;padding-bottom:45px;gap:35px}h1{font-size:53px}.hero .photo{min-height:345px}.hero .photo .shape{top:72px}.lead{font-size:17px}.strip .wrap{flex-wrap:wrap;justify-content:center;gap:12px 25px;font-size:11px}section{padding:60px 0}.intro-grid,.mapgrid,.fitgrid,.aboutgrid,.qpanel{grid-template-columns:1fr;gap:30px}.bigquote{font-size:29px}.section-heading{display:block;margin-bottom:25px}.tabs{gap:0}.tab{padding:14px 10px;font-size:12px}.qpanel{min-height:0}.qpanel li{font-size:21px}.map-sheet{transform:rotate(0);padding:25px}.step{grid-template-columns:38px 1fr;gap:13px}.step>p{grid-column:2}.step h3{font-size:24px}.media-grid{grid-template-columns:1fr}.aboutgrid .photo{min-height:345px}footer .top{flex-direction:column}footer .links{flex-wrap:wrap}.review-layout h1{font-size:43px}.review-layout table{font-size:12px}.review-layout td,.review-layout th{padding:10px 7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(max-width:740px){.brand-logo{width:200px;height:60px}footer .brand-logo{width:260px;height:65px}}
/* Frame the supplied horizontal logo without changing its artwork. */
.logo{position:relative;flex:0 0 280px;width:280px;height:70px;overflow:hidden}
.logo .brand-logo{position:absolute;left:50%;top:50%;width:448px;height:112px;max-width:none;transform:translate(-50%,-50%)}
footer .logo{flex-basis:300px;width:300px;height:75px}
footer .logo .brand-logo{width:480px;height:120px}
@media(max-width:740px){.logo{flex-basis:225px;width:225px;height:60px}.logo .brand-logo{width:360px;height:90px}footer .logo{flex-basis:260px;width:260px;height:65px}footer .logo .brand-logo{width:416px;height:104px}}
.supplied-photo{padding:0;background:#ffffff}
.supplied-photo:before{display:none}
.supplied-photo img{display:block;width:100%;height:100%;min-height:405px;object-fit:cover}
.hero-photo img{transform:scale(1.10);object-position:center center}
.headshot-photo img{min-height:420px;object-position:center 42%}
@media(max-width:740px){.supplied-photo img{min-height:345px}.headshot-photo img{min-height:345px}}
.hero .supplied-photo{height:405px;min-height:0}
.aboutgrid .headshot-photo{height:420px;min-height:0}
.supplied-photo img{height:100%;min-height:0}
@media(max-width:740px){.hero .supplied-photo,.aboutgrid .headshot-photo{height:345px;min-height:0}}
/* Keep the phone screenshot margins outside the visible photo frames. */
.hero-photo img{transform:scale(1.28)}
.headshot-photo img{object-position:center 34%}
.contact-section{border-top:1px solid var(--line)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}
.contact-details{border-top:1px solid var(--line)}
.contact-details>div{display:grid;grid-template-columns:95px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:22px 0}
.contact-details span{font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#4a4a4a}
.contact-details a,.contact-details address{font-size:18px;font-style:normal;line-height:1.55;overflow-wrap:anywhere}
.contact-details a{text-underline-offset:5px}
footer .caption a{color:inherit;text-underline-offset:3px}
@media(max-width:740px){.contact-grid{grid-template-columns:1fr;gap:26px}.contact-details>div{grid-template-columns:75px 1fr;gap:15px}.contact-details a,.contact-details address{font-size:16px}}
