@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap');
:root{color-scheme:dark;--bg:#050707;--panel:#101312;--gold:#d8ae61;--text:#f4efe6;--muted:#cbc5b9}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 Arial,sans-serif}a{color:inherit}header,footer{border-bottom:1px solid rgba(216,174,97,.16);padding:18px max(24px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:22px}.brand img{width:230px;max-height:64px;object-fit:contain}.brand .mobile{display:none}nav{display:flex;gap:22px;flex-wrap:wrap}nav a{text-decoration:none;color:var(--muted);font-size:.9rem}nav a:hover,nav a[aria-current]{color:var(--gold)}main{min-height:75vh}.wrap{max-width:1200px;margin:auto;padding:0 24px}.hero{padding:105px 0;background:var(--bg)}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:center}.seal{width:90%;max-width:360px;mix-blend-mode:screen}.eyebrow{color:var(--gold);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;font-weight:bold}h1,h2,h3{font-family:Georgia,serif;font-weight:normal;letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(3.2rem,7vw,6.7rem);margin:22px 0}h2{font-size:clamp(2.3rem,4vw,3.8rem)}h3{font-size:1.55rem}.lead{font-size:1.24rem;max-width:720px;color:#ddd6ca}p{color:var(--muted);max-width:750px}.button{display:inline-block;background:var(--gold);color:#14120d;text-decoration:none;padding:13px 24px;font-weight:bold;margin:15px 15px 0 0}.button.alt{color:var(--text);background:transparent;border:1px solid var(--gold)}.section{padding:85px 0;border-top:1px solid rgba(216,174,97,.16)}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}.card,.note{background:transparent;padding:30px;border:1px solid rgba(216,174,97,.27)}.gold,.card a{color:var(--gold)}.page{padding:85px 0 110px}.narrow{max-width:850px}.note{margin:36px 0}footer{border-top:1px solid rgba(216,174,97,.16);border-bottom:0;color:var(--muted);font-size:.85rem}@media(max-width:800px){header{flex-direction:column;align-items:flex-start}nav{gap:14px}.hero-grid,.split{grid-template-columns:1fr}.seal{display:none}}@media(max-width:560px){.brand .desktop{display:none}.brand .mobile{display:block}.cards{grid-template-columns:1fr}.hero,.page{padding:65px 0}.section{padding:65px 0}body{font-size:16px}}

header{background:var(--bg)}.hero h1{max-width:800px}.strapline{margin:0 0 20px;color:var(--gold);letter-spacing:.3em;font-size:.85rem;font-weight:600}.section{border-color:rgba(216,174,97,.16)}.card{min-height:230px}.card h3{color:var(--paper)}
:root{--bg:#050706;--panel:#171817;--gold:#d3a34a;--text:#f5f1e8;--muted:#b7ab99}
body{font-family:Montserrat,Arial,sans-serif;font-weight:400;letter-spacing:.005em}
header{min-height:113px;padding-top:16px;padding-bottom:16px;border-bottom:1px solid rgba(211,163,74,.25)}
.brand img{width:263px;max-height:80px}
nav{gap:28px}nav a{font-size:.78rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase}
h1,h2,h3{font-family:Montserrat,Arial,sans-serif}
h1{font-weight:300;letter-spacing:-.065em;line-height:1.09}
h2{font-weight:300;letter-spacing:-.052em}
h3{font-weight:500;font-size:1.3rem;letter-spacing:-.025em}
.eyebrow{font-weight:500;letter-spacing:.28em}
.hero{padding:110px 0 130px;min-height:690px}
.hero-grid{grid-template-columns:minmax(0,1fr) 270px;gap:4vw}
.hero h1{font-size:clamp(3.5rem,6.5vw,7.3rem);max-width:930px;margin:25px 0 30px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero .lead{max-width:710px}
.strapline{font-weight:500;font-size:.78rem;letter-spacing:.34em;margin:0 0 30px}
.hero-side{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;color:var(--gold);font-size:.7rem;letter-spacing:.21em}
.hero-line{width:1px;min-height:260px;background:linear-gradient(var(--gold),transparent)}
.hero-vertical{writing-mode:vertical-rl}
.button{background:var(--gold);font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600;padding:17px 24px;transition:background .2s,color .2s}
.button:hover{background:#f0ce7a}
.button.alt{border-color:rgba(211,163,74,.55)}
.section{padding:105px 0}
.section .split{align-items:start}
.section h2{max-width:570px}
.card{padding:38px 38px 44px;min-height:260px;border:1px solid rgba(211,163,74,.32);background:transparent}
.card p{min-height:76px}.card a{text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:4px;font-size:.85rem}
.page{padding-top:100px}
.page h1{font-size:clamp(3.2rem,6vw,6.1rem)}
.page h2{font-size:clamp(2rem,3vw,3rem);margin-top:54px}
.note{border:1px solid rgba(211,163,74,.35);padding:28px 30px}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:7vw;align-items:start}
.about-copy{max-width:680px}.about-copy .lead{font-weight:300}
.rcp{font-size:.5em;letter-spacing:.08em;color:var(--gold);vertical-align:baseline}
.portrait{margin:8px 0 0}.portrait img{width:100%;height:auto;display:block;filter:grayscale(1)}
.portrait figcaption{font-size:.68rem;letter-spacing:.2em;color:var(--gold);margin-top:16px}
footer{border-top:1px solid rgba(211,163,74,.24);letter-spacing:.12em}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-side{display:none}.about-grid{grid-template-columns:1fr}.portrait{max-width:560px}nav{gap:16px}}
@media(max-width:560px){header{min-height:auto}.brand img{width:215px}.hero{min-height:auto;padding:82px 0 92px}.hero h1{font-size:clamp(3rem,11vw,4.4rem)}.strapline{font-size:.65rem;letter-spacing:.18em}.section{padding:75px 0}.card{min-height:0;padding:28px}nav a{font-size:.68rem;letter-spacing:.06em}}

.pricing{margin:35px 0 24px;border-top:1px solid rgba(211,163,74,.42)}.price-row{display:flex;justify-content:space-between;align-items:start;gap:30px;padding:24px 0;border-bottom:1px solid rgba(211,163,74,.42)}.price-row h3{margin:0 0 5px}.price-row p{margin:0}.price-row strong{color:var(--gold);font-size:1.65rem;font-weight:400;white-space:nowrap}@media(max-width:560px){.price-row{gap:15px}.price-row strong{font-size:1.35rem}}
.coaching-visual{position:relative;isolation:isolate;overflow:hidden}
.coaching-visual::before{content:"";position:absolute;z-index:-1;top:45px;right:0;width:36%;height:690px;background:url('/assets/beach-banner.png') right center/auto 140% no-repeat;opacity:.18;mask-image:linear-gradient(to right,transparent 0%,black 30%)}
.coaching-visual::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(to right,var(--bg) 48%,transparent 100%);pointer-events:none}
.home-close{position:relative;overflow:hidden;min-height:350px}.home-close .wrap{position:relative;z-index:1}.home-close .watermark{position:absolute;z-index:-1;right:5%;top:-120px;width:320px;opacity:.12;mix-blend-mode:screen}
@media(max-width:850px){.coaching-visual::before{width:45%;opacity:.12}.home-close .watermark{right:-40px;width:250px}}
@media(max-width:560px){.coaching-visual::before{width:65%;height:480px;opacity:.1}.home-close .watermark{right:-85px;top:-60px;width:220px;opacity:.09}}

/* Visible branded accents across desktop and mobile */
.hero-side{align-items:center;justify-content:center;gap:24px}
.hero-number,.hero-vertical{display:none}
.hero-mark{display:block;width:min(100%,310px);height:auto;opacity:.66;mix-blend-mode:screen}
.coaching-visual::before{top:0;width:43%;height:720px;opacity:.48;background-size:auto 145%;mask-image:linear-gradient(to right,transparent 0%,black 32%)}
.coaching-visual::after{background:linear-gradient(to right,var(--bg) 36%,transparent 82%)}
.home-close .watermark{opacity:.24;right:7%;top:-110px}
@media(max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr) 190px}.hero-side{display:flex}.hero-mark{width:190px}.coaching-visual::before{opacity:.34;width:54%}}
@media(max-width:560px){.hero-grid{grid-template-columns:1fr}.hero-side{display:flex;justify-content:flex-start;margin-top:35px}.hero-mark{width:125px;opacity:.58}.coaching-visual::before{opacity:.3;width:82%;height:550px;background-size:auto 150%;mask-image:linear-gradient(to right,transparent 0%,black 35%)}.coaching-visual::after{background:linear-gradient(to right,var(--bg) 15%,transparent 90%)}.home-close .watermark{opacity:.18}}

