/* built by scratchpad/design-2026/build-owners.py; never edit by hand */

/* THE CALCULATOR: what you let and how you pay, in one line over the cards */
.opl-calc{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:22px clamp(28px,3.4vw,56px);max-width:1180px;margin:0 auto}
.opl-size{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.opl-size > label,.opl-say{font:400 clamp(21px,1.6vw,24px)/1.1 var(--face);color:var(--ink)}
.opl-step{display:flex;align-items:stretch;background:#fff}
.opl-step button{appearance:none;border:0;border-radius:0;background:none;width:54px;height:58px;padding:0;margin:0;font:400 26px/1 var(--face);color:var(--ink);cursor:pointer;transition:background .2s,color .2s}
.opl-step button:hover{background:var(--ink);color:var(--shell)}
.opl-step input{appearance:none;border:0;border-radius:0;background:none;width:72px;height:58px;padding:0;text-align:center;font:400 30px/1 var(--face);color:var(--ink);font-variant-numeric:lining-nums}
.opl-step input:focus{outline:2px solid #c08c3d;outline-offset:-2px}
.opl-every{display:flex;background:#fff}
.opl-every button{appearance:none;border:0;border-radius:0;background:none;height:58px;padding:0 22px;margin:0;font:400 17px/1 var(--sans);color:var(--ink-75);cursor:pointer;transition:background .2s,color .2s}
.opl-every button[aria-pressed=true]{background:var(--tweed);color:var(--shell)}
.opl-every button:not([aria-pressed=true]):hover{color:var(--ink)}

/* THE THREE CARDS: the membership page's cards, three across */
.opl-three{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,1.6vw,24px);max-width:1180px;margin:clamp(34px,3.6vw,54px) auto 0;align-items:stretch}
.opl-three .mj-shot{aspect-ratio:3/2}
.opl-three .mj-price b{font-size:min(clamp(36px,2.8vw,46px), 28px + (clamp(36px,2.8vw,46px) - 28px) * 0.6)}
.opl-three .mj-body{padding:clamp(20px,1.8vw,28px)}
.opl-three .mj-name h3{font-size:min(clamp(23px,1.9vw,28px), 28px + (clamp(23px,1.9vw,28px) - 28px) * 0.6)}
.opl-has{list-style:none;margin:20px 0 26px;padding:0;display:flex;flex-direction:column;gap:9px}
.opl-has li{position:relative;padding-left:24px;font:400 16px/1.45 var(--sans);color:var(--ink-75)}
.opl-has li::before{content:"";position:absolute;left:0;top:.62em;width:10px;height:10px;background:#c08c3d}


/* OUR AIM, on forest: the statement, then three said plainly (no boxes, no tags) */
.opl-aim .in{text-align:center}
.opl-aim h2{max-width:980px;margin:0 auto;font:400 min(clamp(32px,3.4vw,50px), 28px + (clamp(32px,3.4vw,50px) - 28px) * 0.6)/1.15 var(--face);color:var(--shell)}
.opl-aim-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px clamp(30px,3.6vw,60px);max-width:1180px;margin:clamp(40px,4.4vw,64px) auto 0;text-align:left}
.opl-aim-three b{display:block;font:400 min(clamp(22px,1.8vw,26px), 28px + (clamp(22px,1.8vw,26px) - 28px) * 0.6)/1.2 var(--face);color:#c08c3d}
.opl-aim-three span{display:block;margin-top:10px;font:400 17px/1.6 var(--serif);color:rgba(255,255,247,.82)}

/* KEEP MORE OF EVERY BOOKING: the sum on a thousand pounds, then what an owner puts up with and what we do instead */
.opl-cost .mem-seasons-head{text-align:center;justify-content:center}
.opl-cost .mem-seasons-head h2{margin-left:auto;margin-right:auto}
.opl-cost-lead{margin:-10px 0 0;text-align:center;font:italic 400 18px/1.4 var(--serif);color:var(--ink-55)}
.opl-sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px clamp(24px,3vw,48px);max-width:1180px;margin:clamp(26px,3vw,40px) auto 0;text-align:center}
.opl-sum b{display:block;font:400 min(clamp(52px,5vw,78px), 28px + (clamp(52px,5vw,78px) - 28px) * 0.6)/1 var(--face);color:var(--ink);font-variant-numeric:lining-nums}
.opl-sum span{display:block;max-width:240px;margin:12px auto 0;font:400 16px/1.45 var(--sans);color:var(--ink-75)}
.opl-sum .is-them b{color:var(--ink-35);text-decoration:line-through;text-decoration-thickness:2px}
.opl-sum .is-ours b{color:var(--tweed)}
.opl-fix{display:flex;flex-direction:column;gap:clamp(22px,2.4vw,34px);max-width:1180px;margin:clamp(54px,5.4vw,84px) auto 0}
.opl-fix > div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:8px clamp(28px,3.4vw,56px);align-items:baseline}
.opl-was{margin:0;font:italic 400 19px/1.45 var(--serif);color:var(--ink-55)}
.opl-now{margin:0;font:400 clamp(21px,1.7vw,25px)/1.35 var(--face);color:var(--ink)}

/* THE MEMBERSHIP PAGE'S SMALL CAPITALS, said in words here (never Claude's default kit, 31 October 2026): the gold tags
   on the photographs and cards in the serif italic, sentence case; a step's and a question's name in the heading face */
.opl-page .mem-full-shot em,.opl-page .mj-name em{text-transform:none;letter-spacing:0;font:italic 400 16px/1 var(--serif);padding:8px 12px}
.opl-page .mem-bits em{text-transform:none;letter-spacing:0;font:400 21px/1.2 var(--face);color:var(--ink)}

/* HOW IT WORKS: the parcel band as the membership page has it */
.opl-how .mem-bits em{font-style:normal}

/* EVERYTHING IN EACH PLAN: one white sheet, rows parted by space, never lines or stripes */
.opl-whole .mj-head{display:flex;flex-direction:column;align-items:center;gap:20px}
.opl-table-wrap{max-width:1180px;margin:0 auto;overflow-x:auto;background:#fff;padding:clamp(14px,1.6vw,26px)}
.opl-table{width:100%;border-collapse:collapse;font:400 16px/1.4 var(--sans);color:var(--ink-75)}
.opl-table th,.opl-table td{padding:14px 18px;text-align:left;vertical-align:top;border:0}
.opl-table thead th{font:400 22px/1.1 var(--face);color:var(--ink);padding-bottom:18px}
.opl-table tbody th{font-weight:500;color:var(--ink);width:24%}
.opl-table td{width:19%}

/* THE FLOW (/owners/start): on the film, so white */
.opl-flow .opl-calc.is-flow{margin:4px auto 28px}
.opl-flow .opl-size > label,.opl-flow .opl-say{color:#fff}
.opl-flow .opl-step,.opl-flow .opl-every{background:#FFFFF7}
.lp-page.opl-flow .mfl-pic{background:none}
@media (min-width:900px){.lp-page.opl-flow .mfl-plans.n3{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1280px}}
.opl-flow .mfl-plan[disabled]{opacity:.5;cursor:default;transform:none;box-shadow:none}
.opl-flow .do-gen-note a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.opl-fields{display:flex;flex-direction:column;gap:18px;width:100%;max-width:620px;margin:8px auto 0;text-align:left}
.opl-fields label{display:flex;flex-direction:column;gap:2px}
.opl-fields label > span{font:400 17px/1.3 var(--sans);color:rgba(255,255,255,.85)}
.opl-fields textarea.do-gen-in{height:auto;min-height:70px;padding-top:14px;resize:vertical;font-family:inherit}
.opl-agree{display:flex;align-items:flex-start;gap:12px;width:100%;max-width:620px;margin:26px auto 0;text-align:left;font:400 16px/1.5 var(--sans);color:rgba(255,255,255,.9);cursor:pointer}
.opl-agree input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:#c08c3d}
.opl-agree a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.opl-err{margin:2px 0 0;font:400 15px/1.4 var(--sans);color:#fff;background:var(--tweed);padding:8px 12px;align-self:flex-start}
.opl-flow .do-gen-go[disabled]{opacity:.55;cursor:default}
/* the flow's small capitals and the arrow's ring, said plainly here (never Claude's default kit) */
.lp-page.opl-flow .do-gen-crumb .do-crumb-was,.lp-page.opl-flow .do-gen-crumb .do-crumb-go{text-transform:none;letter-spacing:0;font:400 17px/1.2 var(--sans)}
.lp-page.opl-flow .do-gen-crumb i{border:0;width:auto;height:auto;background:none;font-style:normal}
.lp-page.opl-flow .do-gen-go{text-transform:none;letter-spacing:0;font:500 18px/1 var(--sans)}

@media (max-width:999px){
  /* the three side by side to swipe, as the membership page's eight things, never stacked boxes */
  .opl-three{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(84vw,420px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1 * var(--gutter,20px));padding-right:var(--gutter,20px)}
  .opl-three::-webkit-scrollbar{display:none}
  .opl-three > .mj-card{scroll-snap-align:start}
  .opl-aim-three{grid-template-columns:minmax(0,1fr);max-width:620px}
  .opl-sum{grid-template-columns:repeat(2,minmax(0,1fr))}
  .opl-fix > div{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:599px){
  .opl-calc{justify-content:flex-start;gap:18px 22px}
  .opl-size{flex:1 1 40%}
  .opl-size:last-child{flex-basis:100%}
  .opl-every{width:100%}
  .opl-every button{flex:1;padding:0 10px;font-size:15px}
  .opl-step button{width:46px}
  .opl-step input{width:56px}
  .opl-table th,.opl-table td{padding:12px 10px;font-size:14px}
  .opl-table thead th{font-size:18px}
  /* the flow's three plans side by side to swipe, each with its name and price; what each has is on /owners */
  .lp-page.opl-flow .mfl-plans{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78vw;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;max-width:none}
  .lp-page.opl-flow .mfl-plans::-webkit-scrollbar{display:none}
  .lp-page.opl-flow .mfl-plan{scroll-snap-align:start}
  .lp-page.opl-flow .mfl-choose{display:none}
}
