/* Consulting: a coastal welcome and a working project-notes form. */
html {scroll-padding-top:0}
body.consulting-atelier {
  --consult-page: var(--si-paper);
  --consult-surface: #fffdf8;
  --consult-tint: #f1e9dc;
  --consult-ink: var(--si-ink);
  --consult-muted: #6f5b4c;
  --consult-action: #633c1f;
  --consult-accent: #a36538;
  --consult-line: #d4c6b5;
  --consult-control-line: #9b8875;
  --consult-serif: var(--si-serif);
  --consult-ease: cubic-bezier(.16,1,.3,1);
  font-size: 14px;
  line-height: 1.8;
}
html[data-si-mood="night"] body.consulting-atelier {
  --consult-page: #30221b;
  --consult-surface: #3b2a21;
  --consult-tint: #493226;
  --consult-ink: #fff3e2;
  --consult-muted: #dfc8b1;
  --consult-action: #65432e;
  --consult-accent: #efbf91;
  --consult-line: #9b755b;
  --consult-control-line: #9b755b;
}
body.consulting-atelier .si-header {min-height:94px; padding:18px 4.5vw; position:sticky; top:0}
body.consulting-atelier .si-brand span {font-size:24px; letter-spacing:.22em}
body.consulting-atelier .si-nav {gap:25px}
body.consulting-atelier .si-button {min-height:52px; font-size:11px; letter-spacing:.065em; gap:30px; transition:transform .25s var(--consult-ease),background-color .2s,border-color .2s}
body.consulting-atelier .si-button:hover {transform:translateY(-2px); background:#795033; border-color:#795033}
body.consulting-atelier .si-button:active {transform:translateY(0)}
body.consulting-atelier .si-eyebrow {font-size:10px; letter-spacing:.14em; color:var(--consult-action); margin:0 0 22px}
body.consulting-atelier h2 {font-size:clamp(43px,4.3vw,64px); line-height:1.03; margin-bottom:26px}
body.consulting-atelier h3 {font-weight:400}
body.consulting-atelier em {font-weight:400}
body.consulting-atelier a {text-underline-offset:5px}
body.consulting-atelier :is(a,button,input,select,textarea,summary):focus-visible {outline:2px solid var(--consult-accent); outline-offset:5px}
body.consulting-atelier :is(#book,#consultingForm,#services,#work,#packages,#questions) {scroll-margin-top:120px}
.consult-wrap {width:min(1240px,90vw); margin-inline:auto}
.consult-welcome {display:grid; grid-template-columns:1.05fr 1fr; min-height:620px; margin:28px 28px 0; border:1px solid var(--consult-line)}
.consult-scene {position:relative; min-width:0; overflow:hidden; background:#d7c8b3}
.consult-scene>img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 52%; animation:consult-scene-in 1s var(--consult-ease) both}
.consult-scene .consult-night {display:none}
html[data-si-mood="night"] .consult-scene .consult-day {display:none}
html[data-si-mood="night"] .consult-scene .consult-night {display:block}
.consult-scene-caption {position:absolute; inset:auto 0 0; padding:38px 30px 24px; color:#fff5e7; background:linear-gradient(transparent,rgba(36,25,17,.8)); display:flex; justify-content:space-between; gap:20px; align-items:end; z-index:1}
.consult-scene-caption span:first-child {font-size:9px; letter-spacing:.14em; max-width:120px; line-height:1.7}
.consult-scene-caption span:last-child {font:italic 21px/1.1 var(--consult-serif); max-width:190px; text-align:right}
.consult-welcome-copy {padding:64px clamp(32px,5.2vw,84px) 44px; align-self:center; animation:consult-copy-in .8s var(--consult-ease) both}
body.consulting-atelier .consult-welcome-copy h1 {font-size:clamp(58px,5.8vw,90px); line-height:.98; letter-spacing:-.04em; margin:0 0 26px}
body.consulting-atelier .consult-welcome-copy h1 em {display:block; white-space:nowrap}
.consult-welcome-copy>p:not(.si-eyebrow) {max-width:360px; color:var(--consult-muted); font-size:13px; line-height:1.85; margin-bottom:14px}
.consult-welcome-copy .consult-lede {font-size:15px!important; line-height:1.75!important; color:var(--consult-ink)!important}
.consult-main-action {margin-top:15px}
.consult-first-look {display:flex; align-items:center; gap:20px; margin-top:40px; padding-top:25px; border-top:1px solid var(--consult-line)}
.consult-minute {font:46px/.9 var(--consult-serif); display:flex; align-items:center; gap:8px; color:var(--consult-ink)}
.consult-minute>span {font:9px/1.4 var(--si-sans); letter-spacing:.12em; writing-mode:vertical-rl; transform:rotate(180deg)}
body.consulting-atelier .consult-first-look p {font-size:11px; line-height:1.7; margin:0}
.consult-first-look p>span {color:var(--consult-muted)}
.consult-utility {display:flex; align-items:center; justify-content:space-between; gap:25px; padding:22px 4.5vw 24px; border-bottom:1px solid var(--consult-line)}
body.consulting-atelier .consult-utility>p {font-size:10px; color:var(--consult-muted); margin:0}
.consult-light {display:flex; align-items:center; gap:6px; font-size:10px; white-space:nowrap}
.consult-light>span {color:var(--consult-muted); margin-right:10px}
.consult-light button {padding:8px 16px; min-height:40px; border:1px solid transparent; border-radius:24px; background:transparent; font-size:11px}
.consult-light button[aria-pressed=true] {border-color:var(--consult-line); background:var(--consult-tint); color:var(--consult-ink)}
.consult-request {display:grid; grid-template-columns:.88fr 1.12fr; gap:clamp(45px,7vw,110px); padding-block:100px; align-items:start}
.consult-request-copy {padding-top:24px; max-width:430px}
.consult-request-copy>p:not(.si-eyebrow) {font-size:14px; color:var(--consult-muted); max-width:350px; min-height:76px}
.consult-next {list-style:none; margin:35px 0; padding:0}
.consult-next li {display:flex; gap:22px; padding:19px 0; border-top:1px solid var(--consult-line)}
.consult-next li>span {font-size:10px; color:var(--consult-accent); padding-top:2px}
body.consulting-atelier .consult-next h3 {font:27px/1.1 var(--consult-serif); letter-spacing:-.02em; margin:0 0 8px}
body.consulting-atelier .consult-next p {font-size:12px; line-height:1.8; color:var(--consult-muted); margin:0; max-width:310px}
.consult-direct {margin-top:30px; padding-top:25px; border-top:1px solid var(--consult-line)}
.consult-signature {font:italic 44px/1 var(--consult-serif); color:var(--consult-accent)}
body.consulting-atelier .consult-direct>p {font-size:11px; margin:15px 0 5px; color:var(--consult-muted)}
.consult-direct>div {display:flex; gap:28px}
.consult-direct a {font-size:12px; text-decoration:none; padding-block:8px; min-height:38px}
.consult-direct a span {display:inline-block; margin-left:8px; transition:transform .2s}
.consult-direct a:hover span {transform:translate(2px,-2px)}
body.consulting-atelier .consult-form {padding:40px clamp(24px,3.7vw,56px) 35px; border:1px solid var(--consult-line); border-radius:4px; background:var(--consult-surface); box-shadow:0 16px 45px rgba(69,47,29,.04); min-width:0; margin:0}
.consult-form-heading {padding-bottom:25px; margin-bottom:26px; border-bottom:1px solid var(--consult-line)}
body.consulting-atelier .consult-form-heading .si-eyebrow {margin-bottom:12px; font-size:9px}
body.consulting-atelier .consult-form-heading h3 {font:48px/1 var(--consult-serif); letter-spacing:-.03em; margin:0 0 14px}
body.consulting-atelier .consult-form-heading>p:last-child {font-size:12px; color:var(--consult-muted); max-width:340px; margin:0}
.consult-form .lp-form-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 20px}
.consult-form .lp-full {grid-column:1/-1}
.consult-form .lp-field {display:flex; flex-direction:column; gap:9px; min-width:0; font-size:11px; line-height:1.6; color:var(--consult-ink)}
body.consulting-atelier .consult-form :is(input:not([type=hidden]),select,textarea) {width:100%; max-width:100%; min-width:0; border:1px solid var(--consult-control-line); border-radius:3px; padding:12px 14px; min-height:50px; font:400 14px/1.6 var(--si-sans); background:var(--consult-surface); color:var(--consult-ink); box-shadow:none; transition:border-color .2s,background-color .2s}
body.consulting-atelier .consult-form select {padding-right:28px; white-space:nowrap; text-overflow:ellipsis; font-size:12px}
body.consulting-atelier .consult-form textarea {resize:vertical; min-height:125px}
.consult-form :is(input,textarea)::placeholder {color:var(--consult-muted); opacity:1}
.consult-form :is(input,textarea,select):hover {border-color:var(--consult-accent)}
.consult-field-note {font-size:10px; line-height:1.7; color:var(--consult-muted); padding-top:1px}
body.consulting-atelier .consult-form .lp-details {margin:0; padding:17px 0; border-block:1px solid var(--consult-line)}
.consult-form .lp-details summary {font-size:11px; min-height:26px; align-items:center}
.consult-form .lp-details summary .lp-note {font-size:10px; color:var(--consult-muted); margin-right:auto}
.consult-form .lp-details[open] .lp-form-grid {padding-top:22px}
body.consulting-atelier .consult-form .lp-submit {margin-top:26px; display:flex; width:100%; border-radius:30px; min-height:54px; font-size:11px; justify-content:space-between; padding-inline:24px}
.consult-form .lp-submit:disabled {opacity:.65; cursor:progress; transform:none}
body.consulting-atelier .consult-form .lp-note {font-size:10px; line-height:1.85; color:var(--consult-muted)}
body.consulting-atelier .consult-privacy {margin:19px 0 0}
.consult-form .lp-status {font-size:12px; line-height:1.8; scroll-margin-top:120px}
.consult-form .lp-status:empty {display:none}
.consult-form .lp-status:not(:empty) {padding:16px; margin-top:20px; border:1px solid var(--consult-line); background:var(--consult-tint)}
.consult-form .lp-status[data-state=error] {border-width:2px}
.consult-paths,.consult-scope {padding-block:90px; background:var(--consult-tint); border-block:1px solid var(--consult-line)}
.consult-section-heading {display:flex; justify-content:space-between; gap:70px; align-items:end; margin-bottom:45px}
.consult-section-heading h2 {margin-bottom:0!important}
.consult-section-heading>p {max-width:350px; font-size:13px; color:var(--consult-muted); margin-bottom:5px!important}
.consult-path-list {display:grid; grid-template-columns:1fr 1fr; column-gap:70px}
.consult-path-list>a {display:flex; align-items:center; gap:22px; padding:28px 0; text-decoration:none; border-top:1px solid var(--consult-line); min-width:0}
.consult-path-number {font-size:10px; color:var(--consult-muted); align-self:flex-start; padding-top:5px}
.consult-path-list strong {display:block; font:32px/1.15 var(--consult-serif); font-weight:400; letter-spacing:-.02em}
.consult-path-list small {display:block; color:var(--consult-muted); font-size:11px; margin-top:8px}
.consult-path-arrow {font:28px/1 var(--consult-serif); margin-left:auto; color:var(--consult-accent); transition:transform .25s var(--consult-ease)}
.consult-path-list>a:hover .consult-path-arrow,.consult-path-list>a:focus-visible .consult-path-arrow {transform:translate(4px,-4px)}
.consult-proof {display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; padding-block:90px}
.consult-proof>div>p:not(.si-eyebrow) {max-width:425px; font-size:13px; color:var(--consult-muted)}
.consult-proof>div h2 {font-size:52px!important}
.consult-proof figure>img {width:100%; aspect-ratio:1.4; object-fit:cover; object-position:75% center}
.consult-proof figcaption {font-size:9px; color:var(--consult-muted); margin-top:12px; line-height:1.8}
.consult-price-list {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px}
.consult-price-list>div {border-top:1px solid var(--consult-line); padding-top:25px}
.consult-price-list>div>span {font-size:9px; letter-spacing:.08em; color:var(--consult-muted)}
body.consulting-atelier .consult-price-list h3 {font:34px/1.1 var(--consult-serif); margin:22px 0 18px}
body.consulting-atelier .consult-price {font-size:16px; margin-bottom:14px; color:var(--consult-action)}
.consult-price small {font-size:11px; color:var(--consult-muted)}
.consult-price-list>div>p:not(.consult-price) {font-size:12px; color:var(--consult-muted); max-width:290px}
.consult-price-list a {font-size:11px; display:inline-flex; gap:25px; align-items:center; min-height:44px; text-decoration:none; border-bottom:1px solid var(--consult-line)}
.consult-faq {display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; padding-block:90px}
.consult-faq details {padding:22px 0}
.consult-faq details summary {font-size:13px; align-items:center; min-height:30px}
.consult-faq details>p {color:var(--consult-muted); line-height:1.9; padding-right:30px}
body.consulting-atelier .si-footer {border-top:1px solid var(--consult-line)}
@keyframes consult-copy-in {from {opacity:0; transform:translateY(16px)} to {opacity:1; transform:none}}
@keyframes consult-scene-in {from {opacity:.5; transform:scale(1.025)} to {opacity:1; transform:scale(1)}}
@media(min-width:1700px) {.consult-welcome {min-height:700px; max-width:1660px; margin-inline:auto}}
@media(max-width:1100px) {
  .consult-welcome {min-height:590px; grid-template-columns:1fr 1.05fr; margin:20px 20px 0}
  .consult-welcome-copy {padding:45px 35px}
  body.consulting-atelier .consult-welcome-copy h1 {font-size:clamp(58px,6.7vw,76px)}
  .consult-scene-caption {padding-inline:22px; flex-direction:column; align-items:start; gap:10px}
  .consult-scene-caption span:last-child {text-align:left; max-width:none}
  .consult-request {gap:45px}
  .consult-path-list {column-gap:35px}
  .consult-path-list strong {font-size:28px}
}
@media(max-width:800px) {
  body.consulting-atelier .si-header {min-height:82px; padding:15px 5vw}
  .consult-welcome {grid-template-columns:1fr 1.1fr; min-height:555px; margin:16px 16px 0}
  .consult-welcome-copy {padding:35px 26px}
  body.consulting-atelier .consult-welcome-copy h1 {font-size:58px}
  .consult-welcome-copy .si-eyebrow {font-size:9px; line-height:1.8}
  .consult-main-action {font-size:9px!important; padding:14px 18px!important; gap:15px!important}
  .consult-first-look {gap:14px; margin-top:26px}
  .consult-utility {align-items:start}
  .consult-utility>p {max-width:300px}
  .consult-request {grid-template-columns:1fr; padding-block:65px; gap:32px}
  .consult-request-copy {max-width:none; padding-top:0; display:grid; grid-template-columns:1fr 1fr; column-gap:40px}
  .consult-request-copy>.si-eyebrow,.consult-request-copy>h2,.consult-request-copy>#consulting-service-note,.consult-direct {grid-column:1}
  .consult-request-copy>.consult-next {grid-column:2; grid-row:1/6; margin:0}
  .consult-request-copy>p:not(.si-eyebrow) {min-height:0}
  .consult-direct {margin-top:0; padding-top:20px}
  .consult-form .lp-form-grid {gap:22px}
  .consult-paths,.consult-scope {padding-block:65px}
  .consult-section-heading {gap:35px}
  .consult-section-heading>p {max-width:300px}
  .consult-path-list>a {gap:15px}
  .consult-path-list strong {font-size:27px}
  .consult-proof {gap:40px; padding-block:65px}
  .consult-proof>div h2 {font-size:42px!important}
  .consult-faq {gap:45px; padding-block:65px; grid-template-columns:.8fr 1.2fr}
  .consult-price-list {gap:30px}
  body.consulting-atelier .consult-price-list h3 {font-size:30px}
}
@media(max-width:600px) {
  body.consulting-atelier .si-header .si-brand span {font-size:21px}
  body.consulting-atelier .si-header .si-brand img {width:36px; height:36px}
  .consult-wrap {width:calc(100% - 40px)}
  .consult-welcome {display:flex; flex-direction:column-reverse; margin:0; border:0}
  .consult-welcome-copy {padding:40px 24px 34px; width:100%; align-self:stretch}
  body.consulting-atelier .consult-welcome-copy h1 {font-size:clamp(53px,14.4vw,74px); margin-bottom:23px; line-height:.97}
  body.consulting-atelier .consult-welcome-copy h1 em {white-space:normal}
  body.consulting-atelier .consult-welcome-copy .si-eyebrow {font-size:9px; margin-bottom:22px}
  .consult-welcome-copy>p:not(.si-eyebrow) {font-size:12px; max-width:340px}
  .consult-welcome-copy .consult-lede {font-size:14px!important}
  .consult-main-action {font-size:10px!important; margin-top:12px; min-height:51px!important; padding-inline:20px!important}
  .consult-first-look {margin-top:28px; padding-top:22px; max-width:340px}
  .consult-minute {font-size:40px}
  .consult-scene {height:290px; margin-inline:16px; border-radius:3px; width:calc(100% - 32px)}
  .consult-scene>img {object-position:center 52%}
  .consult-scene-caption {flex-direction:row; align-items:end; padding:32px 18px 20px; gap:15px}
  .consult-scene-caption span:first-child {font-size:8px; max-width:100px}
  .consult-scene-caption span:last-child {font-size:19px; max-width:150px; text-align:right}
  .consult-utility {padding:20px 24px; flex-direction:column; align-items:start; gap:15px}
  body.consulting-atelier .consult-utility>p {font-size:9px; max-width:270px; line-height:1.8}
  .consult-light {width:100%; gap:7px}
  .consult-light>span {margin-right:auto}
  .consult-light button {min-height:42px; padding:8px 18px}
  .consult-request {padding-block:48px; gap:30px}
  .consult-request-copy {display:block; max-width:none; padding:0 4px}
  body.consulting-atelier h2 {font-size:47px; margin-bottom:22px}
  .consult-request-copy>p:not(.si-eyebrow) {font-size:13px; max-width:320px; margin-bottom:0}
  .consult-next {margin-block:24px 10px}
  .consult-next li {padding-block:14px; gap:18px}
  body.consulting-atelier .consult-next h3 {font-size:25px; margin-bottom:6px}
  body.consulting-atelier .consult-next p {font-size:11px}
  .consult-direct {display:grid; grid-template-columns:auto 1fr; column-gap:25px; margin-top:18px; padding-top:20px}
  .consult-signature {grid-row:1/3; align-self:center; font-size:40px}
  body.consulting-atelier .consult-direct>p {margin:0; font-size:10px}
  .consult-direct>div {gap:18px}
  .consult-direct a {font-size:10px}
  .consult-direct a span {margin-left:5px}
  body.consulting-atelier .consult-form {padding:28px 20px 24px; border-radius:3px; scroll-margin-top:98px}
  .consult-form-heading {padding-bottom:22px; margin-bottom:24px}
  body.consulting-atelier .consult-form-heading h3 {font-size:42px}
  body.consulting-atelier .consult-form-heading>p:last-child {font-size:11px}
  .consult-form .lp-form-grid {grid-template-columns:1fr; gap:22px}
  .consult-form .lp-field {font-size:11px}
  body.consulting-atelier .consult-form :is(input:not([type=hidden]),select,textarea) {font-size:16px; min-height:52px; padding:12px}
  body.consulting-atelier .consult-form select {font-size:16px; padding-right:25px}
  .consult-form .lp-full {grid-column:1}
  .consult-field-note {font-size:10px}
  body.consulting-atelier .consult-form .lp-submit {font-size:10px; padding-inline:18px; gap:15px; min-height:54px}
  .consult-paths,.consult-scope {padding-block:48px}
  .consult-section-heading {display:block; margin-bottom:28px}
  .consult-section-heading>p {margin-top:24px; max-width:340px; font-size:12px}
  .consult-path-list {grid-template-columns:1fr}
  .consult-path-list>a {padding-block:24px; gap:15px}
  .consult-path-list strong {font-size:30px}
  .consult-path-list small {font-size:10px; max-width:260px}
  .consult-proof {grid-template-columns:1fr; padding-block:48px; gap:30px}
  .consult-proof>div h2 {font-size:43px!important}
  .consult-proof>div>p:not(.si-eyebrow) {font-size:12px}
  .consult-proof figure>img {aspect-ratio:1.35}
  .consult-price-list {grid-template-columns:1fr; gap:30px}
  body.consulting-atelier .consult-price-list h3 {font-size:33px; margin-top:18px}
  .consult-price-list>div>p:not(.consult-price) {font-size:12px; max-width:none}
  .consult-faq {grid-template-columns:1fr; gap:15px; padding-block:48px}
  .consult-faq details summary {font-size:12px; min-height:36px}
  .consult-faq details>p {font-size:12px}
  body.consulting-atelier .si-footer .si-footer-top {grid-template-columns:1fr 1fr; gap:30px}
  body.consulting-atelier .si-footer .si-footer-top>div {grid-column:1/-1}
  body.consulting-atelier :is(#book,#services,#work,#packages,#questions) {scroll-margin-top:100px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto!important}
  body.consulting-atelier *,body.consulting-atelier *::before,body.consulting-atelier *::after {animation:none!important; transition:none!important}
}
