/* Preserve the live website's visual identity; improve access to booking information. */
.ux-skip{position:fixed;top:-100px;left:16px;z-index:1000;background:var(--cream);color:var(--ink);padding:16px}.ux-skip:focus{top:12px}
:focus-visible{outline:3px solid var(--sage);outline-offset:5px}
[id]{scroll-margin-top:105px}.nav-link,.nav-burger{min-height:44px;display:inline-flex;align-items:center}.nav-link[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.nav-mobile{max-height:calc(100dvh - 90px);overflow-y:auto}.nav-mobile .nav-link{min-height:44px}
.ux-start{padding:42px 0;border-bottom:1px solid var(--border)}.ux-start-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}.ux-start-grid>div+div{border-left:1px solid var(--border);padding-left:32px}.ux-start h2{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:700;text-transform:uppercase;margin:12px 0}.ux-start p{line-height:1.65;margin-bottom:18px;font-size:15px}.ux-start .label{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ux-class-list article{padding:20px 0;border-bottom:1px solid rgba(44,58,46,.25)}.ux-class-list h3{font-family:'Barlow Condensed',sans-serif;font-size:26px;font-weight:700;text-transform:uppercase;margin-bottom:8px}.ux-class-list p{line-height:1.7}.ux-class-list strong{font-weight:500;font-size:14px}
.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-address a{color:var(--cream)!important}.footer-links a{min-height:32px;display:inline-flex;align-items:center}
.hero-full-content p:last-child{color:var(--cream)!important}.btn{min-height:48px}.prose,.lead{line-height:1.7}
/* Content stays readable if scripts or animation fail to load. */
.fade-up{opacity:1!important;transform:none!important}
#ribbon-schedule{min-height:350px;background:#FBFBFB;padding:16px}#momence-plugin-host-schedule{--momence-primary-050:#F5EFE0;--momence-primary-50:#F5EFE0;--momence-primary-100:#EDE7D8;--momence-primary-200:#D5E5CE;--momence-primary-300:#D5E5CE;--momence-primary-400:#5A7A5C;--momence-primary-500:#5A7A5C;--momence-primary-600:#2C3A2E;--momence-primary-700:#2C3A2E;--momence-primary-800:#2C3A2E;--momence-primary-900:#2C3A2E}
@media(max-width:767px){.ux-start-grid{grid-template-columns:1fr;gap:24px}.ux-start-grid>div+div{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}.footer-grid{grid-template-columns:1fr}.hero-full-content{padding-top:100px!important}.hero-full{min-height:730px;height:auto}.nav-cta{padding:12px;font-size:11px}.hero-full-content h1{font-size:clamp(54px,14vw,80px)}#ribbon-schedule{padding:0}.mobile-booking-bar{padding-bottom:max(12px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:1150px){.nav-burger{display:none}}
@media(max-width:767px){.hero-full-content{padding-left:24px!important;padding-right:24px!important;padding-bottom:80px}.hero-full-content .flex{gap:16px}.hero-full-content p{font-size:16px!important}.hero-full-content p:last-child{font-size:13px!important}}
/* Editorial booking stories: group classes first, one-to-one second. */
.editorial-secondary{border:1px solid var(--cream);color:var(--cream);background:transparent}.editorial-secondary:hover{background:var(--sage-light);color:var(--ink)}
.editorial-booking{padding:76px 0 68px;background:var(--cream)}.editorial-heading{display:flex;justify-content:space-between;align-items:start;border-top:1px solid var(--ink);padding-top:20px;padding-bottom:48px}.editorial-kicker{font:500 11px/1.5 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.12em}.editorial-heading p{font:400 clamp(22px,3vw,36px)/1.25 'Gloock',Georgia,serif;max-width:22ch}.booking-story{display:grid;grid-template-columns: .85fr 1.15fr;gap:7%;align-items:center;padding:36px 0 64px;border-bottom:1px solid var(--border)}.story-copy h2{font:700 clamp(42px,5.7vw,76px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:22px 0}.story-copy>p{max-width:40ch;line-height:1.7;font-size:16px}.story-copy .story-facts{font-size:14px;margin:24px 0;color:var(--muted)}.story-copy .btn{gap:24px}.story-link{display:block;width:fit-content;margin-top:18px;font-size:13px;text-decoration:underline;text-underline-offset:5px}.story-photo{margin:0}.story-photo img{width:100%;height:520px;object-fit:cover}.story-photo figcaption{font-size:11px;letter-spacing:.04em;padding-top:12px;color:var(--muted)}.story-private{grid-template-columns:1.15fr .85fr;padding-top:64px}.story-private .story-copy{grid-column:2;grid-row:1}.story-private .story-photo{grid-column:1;grid-row:1}.story-private .story-photo img{height:460px}.editorial-first-visit{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:32px;align-items:center;padding-top:36px}.editorial-first-visit p{font-size:18px;line-height:1.5}.editorial-home .btn{transition:background-color 200ms cubic-bezier(.22,1,.36,1),color 200ms cubic-bezier(.22,1,.36,1),border-color 200ms cubic-bezier(.22,1,.36,1)}.editorial-home .btn-dark:hover{background:var(--sage);border-color:var(--sage);color:white}
@media(max-width:767px){.editorial-booking{padding:40px 0}.editorial-heading{display:block;padding-bottom:24px}.editorial-heading p{margin-top:20px}.booking-story,.story-private{grid-template-columns:1fr;gap:28px;padding:28px 0 36px}.story-private .story-copy,.story-private .story-photo{grid-column:auto;grid-row:auto}.story-photo img,.story-private .story-photo img{height:340px}.editorial-first-visit{grid-template-columns:1fr;gap:16px}.editorial-home .hero-full-content .btn{padding:14px 18px;font-size:11px}.editorial-home .hero-full-content .flex{gap:12px}}
.ux-motion-toggle{background:transparent;border:1px solid currentColor;padding:10px 16px;margin:16px;color:var(--cream);font-size:12px;min-height:44px}
/* World Famous reference: angular media, condensed oversized type, bold chapter colours.
   Adapted to original RPA brand assets and booking content. */
.creative-home{background:var(--cream)}
.creative-home .nav{background:var(--ink);border-bottom:1px solid rgba(245,239,224,.18);color:var(--cream)}
.creative-home .nav-logo span:first-child{color:var(--cream)!important}.creative-home .nav-link{color:var(--cream)}.creative-home .nav-link:hover{color:var(--sage-light)}.creative-home .nav-burger span{background:var(--cream)}.creative-home .nav-mobile{background:var(--ink)}
.creative-home .nav-cta{background:var(--cream);color:var(--ink)}
.creative-home .nav-link::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--terracotta);margin-right:8px}
.creative-hero{position:relative;background:var(--ink);color:var(--cream);padding:370px 0 35px;isolation:isolate}
.creative-photo{position:absolute;inset:105px 0 auto;height:430px;z-index:-1;overflow:hidden;clip-path:polygon(0 20%,92% 0,75% 43%,100% 38%,100% 83%,14% 100%,27% 59%,0 64%)}
.creative-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:brightness(.7)}
.creative-hero-content{width:90%;max-width:1440px;margin:auto}.creative-location{font-size:11px;text-transform:uppercase;letter-spacing:.13em;display:flex;justify-content:space-between;margin:0 0 16px}
.creative-hero h1{font:800 clamp(64px,10.8vw,160px)/.9 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.035em;margin:0;max-width:none}
.creative-line{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}.creative-line>span{display:block}.creative-line:last-child{color:var(--terracotta)}
.creative-hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:30px}.creative-hero-bottom>p{font-size:clamp(16px,1.65vw,22px);line-height:1.5;max-width:42ch}.creative-actions{display:flex;gap:14px;flex-shrink:0;flex-wrap:wrap}
.creative-home .btn{gap:16px;transition:background-color 180ms,color 180ms,transform 220ms cubic-bezier(.22,1,.36,1)}
.creative-home .btn:hover{background:var(--sage-light);color:var(--ink);transform:translateY(-3px)}.creative-home .btn:active{transform:translateY(0)}.creative-home .btn:focus-visible{transform:none;transition:none}
.creative-outline{background:transparent;border:1px solid var(--cream);color:var(--cream)}
.creative-strip{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 0;margin-top:38px;border-top:1px solid var(--cream);border-bottom:1px solid var(--cream);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.creative-strip span[aria-hidden]{font-size:24px;color:var(--terracotta)}
.creative-motion{display:block;background:none;border:0;color:var(--cream);font-size:11px;padding:12px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.creative-down{position:absolute;bottom:-76px;right:16%;z-index:2;color:var(--terracotta);width:72px;height:145px}.creative-down svg{width:100%;height:100%}
.creative-home .editorial-booking{padding:110px 0 70px}.creative-home .editorial-heading{border-top:0;align-items:start;padding-bottom:28px}.creative-home .editorial-heading h2{font:800 clamp(60px,8vw,112px)/.91 'Barlow Condensed',sans-serif;letter-spacing:-.025em;text-transform:uppercase;margin:0;width:68%}
.creative-home .booking-story{grid-template-columns:1fr 1.2fr;gap:9%;padding:65px 0 75px}.creative-home .story-copy h2{font-size:clamp(38px,4.5vw,64px);line-height:.95}.creative-home .story-photo{position:relative}.creative-home .story-photo img{height:560px;clip-path:polygon(0 0,100% 5%,100% 100%,0 95%)}.creative-home .story-private{grid-template-columns:1.2fr 1fr}.creative-home .story-private .story-photo img{clip-path:polygon(0 5%,100% 0,100% 95%,0 100%)}
.creative-home .editorial-first-visit{padding:36px 0}.creative-home .creative-classes{background:var(--sage-light);padding:90px 0}.creative-home .creative-classes .caps-section{text-align:left;font-size:clamp(56px,7vw,96px);line-height:1}.creative-home .creative-classes .lead{text-align:left;margin:24px 0 50px!important}
.creative-home .class-list-pr-item{padding:24px 0;transition:background-color 180ms}.creative-home .class-list-pr-item:hover{background:var(--cream)}
.creative-home .creative-reviews{background:var(--ink);color:var(--cream)}.creative-home .creative-reviews .pull-quote-pr-text{color:var(--cream)}.creative-home .creative-reviews .pull-quote-pr-attr{color:var(--sage-light)}
.creative-home .motion-paused{animation:none!important}.creative-home.motion-paused *{transition:none!important}
@media(max-width:1000px){.creative-hero-bottom{align-items:start;flex-direction:column}.creative-hero{padding-top:320px}.creative-photo{height:370px}.creative-home .nav-link::before{display:none}}
@media(max-width:767px){.creative-hero{padding-top:270px}.creative-photo{top:88px;height:270px}.creative-hero-content{width:auto;margin:0 24px}.creative-hero h1{font-size:clamp(51px,12.2vw,90px)}.creative-location{font-size:9px}.creative-location span{display:none}.creative-hero-bottom{margin-top:24px;gap:22px}.creative-actions{gap:10px}.creative-actions .btn{padding:14px 16px;font-size:10px;gap:12px}.creative-strip{display:grid;grid-template-columns:1fr 1fr;font-size:10px;gap:16px;margin-top:30px}.creative-strip span[aria-hidden]{display:none}.creative-down{width:50px;height:100px;bottom:-52px;right:12%}.creative-home .editorial-booking{padding-top:80px}.creative-home .editorial-heading{display:block}.creative-home .editorial-heading h2{width:100%;font-size:64px;margin-top:25px}.creative-home .booking-story,.creative-home .story-private{grid-template-columns:1fr;gap:30px;padding:32px 0 42px}.creative-home .story-photo img{height:370px}.creative-home .story-copy h2{font-size:44px}.creative-home .creative-classes{padding:55px 0}.creative-home .btn:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.creative-home *{animation:none!important;transition:none!important}.creative-home .btn:hover{transform:none}}
/* Compact opening: benefit, booking and practical details fit the first screen. */
.creative-home .creative-hero{padding:235px 0 12px;min-height:0}.creative-home .creative-photo{top:88px;height:265px}.creative-home .creative-hero h1{font-size:clamp(58px,7.1vw,106px);line-height:.92}.creative-home .creative-hero-bottom{margin-top:18px;gap:24px}.creative-home .creative-hero-bottom>p{font-size:16px;max-width:49ch}.creative-home .creative-strip{margin-top:15px;padding:12px 0}.creative-home .creative-down{height:95px;bottom:-53px;width:55px}.creative-home .creative-location{margin-bottom:12px}
.falling-sentence{display:flex;gap:.3em;align-items:center;flex-wrap:wrap;min-height:44px;margin-top:16px;font:500 19px/1.2 'DM Sans',sans-serif;color:var(--sage-light)}.falling-sentence>span{display:inline-block}.replay-drop{background:transparent;color:var(--cream);border:1px solid rgba(245,239,224,.5);border-radius:50%;width:32px;min-height:32px;margin-left:8px;cursor:pointer;font-size:20px}.creative-motion{padding:8px 0;min-height:36px}.creative-home.motion-paused .replay-drop{display:none}
@media(min-width:1001px) and (max-height:780px){.creative-home .creative-hero{padding-top:175px}.creative-home .creative-photo{height:210px}.creative-home .creative-hero h1{font-size:clamp(60px,6.5vw,88px)}.falling-sentence{margin-top:10px}.creative-home .creative-strip{margin-top:8px}}
@media(max-width:1000px){.creative-home .creative-hero-bottom{gap:14px}.creative-home .creative-hero{padding-top:200px}}
@media(max-width:767px){.creative-home .creative-hero{padding:180px 0 16px}.creative-home .creative-photo{top:78px;height:150px}.creative-home .creative-hero h1{font-size:clamp(38px,9.6vw,65px);line-height:.96}.creative-home .creative-hero-content{margin:0 20px}.creative-home .creative-location{font-size:9px;margin-bottom:10px}.creative-home .creative-hero-bottom{margin-top:16px}.creative-home .creative-hero-bottom>p{font-size:14px;line-height:1.5}.creative-home .creative-actions{gap:8px}.creative-home .creative-actions .btn{padding:12px;font-size:10px;gap:8px}.falling-sentence{font-size:14px;gap:.25em;margin-top:12px}.creative-home .creative-strip{gap:10px;font-size:9px;padding:10px 0;margin-top:8px}.creative-home .creative-motion{font-size:10px;min-height:32px}.creative-home .creative-down{display:none}.creative-home .mobile-booking-bar{display:none}.creative-home .creative-hero h1 .creative-line:last-child{max-width:100%}}
@media(max-width:767px) and (max-height:700px){.creative-home .creative-hero{padding-top:130px}.creative-home .creative-photo{height:100px}.creative-home .creative-hero h1{font-size:38px}.creative-home .creative-hero-bottom>p{font-size:13px}.falling-sentence{margin-top:6px}}
/* First visit becomes a full-width editorial chapter, with the user's copy intact. */
.creative-home section.editorial-first-visit{display:block;background:var(--sage-light);color:var(--ink);padding:68px 0;margin:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.first-visit-layout{display:grid;grid-template-columns:1.2fr 1fr;column-gap:10%;align-items:start}
.first-visit-heading{grid-row:span 2;font:800 clamp(48px,6vw,88px)/.96 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:0;max-width:12ch}
.creative-home .editorial-first-visit p{font:400 clamp(22px,2.6vw,36px)/1.25 'Gloock',Georgia,serif;max-width:23ch;margin:0 0 30px;padding-top:5px}
.creative-home .editorial-first-visit .text-link{justify-self:start;color:var(--ink);padding:14px 0;border-bottom:2px solid var(--ink);font-size:12px}
/* More of the real room fills the hero; retain room for both booking choices. */
.creative-home .creative-photo{top:80px;height:calc(100% - 80px);clip-path:polygon(0 4%,100% 0,100% 74%,69% 80%,76% 91%,0 100%)}
.creative-home .creative-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(44,58,46,.08),rgba(44,58,46,.62) 45%,var(--ink) 100%)}
.creative-home .creative-photo img{filter:brightness(.75);object-position:center 45%}
@media(max-width:767px){.creative-home section.editorial-first-visit{padding:40px 0}.first-visit-layout{grid-template-columns:1fr;gap:24px}.first-visit-heading{font-size:54px;grid-row:auto;max-width:14ch}.creative-home .editorial-first-visit p{font-size:25px;margin:0;max-width:25ch}.creative-home .creative-photo{top:72px;height:calc(100% - 72px)}}
/* Upcoming golf sessions: a personal note, separate from available class bookings. */
.golf-coming{background:var(--ink);color:var(--cream);padding:80px 0;border-bottom:1px solid rgba(245,239,224,.25)}
.golf-coming-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.golf-coming .editorial-kicker{color:var(--sage-light);margin-bottom:28px}.golf-coming h2{font:800 clamp(44px,5vw,72px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:-.025em;margin:0}.golf-coming-copy p{font-size:16px;line-height:1.7;margin:0 0 20px}.golf-coming-copy .golf-intro{font-size:20px;line-height:1.5}.golf-coming-copy .golf-signoff{font-family:'Gloock',Georgia,serif;font-size:26px;margin:26px 0}.golf-coming-copy .golf-status{font-size:12px;color:var(--sage-light);margin:14px 0 0}
@media(max-width:767px){.golf-coming{padding:48px 0}.golf-coming-layout{grid-template-columns:1fr;gap:30px}.golf-coming h2{font-size:46px}.golf-coming-copy .golf-intro{font-size:19px}.golf-coming .btn{font-size:11px;padding:15px 18px}}
/* Full-screen opening with a clean fold and a genuinely larger studio photograph. */
.creative-home .creative-hero{min-height:100svh;box-sizing:border-box;display:flex;align-items:flex-end;padding:clamp(300px,40svh,510px) 0 28px;overflow:hidden}
.creative-home .creative-photo{top:80px;height:calc(100% - 80px);clip-path:none}
.creative-home .creative-photo img{object-position:center 42%;filter:brightness(.82)}
.creative-home .creative-photo:after{background:linear-gradient(180deg,rgba(44,58,46,.05) 0%,rgba(44,58,46,.12) 30%,rgba(44,58,46,.78) 62%,var(--ink) 100%)}
.creative-home .creative-hero-content{position:relative;margin:0 auto}
.creative-home .creative-down{bottom:22px;right:5%;height:70px;width:42px}
.creative-home .creative-location{color:var(--cream);text-shadow:0 1px 8px rgba(0,0,0,.5)}
@media(max-width:1000px){.creative-home .creative-hero{padding-top:clamp(230px,32svh,360px)}}
@media(max-width:767px){.creative-home .creative-hero{min-height:100svh;padding:clamp(200px,32svh,320px) 0 80px}.creative-home .creative-photo{top:72px;height:calc(100% - 72px)}.creative-home .creative-hero-content{margin:0 20px;width:calc(100% - 40px)}.creative-home .creative-photo img{object-position:58% center}.creative-home .creative-down{display:none}}
@media(max-width:767px) and (max-height:700px){.creative-home .creative-hero{padding-top:170px;padding-bottom:78px}}
/* Keep the large photograph while restoring the signature angular cut-out. */
.creative-home .creative-photo{clip-path:polygon(0 0,100% 0,100% 39%,80% 48%,100% 45%,100% 83%,0 100%,0 67%,18% 57%,0 60%)}
.creative-home .creative-photo:after{background:linear-gradient(180deg,rgba(44,58,46,.05),rgba(44,58,46,.12) 30%,rgba(44,58,46,.8) 66%,var(--ink) 100%)}
.creative-home .creative-down{right:10%;bottom:24px;height:100px;width:60px}
.creative-home .creative-down path{stroke-width:5}
@media(max-width:767px){.creative-home .creative-down{display:block;right:22px;bottom:78px;width:34px;height:62px}.creative-home .creative-photo{clip-path:polygon(0 0,100% 0,100% 30%,76% 40%,100% 36%,100% 83%,0 94%,0 56%,18% 47%,0 51%)}}
/* Match the actual visible viewport, including browser chrome changes. */
.creative-home .creative-hero{min-height:100vh;min-height:100dvh;padding-top:110px;padding-bottom:28px;display:flex;align-items:flex-end}
.creative-home .creative-hero-content{margin:0 auto;flex-shrink:0}.creative-home .creative-hero h1{font-size:clamp(54px,min(7.1vw,11dvh),106px)}
@media(max-width:1000px){.creative-home .creative-hero{padding-top:105px;padding-bottom:26px}}
@media(max-width:767px){.creative-home .creative-hero{min-height:100vh;min-height:100dvh;padding:100px 0 84px}.creative-home .creative-hero-content{margin:0 20px;width:calc(100% - 40px)}.creative-home .creative-hero h1{font-size:clamp(34px,min(9.6vw,8dvh),65px)}.creative-home .creative-hero-bottom{margin-top:12px;gap:12px}.creative-home .creative-hero-bottom>p{font-size:14px;line-height:1.45}}
@media(max-height:580px) and (min-width:768px){.creative-home .creative-hero h1{font-size:clamp(38px,9dvh,60px)}.creative-home .creative-hero-bottom{margin-top:12px}.creative-home .creative-hero-bottom>p{font-size:14px}.falling-sentence{margin-top:8px;font-size:16px}.creative-home .creative-hero{padding-bottom:12px}}

/* A broad studio photograph with a pronounced zigzag and readable booking copy. */
.creative-home .creative-photo{clip-path:polygon(0 8%,100% 0,78% 29%,100% 23%,100% 76%,0 96%,20% 58%,0 64%)}
.creative-home .creative-hero-bottom>p{color:var(--cream);background:var(--ink);padding:14px 18px;border-left:3px solid var(--terracotta)}
@media(max-width:767px){.creative-home .creative-photo{clip-path:polygon(0 6%,100% 0,76% 26%,100% 20%,100% 79%,0 96%,20% 55%,0 62%)}.creative-home .creative-hero-bottom>p{padding:10px 12px}}

/* Dark type throughout the pale sage class section, including hover states. */
.creative-home .creative-classes,
.creative-home .creative-classes :is(h2,.lead,.class-list-pr-name,.class-list-pr-desc,.class-list-pr-sep,.text-link){color:var(--ink)}
.creative-home .creative-classes .class-list-pr-item{border-color:rgba(44,58,46,.3)}
.creative-home .creative-classes .text-link{border-color:var(--ink)}
.creative-home .creative-classes .text-link:hover{color:var(--ink);border-color:var(--ink)}
