/* Current visual refinements. */
.education-carousel .education-document .document-image{
  box-sizing:border-box;
  padding:7px;
  border:1px solid rgba(164,128,78,.58);
  background:rgba(255,253,248,.62);
}
.video-circle-layout{gap:clamp(38px,6vw,84px)}
.presentation-preview .presentation-viewer{
  box-sizing:border-box;
  width:100%;
  min-height:0;
  aspect-ratio:16/9;
}
.presentation-preview .presentation-viewer iframe{width:100%;height:100%}
.musthave-note img{width:112%;margin-left:-17%;object-fit:contain}
.social-links .profile-preview img{border-radius:18px}
.social-links>a{border-radius:18px}
@media(max-width:760px){
  .education-carousel .education-document .document-image{padding:5px}
  .video-circle-layout{gap:34px}
  .musthave-note img{width:122%;margin-left:-34%}
}

/* Frames follow the actual document; navigation stays beside the gallery. */
.education-track{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;min-width:0}
.education-track>button{width:44px;height:44px;border:1px solid #a4804e;border-radius:50%;background:transparent;color:inherit;font-size:22px;cursor:pointer}
.education-track>button:hover{background:#e5d8c3}
.education-carousel .education-gallery{min-width:0}
.education-carousel .education-document,.education-carousel .education-document:first-child{flex:0 0 100%;scroll-snap-stop:always}
.education-carousel .education-document .document-image{border:0;background:transparent;padding:0}
.education-carousel .education-document .document-image img{box-sizing:border-box;width:auto;height:auto;max-width:100%;max-height:100%;padding:7px;border:1px solid rgba(164,128,78,.58);background:rgba(255,253,248,.62);object-fit:contain}
.presentation-preview .presentation-viewer{aspect-ratio:auto;min-height:0;padding:12px;background:#302621;display:block}
.presentation-viewer [data-slide-image]{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.slide-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:10px;color:#fff8ed;font-size:14px}
.slide-controls button{border:1px solid #ad9270;background:transparent;color:inherit;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:20px}
.slide-controls button:disabled{opacity:.3;cursor:default}
.all-topics-action{display:flex;justify-content:center;margin:32px 0 0}
.musthave-note img{width:125%;max-width:none;margin-left:-18%;object-fit:contain}
.day-column.closed-day{background:#e7e3df;color:#827970;pointer-events:none}
.day-column.closed-day .day-title{background:#ded8d2;color:#827970}
.closed-day-note{font-size:14px;text-align:center;padding:18px 3px;white-space:normal}
#service-choices{grid-template-columns:1fr}
.first-meeting-note{margin-top:20px;max-width:650px;line-height:1.6}
.consultation-pricing{margin:56px 0 44px;padding:clamp(26px,4vw,48px);background:#f4eee7;border:1px solid rgba(47,38,34,.16)}
.consultation-pricing-heading{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);gap:28px;align-items:start;margin-bottom:30px}
.consultation-pricing-heading .eyebrow{margin:8px 0 0}
.consultation-pricing-heading h3{font-size:clamp(28px,3.2vw,44px);line-height:1.08}
.pricing-table{width:100%;border-collapse:collapse;table-layout:fixed}
.pricing-table th,.pricing-table td{padding:19px 16px;border-bottom:1px solid rgba(47,38,34,.17);text-align:left;vertical-align:middle}
.pricing-table thead th{padding-top:12px;color:#8b6838;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.pricing-table th:first-child{width:46%}
.pricing-table tbody th{font-size:18px;font-weight:400}
.pricing-table tbody td{font-size:16px;white-space:nowrap}
.pricing-table strong{font-weight:600;color:#6e4c2b}
.package-price s,.package-price strong,.package-price small{display:block}
.package-price s{color:#8b817a;font-size:14px;text-decoration-color:#9b6e4c;text-decoration-thickness:1px}
.package-price strong{margin-top:4px;font-size:18px}
.package-price small{margin-top:5px;color:#8b6838;font-size:12px;letter-spacing:.02em}
.pricing-note{margin:22px 0 0;color:#6a5c54;font-size:14px}
.additional-formats{margin-top:12px}

.reviews-preview{padding:clamp(76px,9vw,128px) clamp(24px,7vw,110px);background:#fbf8f3}
.reviews-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:end;margin-top:42px;padding:42px;border:1px solid rgba(47,38,34,.16);background:#f4eee7}
.reviews-panel>div{max-width:760px}
.reviews-panel p{margin:0;color:#5b4d45;line-height:1.65}
.reviews-panel p+p{margin-top:16px}
.reviews-panel .reviews-lead{color:#2f2622;font-family:"Playfair Display",Georgia,serif;font-size:clamp(20px,2.1vw,27px);line-height:1.35}
.reviews-panel .button{white-space:nowrap}

.collaboration{padding:clamp(82px,10vw,138px) clamp(24px,7vw,110px);background:#292421;color:#f5eee6}
.collaboration-heading{max-width:940px}
.collaboration-heading h2{margin:16px 0 0;font-size:clamp(40px,5vw,72px);line-height:1.02}
.collaboration-heading>p:not(.eyebrow){max-width:760px;margin:28px 0 0;color:#d4c8bf;font-size:18px;line-height:1.65}
.collaboration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:56px;border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}
.collaboration-grid article{padding:34px 30px 38px;border-right:1px solid rgba(255,255,255,.18)}
.collaboration-grid article:first-child{padding-left:0}
.collaboration-grid article:last-child{padding-right:0;border-right:0}
.collaboration-grid span{color:#97c7c6;font-size:14px;letter-spacing:.08em}
.collaboration-grid h3{margin:24px 0 0;font-size:clamp(25px,2.5vw,34px);line-height:1.12}
.collaboration-grid p{margin:18px 0 0;color:#d4c8bf;font-size:16px;line-height:1.65}
.collaboration-footer{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:36px}
.collaboration-footer p{max-width:720px;margin:0;color:#d4c8bf;line-height:1.6}
.collaboration-footer .button{white-space:nowrap}

.inclusive-strip{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr);gap:36px;padding:28px clamp(24px,7vw,110px);border-top:1px solid rgba(47,38,34,.14);border-bottom:1px solid rgba(47,38,34,.14);background:#e8f0ef;color:#2f2622}
.inclusive-strip strong{font-family:"Playfair Display",Georgia,serif;font-size:24px;font-weight:500}
.inclusive-strip span{max-width:780px;color:#514943;line-height:1.6}
.recovery-focus{padding:clamp(86px,10vw,140px) clamp(24px,7vw,110px);background:#292421;color:#f5eee6}
.recovery-heading{display:grid;grid-template-columns:minmax(150px,.55fr) minmax(0,1.45fr);column-gap:48px;align-items:start}
.recovery-heading .eyebrow{grid-column:1}
.recovery-heading h2{grid-column:2;grid-row:1/3;margin:0;font-size:clamp(42px,5vw,74px);line-height:1.02}
.recovery-heading>p:last-child{grid-column:2;max-width:780px;margin:30px 0 0;color:#d4c8bf;font-size:18px;line-height:1.65}
.recovery-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:62px;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}
.recovery-points article{padding:34px 30px 40px;border-right:1px solid rgba(255,255,255,.18)}
.recovery-points article:first-child{padding-left:0}
.recovery-points article:last-child{padding-right:0;border-right:0}
.recovery-points span{color:#97c7c6;font-size:13px;letter-spacing:.08em}
.recovery-points h3{margin:22px 0 0;font-size:clamp(24px,2.2vw,32px);line-height:1.15}
.recovery-points p{margin:17px 0 0;color:#d4c8bf;line-height:1.65}
.recovery-action{display:flex;align-items:center;justify-content:space-between;gap:38px;margin-top:34px}
.recovery-action p{max-width:680px;margin:0;color:#bfb3aa;font-size:14px;line-height:1.55}
.recovery-action .button{white-space:nowrap}

@media(max-width:760px){
  .education-carousel .education-document,.education-carousel .education-document:first-child{flex-basis:100%}
  .education-track{grid-template-columns:32px minmax(0,1fr) 32px;gap:6px}
  .education-track>button{width:32px;height:32px;font-size:18px}
  .education-carousel .education-document .document-image img{padding:5px}
  .presentation-preview .presentation-viewer{padding:7px}
  .musthave-note img{width:125%;margin-left:-20%}
  .consultation-pricing-heading{grid-template-columns:1fr;gap:4px}
  .pricing-table th,.pricing-table td{padding:16px 8px}
  .pricing-table th:first-child{width:43%}
  .pricing-table tbody th{font-size:15px}
  .pricing-table tbody td{font-size:14px;white-space:normal}
  .package-price s{font-size:12px}
  .package-price strong{font-size:15px}
  .package-price small{font-size:11px}
  .reviews-panel{grid-template-columns:1fr;gap:28px;margin-top:30px;padding:28px 22px}
  .reviews-panel .button{justify-self:start}
  .collaboration{padding:76px 22px}
  .collaboration-grid{grid-template-columns:1fr;margin-top:40px}
  .collaboration-grid article,.collaboration-grid article:first-child,.collaboration-grid article:last-child{padding:28px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .collaboration-grid article:last-child{border-bottom:0}
  .collaboration-footer{align-items:stretch;flex-direction:column;gap:26px}
  .collaboration-footer .button{align-self:flex-start}
  .inclusive-strip{grid-template-columns:1fr;gap:10px;padding:24px 22px}
  .recovery-focus{padding:76px 22px}
  .recovery-heading{grid-template-columns:1fr;gap:18px}
  .recovery-heading .eyebrow,.recovery-heading h2,.recovery-heading>p:last-child{grid-column:1;grid-row:auto}
  .recovery-heading>p:last-child{margin-top:4px}
  .recovery-points{grid-template-columns:1fr;margin-top:42px}
  .recovery-points article,.recovery-points article:first-child,.recovery-points article:last-child{padding:28px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .recovery-points article:last-child{border-bottom:0}
  .recovery-action{align-items:stretch;flex-direction:column;gap:24px}
  .recovery-action .button{align-self:flex-start}
}

/* Give the mobile reading sections room and keep text clear against the dark palette. */
@media(max-width:760px){
  body .musthave-note{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:0;padding:52px 24px 64px;text-align:center;background:radial-gradient(circle at 40% 20%,rgba(125,184,186,.22),transparent 50%),linear-gradient(145deg,#3a4949,#453936 80%)}
  body .musthave-note img{display:block;width:min(66vw,260px);max-width:100%;height:auto;margin:0;flex:none}
  body .musthave-note>div{width:100%;max-width:340px}
  body .musthave-note span{font-size:clamp(36px,10vw,48px);line-height:1.05;color:#f2f8f5}
  body .musthave-note p{max-width:30ch;margin:16px auto 0;color:#f2e9e0;font-size:16px;line-height:1.55}
  body .approach,body .recovery-focus,body .collaboration{background:#3d3532;color:#fff9f2}
  body .final-cta{background:#3d3532;color:#fff9f2}
  body .approach-copy p,body .approach .principles span,body .recovery-heading>p:last-child,body .recovery-points p,body .recovery-action p,body .collaboration-heading>p:not(.eyebrow),body .collaboration-grid p,body .collaboration-footer p,body .final-cta p:not(.eyebrow){color:#eee4db}
  body .approach .eyebrow,body .recovery-focus .eyebrow,body .collaboration .eyebrow,body .final-cta .eyebrow{color:#f0ce9d}
}

.social-links .b17-profile,.social-links .max-profile{background:var(--paper);transition:background .25s ease;transform:none;box-shadow:none}
.social-links .b17-profile:hover,.social-links .b17-profile:focus-visible,.social-links .max-profile:hover,.social-links .max-profile:focus-visible{background:#e3cfad;transform:none;box-shadow:none}
.final-cta{background:radial-gradient(circle at 75% 25%,rgba(101,185,189,.18),transparent 40%),#3c2e29;color:#fff9f2}
.final-cta-accent{background:linear-gradient(160deg,#73aeb6,#366a74 65%,#315b64)}
.final-cta .eyebrow{color:#d9c39e}
.final-cta p:not(.eyebrow){color:#eee4db}
@media(max-width:760px){body .final-cta{background:radial-gradient(circle at 85% 20%,rgba(101,185,189,.16),transparent 50%),#3d302b}}
.app-audience{display:inline-block;margin-bottom:12px;padding:5px 9px;border:1px solid rgba(83,115,117,.35);color:#426c70;font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.app-list article{align-items:start}
.app-list .app-status{align-self:start;padding-top:8px}

/* Keep the original sculpture visible beside the editorial text. */
body .musthave-note{display:flex;justify-content:flex-end;align-items:center}
body .musthave-note img{position:absolute;left:-15%;bottom:-12%;width:min(84%,520px);height:auto;max-width:none;margin:0;object-fit:contain;z-index:1}
body .musthave-note>div{width:55%;margin-left:auto}
@media(max-width:760px){
  body .musthave-note{justify-content:center}
  body .musthave-note img{position:static;width:min(66vw,260px);max-width:100%;height:auto;margin:0}
  body .musthave-note>div{width:100%;margin:0 auto}
}

.app-vote{display:flex;align-items:center;gap:16px;margin-top:22px;flex-wrap:wrap}
.app-vote button{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border:1px solid #ad9270;border-radius:999px;background:transparent;color:#49382e;font-size:15px;line-height:1.3;cursor:pointer;transition:background .2s ease,color .2s ease}
.app-vote button:hover:not(:disabled),.app-vote button[aria-pressed="true"]{background:#e3cfad;color:#302621}
.app-vote button:focus-visible{outline:3px solid #63aeb2;outline-offset:3px}
.app-vote button:disabled{opacity:.6;cursor:wait}
.app-vote-heart{font-size:24px;line-height:1;color:#8f5060}
.app-vote-count{font-size:20px;font-variant-numeric:tabular-nums;color:#49382e}
.app-vote-message{min-height:1.5em;color:#594d44;font-size:14px;margin-top:20px}

/* Thoughts follow the chocolate and blue brand palette. */
.quote-gallery{background:radial-gradient(circle at 82% 28%,rgba(101,185,189,.18),transparent 40%),linear-gradient(145deg,#3a2d27,#314649);color:#fff9f2}
.quote-frames blockquote{background:rgba(22,45,48,.62);border-color:rgba(168,208,211,.48);color:#fff9f2}
.quote-frames cite{color:#d8c7ae}
.quote-navigation button:hover{background:rgba(101,185,189,.28)}

/* One clear action, then an independent choice of direction. */
.welcome-profile-copy .welcome-actions{margin:30px 0 42px}
.welcome-profile-copy .direction-intro{margin:0 0 12px;font-size:16px;color:#725e4d}
.welcome-profile-copy .direction-links{margin-top:10px}

/* The sculpture and the message occupy separate columns. */
body .musthave-note{display:grid;grid-template-columns:minmax(0,58%) minmax(0,42%);gap:0;align-items:end;padding:36px 42px 0 0}
body .musthave-note img{position:static;grid-column:1;width:100%;height:auto;max-width:100%;max-height:780px;margin:0;object-fit:contain;object-position:left bottom;align-self:end}
body .musthave-note>div{grid-column:2;width:auto;margin:0;padding:24px 0;align-self:center}
body .musthave-note span{font-size:clamp(30px,3vw,56px)}
body .musthave-note p{font-size:17px;line-height:1.5}
@media(max-width:760px){
  body .musthave-note{display:flex;flex-direction:column;gap:18px;padding:48px 24px 58px}
  body .musthave-note img{width:min(66vw,260px);max-height:none;align-self:center}
  body .musthave-note>div{width:100%;max-width:340px;padding:0;text-align:center;align-self:center}
  body .musthave-note span{font-size:clamp(36px,10vw,48px)}
}
/* A constellation of glass cells gives the closing invitation its own visual. */
.final-cta{grid-template-columns:minmax(190px,32%) 1fr;overflow:hidden}
.final-cta-accent{min-height:530px;background:radial-gradient(circle at 20% 35%,rgba(177,218,220,.6),transparent 38%),linear-gradient(145deg,#437c83,#244950 72%);isolation:isolate}
.final-cta-accent:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.13) 49%,transparent 68%);transform:translateX(-120%);animation:glass-sweep 11s ease-in-out infinite}
.final-cta-accent:after,.final-cta-accent span{position:absolute;display:block;width:clamp(110px,13vw,215px);aspect-ratio:1;clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);background:linear-gradient(130deg,rgba(229,250,249,.48),rgba(157,200,201,.08) 47%,rgba(52,104,108,.4));box-shadow:inset 0 0 0 2px rgba(230,248,248,.24);animation:cell-breathe 12s ease-in-out infinite}
.final-cta-accent:after{content:"";left:12%;top:8%}
.final-cta-accent span:nth-child(1){left:43%;top:15%;animation-delay:-2s}.final-cta-accent span:nth-child(2){left:-12%;top:33%;animation-delay:-4s}.final-cta-accent span:nth-child(3){left:26%;top:42%;animation-delay:-6s}.final-cta-accent span:nth-child(4){left:59%;top:58%;animation-delay:-8s}.final-cta-accent span:nth-child(5){left:1%;top:67%;animation-delay:-10s}
.final-cta>div:last-child{position:relative;z-index:1;padding:clamp(80px,9vw,130px) clamp(30px,7vw,120px)}
.final-cta h2{max-width:950px}.final-cta .shimmer-text,.collaboration .shimmer-text,.quote-gallery .shimmer-text{background-image:linear-gradient(100deg,#d4eceb,#f5dfb7,#8fc8ce,#f5dfb7,#d4eceb)}
/* A few editorial highlights, with legible static colour when motion is reduced. */
.shimmer-text{background-size:230% 100%;animation-duration:11s}
.price-cart,.format-cart-action button,.program-cart{display:inline-flex;border:1px solid #816a4c;background:transparent;color:#42342b;padding:9px 13px;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}
.price-cart{display:block;margin-top:9px}.price-cart:hover,.price-cart[aria-pressed="true"],.format-cart-action button:hover,.format-cart-action button[aria-pressed="true"]{background:#d8e8e7;border-color:#609ba0}
.format-cart-action{display:flex;align-items:center;gap:20px;margin:14px 0 0}.format-cart-action a{border-bottom:1px solid #8b6838;font-size:14px}
.program-cart{margin-top:20px;color:#fff5e9;border-color:#b6c6c6}.program-cart:hover,.program-cart[aria-pressed="true"]{background:#57959b;color:#fff}
.package-note a{text-decoration:underline;text-underline-offset:4px}
@keyframes glass-sweep{0%,22%,100%{transform:translateX(-120%)}45%,65%{transform:translateX(120%)}}
@keyframes cell-breathe{0%,100%{opacity:.72;transform:translateY(0)}50%{opacity:1;transform:translateY(-12px)}}
@media(max-width:760px){.final-cta{grid-template-columns:1fr}.final-cta-accent{min-height:145px}.final-cta-accent:after,.final-cta-accent span{width:110px}.final-cta-accent:after{left:12%;top:-36px}.final-cta-accent span:nth-child(1){left:40%;top:12px}.final-cta-accent span:nth-child(2){left:72%;top:-42px}.final-cta-accent span:nth-child(n+3){display:none}.final-cta>div:last-child{padding:62px 24px 78px}.final-cta h2{font-size:clamp(38px,10vw,56px)}.pricing-table{table-layout:auto}.pricing-table td,.pricing-table th{min-width:0}.price-cart{font-size:12px;white-space:normal}.format-cart-action{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.shimmer-text,.final-cta-accent:before,.final-cta-accent:after,.final-cta-accent span{animation:none}}

/* The apps read as a compact future-products catalogue. */
.client-apps .app-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.client-apps .app-list article{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-width:0;padding:28px;background:#f3eee7;border:1px solid rgba(64,55,47,.18);transition:background .25s,border-color .25s}
.client-apps .app-list article:hover{background:#e8f0ef;border-color:#8fb9bb}
.client-apps .app-list article>div{flex:1;min-width:0}
.client-apps .app-list h3{font-size:clamp(26px,2.5vw,36px)}
.client-apps .app-list .app-status{padding:9px 13px;border:1px solid #b8c9c9;color:#43686d;align-self:start;font-size:13px}
.client-apps .app-number{width:48px;height:48px;min-height:48px;color:#46767a;border-color:#8dbbbd}
.client-apps .app-media img{max-height:260px;object-fit:contain;object-position:left top}
@media(max-width:760px){.client-apps .app-list{grid-template-columns:1fr}.client-apps .app-list article{padding:24px}.client-apps .app-list .app-status{grid-column:auto}}

.pricing-swipe-hint{display:none}
@media(max-width:760px){.pricing-swipe-hint{display:block;margin:0 0 10px;color:#5f5750;font-size:13px;line-height:1.4}.pricing-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.pricing-table{min-width:560px}.pricing-table th:first-child{width:40%}.pricing-table-wrap:focus-visible{outline:3px solid #5ca2aa;outline-offset:3px}}