/* Let the identity sit in the architecture of the page rather than beside copy. */
.hero{position:relative;overflow:hidden;isolation:isolate}
.hero::before{content:"";position:absolute;z-index:-1;right:-425px;top:4%;width:830px;aspect-ratio:1;background:url('/assets/symbol.png') center/contain no-repeat;mix-blend-mode:screen;opacity:.19;pointer-events:none}
.hero-grid{grid-template-columns:minmax(0,1fr)}
.hero-grid>div:first-child{position:relative;z-index:1}
.reset-visual{position:relative;isolation:isolate;overflow:hidden}
.reset-visual::before{content:"";position:absolute;z-index:-2;top:0;right:0;width:67%;height:760px;background:url('/assets/reset-coast.png') center/cover no-repeat;opacity:.42;mask-image:linear-gradient(to right,transparent 0%,black 38%);pointer-events:none}
.reset-visual::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 0%,var(--bg) 72%);pointer-events:none}
.reset-visual .page{position:relative}
@media(max-width:900px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero::before{width:660px;right:-375px;top:8%}.reset-visual::before{width:85%;opacity:.32}}
@media(max-width:560px){.hero::before{width:425px;right:-285px;top:13%;opacity:.15}.reset-visual::before{width:100%;height:600px;opacity:.24;mask-image:linear-gradient(to right,transparent 0%,black 28%)}.reset-visual::after{background:linear-gradient(180deg,rgba(5,7,6,.3) 0%,var(--bg) 65%)}}

