:root{--blue:#4f8fae;--teal:#4f9c81;--yellow:#d4ab3f;--ink:#0b0b0c;--paper:#fcfaf4;--line-on-paper:rgba(11,11,12,.14);--danger:#a5402f}*{box-sizing:border-box}body,html{margin:0;padding:0;color:var(--ink);font-family:var(--font-sans),system-ui,sans-serif}.page-bg,body,html{background:var(--blue)}.page-bg{position:fixed;inset:0;z-index:0;overflow:hidden}.page-bg:after,.page-bg:before{content:"";position:absolute;inset:-5%}.page-bg:before{background:var(--teal);-webkit-clip-path:polygon(0 34%,100% 24%,100% 70%,0 60%);clip-path:polygon(0 34%,100% 24%,100% 70%,0 60%);opacity:.87}.page-bg:after{background:var(--yellow);-webkit-clip-path:polygon(0 64%,100% 54%,100% 100%,0 100%);clip-path:polygon(0 64%,100% 54%,100% 100%,0 100%);opacity:.88}.page-bg-texture{position:absolute;inset:0;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:180px 180px}.page-bg-grid{position:absolute;inset:0;opacity:.4;mix-blend-mode:multiply;background-image:repeating-linear-gradient(0deg,rgba(11,11,12,.14),rgba(11,11,12,.14) 1px,transparent 0,transparent 44px),repeating-linear-gradient(90deg,rgba(11,11,12,.14),rgba(11,11,12,.14) 1px,transparent 0,transparent 44px)}.page-bg-perforation{position:absolute;left:0;right:0;height:0;border-top:2px dashed rgba(11,11,12,.32)}.page-bg-perforation.line-1{top:30%}.page-bg-perforation.line-2{top:62%}.page{position:relative;z-index:1;min-height:100vh;justify-content:center;max-width:1040px;margin:0 auto;padding:64px 24px}.header-box,.page{display:flex;flex-direction:column}.header-box{background:var(--paper);border:2px solid var(--ink);padding:26px 36px;gap:6px;grid-area:header}.header-box h1{font-family:var(--font-display),system-ui,sans-serif;font-weight:900;letter-spacing:-.01em;font-size:clamp(14px,3.4vw,24px);line-height:1.1;margin:0;color:var(--ink);white-space:nowrap}.header-tagline{font-family:var(--font-mono),monospace;font-size:14px;font-weight:600;letter-spacing:.01em;color:var(--ink);margin:0}.page-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"header" "intro" "booking";grid-gap:24px;gap:24px}.intro-box{grid-area:intro}.booking-panel{grid-area:booking}@media (min-width:860px){.page-grid{grid-template-columns:minmax(340px,1fr) minmax(340px,1fr);grid-template-areas:"header ." "intro booking";gap:28px;align-items:stretch}}.intro-box{position:relative;background:var(--paper);border:2px solid var(--ink);padding:40px 36px;display:flex;flex-direction:column;gap:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.intro-copy{display:flex;flex-direction:column;gap:12px}.intro-box p{font-size:16px;line-height:1.6;color:var(--ink);margin:0;font-weight:500}.session-facts{display:flex;flex-direction:column;gap:10px;margin-top:4px;border-top:1px solid var(--line-on-paper);padding-top:20px}.session-facts div{display:flex;justify-content:space-between;font-family:var(--font-mono),monospace;font-size:13px;font-weight:500;color:rgba(11,11,12,.7)}.session-facts span:last-child{color:var(--ink);font-weight:600}.booking-panel{background:var(--paper);border:2px solid var(--ink);color:var(--ink);padding:40px 36px;display:flex;flex-direction:column;gap:28px}.panel-heading{font-family:var(--font-display),system-ui,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.01em;margin:0}.date-picker{display:flex;flex-direction:column;gap:10px}.date-picker-header{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono),monospace;font-size:13px;font-weight:600;color:var(--ink)}.date-picker-header button{background:transparent;border:1px solid var(--line-on-paper);color:var(--ink);width:28px;height:28px;line-height:1;font-size:16px;cursor:pointer}.date-picker-header button:disabled{opacity:.3;cursor:not-allowed}.date-picker-weekdays{font-family:var(--font-mono),monospace;font-size:11px;color:rgba(11,11,12,.5);text-align:center}.date-picker-grid,.date-picker-weekdays{display:grid;grid-template-columns:repeat(7,1fr)}.date-picker-grid{grid-gap:4px;gap:4px}.date-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono),monospace;font-size:13px;background:transparent;border:1px solid transparent;border-radius:0;color:rgba(11,11,12,.28);cursor:default}.date-cell.empty{visibility:hidden}.date-cell[data-available=true]{border-color:var(--line-on-paper);color:var(--ink);cursor:pointer}.date-cell[data-available=true]:hover{border-color:var(--teal)}.date-cell[data-selected=true]{background:var(--yellow);border-color:var(--yellow);color:var(--ink);font-weight:600}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));grid-gap:8px;gap:8px}.slot-button{font-family:var(--font-mono),monospace;font-size:13px;padding:10px 6px;background:transparent;border:1px solid var(--line-on-paper);border-radius:0;cursor:pointer;color:var(--ink)}.slot-button:hover{border-color:var(--teal)}.slot-button[data-selected=true]{background:var(--yellow);border-color:var(--yellow);color:var(--ink);font-weight:600}.empty-note{font-size:14px;color:rgba(11,11,12,.6)}.booking-form{display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--line-on-paper);padding-top:24px}.field label{display:block;font-size:13px;margin-bottom:6px;color:rgba(11,11,12,.75)}.field input,.field textarea{width:100%;font-family:var(--font-sans),sans-serif;font-size:15px;padding:11px 12px;border:1px solid var(--line-on-paper);border-radius:0;background:#fff;color:var(--ink)}.field textarea{resize:vertical;min-height:90px}.field-hint{font-size:12.5px;color:rgba(11,11,12,.55);margin-top:6px;line-height:1.5}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.submit-button{font-family:var(--font-sans),sans-serif;font-size:15px;font-weight:700;padding:13px 20px;background:var(--ink);color:var(--paper);border:none;border-radius:0;cursor:pointer;width:-moz-fit-content;width:fit-content}.submit-button:disabled{opacity:.5;cursor:not-allowed}.selected-summary{font-family:var(--font-mono),monospace;font-size:13px;color:var(--ink);font-weight:600;border-left:3px solid var(--teal);padding-left:10px}.error-message{font-size:14px;color:var(--danger)}.confirmation{border-top:1px solid var(--line-on-paper);padding-top:24px;display:flex;flex-direction:column;gap:10px}.confirmation h2{font-family:var(--font-display),system-ui,sans-serif;font-size:22px;font-weight:800;margin:0}.confirmation a{color:var(--ink)}.site-credit-bar{position:fixed;left:0;right:0;bottom:0;z-index:210;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:var(--ink);color:var(--paper);font-family:var(--font-sans),sans-serif;font-size:12px;padding:10px 16px}.site-credit-bar a{color:inherit;text-decoration:none;border-bottom:1px solid transparent}.site-credit-bar a:hover{border-bottom-color:currentColor}.credit-icons{display:flex;align-items:center;gap:12px}.credit-icons a{display:flex;border-bottom:none!important}.credit-icons svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.85;transition:opacity .15s ease}.credit-icons a:hover svg{opacity:1}.creator-tag{position:absolute;top:24px;right:24px;z-index:5;font-family:var(--font-sans),sans-serif;font-weight:700;font-size:12.5px;background:var(--teal);color:#fff;border:none;border-radius:999px;padding:10px 18px;cursor:pointer;box-shadow:0 6px 16px rgba(79,156,129,.35);transition:transform .15s ease,box-shadow .15s ease}.creator-tag:hover{transform:translateY(2px);box-shadow:0 10px 22px rgba(79,156,129,.45)}.creator-panel{position:absolute;top:78px;right:24px;z-index:6;width:250px;background:var(--paper);border:1.5px solid var(--line-on-paper);border-radius:18px;box-shadow:0 24px 54px rgba(11,11,12,.25);padding:26px 20px 20px;transform-origin:top right;transform:scale(.92) translateY(-10px);opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.22,1,.36,1),opacity .22s ease-out}.creator-panel.open{transform:scale(1) translateY(0);opacity:1;pointer-events:auto}.creator-panel-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:1.3rem;line-height:1;color:rgba(11,11,12,.55);cursor:pointer;padding:2px 6px}.creator-panel-close:hover{color:var(--ink)}.creator-avatar{display:block;width:60px;height:60px;border-radius:50%;margin:0 auto 14px;background:var(--teal);object-fit:cover}.creator-name{font-family:var(--font-display),sans-serif;font-weight:800;font-size:1rem;text-align:center;color:var(--ink)}.creator-title{color:rgba(11,11,12,.65);font-size:.8rem;text-align:center;margin-top:3px}.creator-blurb{font-size:.88rem;text-align:center;line-height:1.5;margin-top:14px;color:var(--ink)}.creator-links{display:flex;flex-direction:column;gap:8px;margin-top:16px}.creator-link-btn{background:var(--teal);color:#fff;text-align:center;font-weight:700;font-size:.85rem;padding:10px;border-radius:10px;text-decoration:none}.creator-link-btn:hover{opacity:.92}.creator-social-row{display:flex;justify-content:center;gap:10px;margin-top:4px}.creator-social{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;flex:none;color:rgba(11,11,12,.6);border:1px solid var(--line-on-paper);transition:color .15s ease,border-color .15s ease,background .15s ease}.creator-social:hover{color:var(--teal);border-color:var(--teal);background:rgba(79,156,129,.08)}.creator-social svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}@media (max-width:640px){.creator-tag{top:16px;right:16px;font-size:11px;padding:8px 13px}.creator-panel{top:60px;right:16px;left:auto;width:220px}.site-credit-bar{position:relative;font-size:11px;padding:9px 12px}.header-box h1{font-size:22px;white-space:normal}}