:root{--navy:#062f4a;--navy2:#0a4668;--gold:#c7a75b;--gold2:#ead79f;--ink:#17212b;--muted:#66727d;--line:#e3e7e9;--bg:#f6f8f8;--white:#fff;--red:#bb2d3b;--shadow:0 16px 45px rgba(6,47,74,.10);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--white);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.narrow{max-width:780px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;background:#fff;padding:10px;z-index:99}.topbar{background:#03283e;color:#dce9ee;font-size:.78rem}.topbar .container{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar a{color:var(--gold2)}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap{min-height:82px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:10px;margin-right:auto;min-width:195px}.brand img{width:52px;height:52px;object-fit:contain}.brand strong{display:block;color:var(--navy);font:700 1.18rem Georgia,serif;letter-spacing:.12em}.brand small{display:block;color:var(--muted);font-size:.66rem;line-height:1.1}.site-header nav{display:flex;align-items:center;gap:17px;font-size:.83rem;font-weight:650}.site-header nav a{padding:30px 0;white-space:nowrap}.site-header nav a:hover{color:var(--navy2)}.cart-link{display:flex;align-items:center;gap:7px;background:var(--navy);color:#fff;border-radius:999px;padding:10px 15px;font-size:.84rem;font-weight:700}.cart-link span{display:grid;place-items:center;width:21px;height:21px;background:var(--gold);color:var(--navy);border-radius:50%}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px}.hero{color:#fff;background:radial-gradient(circle at 83% 23%,rgba(199,167,91,.24),transparent 28%),linear-gradient(125deg,#03283e,#075173);padding:82px 0 72px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:60px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--navy2);font-size:.73rem;font-weight:800;margin:0 0 12px}.eyebrow.light{color:var(--gold2)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.12;color:var(--navy);margin-top:0}.hero h1{color:#fff;font-size:clamp(2.7rem,5.6vw,5rem);max-width:760px;margin-bottom:22px}.lead{font-size:1.2rem;max-width:700px;color:#dce7eb}.lead.small{font-size:1rem;color:var(--muted)}.hero-actions,.card-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:44px;border:1px solid var(--navy);border-radius:10px;background:var(--navy);color:#fff;padding:10px 17px;font-weight:750;cursor:pointer;transition:.2s transform,.2s background}.btn:hover{transform:translateY(-2px);background:var(--navy2)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#082f45}.btn-outline{border-color:rgba(255,255,255,.55);background:transparent}.btn-light{background:#fff;color:var(--navy);border-color:var(--line)}.btn-wide{width:100%}.hero-visual{position:relative;display:grid;place-items:center}.hero-visual>img{width:min(400px,80%);filter:drop-shadow(0 25px 45px rgba(0,0,0,.35))}.hero-stat{position:absolute;right:5%;bottom:2%;background:#fff;color:var(--navy);border-radius:14px;padding:16px 20px;box-shadow:var(--shadow)}.hero-stat strong,.hero-stat span{display:block}.hero-stat strong{font-size:1.4rem}.hero-stat span{font-size:.78rem;color:var(--muted)}.trust-strip{border-bottom:1px solid var(--line)}.trust-strip .container{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:.87rem}.trust-strip span:before{content:"✓";color:var(--gold);font-weight:900;margin-right:8px}.section{padding:82px 0}.section-tint{background:var(--bg)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.section-head h2,.cta h2{font-size:clamp(2rem,4vw,3.1rem);margin:0}.section-head>a{color:var(--navy2);font-weight:700;border-bottom:1px solid var(--gold)}.books-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.book-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 28px rgba(20,45,60,.06);transition:.2s transform,.2s box-shadow}.book-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.cover-wrap{height:365px;display:grid;place-items:center;position:relative;padding:25px;background:linear-gradient(145deg,#f2f4f4,#fff)}.cover-wrap img{max-height:100%;max-width:100%;object-fit:contain;box-shadow:0 12px 25px rgba(0,0,0,.16)}.badge{position:absolute;left:16px;top:16px;background:var(--navy);color:#fff;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:800}.badge-promo{background:var(--red)}.book-body{display:flex;flex-direction:column;flex:1;padding:24px}.book-body h3{font-size:1.4rem;margin:0 0 9px}.author,.meta{color:var(--muted);font-size:.83rem;margin:4px 0}.price-row{display:flex;align-items:baseline;gap:10px;margin:14px 0}.price-row del{color:var(--muted)}.price-row strong{font-size:1.35rem;color:var(--navy)}.price-row.large strong{font-size:2rem}.card-actions{margin-top:auto}.card-actions form{flex:1}.card-actions .btn{width:100%;font-size:.82rem}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.category-grid a{min-height:190px;padding:28px;border-radius:var(--radius);background:linear-gradient(145deg,var(--navy),var(--navy2));color:#fff;display:flex;flex-direction:column;justify-content:end}.category-grid strong{font:700 1.55rem Georgia,serif}.category-grid span{color:#dce7eb;font-size:.87rem}.cta{background:var(--navy);color:#fff;padding:58px 0}.cta .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{color:#fff;max-width:750px}.page-hero{padding:70px 0;background:linear-gradient(135deg,#edf3f4,#fff)}.page-hero.compact{padding:48px 0}.page-hero h1{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:14px}.page-hero p:not(.eyebrow){max-width:740px;color:var(--muted);font-size:1.08rem}.filters{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:12px;align-items:end;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--bg);margin-bottom:18px}.filters label,.form-card label,.buy-box label{display:grid;gap:6px;font-size:.78rem;font-weight:750;color:var(--navy)}input,select,textarea{width:100%;border:1px solid #cfd7da;border-radius:9px;background:#fff;padding:10px 11px;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid rgba(199,167,91,.25);border-color:var(--gold)}.results-count{font-size:.85rem;color:var(--muted);margin-bottom:24px}.product{display:grid;grid-template-columns:minmax(300px,.8fr) 1.2fr;gap:70px;align-items:start}.product-cover{min-height:580px;padding:45px;background:var(--bg);border-radius:var(--radius);display:grid;place-items:center}.product-cover img{max-height:650px;object-fit:contain;box-shadow:0 20px 40px rgba(0,0,0,.2)}.product-info h1{font-size:clamp(2.4rem,5vw,4.4rem)}.facts{border-block:1px solid var(--line);padding:13px 0;margin:28px 0}.facts div{display:grid;grid-template-columns:130px 1fr;padding:7px 0}.facts dt{font-weight:750;color:var(--navy)}.facts dd{margin:0}.buy-box{display:flex;align-items:end;gap:12px}.buy-box label{width:110px}.empty-state{text-align:center;padding:70px 20px;background:var(--bg);border-radius:var(--radius)}.empty-state h1,.empty-state h2{font-size:2.4rem}.cart-table{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.cart-item{display:grid;grid-template-columns:80px 1fr 100px 120px;align-items:center;gap:20px;padding:18px;border-bottom:1px solid var(--line)}.cart-item:last-child{border:0}.cart-item img{width:65px;height:85px;object-fit:contain}.cart-item h2{font-size:1.08rem;margin:0 0 5px}.cart-item p{color:var(--muted);font-size:.78rem;margin:0}.cart-summary{margin:22px 0 0 auto;max-width:520px;background:var(--bg);border-radius:var(--radius);padding:25px}.cart-summary>div{display:flex;justify-content:space-between;font-size:1.4rem}.checkout-grid,.contact-grid,.story-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:35px;align-items:start}.form-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:17px;background:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}.check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:start}.check input{width:auto;margin-top:5px}.order-review{background:var(--navy);color:#fff;border-radius:var(--radius);padding:28px;position:sticky;top:110px}.order-review h2{color:#fff}.order-review>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:.86rem}.review-total{font-size:1.1rem!important;border-bottom:0!important}.order-review p{color:#dce7eb;font-size:.8rem}.hp{position:absolute!important;left:-9999px!important}.alert,.notice,.success-inline{padding:12px 14px;border-radius:10px;background:#fff3cd;color:#684f00}.alert{background:#fde9eb;color:#7d1c26}.success-inline{background:#e6f5ea;color:#145928}.success{text-align:center;padding:65px 25px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.success>span{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;background:#e6f5ea;color:#16713b;border-radius:50%;font-size:2rem}.success h1{font-size:2.5rem}.contact-details{display:grid;gap:12px}.contact-line{display:flex;justify-content:space-between;gap:20px;padding:20px;border:1px solid var(--line);border-radius:12px}.contact-line span{color:var(--muted)}.principles{display:grid;gap:15px}.principles div{display:grid;gap:4px;padding:25px;background:var(--bg);border-radius:14px}.principles strong{font:700 1.35rem Georgia,serif;color:var(--navy)}.prose{max-width:850px}.prose h2{margin-top:36px}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.stats div{padding:22px;background:var(--bg);border-radius:13px}.stats span,.stats strong{display:block}.stats span{color:var(--muted);font-size:.8rem}.stats strong{font-size:2rem;color:var(--navy)}.admin-head{display:flex;justify-content:space-between;align-items:center}.admin-section{margin-top:45px}.admin-table{border:1px solid var(--line);border-radius:13px;overflow:hidden}.admin-row{display:grid;grid-template-columns:1.2fr 1.2fr .6fr 1fr;gap:15px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}.admin-row:last-child{border:0}.admin-row span,.admin-row small{display:block}.admin-row small{color:var(--muted)}.admin-labels{background:var(--navy);color:#fff;font-size:.78rem;font-weight:700}.footer{background:#031f30;color:#c8d6dc;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:45px}.footer h2{font:700 1rem Inter,sans-serif;color:#fff}.footer a{display:block;margin:9px 0;font-size:.86rem}.footer-logo{width:90px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:20px;font-size:.8rem}
.catalog-admin-grid{display:grid;gap:10px;margin-top:16px}.catalog-editor{border:1px solid var(--line);border-radius:12px;background:#fff}.catalog-editor>summary{display:flex;align-items:center;gap:14px;padding:14px;cursor:pointer;list-style:none}.catalog-editor>summary::-webkit-details-marker{display:none}.catalog-editor>summary img{width:45px;height:60px;object-fit:contain;background:var(--bg)}.catalog-editor>summary span,.catalog-editor>summary small{display:block}.catalog-editor>summary small{color:var(--muted)}.catalog-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:20px;border-top:1px solid var(--line)}.catalog-form label{display:grid;gap:5px;font-size:.78rem;font-weight:700}.danger-link{border:0;background:none;color:var(--red);padding:0 20px 20px;cursor:pointer;text-decoration:underline}
@media(max-width:1080px){.nav-toggle{display:block}.site-header nav{display:none;position:absolute;left:20px;right:20px;top:82px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{padding:9px}.books-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:1fr 1fr}.stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.container{width:min(100% - 26px,1180px)}.topbar span{display:none}.topbar .container{justify-content:center}.brand small{display:none}.cart-link{font-size:0;padding:9px}.cart-link:before{content:"Panier";font-size:.75rem}.hero{padding:58px 0}.hero-grid,.product,.checkout-grid,.contact-grid,.story-grid{grid-template-columns:1fr}.hero-visual{display:none}.trust-strip .container{display:grid;grid-template-columns:1fr 1fr;padding-block:15px}.section{padding:56px 0}.books-grid{grid-template-columns:1fr}.cover-wrap{height:350px}.section-head,.cta .container{align-items:flex-start;flex-direction:column}.category-grid{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.product-cover{min-height:420px;padding:25px}.buy-box{align-items:stretch;flex-direction:column}.buy-box label{width:100%}.cart-item{grid-template-columns:60px 1fr 80px}.cart-item>strong{grid-column:2/4}.form-grid,.catalog-form{grid-template-columns:1fr}.full{grid-column:auto}.order-review{position:static}.footer-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}.admin-labels{display:none}.admin-row{grid-template-columns:1fr}.page-hero{padding:48px 0}}
@media(max-width:480px){.brand span{display:none}.footer-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.trust-strip .container{grid-template-columns:1fr}.cart-item{grid-template-columns:50px 1fr}.cart-item label,.cart-item>strong{grid-column:2}.form-card{padding:20px}}