/* Keep decorative layers above the section background and below all content. */
.hero::before{z-index:0;opacity:.28}
.hero-grid{position:relative;z-index:1}
.reset-visual::before{z-index:0;opacity:.58;width:72%;height:790px;mask-image:linear-gradient(to right,transparent 0%,black 32%)}
.reset-visual::after{z-index:0;background:linear-gradient(180deg,transparent 0%,rgba(5,7,6,.18) 40%,var(--bg) 78%)}
.reset-visual .page{z-index:1}
@media(max-width:900px){.reset-visual::before{width:88%;opacity:.47}}
@media(max-width:560px){.hero::before{opacity:.21}.reset-visual::before{width:100%;height:630px;opacity:.38}.reset-visual::after{background:linear-gradient(180deg,rgba(5,7,6,.2) 0%,var(--bg) 69%)}}

/* Inner-page gutters and type scale on narrow screens. */
.page.wrap{padding-left:24px;padding-right:24px}
.page a.gold{overflow-wrap:anywhere}
.price-row>div{min-width:0}
@media(max-width:560px){
  .page.wrap{padding-left:22px;padding-right:22px}
  .page h1{font-size:clamp(2.35rem,10vw,3rem);line-height:1.13;overflow-wrap:break-word}
  .page h2{font-size:clamp(1.85rem,7.5vw,2.35rem);line-height:1.2}
  .page .lead{font-size:1.12rem}
  .note{padding:22px}
  footer{flex-wrap:wrap;gap:10px 24px}
}
@media(max-width:380px){
  .page.wrap{padding-left:20px;padding-right:20px}
  .price-row{display:block}
  .price-row strong{display:block;margin-top:10px}
  nav{gap:10px 14px}
}

/* Service names lead directly to their pages. */
.inline-link,.card h3 a{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(211,163,74,.65)}
.inline-link:hover,.card h3 a:hover{border-bottom-color:var(--gold)}
.card h3 a{font-size:inherit}

/* The two service pages exchange their background photographs. */
.coaching-visual::before{background-image:url('/assets/coast-light.png');background-size:cover;background-position:right center}
.reset-visual::before{background-image:url('/assets/beach-clean.png');background-size:auto 145%;background-position:right center;opacity:.38}
@media(max-width:900px){.reset-visual::before{opacity:.34}}
@media(max-width:560px){.reset-visual::before{background-size:auto 150%;opacity:.28}}

