.survey-body{background:#f6f2e9}.survey-body .topbar{border:0;max-width:1320px;padding:24px 44px}.survey-layout{max-width:1210px;margin:12px auto 0;padding:12px 42px 40px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:62px;align-items:start}.welcome-panel{position:sticky;top:34px;padding-top:35px}.welcome-copy h1{font-size:2.65rem;line-height:1.4;font-weight:700;letter-spacing:-.035em;margin:0 0 22px}.welcome-copy>p{font-size:1rem;color:#526159;line-height:1.95}.welcome-tag{display:inline-flex;font-size:.78rem;padding:6px 12px;background:#ede4cd;border-radius:7px;color:#5b4c2a;margin-top:7px}.welcome-gallery{height:340px;position:relative;margin-top:38px}.welcome-art{position:absolute;margin:0;background:#fff;padding:11px;box-shadow:0 15px 34px rgba(68,53,25,.14);border-radius:5px}.welcome-art img{display:block;width:100%;height:100%;object-fit:cover}.art-front{width:186px;height:267px;left:0;top:10px;transform:rotate(-7deg);z-index:1;padding-bottom:31px}.art-front img{object-fit:contain;background:#e8b14d}.art-front figcaption{font-size:.65rem;text-align:center;padding-top:7px;color:#615840}.art-back{width:175px;height:201px;right:0;top:91px;transform:rotate(9deg)}.welcome-footer{font-size:.77rem;color:#58685d;margin-top:5px}.survey-main{min-width:0}.survey-paper{background:#fffdf8;border-radius:20px;padding:30px 34px 27px;box-shadow:0 14px 45px rgba(58,53,36,.075)}.wizard-step h2{font-size:1.64rem;line-height:1.45;font-weight:650;margin:0 0 9px;letter-spacing:-.025em;outline:none}.step-intro{color:#647064;font-size:.88rem;line-height:1.8;margin:0 0 29px}.survey-body .field{margin-bottom:24px}.survey-body .field label,.survey-body legend{font-size:.94rem;color:#2c3b31;font-weight:550;line-height:1.7}.survey-body input:not([type=checkbox]):not([type=radio]),.survey-body select,.survey-body textarea{font-size:16px;border-color:#d4d9cc;background:#fff;min-height:49px;border-radius:11px}.survey-body .two-columns{grid-template-columns:1.65fr 1fr;gap:15px}.survey-body fieldset{margin:0 0 28px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.survey-body .option{border:1px solid #dfe4d8;border-radius:11px;padding:12px;gap:10px;align-items:center;min-height:51px;background:#fff;font-size:.89rem;transition:border-color .12s,background .12s}.survey-body .option:has(input:checked){border-color:#427154;background:#edf4e8}.survey-body .option span{font-size:.87rem;line-height:1.6}.survey-body input[type=radio],.survey-body input[type=checkbox]{display:inline-block;width:18px;height:18px;min-height:0;padding:0;border:0;margin:0;flex:0 0 18px;accent-color:#2d6a4f}.survey-body .option-list{gap:9px}.gentle-note{display:flex;align-items:center;gap:14px;background:#f2f0e6;padding:17px 19px;border-radius:12px;margin-top:8px}.gentle-note svg{width:27px;height:27px;flex:0 0 auto;color:#997a31}.gentle-note p{font-size:.78rem;color:#5b664f;line-height:1.9;margin:0}.wizard-actions{display:flex;justify-content:space-between;gap:14px;padding-top:23px;margin-top:8px;border-top:1px solid #eee7d8}.wizard-actions .primary{margin-left:auto;flex:1;min-height:52px}.wizard-actions .secondary{min-width:92px}.wizard-actions svg{width:20px;height:20px}.survey-body .primary{background:#2f6248;box-shadow:0 6px 14px rgba(38,83,59,.14)}.survey-body .button{touch-action:manipulation;user-select:none;-webkit-user-select:none}.survey-body .button:active{transform:translateY(1px)}.survey-body .page-footer{padding:25px 0 0;font-size:.75rem;color:#657062}.interest-tags{display:flex;gap:10px;flex-wrap:wrap}.interest-tags .option{min-height:43px;padding:8px 12px;flex:0 1 auto;gap:7px;border-radius:9px}.interest-tags input{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%);overflow:hidden}.interest-tags .option:has(input:focus-visible){outline:3px solid #a66927;outline-offset:3px}.art-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:36px}.art-heading h3{font-size:1.13rem;margin-bottom:9px}.art-heading p{font-size:.84rem;color:#5f6d62;margin:0}.optional-label{font-size:.7rem;background:#eeeadd;color:#655c43;border-radius:5px;padding:3px 7px;white-space:nowrap}.survey-body .art-choices{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc(100% - 28px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b5c2af transparent;margin:0 -2px 22px;padding:0 2px 13px}.survey-body .art-choice{scroll-snap-align:start;scroll-snap-stop:always;border:1px solid #e2dfd3;background:#fff;padding-bottom:16px;border-radius:14px;min-width:0}.survey-body .art-choice:has(input:checked){border-color:#427154;background:#edf4e8}.survey-body .art-preview{background:#f7f6ef;border-radius:13px 13px 0 0}.survey-body .art-preview img{height:290px;object-fit:contain;width:100%;background:#f9f8f3}.survey-body .art-choice-line{margin:0;padding:12px 15px 0;display:flex;gap:11px;align-items:center;min-height:46px;cursor:pointer}.art-choice-line span{font-size:.93rem;font-weight:550}.survey-body .art-choice small{margin:5px 15px 0 44px;font-size:.74rem}.survey-body .no-favorite{margin-bottom:22px}.priority-options .option{background:#fbf6e8}.priority-options .option:has(input:checked){background:#f7e9bf;border-color:#a27b2f}.optional-details{border-top:1px solid #e6e5db;padding:17px 0 0;margin:25px 0 20px}.optional-details summary{display:flex;justify-content:space-between;align-items:center;font-size:.86rem;color:#365940;cursor:pointer;list-style:none;min-height:34px;gap:12px}.optional-details summary:after{content:'+';font-size:1.2rem;font-weight:400}.optional-details[open] summary:after{content:'−'}.optional-details summary span{font-size:.72rem;margin-left:auto;color:#6d7468}.optional-details .option-list,.optional-details textarea{margin-top:17px}.survey-body .upload-zone{background:#f5f2e5;border-color:#bcaa76;border-radius:14px;min-height:175px;padding:29px 15px;margin-top:0}.survey-body .upload-zone svg{width:39px;height:39px;color:#8b732f;margin-bottom:8px}.submission-summary{background:#f0f4eb;border-radius:12px;padding:18px;margin-top:28px}.submission-summary strong{font-size:.91rem;color:#36533e;font-weight:600}.submission-summary p{font-size:.78rem;color:#5f6c5e;margin:8px 0 0}.privacy-line{font-size:.73rem;margin:16px 0 0}.survey-body .artwork-preview{grid-template-columns:100px 1fr;gap:16px}.survey-body .artwork-preview img{width:100px;height:130px}.survey-body .artwork-preview strong{display:block;font-size:.9rem;margin-bottom:12px}.survey-body .artwork-preview label{font-size:.73rem;margin:9px 0 5px}.survey-body .artwork-preview select{padding:9px 10px;min-height:43px}.survey-body .remove-image{font-size:.75rem;min-height:38px}.survey-body .message{font-size:.84rem;margin-top:15px}.survey-body .success-panel{padding-top:50px;padding-bottom:40px;margin-top:80px}.success-logo{width:74px;height:65px;object-fit:contain;margin-bottom:26px}.survey-body .success-panel h2{font-size:1.65rem}.survey-body .success-panel p{font-size:.91rem;line-height:1.9}.survey-body .wizard-step h2:focus-visible{outline:none}
.success-actions{display:flex;flex-direction:column;gap:12px;max-width:300px;margin:24px auto 0}.parent-letter{width:min(440px,calc(100% - 30px));max-height:calc(100dvh - 36px);padding:0;border:0;border-radius:16px;background:#fffcf3;color:#293d31;box-shadow:0 24px 72px rgba(21,37,27,.28);overflow-y:auto;overscroll-behavior:contain}.parent-letter::backdrop{background:rgba(27,43,33,.55)}.letter-top{display:flex;align-items:center;justify-content:space-between;padding:22px 22px 0}.letter-top>img{width:53px;height:48px;object-fit:contain}.letter-close{width:44px;height:44px;border:0;border-radius:50%;background:#ece9dd;color:#425441;display:grid;place-items:center;touch-action:manipulation}.letter-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6}.letter-content{padding:16px 30px 30px}.letter-content h2{font-size:1.55rem;letter-spacing:-.025em;margin:0 0 8px;line-height:1.4}.letter-content h2:focus{outline:none}.letter-intro{font-size:.78rem;color:#626d54;margin:0 0 25px}.letter-body{font-size:.94rem;line-height:1.95;min-height:90px;overflow-wrap:anywhere}.letter-body p{margin:0 0 18px}.letter-signature{padding-top:17px;margin:8px 0 25px;border-top:1px solid #e5decb;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.letter-signature span:first-child{font-size:.83rem;font-weight:600}.letter-signature span:last-child{font-size:.72rem;color:#626d54}.letter-content .button{min-height:48px}.letter-content #letter-check{margin-bottom:12px}.parent-letter[open]{animation:letter-arrive .24s cubic-bezier(.16,1,.3,1)}
@keyframes letter-arrive{from{transform:translateY(14px);opacity:.8}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.parent-letter[open]{animation:none}}
@media(max-width:380px){.letter-content{padding:14px 23px 24px}.letter-body{font-size:.88rem}.letter-content h2{font-size:1.4rem}}
@media(hover:hover) and (pointer:fine){.survey-body .option:hover{border-color:#87a282;background:#f6f7ef}.survey-body .primary:hover:not(:disabled){background:#234f38}.survey-body .art-preview:hover{background:#f1eedf}}
@media(max-width:850px){.survey-layout{grid-template-columns:260px minmax(0,1fr);gap:30px;padding-inline:25px}.welcome-copy h1{font-size:2.15rem}.art-front{width:160px}.art-back{width:145px;right:-7px}.survey-paper{padding:28px 25px}}
@media(max-width:680px){.survey-body .topbar{padding:17px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left));min-height:72px;gap:8px}.survey-body .brand{font-size:.9rem;gap:9px}.survey-body .brand-mark{width:39px;height:37px}.survey-body .brand-sub{font-size:.65rem}.survey-body .quiet-link{font-size:.73rem}.survey-layout{display:block;margin:0;padding:0 max(17px,env(safe-area-inset-right)) 28px max(17px,env(safe-area-inset-left))}.welcome-panel{position:relative;top:auto;padding-top:22px;min-height:210px;display:grid;grid-template-columns:1.3fr 1fr;gap:8px}.welcome-copy h1{font-size:1.66rem;line-height:1.42;letter-spacing:-.035em;margin-bottom:12px}.welcome-copy>p{font-size:.78rem;line-height:1.85;margin-bottom:10px}.welcome-tag{font-size:.65rem;padding:4px 8px;margin-top:0}.welcome-gallery{height:171px;margin-top:0}.art-front{width:94px;height:132px;padding:6px 6px 20px;top:0;left:2px;transform:rotate(-8deg)}.art-front figcaption{font-size:.43rem;padding-top:5px}.art-back{width:84px;height:102px;padding:6px;right:0;top:64px;transform:rotate(10deg)}.welcome-footer{display:none}.survey-paper{padding:22px 21px 21px;border-radius:16px;box-shadow:0 11px 35px rgba(58,53,36,.075)}.wizard-step h2{font-size:1.43rem}.step-intro{font-size:.8rem;margin-bottom:24px}.survey-body .field label,.survey-body legend{font-size:.86rem}.survey-body .field{margin-bottom:22px}.survey-body .two-columns{grid-template-columns:1.6fr 1fr;gap:12px}.survey-body .option{font-size:.84rem;padding:11px;gap:9px}.survey-body .option span{font-size:.82rem}.choice-grid{gap:10px}.gentle-note{padding:14px 13px;gap:10px}.gentle-note p{font-size:.7rem}.gentle-note svg{width:23px;height:23px}.wizard-actions{gap:10px;padding-top:20px}.wizard-actions .button{font-size:.86rem;min-height:49px;padding-inline:15px}.wizard-actions .secondary{min-width:78px}.interest-tags{gap:9px}.interest-tags .option{min-height:40px;padding:7px 10px}.interest-tags .option span{font-size:.79rem}.art-heading{margin-top:29px}.art-heading p{font-size:.78rem}.art-heading h3{font-size:1.04rem}.survey-body .art-preview img{height:255px}.survey-body .art-choices{grid-auto-columns:calc(100% - 12px);gap:15px}.survey-body .art-choice-line{padding:11px 13px 0;min-height:45px}.survey-body .art-choice-line span{font-size:.86rem}.survey-body .art-choice small{font-size:.69rem;margin-left:41px}.optional-details summary{font-size:.8rem}.survey-body .upload-zone{min-height:165px}.submission-summary{padding:15px}.submission-summary strong{font-size:.85rem}.submission-summary p{font-size:.72rem}.survey-body .artwork-preview{grid-template-columns:82px 1fr;gap:13px}.survey-body .artwork-preview img{width:82px;height:110px}.survey-body .success-panel{margin-top:25px;padding:35px 20px}.survey-body .success-panel h2{font-size:1.35rem}.survey-body .success-panel p{font-size:.82rem}.survey-body .page-footer{font-size:.68rem;padding-top:22px}.survey-body .field-hint{font-size:.67rem;margin-left:8px}.survey-body .privacy-line{font-size:.68rem}}
@media(pointer:coarse){.survey-body select,.survey-body input:not([type=radio]):not([type=checkbox]),.survey-body textarea{font-size:16px}.survey-body button,.survey-body a{touch-action:manipulation}.survey-body .option:hover{background:#fff}.survey-body .option:has(input:checked){background:#edf4e8}.survey-body .priority-options .option:has(input:checked){background:#f7e9bf}}
.survey-body{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}
html:has(.survey-body){height:100%;overflow:hidden;overscroll-behavior:none}
.survey-body .topbar{width:100%;flex:0 0 auto;padding-block:18px;min-height:76px}
.survey-body .brand-mark,.success-logo,.letter-top>img{mix-blend-mode:normal}
.survey-layout{width:100%;flex:1;min-height:0;margin-top:0;padding-top:0;padding-bottom:0;align-items:stretch;overflow:hidden}
.welcome-panel{position:relative;top:auto;overflow:hidden}
.survey-main{position:relative;min-height:0;overflow-y:auto;overscroll-behavior:none;scrollbar-width:thin;scrollbar-color:#b5c2af transparent;padding:8px 8px 26px;-webkit-overflow-scrolling:touch}
.survey-body button,.survey-body a,.survey-body label,.survey-body summary,.survey-body input,.survey-body select,.survey-body textarea{touch-action:manipulation}
.interest-tags .option{position:relative}



.wizard-step>h2{margin-bottom:26px}
.survey-body .gentle-error{border-color:#d8c28e;background:#fbf3df;color:#6b501f;margin:4px 0 12px}
.needs-answer>input,.needs-answer>select{border-color:#aa843e!important}
.needs-answer legend{color:#6b501f}
.question-group-title{font-size:1.1rem;margin:35px 0 22px;padding-top:25px;border-top:1px solid #eee7d8}
.survey-body .art-preview img{height:auto;aspect-ratio:4/3;object-fit:contain;background:#f7f6ef}
.survey-body #art-choices{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-flow:row;grid-auto-columns:auto;gap:22px;overflow:visible;scroll-snap-type:none;padding:0;margin:24px 0}
.survey-body .art-preview{cursor:default}
.wizard-actions{position:sticky;bottom:-27px;z-index:2;background:#fffdf8;padding-bottom:8px}
.survey-body .success-panel{margin-top:15px}
.letter-content .button{margin-top:0}
@media(max-width:680px){
  .survey-body .topbar{min-height:66px;padding-block:10px;padding-top:max(10px,env(safe-area-inset-top))}
  .survey-layout{display:flex;flex-direction:column;padding-bottom:0;gap:0}
  .welcome-panel{flex:0 0 auto;min-height:0;padding:10px 4px 17px;grid-template-columns:1.6fr 1fr;align-items:center;overflow:visible}
  .welcome-copy h1{font-size:1.42rem;margin-bottom:8px}
  .welcome-copy>p{font-size:.7rem;line-height:1.7;margin-bottom:0}
  .welcome-gallery{height:120px}
  .art-front{width:77px;height:105px;left:0;padding-bottom:17px}
  .art-front figcaption{font-size:.37rem;padding-top:3px}
  .art-back{width:68px;height:82px;right:0;top:35px}
  .survey-main{flex:1;width:100%;padding:0 1px max(18px,env(safe-area-inset-bottom))}
  
  
  .survey-body .wizard-actions{bottom:-21px;padding-bottom:12px}
  .survey-body 
  .question-group-title{font-size:1rem;margin-top:29px}
  .survey-body .art-choice{padding-bottom:14px}
}
@media(max-height:620px) and (max-width:680px){.welcome-panel{padding-block:5px 8px}.welcome-copy h1{font-size:1.15rem;margin-bottom:0}.welcome-copy>p{display:none}.welcome-gallery{height:66px}.art-front{height:64px;width:51px;padding:4px}.art-front figcaption{display:none}.art-back{height:50px;width:49px;top:14px;right:7px}.survey-body .topbar{min-height:57px;padding-block:6px}}
.survey-body .field label,.survey-body legend{font-size:1rem}
.survey-body .option span,.survey-body .art-choice-line span{font-size:.94rem;line-height:1.7}
.survey-body input:not([type=checkbox]):not([type=radio]),.survey-body select,.survey-body textarea{font-size:17px}
.survey-body .button,.survey-body .wizard-actions .button{font-size:.96rem}
.survey-body .step-intro,.survey-body .small,.survey-body .art-choice small,.survey-body .optional-details summary,.survey-body .message{font-size:.84rem}
.survey-body .field-hint,.survey-body .optional-details summary span{font-size:.78rem}
.letter-body{font-size:1rem;line-height:1.9}
.letter-intro,.letter-signature span:last-child{font-size:.82rem}
.letter-signature span:first-child{font-size:.9rem}
.parent-letter[open]{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100vh - 36px);max-height:calc(100dvh - 36px)}
.parent-letter .letter-top{flex:0 0 auto}
.parent-letter .letter-content{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding-bottom:max(24px,env(safe-area-inset-bottom))}
.parent-letter .letter-content>h2,.parent-letter .letter-intro,.parent-letter .letter-wait-note,.parent-letter .letter-signature,.parent-letter .letter-content>.button,.parent-letter .submission-status{flex:0 0 auto}
.parent-letter .letter-body{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#b5c2af transparent;padding-right:4px}
.parent-letter .letter-body p:last-child{margin-bottom:0}
@media(max-height:560px){
 .parent-letter .letter-top{padding:12px 18px 0}
 .parent-letter .letter-top>img{width:35px;height:32px}
 .parent-letter .letter-close{width:36px;height:36px}
 .parent-letter .letter-content{padding:10px 20px 14px}
 .parent-letter .letter-content h2{font-size:1.15rem;line-height:1.3;margin-bottom:4px}
 .parent-letter .letter-intro{font-size:.72rem;line-height:1.5;margin-bottom:10px}
 .parent-letter .letter-signature{padding-top:8px;margin:8px 0 10px;gap:2px}
 .parent-letter .letter-signature span:first-child{font-size:.72rem}
 .parent-letter .letter-signature span:last-child{font-size:.64rem}
 .parent-letter .letter-content>.button{min-height:44px;padding:8px 12px}
 .parent-letter .letter-body{font-size:.9rem;line-height:1.7}
}
@media(max-width:380px){.survey-body .two-columns{grid-template-columns:minmax(0,1.4fr) minmax(108px,1fr)}}
.parent-letter.is-waiting{background:#fff9ed}
.parent-letter.is-waiting .letter-top{padding:29px 30px 0}
.parent-letter.is-waiting .letter-top>img{width:64px;height:58px}
.parent-letter.is-waiting .letter-content{padding-top:28px;padding-bottom:30px}
.parent-letter.is-waiting h2{white-space:pre-line;font-size:1.5rem;line-height:1.6;margin-bottom:16px}
.parent-letter.is-waiting .letter-intro{font-size:.87rem;line-height:1.9;margin-bottom:30px;color:#606c55}
.letter-wait-note{height:8px;overflow:hidden;border-radius:8px;background:#e9e2cf;margin:0 0 36px}
.letter-wait-note span{display:block;width:38%;height:100%;border-radius:8px;background:#2f6248;animation:letter-processing 1.6s linear infinite}
@keyframes letter-processing{from{transform:translateX(-100%)}to{transform:translateX(365%)}}
@media(prefers-reduced-motion:reduce){.letter-wait-note span{animation:none;transform:translateX(80%)}}
.parent-letter.is-waiting .letter-body{display:none}
.submission-status{padding-top:19px;margin:0;border-top:1px solid #e5dac2;font-size:.79rem;line-height:1.8;color:#6b5a34;min-height:49px}
@media(max-width:380px){.parent-letter.is-waiting .letter-top{padding:24px 23px 0}.parent-letter.is-waiting h2{font-size:1.35rem}}
@media(max-height:560px){
 .parent-letter.is-waiting .letter-top{padding:14px 23px 0}
 .parent-letter.is-waiting .letter-top>img{width:44px;height:40px}
 .parent-letter.is-waiting .letter-content{padding:16px 23px 20px}
 .parent-letter.is-waiting h2{font-size:1.2rem;line-height:1.45;margin-bottom:12px}
 .parent-letter.is-waiting .letter-intro{font-size:.8rem;line-height:1.7;margin-bottom:20px}
 .parent-letter.is-waiting .letter-wait-note{margin-bottom:18px}
 .parent-letter.is-waiting .submission-status{font-size:.76rem;line-height:1.6;padding-top:12px;min-height:38px}
}
