/* The chosen portfolio view: a vertically scrolling pinboard. */
.screen-gallery[data-layout="pinterest"] .gallery-tabs{margin-bottom:15px}
.screen-gallery[data-layout="pinterest"] .gallery-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:14px;overflow-x:hidden;overflow-y:auto}
.screen-gallery[data-layout="pinterest"] .work-card{display:flex;width:100%;margin:0;background:#f3e8f0;border:1px solid #ecdce7;border-radius:14px}
.screen-gallery[data-layout="pinterest"] .work-card[hidden]{display:none!important}
.screen-gallery[data-layout="pinterest"] .work-meta{align-items:center}
@media(max-width:1150px){.screen-gallery[data-layout="pinterest"] .gallery-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.screen-gallery[data-layout="pinterest"] .gallery-track{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Artwork remains on a plain surface; only the information has a card. */
#lightbox[open]{width:min(1150px,94vw);max-width:94vw;max-height:90vh;grid-template-columns:minmax(0,1fr) 425px;gap:16px;padding:0;background:transparent;border-radius:0;box-shadow:none;overflow:visible}
#lightbox .lightbox-art{position:relative;min-width:0;min-height:0;background:transparent;padding:0;display:grid;place-items:center;border-radius:20px;overflow:hidden}
#lightbox .lightbox-art img,#lightbox .lightbox-art video{display:block;max-width:100%;max-height:88vh;width:auto;height:auto;object-fit:contain;border-radius:20px}
#lightbox [hidden],.mobile-menu[hidden]{display:none!important}
#lightbox .lightbox-art video{background:#18121e}
#lightbox #speedpaint-toggle{position:absolute;right:16px;bottom:16px;z-index:2;border:1px solid #fff9;border-radius:999px;background:rgba(45,37,48,.92);color:#fff;padding:11px 16px;font-size:12px;font-weight:800;box-shadow:0 5px 20px #21132555}
#lightbox #speedpaint-toggle:hover{background:#96507b}
#lightbox .lightbox-info{background:#fbf6f9;border:1px solid #fff;border-radius:20px;padding:46px 27px 27px;box-shadow:0 20px 65px #180e2160;min-height:min(75vh,670px)}
#lightbox .lightbox-info .eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase}
#lightbox .lightbox-info h3{font-size:clamp(28px,2.8vw,43px);margin:25px 0 17px;overflow-wrap:anywhere}
#lightbox .lightbox-info p{font-size:14px;line-height:1.6;color:#6b5b68;margin:22px 0}
#lightbox .lightbox-series{display:flex;flex-direction:column;gap:5px;padding:13px 0;border-top:1px solid #e9dce6;border-bottom:1px solid #e9dce6}
#lightbox .lightbox-series span{color:#a76189;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
#lightbox .lightbox-series strong{font-size:15px}
#lightbox .lightbox-info>span:last-of-type{margin-top:auto}
#lightbox .lightbox-info .pill{width:100%;margin-top:18px}
#lightbox #close-lightbox{top:10px;right:10px}

.mobile-menu-toggle,.mobile-menu,.mobile-chapters{display:none}
@media(max-width:650px){
  .orbit-link[data-route="about"],.orbit-link[data-route="pricing"],.orbit-link[data-route="info"]{display:none}
  .mobile-menu-toggle{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;border:0;background:none;color:#726775;font-size:9px;font-weight:700}
  .mobile-menu-toggle .orbit-icon{width:32px;height:32px;font-size:15px}
  .mobile-menu-toggle[aria-expanded="true"] .orbit-icon{background:#2d2530;color:#fff}
  .mobile-menu{display:flex;position:absolute;left:12px;right:12px;bottom:77px;z-index:9;flex-direction:column;gap:4px;padding:20px;border-radius:22px;background:#fbf5f9;box-shadow:0 20px 55px #2c1b3090;border:1px solid #e9d6e3}
  .mobile-menu-head{display:flex;align-items:center;justify-content:space-between;font-size:18px}
  .mobile-menu-head button{border:0;background:#eadce7;border-radius:50%;width:34px;height:34px;font-size:23px}
  .mobile-menu p{margin:5px 0;color:#a76189;text-transform:uppercase;font-size:10px;letter-spacing:.12em;font-weight:800}
  .mobile-menu a{display:block;border-top:1px solid #ecdfe8;padding:10px 3px;font-size:17px;font-weight:800}
  .screen-home{display:block;position:absolute;padding:20px 18px;background:radial-gradient(circle at 75% 38%,#f1add0b8,transparent 33%),radial-gradient(circle at 14% 75%,#f6d8af82,transparent 34%)}
  .screen-home .home-copy{position:static;padding:0;z-index:auto}
  .screen-home .home-copy h1{font-size:clamp(41px,11vw,54px);margin:9px 0 8px}
  .screen-home .home-copy p{font-size:12px;line-height:1.45;max-width:210px;margin:0}
  .screen-home .home-art{position:absolute;order:unset;left:0;right:0;top:28%;width:100%;height:54%;min-height:0}
  .screen-home .home-art>img{height:100%;width:auto;max-width:81%;filter:drop-shadow(5px 11px 20px #69406133)}
  .screen-home .home-links{position:absolute;z-index:5;left:18px;bottom:17px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0}
  .screen-home .home-links .pill{padding:11px 15px;font-size:11px}
  .mobile-chapters{position:absolute;z-index:5;right:8px;top:32%;display:flex;flex-direction:column;align-items:center;gap:7px;color:#65475e}
  .mobile-chapters>span{width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 11px #5e42604d;display:grid;place-items:center;font-size:10px;font-weight:800}
  .mobile-chapters>a{display:block;width:4px;height:17px;border-radius:4px;background:#bda9bc}
  .mobile-chapters>a.active{height:32px;background:#a95884}
  .mobile-chapters small{writing-mode:vertical-rl;font-size:8px;font-weight:800;letter-spacing:.1em;margin-top:5px}
  .screen-gallery[data-layout="pinterest"] .gallery-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  #lightbox[open]{display:flex;flex-direction:column;gap:9px;width:95vw;max-width:95vw;max-height:92vh}
  #lightbox .lightbox-art{max-height:51vh}
  #lightbox .lightbox-art img,#lightbox .lightbox-art video{max-height:51vh}
  #lightbox #speedpaint-toggle{right:9px;bottom:9px;padding:9px 12px;font-size:10px}
  #lightbox .lightbox-info{min-height:0;max-height:36vh;overflow-y:auto;padding:21px 20px 18px}
  #lightbox .lightbox-info h3{font-size:27px;margin:9px 0}
  #lightbox .lightbox-info p{font-size:12px;margin:12px 0}
  #lightbox .lightbox-info .pill{margin-top:12px}
}

/* Gallery detail: clearer hierarchy and quick browsing without closing the artwork. */
#lightbox .lightbox-info{background:linear-gradient(155deg,#fffcfe 0%,#f9f0f7 48%,#ead7e9 100%);padding:26px 27px 27px;overflow:hidden}
#lightbox .lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
#lightbox .lightbox-header .eyebrow{color:#a0557f}
#lightbox .lightbox-stamp{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:50%;background:#e9c5dc;color:#a45080;font-size:25px}
#lightbox .lightbox-body{min-height:0;overflow-y:auto}
#lightbox .lightbox-body h3{font-size:clamp(33px,3vw,46px);line-height:1.04;margin:34px 0 25px;letter-spacing:-.055em}
#lightbox .lightbox-description{margin-top:23px;padding:19px 20px;border:1px solid #ead8e5;border-radius:16px;background:rgba(255,255,255,.76)}
#lightbox .lightbox-description>span{font-size:10px;letter-spacing:.13em;font-weight:800;color:#a35b83}
#lightbox .lightbox-description p{font-size:14px;line-height:1.58;margin:10px 0 0;color:#5c4d5a}
#lightbox .lightbox-footer{margin-top:auto;padding-top:22px}
#lightbox .lightbox-navigation{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dcc5d5;padding-top:14px}
#lightbox .lightbox-navigation>span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#8b6980}
#lightbox .lightbox-navigation>div{display:flex;gap:7px}
#lightbox .lightbox-navigation button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d9bfd0;border-radius:50%;background:#fff;color:#473546;font-size:16px}
#lightbox .lightbox-navigation button{position:static;padding:0;cursor:pointer}
#lightbox .lightbox-navigation button:hover{background:#302633;color:#fff}
#lightbox .lightbox-footer .pill{margin-top:18px}
.social-hub{margin-top:25px;max-width:490px}
.social-hub-label{display:block;margin-bottom:9px;color:#875875;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.social-hub-links{display:flex;flex-wrap:wrap;gap:8px}
.social-hub-links a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:5px 11px 5px 5px;border:1px solid #dfc7d6;border-radius:999px;background:rgba(255,255,255,.84);color:#382c37;text-decoration:none;font-size:12px;font-weight:800;box-shadow:0 8px 22px #593b5012;transition:transform .2s,background .2s}
.social-hub-links a:hover{transform:translateY(-3px);background:#fff}
.social-hub-links b{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#d99ebe;color:#fff;font-size:10px}
.social-hub-links i{font-style:normal;color:#a45784}
.social-hub-pending{display:inline-block;padding:11px 14px;border:1px dashed #d8b9cc;border-radius:15px;background:#fff9;color:#896b80;font-size:11px}
.screen-about .social-hub{margin-top:21px}
.screen-about .about-copy{max-height:calc(100vh - 105px);overflow-y:auto;scrollbar-width:thin}
@media(max-width:650px){.screen-home .social-hub{margin-top:10px}.screen-home .social-hub-label{font-size:8px;margin-bottom:5px}.social-hub-links a{min-height:36px;font-size:10px}.social-hub-links b{width:27px;height:27px}.social-hub-pending{padding:7px 10px;font-size:9px}.screen-about .social-hub{margin-top:14px}}
@media(max-width:650px){
  #lightbox .lightbox-art{max-height:47vh}
  #lightbox .lightbox-art img,#lightbox .lightbox-art video{max-height:47vh}
  #lightbox .lightbox-info{max-height:42vh;padding:15px 18px 17px}
  #lightbox .lightbox-stamp{width:30px;height:30px;font-size:18px}
  #lightbox .lightbox-body h3{font-size:25px;margin:8px 0 11px}
  #lightbox .lightbox-description{margin-top:9px;padding:10px 12px}
  #lightbox .lightbox-description p{font-size:11px;margin:5px 0 0}
  #lightbox .lightbox-footer{padding-top:7px}
  #lightbox .lightbox-navigation{padding-top:7px}
  #lightbox .lightbox-navigation button{width:28px;height:28px}
  #lightbox .lightbox-footer .pill{margin-top:7px}
}

/* Compact portfolio header; the pinboard fills the remaining frame. */
.screen-gallery[data-layout="pinterest"]{padding-bottom:0}
.screen-gallery .gallery-head{flex:none;padding:17px 22px 12px;margin-bottom:10px;border:1px solid #fff9;border-radius:22px;background:rgba(249,242,247,.89);backdrop-filter:blur(14px)}
.screen-gallery .gallery-head .screen-heading{align-items:center;margin:0 0 9px}
.screen-gallery .gallery-head .screen-heading h2{font-size:clamp(35px,3.6vw,55px);margin:4px 0 0;line-height:1}
.screen-gallery .gallery-head .screen-heading>p{margin:0;font-size:12px;line-height:1.35}
.screen-gallery .gallery-head .gallery-tabs{margin:0;gap:7px}
.screen-gallery .gallery-head .gallery-tabs button{padding:7px 13px}
.screen-gallery .gallery-viewport{min-height:0;flex:1;margin-bottom:0}
.screen-gallery[data-layout="pinterest"] .gallery-track{height:100%;padding:0 5px 0 0}

.top-action{font-family:inherit;cursor:pointer;background:transparent;color:inherit}
.home-art-controls{position:absolute;z-index:4;left:50%;bottom:24px;transform:translateX(-50%);display:flex;align-items:center;gap:11px;padding:6px 8px;border:1px solid #fff8;border-radius:999px;background:#fffdf3dc;box-shadow:0 8px 24px #402d3d2c;backdrop-filter:blur(12px)}
.home-art-controls button{width:30px;height:30px;border:0;border-radius:50%;background:#2f2632;color:#fff;font-size:17px;cursor:pointer}
.home-art-controls span{font-size:10px;font-weight:800;letter-spacing:.12em;white-space:nowrap}
@media(min-width:651px){.home-art-controls{bottom:5%}}

#social-dialog[open]{position:fixed;width:min(470px,92vw);max-width:92vw;max-height:85vh;padding:35px;border:1px solid #fff;border-radius:24px;background:linear-gradient(145deg,#fffafd,#f0dfea);box-shadow:0 28px 80px #21112470;overflow-y:auto}
#social-dialog::backdrop{background:#211626b9;backdrop-filter:blur(5px)}
#social-dialog>button{position:absolute;top:14px;right:14px;width:38px;height:38px;border:0;border-radius:50%;background:#fff;font-size:26px;cursor:pointer}
#social-dialog h2{font-size:clamp(36px,6vw,56px);line-height:1.05;letter-spacing:-.05em;margin:17px 0 10px}
#social-dialog h2 em{color:#b65b8c}
#social-dialog p{font-size:14px;line-height:1.5;color:#756675}
#social-dialog .social-hub{margin:28px 0 24px}
#social-dialog .social-hub-links{flex-direction:column;align-items:stretch}
#social-dialog .social-hub-links a{border-radius:15px;padding:8px;min-height:51px}
#social-dialog .social-hub-links i{margin-left:auto;margin-right:8px}
#social-dialog .pill{width:100%;justify-content:center}

@media(max-width:650px){
  .screen-gallery[data-layout="pinterest"]{padding-bottom:0}
  .screen-gallery .gallery-head{padding:12px 12px 10px;margin-bottom:8px}
  .screen-gallery .gallery-head .screen-heading{margin-bottom:8px}
  .screen-gallery .gallery-head .screen-heading h2{font-size:35px}
  .screen-gallery .gallery-head .screen-heading>p{font-size:10px;margin:5px 0 0}
  .screen-gallery .gallery-head .gallery-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .screen-gallery .gallery-head .gallery-tabs button{flex:none;padding:6px 8px;font-size:9px}
  .screen-home .home-links{right:18px;bottom:18px;flex-direction:row;align-items:stretch;gap:7px}
  .screen-home .home-links .pill{flex:1;justify-content:space-between;min-width:0;padding:10px 9px;font-size:10px;line-height:1.15}
  .screen-home .home-links .pill span{flex:none}
  .screen-home .home-art-controls{bottom:8px;padding:4px 6px;gap:7px}
  .screen-home .home-art-controls button{width:27px;height:27px;font-size:15px}
  #social-dialog[open]{padding:29px 22px}
}

/* Artwork detail refinements. */
#lightbox[open]{gap:8px;width:min(1200px,97vw);max-width:97vw}
#lightbox .lightbox-art{width:fit-content;max-width:100%;justify-self:center;padding:0}
#lightbox #close-lightbox{position:absolute;z-index:5;top:7px;right:7px;width:36px;height:36px;border:0;border-radius:0;background:transparent;color:#211a23;text-shadow:0 1px 8px #fff;font-size:31px;line-height:1;box-shadow:none}
#lightbox #close-lightbox:hover{color:#ae4f7f;transform:scale(1.08)}
#lightbox .lightbox-body h3{margin-bottom:10px}
#lightbox .lightbox-description{margin:0;padding:0;border:0;border-radius:0;background:transparent}
#lightbox .lightbox-description p{margin:0;color:#5c4d5a}
#lightbox .lightbox-footer{width:100%;display:flex;flex-direction:column;align-items:stretch}
#lightbox .lightbox-navigation{width:100%}
#lightbox .lightbox-footer .pill{width:max-content;max-width:100%;align-self:flex-end;margin-left:auto}
@media(max-width:650px){
  #lightbox[open]{width:98vw;max-width:98vw;gap:8px}
  #lightbox .lightbox-art{max-height:55vh;align-self:center;width:auto;max-width:100%}
  #lightbox .lightbox-art img,#lightbox .lightbox-art video{max-height:55vh}
  #lightbox .lightbox-info{width:100%;max-height:35vh;padding:18px 20px 16px}
  #lightbox .lightbox-description{margin-top:0;padding:0}
  #lightbox .lightbox-description p{font-size:12px;line-height:1.45;margin:0}
  #lightbox .lightbox-body h3{margin:8px 0 7px}
  #lightbox .lightbox-footer{padding-top:9px}
  #lightbox .lightbox-footer .pill{margin-top:8px}
}

/* Commission form as a short sequence of choices. */
.form-scroll form#calculator{min-height:min(65vh,620px);display:flex;flex-direction:column}
.wizard-progress{display:flex;align-items:center;gap:14px;margin-bottom:31px;color:#a25c83;font-size:11px;font-weight:800;letter-spacing:.13em}
.wizard-bars{flex:1;display:flex;gap:6px}
.wizard-bars span{height:5px;flex:1;border-radius:5px;background:#eadbe4}
.wizard-bars span.active{background:#b96898}
.wizard-step{flex:1;min-height:0;animation:wizard-enter .25s ease both}
.wizard-step[hidden],.wizard-controls button[hidden]{display:none!important}
.wizard-step fieldset{margin:0}
.wizard-step legend{font-size:clamp(22px,2.5vw,32px);letter-spacing:-.04em;margin:0 0 24px}
.wizard-step .choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px}
.wizard-step .choices label{display:block}
.wizard-step .choices span{min-height:106px;display:flex;align-items:flex-end;padding:18px;border-radius:16px;font-size:17px;font-weight:800;box-shadow:0 10px 28px #4d2a4210}
.wizard-step .extras{gap:10px}
.wizard-step .extras label{min-height:62px;padding:13px;border-radius:13px;font-size:12px}
.wizard-controls{display:flex;justify-content:space-between;gap:12px;margin-top:24px;border-top:1px solid #eadbe4;padding-top:20px}
.wizard-controls button{border:1px solid #d7bbcc;border-radius:999px;background:#fff;color:#382a36;padding:12px 19px;font-size:12px;font-weight:800}
.wizard-controls #wizard-next{margin-left:auto;background:#2d2530;color:#fff;border-color:#2d2530}
.wizard-controls button:hover{transform:translateY(-2px)}
@keyframes wizard-enter{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:650px){.form-scroll form#calculator{min-height:0}.wizard-progress{margin-bottom:20px}.wizard-step legend{font-size:23px;margin-bottom:14px}.wizard-step .choices{grid-template-columns:1fr 1fr}.wizard-step .choices span{min-height:80px;font-size:13px;padding:12px}.wizard-step .extras{grid-template-columns:1fr}.wizard-step .extras label{min-height:43px;padding:9px}.wizard-controls{margin-top:18px;padding-top:12px}}
