/* A publisher's catalogue: paper, clear type and original books. */
:root{
  --paper:#fbf9f3;
  --white:#fffdf8;
  --ink:#222b25;
  --muted:#666d64;
  --red:#cf1f27;
  --red-dark:#ac1721;
  --line:#dedbd2;
  --sage:#eeeae0;
  --olive:#253b30;
  --max:1280px;
}
body{background:var(--paper);color:var(--ink)}
::selection{background:#e8c7bd;color:var(--ink)}
.container{width:min(var(--max),calc(100% - 96px))}
.section{padding-block:80px}
.section-sm{padding-block:58px}
.eyebrow,.hero .eyebrow,.section-head .eyebrow{font-weight:600;font-size:12px;line-height:1.5;letter-spacing:.035em;margin-bottom:14px}
.section-head{align-items:flex-end;gap:32px;margin-bottom:36px}
.section-head h2{font-size:clamp(32px,3vw,42px);line-height:1.18;letter-spacing:-.03em}
.section-head .text-link{margin-bottom:4px}

/* The navigation is deliberately quiet beside the AST mark. */
.site-header{background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{min-height:88px;gap:34px}
.brand img{width:96px;height:auto}
.main-nav{gap:28px}
.main-nav a{padding:15px 0;font-size:14px;line-height:1.5}
.main-nav a[aria-current=page]:after{height:1px;bottom:7px}
.button{min-height:50px;padding:14px 21px;border-radius:3px;gap:22px;font-size:14px;line-height:1.5;font-weight:600;transition:background .18s,border-color .18s,transform .18s}
.button:hover{transform:translateY(-1px)}
.button .arrow{font-size:20px}
.header-shop{min-height:46px;padding:12px 18px;font-size:13px;gap:25px}
.text-link,.card-link{font-size:14px;line-height:1.5;gap:13px;border-color:#a4a99e;padding-bottom:4px}
.menu-toggle{border-radius:3px}

/* All three covers stay inside the original photographic stage. */
.hero-shell{overflow:visible}
.hero{grid-template-columns:1fr 1fr;gap:64px;padding-block:48px;align-items:center}
.hero-copy{padding:0}
.hero h1{font-size:clamp(54px,4.75vw,68px);line-height:1.08;letter-spacing:-.04em;margin-bottom:25px}
.hero h1 em{font-style:normal;color:var(--red)}
.hero .eyebrow{font-size:12px;letter-spacing:.025em;margin-bottom:20px}
.hero-copy>p{font-size:16px;line-height:1.75;max-width:455px}
.hero-actions{gap:25px;margin-top:28px}
.hero-note{font-size:12px;line-height:1.5;margin-top:22px}
.hero-note:before{width:18px}
.hero-art{width:100%;aspect-ratio:1.22;margin:0;border:1px solid #e8e1d5;border-radius:4px;background-color:#ece6d8;overflow:hidden}
.hero-cover{left:34%;bottom:22.5%;width:32%;max-height:69%;transform:rotate(.5deg);filter:drop-shadow(5px 8px 5px #22251e33)}
.hero-cover.back{left:6%;bottom:33.5%;width:27%;transform:perspective(900px) rotateY(8deg) rotate(-3deg)}
.hero-cover.front{left:auto;right:5%;bottom:33%;width:27%;transform:perspective(900px) rotateY(-7deg) rotate(2deg)}
.hero-art-label{font-size:10px;left:18px;bottom:12px;letter-spacing:0;text-transform:none}
.hero-art-label:before{font-size:7px;margin-right:7px}
.topic-strip{background:#f1eee6;border-color:var(--line)}
.topic-strip-inner{grid-template-columns:1.2fr 1.1fr 1fr 1fr;gap:24px;padding-block:20px}
.topic-strip a{font-size:13px;line-height:1.6;min-height:24px;text-transform:none;letter-spacing:0;gap:0}
.topic-strip a+a{padding-left:8px}
.topic-strip a:hover{color:var(--red)}
.topic-strip i{display:none}
.home-featured{padding-block:76px 88px}

/* A consistent neutral shelf lets every original cover keep its own colour. */
.book-grid{gap:42px 28px}
.book-card{position:relative;min-width:0}
.book-image-link{background:#f0eee7;border:1px solid #e4e0d7;border-radius:4px}
.book-card:nth-child(n) .book-image{height:338px;padding:43px 28px 30px;background:#f0eee7}
.book-image img{filter:drop-shadow(4px 7px 4px #24251e2b);transition:transform .25s;max-width:100%}
.book-image-link:hover img{transform:translateY(-5px)}
.book-meta{font-size:12px;line-height:1.5;color:var(--muted);letter-spacing:0;text-transform:none;margin:17px 0 8px}
.book-meta span:last-child{display:none}
.book-card h3{font-size:24px;line-height:1.27;letter-spacing:-.025em;margin-bottom:9px}
.book-author{font-size:14px;line-height:1.5;margin-bottom:19px;color:var(--muted)}
.book-card .card-link{font-size:13px;line-height:1.5;gap:11px;padding-bottom:3px;border-bottom:1px solid #b7baae}
.book-card .card-link .arrow{font-size:17px}
.card-tag{top:13px;left:13px;max-width:calc(100% - 26px);padding:5px 9px;font-size:11px;line-height:1.5;letter-spacing:0;text-transform:none;background:var(--white);border:1px solid #e4dfd4;border-radius:2px}
.book-card[data-category=zestawy] .card-tag{background:var(--olive);border-color:var(--olive);color:var(--white)}

/* A typographic publisher panel replaces repeated decorative scenery. */
.about-block{padding-block:66px;background:var(--olive);color:var(--white)}
.about-grid{width:min(var(--max),calc(100% - 96px));margin-inline:auto;grid-template-columns:1fr 1fr;gap:84px}
.about-art{background:none;min-height:300px;padding:12px 55px 12px 0;align-items:flex-start;text-align:left;border-right:1px solid #718176}
.about-art p{font-size:clamp(32px,3.1vw,43px);line-height:1.2;letter-spacing:-.03em;max-width:420px;margin-bottom:30px}
.about-art>span{font-size:11px;color:#c6d1c7;letter-spacing:.065em;line-height:1.8;border-top:2px solid #d37869;padding-top:17px}
.about-copy{padding:12px 0;align-self:center}
.about-copy .eyebrow{color:#dcc6a9;font-size:12px}
.about-copy h2{color:var(--white);font-size:37px;line-height:1.2;margin-bottom:23px}
.about-copy p{color:#d9e0d9;font-size:15px;line-height:1.85}
.about-copy .text-link{color:var(--white);border-color:#94a499;margin-top:5px}
.about-copy .text-link:hover{border-color:var(--white)}
.home-new{padding-block:84px 54px}
.home-new>.small{font-size:13px;color:var(--muted)}

/* Themes are calm editorial panels, with contained and legible covers. */
.home-topics{padding-bottom:78px}
.topics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.topic-card{display:grid;grid-template-columns:minmax(0,1fr) 92px;grid-template-areas:"number cover" "title cover" "description cover" "arrow cover";column-gap:18px;min-height:295px;padding:27px 24px;border:1px solid var(--line);border-radius:4px;background:var(--white);overflow:visible;transition:border-color .2s,background .2s}
.topic-card:nth-child(n){background:var(--white)}
.topic-card:hover{border-color:#a9ada1;background:#fff}
.topic-number{grid-area:number;font-size:11px;line-height:1.4;letter-spacing:.02em;margin:0 0 19px;color:var(--red)}
.topic-card h3{grid-area:title;font-size:27px;line-height:1.2;letter-spacing:-.025em;margin:0}
.topic-card p{grid-area:description;font-size:14px;line-height:1.75;margin:15px 0 20px;max-width:none}
.topic-card .arrow{grid-area:arrow;align-self:end;justify-self:start;font-size:21px}
.topic-card img{grid-area:cover;position:static;align-self:center;width:100%;max-width:100%;height:190px;object-fit:contain;transform:none;filter:drop-shadow(3px 5px 3px #222b2526)}
.topic-card:hover img{transform:none}

/* Original books introduce the authors, rather than portrait placeholders. */
.home-authors{padding-block:72px 84px;border-top:1px solid var(--line)}
.authors-preview{gap:30px;border-top:0}
.author-preview{display:flex;flex-direction:column;align-items:flex-start;padding:23px 0 0;border-top:1px solid #a8ada2}
.author-preview .author-initials{display:block;width:auto;height:auto;min-height:0;background:none;color:var(--red);font:600 11px/1.5 var(--sans);letter-spacing:.05em;margin:0 0 20px}
.author-preview h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin-bottom:11px}
.author-preview p{font-size:14px;line-height:1.6;min-height:45px;margin-bottom:23px}
.author-preview-shelf{display:flex;align-items:flex-end;gap:13px;height:105px;margin-top:auto;width:100%;padding-top:5px}
.author-preview-shelf img{width:auto;max-width:27%;height:100%;object-fit:contain;object-position:left bottom;filter:drop-shadow(2px 4px 2px #222b2524)}
.author-preview:hover h3{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}

/* A restrained end to the catalogue, with clear contact details. */
.contact-band{background:#e9e4d8;color:var(--ink);border-block:1px solid #ded8cc;padding-block:45px}
.contact-band-inner{gap:38px}
.contact-band .eyebrow{color:var(--red);font-size:12px;margin-bottom:13px}
.contact-band h2{font-size:36px;line-height:1.2;margin-bottom:12px;color:var(--ink)}
.contact-band p{color:#5c655a;font-size:15px;line-height:1.7}
.contact-band .button.light{color:var(--white);background:var(--olive);border-color:var(--olive);min-width:225px}
.contact-band .button.light:hover{background:#192c22;border-color:#192c22}
.site-footer{padding:57px 0 24px;background:#f4f1e9;color:var(--ink)}
.footer-grid{grid-template-columns:1.2fr .8fr .9fr 1.25fr;gap:44px;padding-bottom:40px}
.footer-brand img{width:94px;height:auto;margin-bottom:25px}
.footer-brand p{font:24px/1.4 var(--serif);letter-spacing:-.025em;max-width:240px}
.footer-heading{font-size:13px;line-height:1.5;font-weight:650;letter-spacing:0;text-transform:none;margin-bottom:21px}
.footer-links,.footer-address{font-size:13px;line-height:1.8;gap:10px}
.footer-links .muted{font-size:12px;line-height:1.7;color:var(--muted);margin-top:3px}
.footer-address{overflow-wrap:anywhere}
.footer-address a{border-color:#b8bdb1}
.footer-bottom{padding-top:22px;font-size:12px;line-height:1.6;color:var(--muted);border-color:#d8d9cf}

@media(max-width:1150px){
  .container{width:calc(100% - 64px)}
  .header-inner{gap:24px}.main-nav{gap:23px}
  .hero{gap:38px;padding-block:42px}
  .hero h1{font-size:58px}
  .hero-copy>p{font-size:15px}
  .hero-art{width:100%;aspect-ratio:1.08}
  .book-card:nth-child(n) .book-image{height:300px;padding:43px 23px 28px}
  .about-grid{width:calc(100% - 64px);gap:48px}
  .about-art{padding-right:35px}
  .about-art p{font-size:36px}.about-copy h2{font-size:33px}
  .topics-grid{grid-template-columns:1fr}
  .topic-card{grid-template-columns:minmax(0,1fr) 140px;min-height:245px;padding:28px 32px;column-gap:40px}
  .topic-card h3{font-size:30px}.topic-card p{max-width:500px}
  .topic-card img{height:185px}
  .footer-grid{gap:30px}
}
@media(max-width:900px){
  .header-inner{min-height:82px;gap:0}
  .brand img{width:86px}
  .header-shop{margin-left:auto;margin-right:12px;font-size:12px;min-height:44px;padding:11px 15px}
  .menu-toggle{min-height:44px;font-size:13px;padding:10px 14px}
  .main-nav{gap:0;padding-block:17px 20px}
  .main-nav a{padding:13px 4px;font-size:16px;border-top:1px solid var(--line)}
  .main-nav a[aria-current=page]:after{display:none}
  .main-nav a[aria-current=page]{color:var(--red)}
  .hero{gap:25px;padding-block:36px;grid-template-columns:1fr 1fr}
  .hero h1{font-size:46px;line-height:1.12;letter-spacing:-.04em}
  .hero .eyebrow{font-size:11px;margin-bottom:17px}
  .hero-copy>p{font-size:15px;line-height:1.75}
  .hero-actions{gap:18px;margin-top:22px}
  .hero-actions .button{font-size:12px;padding-inline:16px}
  .hero-actions .text-link{font-size:12px}
  .hero-note{font-size:11px;margin-top:20px}
  .hero-art{aspect-ratio:.92;width:100%}
  .hero-cover{width:39%;left:30%;bottom:22.5%}
  .hero-cover.back{width:29%;left:3%;bottom:34%}
  .hero-cover.front{width:29%;right:2%;bottom:33.5%}
  .hero-art-label{display:none}
  .topic-strip-inner{grid-template-columns:1fr 1fr;gap:14px 24px;padding-block:18px}
  .topic-strip a{font-size:13px}.topic-strip a+a{padding-left:0}
  .section{padding-block:60px}.section-sm{padding-block:45px}
  .section-head h2{font-size:35px}.section-head{margin-bottom:30px}
  .book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 25px}
  .book-card:nth-child(n) .book-image{height:340px;padding:43px 34px 30px}
  .about-block{padding-block:48px}
  .about-grid{gap:35px}
  .about-art{min-height:310px;padding-right:25px}
  .about-art p{font-size:32px}.about-copy h2{font-size:31px}
  .about-copy p{font-size:14px}
  .authors-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:35px 50px}
  .footer-brand,.footer-grid>div:last-child{grid-column:auto}
  .contact-band h2{font-size:31px}
  .contact-band-inner{gap:28px}
  .contact-band .button{font-size:13px;min-width:200px}
}
@media(max-width:600px){
  .container{width:calc(100% - 36px)}
  .header-inner{min-height:76px}
  .brand img{width:77px}
  .header-shop{color:var(--ink);background:transparent;border:1px solid var(--line);padding:10px 12px;font-size:12px;gap:10px;margin-right:9px}
  .header-shop:hover{background:#eeeae0;color:var(--ink);border-color:#b4b9ac}
  .header-shop .arrow{font-size:16px}
  .shop-long{display:none}.shop-short{display:inline}
  .menu-toggle{font-size:12px;min-height:42px;padding:9px 12px}
  .hero-shell{overflow:visible}
  .hero{grid-template-columns:1fr;gap:27px;padding-block:30px}
  .hero h1{font-size:clamp(38px,10.8vw,50px);line-height:1.11;letter-spacing:-.035em;margin-bottom:21px}
  .hero .eyebrow{font-size:12px;margin-bottom:17px}
  .hero-copy>p{font-size:15px;line-height:1.75;max-width:470px}
  .hero-actions{gap:22px;margin-top:23px}
  .hero-actions .button,.hero-actions .text-link{font-size:12px}
  .hero-actions .button{min-height:48px;padding:13px 16px}
  .hero-note{display:none}
  .hero-art{width:100%;aspect-ratio:1.3;max-height:340px;margin:0;border-radius:3px}
  .hero-cover{width:32%;left:34%;bottom:22.5%;max-height:70%}
  .hero-cover.back{width:27%;left:6%;bottom:33.5%}
  .hero-cover.front{width:27%;right:5%;bottom:33%}
  .topic-strip-inner{gap:12px 15px;padding-block:16px}
  .topic-strip a{font-size:12px;line-height:1.5;padding-right:9px;min-height:30px}
  .section{padding-block:44px}.section-sm{padding-block:36px}
  .section-head{gap:18px;align-items:flex-start;margin-bottom:27px}
  .section-head h2{font-size:30px;line-height:1.23}
  .section-head .eyebrow{font-size:12px;margin-bottom:12px}
  .section-head .text-link{font-size:13px}
  .book-grid{gap:30px 16px}
  .book-card:nth-child(n) .book-image{height:238px;padding:36px 15px 24px}
  .book-card h3,.related .book-card h3{font-size:21px;line-height:1.27}
  .book-meta{font-size:11px;margin:13px 0 7px}
  .book-author{font-size:12px;line-height:1.6;margin-bottom:15px}
  .book-card .card-link{font-size:12px;gap:9px}
  .card-tag{top:9px;left:9px;max-width:calc(100% - 18px);padding:4px 6px;font-size:9px}
  .about-block{padding-block:39px}
  .about-grid{width:calc(100% - 36px);grid-template-columns:1fr;gap:30px}
  .about-art{min-height:0;padding:0 0 29px;border-right:0;border-bottom:1px solid #718176}
  .about-art p{font-size:32px;max-width:380px;margin-bottom:23px}
  .about-copy{padding:0}
  .about-copy h2{font-size:31px}.about-copy p{font-size:15px}
  .about-copy .eyebrow{font-size:12px}
  .topic-card{grid-template-columns:minmax(0,1fr) clamp(80px,24vw,110px);min-height:260px;padding:22px 20px;column-gap:20px;border-radius:3px}
  .topic-card h3{font-size:25px;line-height:1.22}
  .topic-card p{font-size:13px;line-height:1.7;margin:13px 0 18px}
  .topic-number{font-size:11px;margin-bottom:15px}
  .topic-card img{height:175px;max-width:100%;transform:none}
  .author-preview{padding-top:20px}
  .authors-preview{gap:30px 22px}
  .author-preview .author-initials{margin-bottom:15px}
  .author-preview h3{font-size:23px;line-height:1.25}
  .author-preview p{font-size:13px;min-height:62px;margin-bottom:21px}
  .author-preview-shelf{height:90px;gap:9px}
  .author-preview-shelf img{max-width:29%}
  .contact-band{padding-block:34px}
  .contact-band-inner{align-items:flex-start;flex-direction:column;gap:24px}
  .contact-band h2{font-size:30px;line-height:1.25}
  .contact-band p{font-size:14px}
  .contact-band .button.light{min-width:0;font-size:13px}
  .site-footer{padding:39px 0 22px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:31px 25px;padding-bottom:30px}
  .footer-brand,.footer-grid>div:last-child{grid-column:1/-1}
  .footer-brand img{width:84px;margin-bottom:19px}
  .footer-brand p{font-size:23px;max-width:280px}
  .footer-heading{font-size:13px;margin-bottom:17px}
  .footer-links,.footer-address{font-size:13px;line-height:1.8}
  .footer-links .muted{font-size:12px}
  .footer-bottom{flex-direction:column;gap:12px;font-size:12px;line-height:1.65;padding-top:21px}
}
@media(max-width:370px){
  .hero-actions{gap:16px}
  .hero-actions .button{font-size:12px;padding-inline:12px;gap:10px}
  .hero-actions .text-link{font-size:12px;gap:9px}
  .book-card:nth-child(n) .book-image{height:208px;padding:36px 13px 22px}
  .book-card h3,.related .book-card h3{font-size:19px}
  .book-card .card-link{font-size:11px}
  .topic-card{padding:21px 17px;column-gap:16px;grid-template-columns:minmax(0,1fr) 78px}
  .topic-card h3{font-size:23px}
  .author-preview h3{font-size:21px}
  .footer-grid{column-gap:20px}
}