/* Cropped fragments of the supplied circle mark, kept behind the content. */
.hero::before{
  width:1450px;
  right:-720px;
  top:-335px;
  transform:rotate(-17deg);
  opacity:.17;
  mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 100%);
}
.home-close{isolation:isolate}
.home-close::before,
.contact-mark::before{
  content:"";
  position:absolute;
  z-index:0;
  width:900px;
  aspect-ratio:1;
  background:url('/assets/symbol.png') center/contain no-repeat;
  mix-blend-mode:screen;
  pointer-events:none;
}
.home-close::before{
  left:-450px;
  bottom:-575px;
  transform:rotate(24deg);
  opacity:.12;
  mask-image:linear-gradient(90deg,#000 0%,#000 52%,transparent 100%);
}
.contact-mark{position:relative;isolation:isolate;overflow:hidden}
.contact-mark::before{
  right:-515px;
  top:90px;
  transform:rotate(19deg);
  opacity:.11;
  mask-image:linear-gradient(90deg,transparent 0%,#000 48%);
}
.contact-mark .page{position:relative;z-index:1}
@media(max-width:900px){
  .hero::before{width:1100px;right:-650px;top:-170px;opacity:.14}
  .contact-mark::before{width:740px;right:-500px;opacity:.09}
}
@media(max-width:560px){
  .hero::before{width:780px;right:-515px;top:-100px;opacity:.11}
  .home-close::before{width:570px;left:-345px;bottom:-350px;opacity:.09}
  .contact-mark::before{width:590px;right:-420px;top:190px;opacity:.07}
}

/* Match the photograph's reach and fade on both service pages. */
.coaching-visual::before{
  top:0;
  z-index:0;
  width:72%;
  height:790px;
  opacity:.52;
  background-size:cover;
  background-position:right center;
  mask-image:linear-gradient(to right,transparent 0%,#000 28%);
  filter:saturate(.9);
}
.coaching-visual::after{
  z-index:0;
  background:linear-gradient(180deg,transparent 0%,rgba(5,7,6,.18) 40%,var(--bg) 78%);
}
.coaching-visual .page{position:relative;z-index:1}
@media(max-width:900px){.coaching-visual::before{width:88%;opacity:.47}}
@media(max-width:560px){.coaching-visual::before{width:100%;height:630px;opacity:.38}}

/* Private prelaunch concept. */
.launch-header{justify-content:flex-start;border-bottom:0}
.launch-header .brand img{width:300px;max-height:90px}
.launch-main{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:calc(100svh - 210px);padding:65px 0 100px}
.launch-main::before{content:"";position:absolute;z-index:0;right:-540px;top:-270px;width:1240px;aspect-ratio:1;background:url('/assets/symbol.png') center/contain no-repeat;mix-blend-mode:screen;transform:rotate(-20deg);opacity:.15;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0%,#000 42%)}
.launch-content{position:relative;z-index:1;width:100%}
.launch-content h1{font-size:clamp(3.3rem,7vw,7rem);max-width:920px;margin:26px 0 28px}
.launch-content h1 em{font-style:normal;color:var(--gold)}
.launch-content .launch-lead{font-size:clamp(1.2rem,2vw,1.5rem);color:var(--text)}
.launch-content p{max-width:620px}
.launch-email{color:var(--gold);font-size:.85rem;letter-spacing:.08em;overflow-wrap:anywhere}
.launch-footer{border-top:1px solid rgba(211,163,74,.24)}
@media(max-width:560px){.launch-header .brand img{width:230px}.launch-main{min-height:calc(100svh - 185px);padding:62px 0 90px}.launch-main::before{right:-480px;top:-85px;width:780px;opacity:.1}.launch-content h1{font-size:clamp(2.65rem,11vw,4.4rem)}.launch-footer{flex-wrap:wrap}}

/* The Reset is a guided month with work between calls. */
.reset-includes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px;margin:34px 0 45px;border-top:1px solid rgba(211,163,74,.4)}
.reset-includes>div{display:flex;align-items:flex-start;gap:20px;padding:22px 0;border-bottom:1px solid rgba(211,163,74,.27)}
.reset-includes>div::before{content:"";display:block;flex:none;width:34px;height:34px;background:url('/assets/symbol.png') center/170% no-repeat;mix-blend-mode:screen;opacity:.8}
.reset-includes p{margin:0}
.reset-includes strong,.reset-visual .page>p strong{color:var(--text);font-weight:600}
@media(max-width:650px){.reset-includes{grid-template-columns:1fr;gap:0}.reset-includes>div{padding:19px 0}}
