@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700;800;900&family=Source+Sans+3:wght@300;400;500;600;700&display=swap");:root{--bg-cream:#f4ecd8;--bg-vintage:#d5cab0;--ink:#1c2029;--ink-soft:#384255;--brand-red:#b2241f;--brand-red-light:#d94a3e;--brand-blue:#1f4877;--brand-blue-deep:#0f2d4f;--paper:#fffef8;--line:#d4c6a1;--shadow:0 18px 40px rgba(31,23,7,0.16);--shadow-sm:0 4px 12px rgba(31,23,7,0.08);--shadow-lg:0 24px 56px rgba(31,23,7,0.22);--radius:12px;--radius-lg:18px;--font-display:"Playfair Display","Copperplate","Georgia",serif;--font-body:"Source Sans 3","Avenir Next","Gill Sans Nova","Trebuchet MS",sans-serif;--transition:200ms cubic-bezier(0.4,0,0.2,1);--nav-height:64px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{min-height:100vh;color:var(--ink);font-family:var(--font-body);font-weight:400;font-size:1.05rem;background:radial-gradient(ellipse at 10% 10%,rgba(249,243,222,.8) 0,transparent 50%),radial-gradient(ellipse at 85% 75%,rgba(217,206,178,.5) 0,transparent 50%),linear-gradient(168deg,var(--bg-cream) 0,#efe5cd 40%,var(--bg-vintage) 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;line-height:1.1;font-family:var(--font-display);letter-spacing:.01em;font-weight:700}p{margin:0;line-height:1.55}code{font-family:Courier New,monospace}ul{margin:0;padding-left:1.1rem}a{text-decoration:none;color:inherit}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:rgba(255,254,248,.88);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border-bottom:1px solid rgba(212,198,161,.6);height:var(--nav-height)}.navbar-inner{width:min(1200px,100% - 2rem);margin:0 auto;height:100%;justify-content:space-between;gap:1.5rem}.navbar-brand,.navbar-inner{display:flex;align-items:center}.navbar-brand{gap:.6rem;text-decoration:none;flex-shrink:0}.navbar-brand-icon{width:36px;height:36px;flex-shrink:0}.navbar-brand-text{display:flex;flex-direction:column}.navbar-brand-name{font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--brand-red);line-height:1.1;letter-spacing:.02em}.navbar-brand-sub{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);font-weight:600;line-height:1;margin-top:2px}.navbar-links{display:flex;align-items:center;gap:.25rem}.navbar-link{font-size:.95rem;font-weight:600;color:var(--ink-soft);padding:.4rem .75rem;border-radius:8px;transition:color var(--transition),background var(--transition)}.navbar-link:hover{color:var(--brand-blue);background:rgba(31,72,119,.06)}.navbar-link-active{color:var(--brand-blue);background:rgba(31,72,119,.1)}.navbar-right{gap:.75rem}.navbar-right,.navbar-user{display:flex;align-items:center}.navbar-user{gap:.5rem;padding:.3rem .6rem .3rem .35rem;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.6);cursor:default}.navbar-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(145deg,#e8ddc5,#c5b68e);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:.82rem;color:var(--brand-blue);flex-shrink:0}.navbar-user-name{font-size:.92rem;font-weight:600;color:var(--ink);white-space:nowrap}.navbar-actions{display:flex;align-items:center;gap:.4rem}.navbar-btn{border:1px solid var(--line);background:rgba(255,255,255,.5);color:var(--ink);border-radius:8px;padding:.42rem .8rem;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition)}.navbar-btn:hover{background:rgba(255,255,255,.85);border-color:#b8a889}.navbar-btn:disabled{opacity:.5;cursor:not-allowed}.navbar-btn-logout{color:var(--brand-red)}.navbar-btn-logout:hover{background:rgba(178,36,31,.06);border-color:rgba(178,36,31,.3)}.site-shell{width:min(1200px,100% - 2rem);margin:0 auto;padding:2.5rem 0 8rem}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:min(440px,100%);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:2.5rem 2rem;display:grid;grid-gap:.5rem;gap:.5rem;position:relative;overflow:hidden}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--brand-red),var(--brand-blue))}.login-brand-icon{width:48px;height:48px;margin-bottom:.25rem}.login-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700;color:var(--brand-red)}.login-card h1{font-size:clamp(1.6rem,4vw,2rem);color:var(--ink)}.login-subtitle{color:var(--ink-soft);font-size:1rem;margin-bottom:.5rem}.login-form-grid{display:grid;grid-gap:.65rem;gap:.65rem;margin-top:.4rem}.login-form-grid label{font-size:.92rem;font-weight:600;color:var(--ink-soft)}.login-form-grid input{border:1px solid #c5b89a;border-radius:10px;padding:.72rem .85rem;font:inherit;font-size:1rem;background:#fffdf8;transition:border-color var(--transition),box-shadow var(--transition)}.login-form-grid input:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(31,72,119,.1)}.login-form-grid button{margin-top:.5rem;border:0;border-radius:10px;font:inherit;font-weight:700;font-size:1.05rem;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-deep));color:#fff;padding:.7rem 1rem;cursor:pointer;transition:transform var(--transition),box-shadow var(--transition)}.login-form-grid button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px rgba(31,72,119,.3)}.login-form-grid button:disabled{background:#b8a79b;cursor:not-allowed}.login-error{margin-top:.1rem;font-size:.85rem;color:#91251b;font-weight:500}.warning-banner{margin:0 0 1.5rem;border:1px solid #e4a99e;background:#fef3ee;color:#6d1d11;padding:.7rem 1rem;border-radius:var(--radius);font-size:.9rem;font-weight:500}.hero-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-bottom:2.5rem;align-items:stretch}.hero-copy{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:2.2rem 2rem;display:flex;flex-direction:column;gap:1.1rem}.hero-tag{display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#fef0e6,#fde3d2);color:var(--brand-red);border:1px solid rgba(178,36,31,.2);border-radius:999px;padding:.3rem .85rem;width:-moz-fit-content;width:fit-content;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.hero-tag:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:var(--brand-red);animation:tagPulse 2s ease-in-out infinite}@keyframes tagPulse{0%,to{opacity:.5}50%{opacity:1}}.hero-copy h2{font-size:clamp(1.8rem,4vw,2.8rem);color:var(--ink);line-height:1.12;font-weight:800}.hero-copy>p{color:var(--ink-soft);font-size:1.1rem;line-height:1.6;max-width:48ch}.hero-cta{background:linear-gradient(135deg,var(--brand-red),var(--brand-red-light));border:0;border-radius:10px;padding:.7rem 1.4rem;font:inherit;font-size:.92rem;width:-moz-fit-content;width:fit-content;transition:transform var(--transition),box-shadow var(--transition);box-shadow:0 4px 14px rgba(178,36,31,.25);text-decoration:none}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(178,36,31,.35)}.hero-cta svg{width:18px;height:18px}.hero-actions{display:flex;align-items:center;gap:1.25rem;margin-top:1.5rem;flex-wrap:wrap}.hero-cta{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.35rem;font-size:1rem;font-weight:700;font-family:var(--font-body);color:#fff;background:linear-gradient(135deg,var(--brand-red),#8b1a17);border:none;border-radius:var(--radius);cursor:pointer;transition:all var(--transition);box-shadow:0 2px 8px rgba(178,36,31,.25)}.hero-cta:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(178,36,31,.35)}.hero-cta svg{flex-shrink:0}.hero-link{font-size:.95rem;font-weight:600;color:var(--brand-blue);text-decoration:none;transition:color var(--transition)}.hero-link:hover{color:var(--brand-blue-deep);text-decoration:underline}.hero-image{position:relative;min-height:400px;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-image img{object-fit:cover}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:1.5rem 1rem .8rem;background:linear-gradient(0deg,rgba(15,10,5,.75),rgba(15,10,5,0));color:rgba(255,255,255,.85);font-size:.78rem;font-weight:500}.section-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.section-header h3{font-size:clamp(1.5rem,3vw,2rem);color:var(--ink);font-weight:800}.section-link{font-size:.95rem;font-weight:600;color:var(--brand-blue);display:inline-flex;align-items:center;gap:.3rem;transition:gap var(--transition)}.section-link:hover{gap:.5rem}.section-link:after{content:"→"}.products-section{margin-bottom:2.5rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:1rem;gap:1rem}.product-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:transform var(--transition),box-shadow var(--transition);position:relative}.product-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.product-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.product-category{display:inline-block;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:700;color:var(--brand-red);background:rgba(178,36,31,.07);padding:.2rem .55rem;border-radius:6px}.product-price-badge{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--brand-blue);white-space:nowrap}.product-card h4{font-size:1.3rem;font-weight:700;color:var(--ink);line-height:1.2}.product-card>p{font-size:.98rem;color:var(--ink-soft);line-height:1.5;flex:1 1}.product-meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem;padding-top:.65rem;border-top:1px solid rgba(212,198,161,.5)}.product-meta span{font-size:.86rem;font-weight:500;color:var(--ink-soft);background:rgba(244,236,216,.6);padding:.2rem .5rem;border-radius:6px}.products-page-header{margin-bottom:2rem}.products-page-header h2{font-size:clamp(2rem,4vw,3rem);color:var(--ink);font-weight:800}.products-page-header p{margin-top:.5rem;color:var(--ink-soft);font-size:1.05rem;max-width:60ch}.products-page-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:3rem}.product-card-lg{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.65rem;transition:transform var(--transition),box-shadow var(--transition)}.product-card-lg:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.product-card-lg .product-category{font-size:.72rem}.product-card-lg h4{font-size:1.4rem;font-weight:700;color:var(--ink)}.product-card-lg>p{font-size:.92rem;color:var(--ink-soft);line-height:1.55;flex:1 1}.product-card-lg .product-meta{padding-top:.75rem}.product-card-lg-price{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--brand-blue)}.product-card-lg-stock{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:600}.product-card-lg-stock .stock-dot{width:8px;height:8px;border-radius:50%;background:#2d9a4e}.product-card-lg-stock.low-stock .stock-dot{background:#d97706}.product-specs{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.35rem;gap:.35rem;margin-top:.25rem}.product-spec{display:flex;justify-content:space-between;font-size:.78rem;padding:.3rem .5rem;background:rgba(244,236,216,.5);border-radius:6px}.product-spec-label{color:var(--ink-soft)}.product-spec-value{font-weight:600;color:var(--ink)}.how-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.75rem 2rem 2rem;margin-bottom:1.25rem}.how-panel h3{font-size:1.35rem;color:var(--ink);font-weight:800;margin-bottom:.6rem}.how-intro{color:var(--ink-soft);font-size:.92rem;line-height:1.55;margin-bottom:1.1rem}.how-tools-heading{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--brand-blue);margin-bottom:.6rem;padding-bottom:.35rem;border-bottom:1px solid var(--line)}.how-tools{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.6rem;gap:.6rem;margin-bottom:1.1rem}.how-tool-card{padding:.65rem .75rem;border-radius:var(--radius);background:rgba(31,72,119,.04);border:1px solid rgba(31,72,119,.1)}.how-tool-card code{display:block;font-size:.82rem;font-weight:600;color:var(--brand-blue);margin-bottom:.25rem}.how-tool-card span{font-size:.85rem;color:var(--ink-soft);line-height:1.45}.how-details{list-style:none;padding:0;margin:0;display:grid;grid-gap:.45rem;gap:.45rem}.how-details li{display:flex;align-items:flex-start;gap:.5rem;font-size:.88rem;color:var(--ink-soft);line-height:1.5}.how-details li:before{content:"";flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--brand-blue);margin-top:.5rem}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem 1.75rem}.graph-panel{min-height:420px}.graph-panel h3{font-size:clamp(1.5rem,3vw,2rem);color:var(--ink);font-weight:800;margin-bottom:.4rem}.panel-subtitle{color:var(--ink-soft);margin-bottom:1rem;font-size:.92rem}.graph-diagram-shell{width:100%;overflow:auto;border:1px solid rgba(212,198,161,.5);border-radius:var(--radius);background:#faf8f0;padding:1rem}.graph-diagram-shell svg{min-width:760px}.graph-fallback pre{width:100%;overflow:auto;border:1px solid rgba(212,198,161,.5);border-radius:var(--radius);background:#faf8f0;padding:1rem}.history-overlay{position:fixed;inset:0;z-index:200;background:rgba(15,12,7,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem}.history-modal{width:min(1020px,100%);max-height:min(82vh,760px);overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1.5rem 1.75rem}.history-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.history-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:700;color:var(--brand-red)}.history-modal-header h3{font-size:clamp(1.5rem,3vw,2rem);color:var(--ink);font-weight:800}.history-close{border:0;background:transparent;color:var(--ink-soft);font-size:1.5rem;cursor:pointer;line-height:1;padding:.25rem;border-radius:8px;transition:background var(--transition)}.history-close:hover{background:rgba(0,0,0,.05)}.history-modal-subtitle{margin-top:.4rem;margin-bottom:1rem;color:var(--ink-soft);font-size:.9rem}.history-table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:580px}td,th{padding:.65rem .7rem;border-bottom:1px solid rgba(212,198,161,.5);text-align:left;font-size:.95rem}th{color:var(--ink-soft);text-transform:uppercase;font-size:.7rem;font-weight:700;letter-spacing:.08em;border-bottom:2px solid var(--line)}td{color:var(--ink)}tbody tr:hover{background:rgba(244,236,216,.3)}.chat-shell{position:fixed;right:1.25rem;bottom:1.25rem;display:grid;grid-gap:.75rem;gap:.75rem;z-index:90}.chat-window{width:min(420px,calc(100vw - 2rem));height:min(600px,calc(100vh - 6rem));background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;animation:chatSlideUp .3s cubic-bezier(.34,1.56,.64,1)}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-header{background:linear-gradient(135deg,var(--brand-blue-deep),var(--brand-blue));color:#fff;justify-content:space-between;padding:.85rem 1rem;gap:.5rem}.chat-header,.chat-header-left{display:flex;align-items:center}.chat-header-left{gap:.6rem}.chat-header-avatar{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-header-avatar svg{width:20px;height:20px;color:#fff}.chat-label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;opacity:.7;font-weight:600}.chat-header h3{font-size:1.1rem;font-weight:700;line-height:1.1}.chat-header-actions{display:flex;align-items:center;gap:.35rem}.chat-reset{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;border-radius:8px;padding:.28rem .6rem;font:inherit;font-size:.76rem;font-weight:600;cursor:pointer;transition:background var(--transition)}.chat-reset:hover{background:rgba(255,255,255,.2)}.chat-collapse{border:0;background:rgba(255,255,255,.1);color:#fff;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;cursor:pointer;transition:background var(--transition)}.chat-collapse:hover{background:rgba(255,255,255,.2)}.chat-messages{overflow-y:auto;padding:1rem;background:#fdfbf5;display:flex;flex-direction:column;gap:.6rem}.chat-message{max-width:88%;border-radius:var(--radius);padding:.75rem .9rem;font-size:.95rem;line-height:1.5;animation:msgFade .2s ease-out}@keyframes msgFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-message p{margin-bottom:.3rem}.chat-message p:last-child{margin-bottom:0}.chat-message-user{margin-left:auto;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-deep));color:#fff;border-radius:var(--radius) var(--radius) 4px var(--radius)}.chat-message-assistant{margin-right:auto;background:#fff;border:1px solid rgba(212,198,161,.4);color:var(--ink);border-radius:var(--radius) var(--radius) var(--radius) 4px}.chat-message-pending{display:grid;grid-gap:.35rem;gap:.35rem}.thinking-label{margin:0;color:var(--ink-soft);font-size:.86rem;font-style:italic}.typing-dots{display:inline-flex;gap:.25rem;align-items:center}.typing-dots span{width:6px;height:6px;border-radius:50%;background:var(--brand-blue);opacity:.3;animation:typingPulse 1s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typingPulse{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.25rem}.chat-suggestion{text-align:left;border:1px solid rgba(31,72,119,.2);background:rgba(31,72,119,.04);color:var(--brand-blue);border-radius:999px;padding:.45rem .9rem;font:inherit;font-size:.92rem;font-weight:600;max-width:100%;cursor:pointer;transition:all var(--transition);line-height:1.3}.chat-suggestion:hover{background:rgba(31,72,119,.1);border-color:rgba(31,72,119,.35);transform:translateY(-1px)}.chat-quote{border-top:1px dashed rgba(212,198,161,.6);margin-top:.5rem;padding-top:.5rem}.chat-quote ul{margin-top:.35rem;padding-left:1rem}.chat-trace{margin-top:.5rem;border-top:1px dashed rgba(212,198,161,.6);padding-top:.45rem}.chat-trace summary{cursor:pointer;color:var(--brand-blue);font-size:.8rem;font-weight:700}.chat-trace ol{margin:.45rem 0 0;padding-left:1rem;display:grid;grid-gap:.35rem;gap:.35rem;max-height:210px;overflow:auto}.chat-trace li{overflow-wrap:anywhere;word-break:break-word}.chat-trace li p{margin:0;font-size:.8rem;line-height:1.35}.trace-title{margin-bottom:.15rem}.trace-detail{color:var(--ink-soft)}.chat-form{display:flex;gap:.5rem;padding:.6rem .75rem;border-top:1px solid rgba(212,198,161,.4);background:#fff;align-items:stretch}.chat-form textarea{resize:none;flex:1 1;border-radius:10px;border:1px solid #ccc2ab;padding:.35rem .75rem;max-height:3.8rem;font:inherit;font-size:.95rem;background:#fdfbf5;transition:border-color var(--transition),box-shadow var(--transition)}.chat-form textarea:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 2px rgba(31,72,119,.1)}.chat-form button{border:0;border-radius:10px;cursor:pointer;font:inherit;font-weight:700;font-size:.95rem;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-deep));color:#fff;min-width:2.75rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--transition),box-shadow var(--transition)}.chat-form button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(31,72,119,.3)}.chat-form button:disabled{background:#b8a79b;cursor:not-allowed}.chat-fab{margin-left:auto;border:0;border-radius:999px;cursor:pointer;font:inherit;font-weight:700;font-size:.95rem;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-deep));color:#fff;padding:.75rem 1.25rem;box-shadow:0 8px 28px rgba(31,72,119,.35);transition:transform var(--transition),box-shadow var(--transition);display:inline-flex;align-items:center;gap:.5rem}.chat-fab:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(31,72,119,.4)}.chat-fab svg{width:18px;height:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-footer{border-top:1px solid rgba(212,198,161,.5);padding:2rem 0;margin-top:1rem}.site-footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.site-footer p{font-size:.82rem;color:var(--ink-soft)}@media (max-width:900px){.hero-grid,.how-tools{grid-template-columns:1fr}.hero-image{min-height:260px}.navbar-user-name{display:none}.products-page-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width:640px){.site-shell{width:min(100% - 1rem,1200px);padding-top:1.5rem}.navbar-links,.navbar-user-name{display:none}.hero-copy{padding:1.5rem 1.25rem}.chat-shell{right:.5rem;bottom:.5rem}.chat-window{width:min(380px,calc(100vw - 1rem));height:min(70vh,560px)}.product-grid,.products-page-grid{grid-template-columns:1fr}.section-header{flex-direction:column;gap:.5rem}.navbar-btn:not(.navbar-btn-logout){font-size:.72rem;padding:.32rem .55rem}}