/* tebeka.com — the look of the weekly Shabbat Table sheets, for the web.
   Palette, typography (EB Garamond + Noto Serif Hebrew), parchment panels, coloured bands and the gold
   diamond rule all come from the sheet generator (shabbat/generator/templates/style.css). Fonts are self-hosted subsets. */
@font-face{font-family:"EBG";src:url(/assets/fonts/ebg-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"EBG";src:url(/assets/fonts/ebg-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"EBG";src:url(/assets/fonts/ebg-semibold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"EBG";src:url(/assets/fonts/ebg-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"EBG";src:url(/assets/fonts/ebg-bolditalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"NSH";src:url(/assets/fonts/nsh-regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"NSH";src:url(/assets/fonts/nsh-semibold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"NSH";src:url(/assets/fonts/nsh-bold.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --ink:#2a2420;--ink-2:#3a2e22;--muted:#5a4632;--brown:#7a5a35;--paper:#fcf8ef;--cream:#fffaf0;--panel:#efe0bf;--tint:#fdf2d3;
  --navy:#1f2f5c;--navy-2:#2c3f74;--gold:#b8892b;--gold-d:#9a7420;--gold-l:#f1d58a;--line:#d9c08a;--line-2:#e8d9b5;--wine:#7a2335;
  --radius:12px;--max:66rem;--read:46rem;
  --serif:"EBG","Iowan Old Style","Palatino Linotype",Palatino,Georgia,"NSH",serif;
  --hebrew:"NSH","Noto Serif Hebrew","SBL Hebrew","Times New Roman",serif;
  --sans:var(--serif);
  --tile:url(/assets/sheet/parchment-tile.webp);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);font:1.16rem/1.55 var(--serif);font-variant-numeric:oldstyle-nums}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.15;color:var(--navy);font-weight:700}
h1{font-size:clamp(2rem,5.4vw,3rem);margin:.15em 0 .3em}
h2{font-size:clamp(1.55rem,3.6vw,2.05rem);margin:0 0 .45em}
h3{font-size:1.25rem;margin:0 0 .2em}
a{color:var(--navy);text-decoration:none;border-bottom:1px solid var(--gold)}
a:hover{color:var(--wine);border-bottom-color:var(--wine)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.15rem}
.skip{position:absolute;left:-999px;top:.5rem;background:var(--navy);color:#fff;padding:.5rem 1rem;z-index:20;border-radius:6px}
.skip:focus{left:.5rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.he,[lang="he"]{font-family:var(--hebrew)}
.he{font-weight:600;color:var(--gold-d);margin-inline-start:.3em;unicode-bidi:isolate;font-size:.9em}

/* header */
.site-header{background:rgba(252,248,239,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;backdrop-filter:blur(6px)}
.site-header::after{content:"";display:block;height:3px;background:linear-gradient(90deg,transparent,var(--gold) 15%,var(--gold) 85%,transparent);opacity:.55}
.header-row{display:flex;align-items:center;gap:.8rem;min-height:3.6rem;flex-wrap:wrap}
.brand{font-weight:700;font-size:1.4rem;color:var(--navy);border:0;margin-inline-end:auto;letter-spacing:.01em}
.brand:hover{color:var(--navy)}
.main-nav{display:none;gap:1.2rem;font-size:1.02rem;letter-spacing:.02em}
.main-nav a{border:0;color:var(--brown);font-weight:600}
.main-nav a:hover{color:var(--navy)}
@media (min-width:720px){.main-nav{display:flex}}
.lang{display:flex;gap:.35rem}
.lang-btn{display:inline-flex;align-items:center;gap:.3rem;min-height:2.6rem;min-width:2.6rem;padding:.15rem .7rem;border:1px solid var(--line);border-radius:999px;color:var(--ink);font-size:.95rem;background:var(--cream)}
.lang-btn:hover{border-color:var(--gold);color:var(--ink)}
.lang-btn.is-current{border-color:var(--navy);background:#e9ecf6;font-weight:700}
.preview-bar{background:var(--tint);color:#5a4300;text-align:center;font-size:.92rem;font-style:italic;padding:.25rem 1rem;border-bottom:1px solid #e6cf8f}
main{padding:1.2rem 0 3.5rem}

/* buttons: navy with a gold edge, like the sheet's candle-lighting box */
.actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.7rem 0 0}
.btn{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;padding:.4rem 1.1rem;border-radius:8px;background:var(--navy);color:#fff;border:1.5px solid var(--gold);font:600 1.02rem/1.2 var(--serif);letter-spacing:.02em;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--navy-2);color:#fff;border-color:var(--gold-l)}
.btn-ghost{background:var(--cream);color:var(--navy);border-color:var(--line)}
.btn-ghost:hover{background:var(--tint);color:var(--navy);border-color:var(--gold)}

/* hero */
.hero{display:grid;gap:1rem;align-items:center;padding:.6rem 0 .2rem}
.hero-art{max-width:420px;margin:0 auto;width:100%}
@media (min-width:820px){.hero{grid-template-columns:1.1fr .9fr;gap:2rem;padding:1.6rem 0 .6rem}}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.24em;font-size:.82rem;font-weight:600;color:var(--brown);margin:0}
.lede{color:var(--muted);font-size:1.2rem;font-style:italic;margin:.2rem 0 .8rem;max-width:38rem}
.art{display:block;width:100%;height:auto}
.flame{transform-origin:50% 100%;transform-box:fill-box;animation:flicker 2.8s ease-in-out infinite}
.flame-2{animation-delay:-1.3s}
.flame-glow{animation:glow 3.2s ease-in-out infinite}
@keyframes flicker{0%,100%{transform:scale(1,1) rotate(0)}30%{transform:scale(.96,1.05) rotate(-2deg)}60%{transform:scale(1.03,.97) rotate(1.5deg)}}
@keyframes glow{0%,100%{opacity:.85}50%{opacity:1}}

/* sections & the sheet's gold diamond rule */
.block{padding:.4rem 0}
.block>h2,.block-head h2,.block-head h1{position:relative}
.block-head{display:grid;gap:.6rem;align-items:center}
.block-head .art{max-width:240px}
@media (min-width:720px){.block-head{grid-template-columns:1fr 220px}}
.divider{display:flex;justify-content:center;margin:2rem 0 1.6rem}
.divider svg{width:min(340px,70%);height:auto}
img.divider{display:block;width:min(340px,70%);height:auto;margin:.6rem auto}
img.divider.small{width:min(220px,55%);margin:.2rem auto}
img.divider.sec{width:min(280px,62%);margin:1.4rem auto .2rem}

/* parchment panel: the sheet's section box (tile + darkened edges) */
.parchment,.sheet-body section.panel{background-color:var(--panel);background-image:linear-gradient(to right,rgba(105,66,22,.26),rgba(105,66,22,0) 22px),linear-gradient(to left,rgba(105,66,22,.26),rgba(105,66,22,0) 22px),linear-gradient(to bottom,rgba(105,66,22,.22),rgba(105,66,22,0) 20px),linear-gradient(to top,rgba(105,66,22,.22),rgba(105,66,22,0) 20px),var(--tile);background-size:auto,auto,auto,auto,720px auto;border:1px solid rgba(122,84,40,.5);border-radius:12px 16px 12px 16px;box-shadow:2px 3px 8px rgba(80,52,20,.28)}

/* home: sheet cards */
.sheet-list{list-style:none;padding:0;margin:.6rem 0 0;display:grid;gap:1.2rem}
@media (min-width:720px){.sheet-list{grid-template-columns:repeat(2,1fr)}.sheet-list>li.is-newest{grid-column:1/-1}}
.sheet-card{background-color:var(--panel);background-image:linear-gradient(to bottom,rgba(105,66,22,.18),rgba(105,66,22,0) 18px),linear-gradient(to top,rgba(105,66,22,.18),rgba(105,66,22,0) 18px),var(--tile);background-size:auto,auto,720px auto;border:1px solid rgba(122,84,40,.5);border-radius:12px 16px 12px 16px;box-shadow:2px 3px 8px rgba(80,52,20,.25);padding:0 1.1rem 1.1rem;overflow:hidden}
.card-art{position:relative;margin:0 -1.1rem .5rem;aspect-ratio:850/315;background:var(--paper);border-bottom:3px solid var(--gold)}
.card-art img{position:absolute;inset:0;width:100%;height:100%;display:block}
.sheet-card:not(.is-newest) .card-art{aspect-ratio:850/240;overflow:hidden}
.sheet-card:not(.is-newest) .card-art img{height:auto;top:auto;bottom:0}
.sheet-card h3{font-size:1.45rem;margin-top:.2rem}
.sheet-card h3 a{color:var(--navy);border:0}
.sheet-card h3 a:hover{color:var(--wine)}
.sheet-card .he{font-size:1.05rem}
.badge{display:inline-block;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--wine);color:#fff;border-radius:999px;padding:.08rem .6rem;vertical-align:middle;margin-inline-start:.3rem}
.meta{color:var(--muted);font-size:1rem;margin:.1rem 0 .4rem;font-style:italic}
.meta [lang="he"],.dates [lang="he"]{white-space:nowrap;display:inline-block;font-style:normal}

/* apps */
.app-grid{list-style:none;padding:0;margin:.8rem 0 0;display:grid;gap:1rem}
@media (min-width:720px){.app-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1000px){.apps-block>.app-grid{grid-template-columns:repeat(3,1fr)}}
.app-card{display:flex;gap:1rem;align-items:flex-start;background:var(--cream);border:1px solid var(--line);border-radius:12px 16px 12px 16px;padding:1rem;box-shadow:1px 2px 6px rgba(80,52,20,.16)}
.app-icon{flex:none;width:72px;height:72px;border-radius:22%;object-fit:cover;box-shadow:0 0 0 1px rgba(122,84,40,.35),0 2px 6px rgba(0,0,0,.18);background:#e9ecf6}
.app-icon--ph{display:grid;place-items:center;font-weight:700;color:var(--navy);font-size:1.3rem}
.app-body{min-width:0}
.app-body h3{font-size:1.2rem;margin-bottom:.2rem}
.app-body p{margin:.35rem 0;font-size:1.04rem;color:var(--ink-2)}
.app-meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.pbadges{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem;padding:0;margin:0}
.pbadge{font-size:.78rem;font-weight:600;color:var(--navy);border:1px solid #b9c1da;background:#eef0f8;border-radius:999px;padding:0 .5rem;letter-spacing:.03em}
.price{font-size:.82rem;font-weight:700;color:#2f5d3a;background:#e5efe6;border:1px solid #b7d0bb;border-radius:999px;padding:0 .55rem}
.price.soon{color:#7a5a1a;background:var(--tint);border-color:#e3c77c}
.store-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem!important}
.store-btn{display:inline-flex;flex-direction:column;justify-content:center;min-height:2.9rem;padding:.3rem .95rem;border-radius:10px;background:#111;color:#fff;line-height:1.1;border:1px solid #111;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.store-btn:hover{background:#333;color:#fff;border-color:#333}
.store-small{font-size:.68rem;letter-spacing:.02em}
.store-big{font-size:1.05rem;font-weight:600;letter-spacing:-.01em}
.platform-group{margin-top:2rem}
.platform-group h2{font-size:1.5rem;color:#fff;background:var(--navy);border-bottom:3px solid var(--gold);border-radius:6px;padding:.3rem .8rem;display:block}
.dev-link{font-size:1.02rem;margin:.3rem 0 0}

/* about */
.about-row{display:grid;grid-template-columns:1fr;gap:1.2rem;align-items:start}
.photo-slot{margin:0}
.photo{width:170px;height:170px;border-radius:50%;object-fit:cover;display:block;background:#efe5d0;border:6px solid var(--cream);box-shadow:0 0 0 2px var(--gold),0 10px 30px -14px rgba(80,50,10,.5)}
.photo--portrait{width:200px;height:auto;aspect-ratio:1056/1100;border-radius:6px;object-fit:cover;border:5px solid var(--cream);box-shadow:0 0 0 2px var(--gold),0 0 0 6px var(--cream),0 0 0 7px var(--gold-l,#f1d58a),0 14px 30px -14px rgba(80,50,10,.55)}
@media (max-width:719px){.photo-slot{display:flex;justify-content:center}}
@media (min-width:720px){.about-row{grid-template-columns:270px 1fr;gap:2rem;align-items:start}.photo{width:210px;height:210px}.photo--portrait{width:260px;height:auto}}
.about-text{max-width:var(--read);font-size:1.18rem}
.art-about{max-width:300px;margin:1.5rem auto 0;opacity:.95}

/* ---------------- parasha page = the sheet, rendered for the web ---------------- */
.crumbs{font-size:1rem;margin:.1rem 0 .8rem}
.sheet{max-width:52rem;margin:0 auto}
.notice{background:var(--tint);border:1px solid #e6cf8f;border-radius:10px;padding:.6rem .9rem;font-size:1rem;color:#5a4300}
.sheet-head{border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.2rem}
/* masthead: back illustration, family portrait, front layer and the title block, scaled with the page width */
.sheet-web header.masthead{position:relative;container-type:inline-size;aspect-ratio:850/315;margin:0 -1.15rem}
.masthead .layer{position:absolute;left:0;top:0;width:100%;height:100%;display:block}
.masthead .bg{z-index:0}.masthead .front{z-index:2;pointer-events:none}
.masthead .portrait{position:absolute;left:61%;top:2%;width:32.7%;height:auto;z-index:1}
.masthead .inner{position:absolute;left:8.2%;top:5%;width:54.4%;z-index:3;text-align:center}
.masthead .kicker{font-size:max(.7rem,1.45cqw);letter-spacing:.24em}
.masthead h1.title{margin:.5cqw 0 0;font-size:max(1.9rem,5.4cqw);line-height:1.02;color:var(--navy)}
.masthead .title-he{font-family:var(--hebrew);font-weight:700;font-size:max(1.4rem,4.1cqw);line-height:1.25;color:var(--gold-d)}
.masthead .dates{font-size:max(.95rem,1.9cqw);font-weight:600;margin-top:.4cqw}
.masthead .dates-heb{font-size:max(.92rem,1.8cqw)}
.masthead .dates-heb .sep{color:var(--gold);padding:0 .4em;font-size:.7em}
.masthead .dates-heb .he{color:var(--ink);font-weight:400;margin:0}
.masthead .readings{font-size:max(.85rem,1.58cqw);font-style:italic;color:#4a3a28;margin-top:.4cqw;line-height:1.3}
.masthead .hnote{font-size:max(.8rem,1.45cqw);font-style:italic;color:var(--brown);line-height:1.25;margin-top:.3cqw}
@media (max-width:640px){
  .sheet-web header.masthead{aspect-ratio:auto;padding-top:37%;margin:0 -1.15rem}
  .masthead .layer,.masthead .portrait{height:auto}
  .masthead .layer{aspect-ratio:850/315}
  .masthead .portrait{width:32.7%}
  .masthead .front{top:0}
  .masthead .inner{position:relative;left:auto;top:auto;width:auto;padding:.4rem 1.15rem 0;background:linear-gradient(var(--paper),var(--paper))}
}
.sheet-actions{justify-content:center;margin:.9rem 0 .2rem}
.sheet-body{font-size:1.16rem;line-height:1.5}
.sheet-body p{margin:0 0 .45em}
.sheet-body a{overflow-wrap:anywhere}
.sheet-body img{max-width:100%;height:auto}
.sheet-body ul,.sheet-body ol{padding-inline-start:1.5rem;margin:.2em 0 .6em}
.sheet-body li::marker{color:var(--gold)}
.sheet-body sup{font-size:.68em;line-height:0;vertical-align:super;color:var(--gold-d);font-weight:700}
.credits{text-align:center;margin:.3rem 0 .4rem}
.credits .by{font-size:1.2rem;font-weight:700;font-style:italic;color:var(--navy)}
.credits .src{font-size:.98rem;color:var(--brown)}
.intro{margin:.4rem auto .8rem;max-width:44rem}
.intro.talk{text-align:justify;hyphens:auto}
.intro .intro-title{text-align:center;font-size:1.35rem;font-style:italic;margin:.3rem 0 .5rem}
.intro .talk-body p{margin:0 0 .55em;color:var(--ink)}
.intro .sig{text-align:right;font-weight:700;font-style:italic;color:var(--navy);font-size:1.25rem;margin:.1rem .4rem .5rem 0}
.intro .intro-src{font-size:.92rem;line-height:1.35;color:var(--muted);text-align:left;margin:0 0 .6rem}
.intro .intro-src a{color:var(--muted)}
.intro .intro-q,.point .question{margin:.6rem 0;padding:.5rem .9rem;border:1px solid #d8b860;border-left:5px solid var(--gold);border-radius:6px;font-style:italic;background:var(--tint);text-align:left}
.intro .intro-q b,.point .question b{font-style:normal;font-variant:small-caps;letter-spacing:.04em;color:#7a5a1a}
.sheet-body section{margin:1.3rem 0 .4rem}
.sheet-body section.panel{padding:1rem 1.1rem .8rem}
@media (min-width:720px){.sheet-body section.panel{padding:1.3rem 1.6rem 1rem}}
.band{color:#fff;background:var(--navy);border-radius:6px;padding:.35rem .8rem .3rem;border-bottom:3px solid var(--gold);font-size:1.45rem;font-weight:700;line-height:1.2;margin:0 -.3rem .2rem;overflow:hidden}
.band .num{display:inline-block;min-width:1.6rem;height:1.6rem;line-height:1.6rem;text-align:center;border-radius:50%;background:var(--gold-l);color:var(--ink);font-size:.95rem;margin-right:.55rem;vertical-align:.12em}
.band .bhe{float:right;font-family:var(--hebrew);font-weight:600;font-size:1.15rem;margin-top:.15rem;color:#f8e7b5}
@media (max-width:520px){.band{font-size:1.25rem}.band .bhe{float:none;display:block;text-align:right}}
img.sec-art{display:block;width:58%;margin:.1rem auto -.2rem}
img.sec-art.wide{width:86%}
img.sec-art.small{width:45%}
@media (max-width:640px){img.sec-art{width:88%}img.sec-art.small{width:70%}img.sec-art.wide{width:100%}}
.sheet-body section .sub{font-size:1rem;font-style:italic;color:#4a3a28;margin:.3rem 0 .5rem;padding:.2rem .8rem;border-left:3px solid var(--gold);line-height:1.35;background:rgba(255,250,238,.5)}
.sheet-body .point{margin:.7rem 0 .8rem;position:relative}
.sheet-body .point.boxed{border:1.5px solid var(--gold);border-radius:6px;padding:.6rem .9rem .5rem;margin:.8rem .2rem}
.sheet-body .point h4{font-size:1.3rem;margin:0 0 .15rem;line-height:1.25}
.sheet-body .point h4 .ref-inline{font-weight:400;font-style:italic;font-size:.82em;color:#6b5a44}
.sheet-body .point .label{display:table;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid;border-radius:10px;padding:0 .5rem;margin-bottom:.2rem}
.sheet-body blockquote{margin:.4rem 0 .5rem .4rem;padding:.1rem .9rem;border-left:3px solid var(--gold);font-style:italic;color:var(--ink-2);font-size:1.08rem}
.sheet-body .footnote{font-size:.98rem;font-style:italic;margin-top:.3rem;color:var(--muted);line-height:1.35}
.sheet-body .footnote .fn-tag{font-style:normal;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:var(--gold-d);border-radius:8px;padding:0 .4rem}
.sheet-body .source{margin-top:.35rem;font-size:.95rem;line-height:1.38;color:var(--ink);padding:.3rem .7rem;border-left:4px solid var(--gold);border-radius:0 6px 6px 0;background:rgba(255,250,238,.7)}
.sheet-body .source .tag{color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;padding:.05rem .45rem;border-radius:8px;margin-right:.45em;background:var(--gold-d)}
.sheet-body .source .ref{font-weight:600}
.sheet-body .pt-figure{float:right;width:45%;margin:.15rem 0 .4rem 1rem}
.sheet-body .pt-figure.wide{float:none;width:auto;margin:.3rem 0 .5rem}
.sheet-body .pt-figure img{display:block;width:100%;border-radius:4px;border:1px solid #c9b48a}
.sheet-body .pt-figure .img-credit{font-size:.78rem;line-height:1.25;color:#6b5a44;margin-top:.15rem}
.sheet-body .point.has-figure .source{clear:both}
@media (max-width:560px){.sheet-body .pt-figure{float:none;width:auto;margin:.3rem 0 .5rem}}
.sheet-body .qtr{display:block;font-style:italic;font-size:.9em;line-height:1.3;color:#4a5a78;margin:.05rem 0 .2rem 1rem;padding-left:.4rem;border-left:2px solid #c9a75a}
.sheet-body .qtr b{font-style:normal;font-weight:600;font-size:.86em;letter-spacing:.04em;color:var(--brown);text-transform:uppercase;margin-right:.15rem}
.sheet-body .sec-notes{margin:.6rem 0 .3rem;padding:.4rem .9rem .3rem;border:1px dashed var(--gold);border-radius:6px;background:rgba(255,250,238,.6);font-size:.98rem}
.sheet-body .sec-notes-h{font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em}
.sheet-body .aliyos .point h4{font-size:1.15rem}
.sheet-body .bullets .point .body p{display:inline}
.sheet-body .bullets .point .source{display:inline;background:none;border:0;padding:0;margin-left:.3em;font-style:italic}
.sheet-body .sources-list ol{list-style:none;padding:0;font-size:.95rem}
.closing{margin-top:1.6rem;text-align:center}
.closing .gut{font-size:clamp(2rem,6vw,2.6rem);font-weight:700;font-style:italic;color:var(--navy);line-height:1.1}
.closing .note{font-size:.98rem;color:var(--muted);margin-top:.3rem}
.feedback-cta{margin-top:1.8rem;text-align:center}
.feedback-cta p{display:flex;justify-content:center}

/* survey */
.survey{max-width:var(--read);margin:0 auto}
.survey-form{display:grid;gap:.4rem;max-width:36rem}
.survey-form label,.survey-form legend{font-weight:600;margin-top:.8rem;font-size:1.05rem;color:var(--navy)}
.survey-form input[type=text],.survey-form input[type=email],.survey-form input[type=password],.survey-form textarea,.survey-form select{font:inherit;font-size:1.05rem;padding:.55rem .75rem;border:1px solid #8f7a5c;border-radius:8px;background:#fff;color:var(--ink);width:100%}
fieldset{border:1px solid var(--line);border-radius:12px;padding:.4rem 1rem .8rem;margin:.6rem 0 0;background:var(--cream)}
.rating-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.4rem}
.rate{display:inline-flex;align-items:center;gap:.3rem;margin:0!important;padding:.3rem .75rem;border:1px solid #8f7a5c;border-radius:8px;background:#fff;cursor:pointer;min-height:2.75rem;color:var(--ink)!important}
.rate:has(input:checked){background:var(--tint);border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.rate input{width:1.1rem;height:1.1rem;accent-color:var(--navy)}
.scale-label{font-size:.95rem;color:var(--muted);font-style:italic}
.hint{font-size:.95rem;color:var(--muted);margin:.3rem 0;font-style:italic}
.req{color:var(--wine)}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.survey-form .btn{margin-top:1rem;justify-self:start}
.table-wrap{overflow-x:auto}
.table-wrap table{border-collapse:collapse;font-size:.95rem;background:#fff}
.table-wrap th,.table-wrap td{border:1px solid var(--line);padding:.35rem .5rem;vertical-align:top;text-align:left}

.site-footer{border-top:3px solid var(--gold);color:#e9e2d0;font-size:1rem;background:var(--navy)}
.site-footer p{margin:0;padding:1.2rem 0;font-style:italic}
.site-footer a{color:#fff}
