:root{--green:#075b3a;--deep:#053b29;--gold:#d7a72d;--cream:#f7f5ee;--ink:#17211d;--muted:#607069;--line:#dde4df;--white:#fff;--shadow:0 14px 38px rgba(5,59,41,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 2rem));margin-inline:auto}.narrow{max-width:780px}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:99}header{position:sticky;top:0;z-index:20;background:#fffffff5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{font-weight:850;color:var(--deep);font-size:1.1rem}.brand span{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--green);color:#fff;border-radius:10px;margin-right:.45rem}.nav nav{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.nav nav a{color:#24352e;font-weight:650}.nav .cart{background:var(--green);color:#fff;padding:.5rem .8rem;border-radius:9px}.hero{background:linear-gradient(120deg,#edf7f1,#faf6e9);padding:5.5rem 0;border-bottom:1px solid var(--line)}.hero-grid,.detail{display:grid;grid-template-columns:1.35fr .85fr;gap:3rem;align-items:center}h1,h2,h3{line-height:1.15;color:var(--deep);margin-top:0}h1{font-size:clamp(2.3rem,6vw,4.5rem);letter-spacing:-.045em;margin-bottom:1rem}h2{font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.025em}.lead,.hero p{font-size:1.15rem;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.78rem;color:#8b6705}.hero-card,.feature,.panel,.success-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:1.5rem;box-shadow:var(--shadow)}.hero-card li{margin:.7rem 0}.actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:1.3rem}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:var(--green);color:#fff;padding:.75rem 1.1rem;font:inherit;font-weight:750;cursor:pointer}.btn:hover{background:var(--deep);text-decoration:none}.btn.secondary{background:#fff;color:var(--green);border:1px solid var(--green)}.btn.small{padding:.48rem .75rem;font-size:.9rem}.section{padding:4rem 0}.tint,.page-head{background:var(--cream)}.page-head{padding:3.5rem 0}.page-head h1{font-size:clamp(2.2rem,5vw,3.5rem)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.6rem}.grid{display:grid;gap:1.25rem}.cards{grid-template-columns:repeat(4,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 5px 18px #053b290f}.media{width:100%;height:210px;object-fit:cover;background:#eef2ef}.placeholder{display:grid;place-items:center;color:#6c7a74;font-weight:800;background:linear-gradient(135deg,#e4eee8,#f4edd8)}.card-body{padding:1.15rem}.card-body h2,.card-body h3{font-size:1.12rem;margin:.7rem 0}.card-body p{color:var(--muted)}.price{display:block;font-size:1.15rem;color:var(--deep)}.stock{display:inline-block;border-radius:999px;padding:.2rem .55rem;background:#e1f4e8;color:#176439;font-size:.78rem;font-weight:800}.stock.out{background:#fbe4e4;color:#a22}.crumb{font-size:.9rem;color:var(--muted)}.detail>img,.detail>.media{border-radius:20px;max-height:520px;object-fit:contain}.prose{font-size:1.05rem}.course-list li{padding:.8rem 0;border-bottom:1px solid var(--line)}.search{max-width:600px}.search label{font-weight:700}.search div{display:flex;gap:.5rem}.search input{flex:1}.form{display:grid;gap:1rem}.form label{display:grid;gap:.35rem;font-weight:700}.form input,.form textarea,.search input,table input{width:100%;border:1px solid #b8c5bf;border-radius:9px;padding:.72rem;font:inherit;background:#fff}.form input:focus,.form textarea:focus,.search input:focus{outline:3px solid rgba(215,167,45,.3);border-color:var(--gold)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.check input{width:auto}.flash,.errors{margin-top:1rem;padding:1rem;border-radius:10px}.flash{background:#e4f5e9;color:#175d33}.errors{background:#fde8e8;color:#902020}.empty{text-align:center;border:1px dashed #adbbb4;padding:3rem;border-radius:16px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.9rem;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.8rem;text-transform:uppercase;color:var(--muted)}.link-btn{border:0;background:none;color:#a22;cursor:pointer}.cart-total{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:1.5rem}details{padding:1rem 0;border-bottom:1px solid var(--line)}summary{font-weight:800;cursor:pointer}.login{max-width:500px}footer{background:var(--deep);color:#d9e5df;padding:3rem 0 1rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer-grid a{color:#fff}.copyright{text-align:center;border-top:1px solid #2b5b49;padding-top:1rem;margin-top:2rem}.admin{display:grid;grid-template-columns:250px 1fr;min-height:100vh;background:#f3f5f3}.admin>aside{background:var(--deep);color:#fff;padding:1.4rem;position:sticky;top:0;height:100vh}.admin aside .brand{color:#fff}.admin aside nav{display:grid;gap:.3rem;margin:2rem 0}.admin aside nav a{color:#dfeae4;padding:.7rem;border-radius:8px}.admin aside nav a:hover{background:#174d3a;text-decoration:none}.admin>main{min-width:0}.admin-top{height:72px;padding:0 2rem;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.admin-content{padding:2rem}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.2rem;border-top:4px solid var(--gold)}.metric span{color:var(--muted)}.metric strong{display:block;font-size:2rem;color:var(--deep)}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.nav{align-items:flex-start;padding-block:.8rem}.nav nav{gap:.7rem;font-size:.9rem}.hero-grid,.detail,.admin{grid-template-columns:1fr}.admin>aside{position:static;height:auto}.admin aside nav{display:flex;flex-wrap:wrap;margin:1rem 0}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.nav{display:block}.nav nav{margin-top:.7rem;overflow:visible;flex-wrap:wrap;padding-bottom:.4rem}.hero{padding:3.5rem 0}.cards,.three,.form-grid,.footer-grid,.metric-grid{grid-template-columns:1fr}.section{padding:2.7rem 0}.admin-content,.admin-top{padding:1rem}.section-head{align-items:flex-start}.cart-total{align-items:flex-end;flex-direction:column}}:root{--shadow:0 18px 50px rgba(5,59,41,.09)}body{background:#fcfdfb}main{min-height:55vh}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a,button,.card,.feature,.metric,input,textarea,select{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.icon{width:1.15em;height:1.15em;flex-shrink:0;vertical-align:middle}.btn{gap:.5rem;min-height:44px;box-shadow:0 4px 10px #075b3a12}.btn:active{transform:translateY(1px)}.btn[aria-disabled=true]{opacity:.7;cursor:wait}.nav nav a{display:inline-flex;gap:.35rem;align-items:center;padding-block:.5rem;position:relative}.nav nav a[aria-current=page]:not(.cart){color:var(--green)}.nav nav a[aria-current=page]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:4px;background:var(--gold)}.brand{white-space:nowrap}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 90% 20%,#e9d8a366,transparent 45%),linear-gradient(120deg,#edf7f1,#faf6e9)}.hero:before{content:"";position:absolute;width:400px;height:400px;right:-220px;top:-240px;border:60px solid #075b3a08;border-radius:50%;pointer-events:none}.hero-grid{position:relative}.hero-card{border-top:4px solid var(--gold);padding:2rem}.hero-card strong{font-size:1.25rem;color:var(--deep)}.hero-card ul{list-style:none;padding:0;margin-bottom:0}.hero-card li{display:flex;align-items:flex-start;gap:.7rem}.hero-card li .icon{color:var(--green);margin-top:.3rem}.eyebrow{display:inline-block;margin-bottom:.65rem}.section-head h2{margin-bottom:0}.card{display:flex;flex-direction:column}.card-body{display:flex;flex-direction:column;flex:1;padding:1.35rem}.card-body .actions{margin-top:auto;padding-top:1rem}.card-body .price{margin-bottom:.75rem}.placeholder{display:flex;flex-direction:column;gap:.75rem;justify-content:center;align-items:center}.placeholder>.icon{width:3.5rem;height:3.5rem;stroke-width:1.1;color:var(--green)}.feature{border-top:3px solid var(--gold)}.page-head{background:radial-gradient(ellipse at right top,#e3eddf,transparent 65%),var(--cream);border-bottom:1px solid var(--line)}.page-head p{color:var(--muted);max-width:650px}.form{padding:1.6rem;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.form h1{font-size:clamp(2rem,4vw,3rem)}.form textarea{resize:vertical;min-height:100px}.form input,.form textarea,.search input,select,input[type=number]{min-height:44px}.form input[type=checkbox]{min-height:auto;accent-color:var(--green);width:18px;height:18px}.search input{min-width:0}select,input[type=number]{font:inherit;border:1px solid #b8c5bf;border-radius:9px;background:#fff;padding:.5rem}.actions input[type=number],td input[type=number]{width:90px}.form input[type=number]{width:100%}select{max-width:100%}.table-wrap{border-radius:12px}thead{background:#eef3ef}tbody tr:hover{background:#f4f8f4}.admin aside nav a{display:flex;align-items:center;gap:.65rem}.admin aside nav a[aria-current=page]{background:#ffffff15;color:#fff;box-shadow:inset 3px 0 var(--gold)}.admin aside form{box-shadow:none}.metric{background:linear-gradient(135deg,#fff,#f5f8f1)}.metric span{text-transform:capitalize}.admin-top span{overflow-wrap:anywhere}.password-field{position:relative}.password-field input{padding-right:4.5rem}.password-toggle{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);border:0;background:#edf4ee;color:var(--green);border-radius:6px;padding:.45rem;cursor:pointer;font-weight:700}details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.15rem 1.3rem;margin-bottom:.75rem}details[open]{border-color:#83ad92;box-shadow:0 5px 20px #075b3a08}summary{color:var(--deep)}summary::marker{color:var(--green)}details p{margin-bottom:0}.empty{grid-column:1/-1;background:#f7faf6}.success-panel{border-top:4px solid var(--gold)}.footer-grid p{overflow-wrap:anywhere}.copyright{font-size:.85rem}.menu-toggle{display:none;align-items:center;gap:.5rem;border:1px solid var(--line);background:#fff;color:var(--deep);border-radius:9px;padding:.55rem .75rem;font:inherit;font-weight:700}.back-top{position:fixed;right:1.25rem;bottom:1.25rem;width:46px;height:46px;display:grid;place-items:center;border:1px solid #ffffff55;border-radius:50%;background:var(--green);color:#fff;box-shadow:var(--shadow);z-index:25;cursor:pointer}[hidden]{display:none!important}.link-btn{font:inherit;padding:.6rem}.prose{overflow-wrap:anywhere}.detail>*{min-width:0}@media(hover:hover){.card:hover,.feature:hover{transform:translateY(-5px);box-shadow:0 20px 40px #053b2914;border-color:#9ab6a3}.btn:hover{transform:translateY(-2px);box-shadow:0 7px 20px #075b3a20}.btn.secondary:hover{background:#eff6ef}.back-top:hover{background:var(--deep)}}@media(max-width:1100px){.nav nav{gap:.65rem;font-size:.88rem}.nav nav .icon{display:none}}@media(max-width:900px){.nav{display:flex;flex-wrap:wrap;align-items:center}.menu-toggle:not([hidden]){display:inline-flex}.nav nav{width:100%;gap:.25rem;font-size:1rem}.nav nav.collapsible{display:none}.nav nav.collapsible.is-open{display:grid;grid-template-columns:1fr 1fr}.nav nav a{padding:.65rem}.nav nav .icon{display:inline-block}.nav nav a[aria-current=page]:after{left:.65rem;right:.65rem}.three{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{gap:2rem}.admin-top{gap:1rem}}@media(max-width:600px){.nav{display:flex}.brand{font-size:1rem}.brand span{width:30px;height:30px}.hero-card,.form{padding:1.25rem}.three{grid-template-columns:1fr}.section-head{flex-wrap:wrap}.section-head>a{font-size:.9rem}.page-head{padding:2.5rem 0}.search div{flex-wrap:wrap}.search input{flex-basis:180px}.back-top{bottom:1rem;right:1rem}.admin-top{height:auto;min-height:72px;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.card:hover,.feature:hover,.btn:hover{transform:none}}.pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line);font-size:.9rem;color:var(--muted)}.pagination-links{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.pagination [aria-disabled=true]{cursor:default;box-shadow:none}.pagination .btn{font-size:.9rem}.training-metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0;padding:1rem;background:#f0f6f0;border:1px solid var(--line);border-radius:12px}.training-metadata dt{font-size:.8rem;font-weight:700;color:var(--muted);margin-bottom:.25rem}.training-metadata dd{margin:0;font-weight:750;color:var(--deep);overflow-wrap:anywhere}@media(max-width:400px){.training-metadata{grid-template-columns:1fr}}.training-icon{display:grid;place-items:center;width:76px;height:76px;margin-bottom:1.25rem;border:1px solid #d7a72d66;border-radius:20px;background:linear-gradient(135deg,#e7f2e9,#faf2d9);color:var(--green);box-shadow:0 6px 16px #075b3a08}.training-icon>.icon{width:40px;height:40px;stroke-width:1.6}.brand{display:inline-flex;align-items:center;gap:.65rem}.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:50%;flex-shrink:0}.admin aside .brand{font-size:1rem;gap:.5rem}.admin .brand-logo{width:42px;height:42px}@media(max-width:600px){.brand-logo{width:42px;height:42px}.brand{gap:.5rem}}
