@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-garamond.ttf') format('truetype');font-weight:300 700;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.ttf') format('truetype');font-weight:100 1000;font-display:swap}
:root{--olive:#2F5501;--pink:#FAB4B6;--cream:#FFF9F2;--blue:#205873;--gold:#D8B446;--ink:#29291F;--line:#deded0;--muted:#65665a;--star-gap:10px}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.5}button,input,textarea{font:inherit}button{cursor:pointer}button,input,textarea,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}[hidden]{display:none!important}.preview-bar{text-align:center;background:var(--olive);color:var(--cream);font-size:11px;letter-spacing:.06em;padding:6px 12px}.page{max-width:1216px;margin:auto;padding:0 56px}.header{display:flex;align-items:center;justify-content:space-between;padding:26px 0 23px;border-bottom:1px solid var(--line)}.wordmark{width:196px;height:auto;margin-left:-12px}.language{display:flex;padding:4px;border:1px solid #d7d8c7;border-radius:30px;gap:2px}.language button{border:0;border-radius:24px;background:transparent;color:var(--olive);padding:9px 15px;font-size:12px;font-weight:600;min-height:44px}.language button[aria-pressed=true]{background:var(--olive);color:var(--cream)}.survey-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:88px;align-items:start;padding:48px 0 64px}.intro{position:sticky;top:32px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:600;color:var(--blue)}h1,h2,p{margin:0}h1,h2{font-family:'Cormorant Garamond',Georgia,serif;color:var(--olive);font-weight:500}h1{font-size:62px;line-height:.99;letter-spacing:-.035em;margin:18px 0 20px}.intro-description{max-width:320px;color:var(--muted);font-size:15px;line-height:1.65}.meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--olive);margin:18px 0 28px}.tiny-star{font-size:20px}.food-frame{background:var(--pink);position:relative;overflow:hidden;border-radius:150px 150px 4px 4px;max-width:340px}.food-photo{width:100%;height:375px;object-fit:contain;display:block}.intro-bottom{display:flex;align-items:center;justify-content:center;gap:9px;max-width:340px;margin:20px 0;font-size:11px;color:var(--olive)}.intro-bottom>span:first-child{font-size:21px}.branch-line{display:flex;align-items:center;gap:7px;color:var(--blue);font-size:11px;margin:0 0 24px;letter-spacing:.015em}.branch-line svg{width:15px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6}.section-heading{display:flex;gap:10px;align-items:baseline;justify-content:space-between}h2{font-size:30px;line-height:1.15;letter-spacing:-.02em}.required-note,.optional{font-size:10px;font-weight:400;color:var(--muted);white-space:nowrap}.section-description{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.6}.rating-field{border:0;border-bottom:1px solid var(--line);padding:22px 0 18px;margin:0;min-width:0}.rating-field legend{float:left;width:100%;font-weight:500;font-size:14px;padding:0;margin-bottom:11px;display:flex;gap:10px;align-items:baseline}.question-number{font-size:10px;color:var(--blue);font-weight:500;letter-spacing:.03em;margin-right:2px}.rating-row{clear:both;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px}.stars{display:flex;flex:0 0 auto;gap:var(--star-gap)}.star-option{position:relative;display:flex;flex:0 0 48px;align-items:center;justify-content:center;width:48px;min-width:48px;height:48px;color:var(--olive);cursor:pointer}.star-option input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0;width:100%;height:100%;-webkit-appearance:none;appearance:none;border-radius:0}.star-visual{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;pointer-events:none}.star-option svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.25;pointer-events:none}.star-option.filled svg{fill:var(--gold);stroke:var(--olive)}.star-option.selected .star-visual{background:#f2e8cb}.star-option:hover .star-visual{background:#f5eddf}.star-option:has(input:focus-visible) .star-visual{outline:3px solid var(--blue);outline-offset:2px}.rating-value{font-size:11px;color:var(--olive);min-width:42px;text-align:right;margin-left:auto}.rating-scale{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);width:calc(240px + 4 * var(--star-gap));max-width:100%;padding:3px 3px 0}.comments-section{padding-top:30px}.field{margin-top:20px}.field label{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;font-weight:500;margin-bottom:9px}.field label .optional{margin-left:auto}.field textarea,.field input{width:100%;border:1px solid #d3d5c4;border-radius:7px;background:transparent;padding:13px 14px;color:var(--ink);font-size:14px;transition:border-color .15s}.field textarea{resize:vertical;min-height:88px;display:block}.field input{min-height:48px}.field input::placeholder,.field textarea::placeholder{color:#76776a;opacity:1}.field input:focus,.field textarea:focus{border-color:var(--olive)}.contact-section{margin-top:30px;padding:23px 24px 24px;border-radius:9px;background:#f0f0e6}.contact-section h2{font-size:26px}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:16px}.contact-grid .field{margin-top:16px}.contact-grid input{background:var(--cream)}.submission{margin-top:23px}.privacy-note{font-size:11px;line-height:1.65;color:var(--muted);margin:0 0 18px}.submit{border:0;border-radius:7px;background:var(--olive);color:var(--cream);padding:16px 21px;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:500;min-height:54px}.submit>span:last-child{font-size:23px;font-weight:400;line-height:1}.submit:hover{background:#254401}.submit:disabled{cursor:progress;opacity:.8}.verification{max-width:100%;overflow:hidden}.verification:not(:empty){margin:0 0 14px}.branch-line.missing{color:#933629}.branch-error{margin:-14px 0 22px}.field-error,.form-error{font-size:12px;color:#933629;margin-top:8px}.form-error{margin-bottom:12px}.rating-field.invalid{border-bottom-color:#933629}.invalid .stars{border-radius:24px;outline:1px solid #933629}.field input[aria-invalid=true]{border-color:#933629}.thank-you{max-width:570px;margin:0 auto;text-align:center;padding:65px 10px 50px}.heart-circle{margin:0 auto 28px;width:100px;height:100px;display:flex;justify-content:center;align-items:center;background:var(--pink);border-radius:50%}.heart-circle svg{width:43px;height:43px;fill:var(--olive)}.thank-you h1{font-size:54px;line-height:1.07;margin:16px 0 23px}.thanks-copy{max-width:440px;margin:auto;color:var(--muted);font-size:15px;line-height:1.8}.thanks-photo{margin:30px auto 22px;background:var(--pink);width:245px;height:150px;border-radius:50%;display:flex;align-items:center;justify-content:center}.thanks-photo img{width:240px;height:auto;transform:rotate(-7deg)}.demo-note{font-size:11px;color:var(--muted);margin:28px 0 16px}.restart{background:transparent;border:0;border-bottom:1px solid var(--olive);padding:8px 1px;font-size:12px;color:var(--olive);min-height:44px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0 28px;font-size:9px;letter-spacing:.05em;color:var(--muted)}footer>span:first-child{color:var(--olive);font-weight:600;letter-spacing:.13em}.skip-link{position:absolute;left:10px;top:-100px;background:var(--cream);color:var(--olive);padding:12px;z-index:10}.skip-link:focus{top:35px}
@media(min-width:1450px){.page{max-width:1310px}.survey-layout{gap:120px}.food-frame{max-width:380px}.food-photo{height:410px}.intro-bottom{max-width:380px}}
@media(max-width:900px){.page{padding:0 32px}.survey-layout{gap:40px}h1{font-size:52px}:root{--star-gap:5px}.contact-grid{grid-template-columns:1fr}.food-photo{height:320px}.rating-value{min-width:30px}}
@media(max-width:680px){.page{padding:0 24px}.header{padding:16px 0 14px}.wordmark{width:148px;margin-left:-9px}.language{padding:3px;gap:0}.language button{font-size:10px;padding:8px 10px;min-height:44px}.preview-bar{font-size:9px;padding:6px 10px}.survey-layout{display:block;padding:28px 0 38px}.intro{position:static;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;align-items:center;margin-bottom:28px}.eyebrow{font-size:11px;letter-spacing:.12em}h1{font-size:40px;margin:13px 0 12px;line-height:1.02}.intro-description{font-size:12px;line-height:1.6}.meta{font-size:12px;gap:5px;margin:13px 0 0}.tiny-star{font-size:17px}.food-frame{border-radius:90px 90px 4px 4px;align-self:center}.food-photo{width:100%;height:auto;min-height:188px;object-fit:cover}.intro-bottom{display:none}.branch-line{margin-bottom:22px;font-size:10px;padding-top:18px;border-top:1px solid var(--line)}h2{font-size:28px}.section-description{font-size:11px}.required-note,.optional{font-size:12px}.rating-field{padding:20px 0 16px}.rating-field legend{font-size:15px;margin-bottom:9px}:root{--star-gap:12px}.star-option svg{width:28px;height:28px}.rating-scale{font-size:12px}.rating-value{font-size:10px}.comments-section{padding-top:27px}.field label{font-size:15px;gap:5px}.field textarea,.field input{font-size:16px}.contact-section{padding:21px 18px}.contact-grid{grid-template-columns:1fr}.contact-section h2{font-size:25px}.contact-grid label{font-size:14px}.privacy-note{font-size:11px}footer{padding:20px 0;gap:8px;flex-wrap:wrap;font-size:11px}footer>span:nth-child(2){order:3;flex-basis:100%;padding-top:3px}.thank-you{padding:45px 0 35px}.thank-you h1{font-size:43px}.thanks-copy{font-size:14px}.heart-circle{width:85px;height:85px}.thanks-photo{width:220px;height:140px}.thanks-photo img{width:220px}}
@media(max-width:370px){.page{padding:0 18px}.intro{gap:12px}h1{font-size:35px}.wordmark{width:126px}:root{--star-gap:6px}.star-visual{width:44px;height:44px}.rating-row{gap:4px}.intro .eyebrow{font-size:11px;letter-spacing:.08em}.contact-section h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
