@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,700&display=swap');:root{--wine:#772f36;--dark:#54282e;--cream:#f4eddd;--gold:#f2d68e;--line:#dacbb5;--muted:#8d8278}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--dark);font:14px 'DM Sans',sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}header{height:73px;padding:0 5vw;display:flex;align-items:center;gap:54px;border-bottom:1px solid #d5c6b0}.brand,footer strong{font:700 27px Fraunces,Georgia,serif}.brand span,footer strong span{color:#bc8a4a;font-size:18px;margin-left:5px}nav{display:flex;gap:26px;font-size:12px;font-weight:700}nav a:hover{text-decoration:underline}.header-note{margin-left:auto;font-size:10px;letter-spacing:1.6px;color:#9c8879;font-weight:700}.hero{display:grid;grid-template-columns:1fr .9fr;min-height:470px;max-width:1550px;margin:auto}.hero-copy{padding:85px 5vw 70px}.eyebrow,.section-kicker{font-size:10px;letter-spacing:1.8px;color:#b17d4b;font-weight:700}h1,h2{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-2px}h1{font-size:clamp(56px,6vw,94px);line-height:1.05;margin:19px 0}h1 em,h2 em{font-weight:500;color:#ab5a4f}.hero-copy p{font-size:16px;line-height:1.7;color:#806e65;max-width:510px;margin:0 0 27px}.cta,.generate-controls button,.draw-actions #draw{display:inline-flex;justify-content:space-between;gap:45px;background:var(--wine);color:#fff;padding:15px 18px;border:0;font-weight:700;font-size:12px}.cta:hover,.generate-controls button:hover,.draw-actions #draw:hover{background:#8d3e46}.cta span{font-size:19px;font-weight:400}.hero-bottom{font-size:9px;letter-spacing:1.4px;color:#a28c78;margin-top:24px;font-weight:700}.hero-art{background:#752f36;display:grid;place-items:center;position:relative;overflow:hidden;padding:30px}.art-ring{position:absolute;width:500px;height:500px;border:1px solid #a76564;border-radius:50%}.hero-art:after{content:'';position:absolute;width:720px;height:720px;border:1px solid #934a4d;border-radius:50%}.art-card{position:relative;z-index:1;background:#f5ecd8;width:min(84%,410px);padding:26px;transform:rotate(-6deg);box-shadow:15px 18px 0 #3a171c80}.art-card small{font-size:10px;letter-spacing:1.4px;font-weight:700}.art-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:2px;margin:15px 0}.art-grid b{height:30px;display:grid;place-items:center;border:1px solid #bfa98e;font:700 15px Fraunces,Georgia,serif}.art-card>span{font-size:9px;letter-spacing:1.2px}.art-ball{position:absolute;z-index:2;bottom:27px;right:10%;background:var(--gold);border-radius:50%;width:78px;height:78px;display:grid;place-items:center;color:var(--wine);font:700 33px Fraunces,Georgia,serif;box-shadow:5px 8px 15px #0003}.tool{padding:70px 5vw 85px;max-width:1560px;margin:auto}.tool-head{display:flex;justify-content:space-between;gap:25px;align-items:end}.tool-head h2,.draw h2{font-size:clamp(38px,4.3vw,64px);margin:14px 0 8px}.tool-head p,.draw-head p{color:#8b786d;line-height:1.6;margin:0}.generate-controls{display:flex;align-items:end;gap:8px;flex:none}.generate-controls label{font-size:11px;font-weight:700;align-self:center}.generate-controls input{width:65px;padding:10px;border:1px solid #cbbda7;background:#fff}.generate-controls button{padding:11px 13px}.error{background:#fff0e8;color:#9c3b2c;padding:10px;font-size:11px}.cards-top{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:26px;padding:18px 0;font-size:11px;font-weight:700}.cards-top button{background:var(--dark);color:#fff;border:0;padding:11px 16px;font-size:11px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.card{background:#fffdf6;border:1px solid #d6c7b0;padding:18px}.card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-head strong{font:500 24px Fraunces,Georgia,serif}.card-head span{font-size:9px;letter-spacing:1.2px;color:#a17e5f;font-weight:700}.card-grid{display:grid;grid-template-columns:repeat(9,1fr);border-left:1px solid #b9a68e;border-top:1px solid #b9a68e}.card-grid span{height:43px;display:grid;place-items:center;border-right:1px solid #b9a68e;border-bottom:1px solid #b9a68e;font:700 21px Fraunces,Georgia,serif}.card-grid .empty-cell{background:#f2eee5}.card-foot{font-size:9px;letter-spacing:1.5px;color:#b2947c;margin-top:12px}.privacy{font-size:10px;color:#a28e80;margin-top:17px}.draw{background:#782f37;color:#f8e9d9;padding:75px 5vw 85px}.draw-head,.draw-status,.board{max-width:1450px;margin-left:auto;margin-right:auto}.draw-head{display:flex;justify-content:space-between;gap:20px;align-items:end}.draw .section-kicker{color:#efc68f}.draw h2 em{color:#edc285}.draw-head p{color:#dec4b9;max-width:540px}.draw-actions{display:flex;gap:7px}.draw-actions button{padding:11px 13px;border:1px solid #c88983;background:transparent;color:#fff;font-size:11px;font-weight:700}.draw-actions #draw{background:#efcd88;color:#5e2c30;border-color:#efcd88}.draw-status{display:flex;align-items:center;gap:30px;margin-top:26px;border-top:1px solid #9a5660;border-bottom:1px solid #9a5660;padding:17px 0}.last-number{display:flex;align-items:center;gap:16px}.last-number small,.drawn-count span{font-size:9px;letter-spacing:1.2px;color:#debab5}.last-number strong{background:#f6d995;color:var(--wine);border-radius:50%;width:62px;height:62px;display:grid;place-items:center;font:700 28px Fraunces,Georgia,serif}.drawn-count{margin-left:auto;text-align:right}.drawn-count strong{display:block;font:500 27px Fraunces,Georgia,serif}.board{display:grid;grid-template-columns:repeat(10,1fr);gap:7px;margin-top:22px}.board span{aspect-ratio:1.3;border:1px solid #b67578;display:grid;place-items:center;font:700 18px Fraunces,Georgia,serif;color:#efdfd5}.board span.called{background:#f0d18b;color:#6b3039;border-color:#f0d18b}.faq{padding:55px 5vw 85px;max-width:1380px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:#8c786b;line-height:1.7}footer{background:#52262d;color:#d8bcb2;padding:24px 5vw;display:flex;align-items:center;gap:25px;font-size:11px}footer strong{color:#fff}footer span:last-child{margin-left:auto}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-art{min-height:350px}.tool-head,.draw-head{display:block}.generate-controls,.draw-actions{margin-top:18px}}@media(max-width:600px){header{height:62px;gap:15px}nav{margin-left:auto;gap:12px;font-size:11px}.header-note{display:none}.hero-copy{padding:60px 5vw}.tool{padding:55px 4vw}.generate-controls{flex-wrap:wrap}.cards{grid-template-columns:1fr}.card-grid span{height:36px;font-size:17px}.draw{padding:60px 4vw}.draw-actions{flex-wrap:wrap}.board{gap:3px}.board span{font-size:12px}footer{flex-wrap:wrap}footer span:last-child{margin-left:0}}@media print{header,.hero,.tool>.section-kicker,.tool-head,.cards-top,.privacy,.draw,.faq,footer,.error{display:none!important}body,.tool{background:#fff}.tool{padding:0}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:4mm}.card{padding:4mm;break-inside:avoid;min-height:75mm}.card-grid span{height:15mm;font-size:15pt}.card-head strong{font-size:17pt}.card-foot{margin-top:4mm}@page{size:A4;margin:9mm}}
.board button{aspect-ratio:1.3;border:1px solid #b67578;display:grid;place-items:center;font:700 18px Fraunces,Georgia,serif;color:#efdfd5;background:transparent;cursor:pointer}.board button.called{background:#f0d18b;color:#6b3039;border-color:#f0d18b}.board button:focus-visible{outline:2px solid #fff;outline-offset:2px}.rules{max-width:1450px;margin:auto;padding:40px 5vw 70px;border-top:1px solid #b67578}.rules h2{font-size:clamp(32px,4vw,55px);margin:16px 0}.rules p{max-width:800px;line-height:1.8}@media(max-width:600px){.board button{font-size:12px}}@media print{.rules{display:none!important}}


/* Usability pass: bring the working area into view sooner. */
@media screen {
  html { scroll-padding-top: 20px; }
  :where(a,button,input,select,textarea):focus-visible { outline: 3px solid #b66a48; outline-offset: 3px; }
  .hero h1 { font-size: clamp(46px,5.1vw,66px); line-height: 1.04; }
  .hero p { margin-bottom: 19px; }
  .tool-intro h2,.section-intro h2,.intro h2,.tool-heading h2,.tool-head h2 { font-size: clamp(34px,3.8vw,52px); }
  .tool-intro,.section-intro,.intro,.tool-heading { margin-bottom: 19px; }
}
@media screen and (max-width:700px) {
  .hero h1 { font-size: clamp(42px,11vw,50px); }
  .hero-art,.hero-pattern,.hero-visual,.box-art,.hero .art { display: none; }
  .hero-copy,.hero-text,.hero-left,.hero>div:first-child { padding: 34px 5vw 28px; }
  .tool-intro h2,.section-intro h2,.intro h2,.tool-heading h2,.tool-head h2 { font-size: clamp(32px,8.2vw,40px); }
  .tool,.planner,.tool-wrap { padding-top: 30px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; }
}

@media screen and (min-width:701px){.hero{min-height:0}.hero-copy{padding:32px 5vw 25px}.hero-art{min-height:345px}.tool{padding-top:27px}}@media screen and (max-width:700px){.hero{min-height:0}}

@media screen {
/* TOOLWOVEN REDESIGN 2026-10-16: tomboli */
:root{--tw-accent:#ad7310;--tw-paper:#fcf5e4}
.hero{min-height:0!important;max-width:1460px!important;padding:25px max(5vw,20px) 16px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(130px,210px)!important;gap:24px!important;align-items:center!important;background:var(--tw-paper)}
.hero h1{font-size:clamp(29px,3.2vw,45px)!important;line-height:1.12!important;letter-spacing:-.035em!important;margin:0 0 8px!important;max-width:24ch}
.hero h1 br{display:none!important}
.hero p{font-size:clamp(14px,1.1vw,16px)!important;line-height:1.45!important;margin:0!important;max-width:65ch}
.hero .eyebrow,.hero .kicker,.hero .hero-micro,.hero .micro,.hero .hero-foot,.hero .privacy,.hero .hero-bottom,.hero .cta,.hero .hero-button{display:none!important}
.hero>:last-child{max-height:132px!important;min-height:0!important;overflow:hidden!important;border-radius:12px;opacity:.87}
.tool,.tool-wrap,.planner{padding:18px max(5vw,20px) 72px!important;margin-top:0!important}
.tool-intro,.tool-heading,.tool-head,.section-intro,.intro{margin-bottom:12px!important;padding-top:0!important}
.tool-intro h2,.tool-heading h2,.tool-head h2,.section-intro h2,.intro h2{font-size:clamp(20px,2vw,28px)!important;line-height:1.2!important;margin:0 0 5px!important}
.tool-intro p,.tool-heading p,.tool-head p,.section-intro p,.intro p{font-size:14px!important;line-height:1.4!important;margin:0!important}
.section-kicker{margin-bottom:8px!important}
.tool input:focus-visible,.tool select:focus-visible,.tool textarea:focus-visible,.tool-wrap input:focus-visible,.tool-wrap select:focus-visible,.planner input:focus-visible,.planner textarea:focus-visible{outline:3px solid var(--tw-accent)!important;outline-offset:2px}
@media(max-width:760px){.hero{display:block!important;padding:18px 18px 10px!important}.hero>:last-child{display:none!important}.hero h1{font-size:clamp(26px,7vw,34px)!important;max-width:none}.hero p{font-size:14px!important}.tool,.tool-wrap,.planner{padding:12px 18px 56px!important}.tool-intro p,.tool-heading p,.tool-head p,.section-intro p,.intro p{display:none!important}.section-kicker{display:none!important}}

footer{flex-wrap:wrap!important}.tw-xlinks{flex:1 1 100%!important;width:auto!important;min-width:0!important;box-sizing:border-box!important}

}
