/* ==========================================================================
   AllegoricAuthor — shared styles
   Loaded once per page (Elementor dependency system) no matter how many
   of the 6 section widgets are used, so nothing is duplicated on the page.
   ========================================================================== */

.aa-section{
	--aa-purple:#5A2A74;
	--aa-orange:#BC5130;
	--aa-ink:#170D20;
	--aa-bloom:#FBF2E9;
	--aa-purple-deep:#331A44;
	--aa-orange-soft:#D97F55;
	--aa-lilac:#C9A6DE;
	--aa-line:rgba(251,242,233,.14);
	--aa-maxw:1280px;
	position:relative;
	background-color:var(--aa-ink);
	color:var(--aa-bloom);
	overflow:hidden;
	isolation:isolate;
}
.aa-section *{box-sizing:border-box;}
.aa-section h1,.aa-section h2,.aa-section h3{margin:0; font-weight:700;}
.aa-section img{max-width:100%;}
.aa-section .aa-tag{color:var(--aa-orange-soft); font-size:13px; margin:0 0 10px; letter-spacing:.02em; text-transform:uppercase;}
.aa-section .aa-desc{color:rgba(251,242,233,.75); max-width:56ch;}
.aa-section .aa-inner{max-width:var(--aa-maxw); margin:0 auto; padding:0 32px;}

/* Buttons — shared by Latest Book / Book Carousel / Email CTA */
.aa-btn-row{display:flex; gap:12px; margin:22px 0 28px; flex-wrap:wrap;}
.aa-btn{font-weight:700; font-size:14px; padding:13px 28px; border-radius:4px; text-decoration:none; display:inline-block; border:2px solid transparent; transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease; line-height:1.2;}
.aa-btn-primary{background:var(--aa-bloom); color:var(--aa-ink); box-shadow:0 10px 22px -10px rgba(0,0,0,.5);}
.aa-btn-primary:hover{background:linear-gradient(100deg, var(--aa-purple), var(--aa-orange)); color:var(--aa-bloom); transform:translateY(-2px); box-shadow:0 16px 28px -12px rgba(0,0,0,.6);}
.aa-btn-ghost{background:transparent; border-color:rgba(251,242,233,.5); color:var(--aa-bloom);}
.aa-btn-ghost:hover{background:rgba(251,242,233,.12); border-color:var(--aa-bloom); transform:translateY(-2px);}
.aa-btn-sm{padding:9px 18px; font-size:12.5px;}

/* Romance / Thriller bars */
.aa-bars{display:flex; flex-direction:column; gap:14px; max-width:400px;}
.aa-bar-label{display:flex; justify-content:space-between; font-size:12px; color:rgba(251,242,233,.7); margin-bottom:5px;}
.aa-bar-track{height:6px; border-radius:4px; background:rgba(251,242,233,.14); overflow:hidden;}
.aa-bar-fill{height:100%;}
.aa-bar-fill.aa-romance{background:linear-gradient(90deg, var(--aa-lilac), var(--aa-purple));}
.aa-bar-fill.aa-thriller{background:linear-gradient(90deg, var(--aa-orange-soft), var(--aa-orange));}

/* Cover / card image box (used by Latest Book + Book Carousel) */
.aa-cover{aspect-ratio:2/3; border:1px dashed rgba(251,242,233,.3); border-radius:6px; background:linear-gradient(160deg, rgba(90,42,116,.35), rgba(188,81,48,.18)) center/cover no-repeat; display:flex; align-items:center; justify-content:center; text-align:center; padding:16px; font-size:13px; color:rgba(251,242,233,.6); box-shadow:0 24px 48px -20px rgba(0,0,0,.55);}
.aa-cover-sm{aspect-ratio:2/3; margin-bottom:14px;}

/* Section head (title + subtitle + arrows), used by both carousels */
.aa-section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:20px; max-width:var(--aa-maxw); margin:0 auto 32px; padding:0 32px 20px; border-bottom:1px solid var(--aa-line); flex-wrap:wrap;}
.aa-section-head h2{font-size:clamp(24px,3.2vw,36px);}
.aa-sub{color:var(--aa-lilac); font-size:14px; margin-top:6px;}
.aa-car-controls{display:flex; gap:8px;}
.aa-car-btn{width:40px; height:40px; border-radius:50%; border:1px solid rgba(251,242,233,.3); background:transparent; color:var(--aa-bloom); cursor:pointer; font-size:16px; transition:background .15s ease, border-color .15s ease; flex:none;}
.aa-car-btn:hover{background:rgba(251,242,233,.12); border-color:var(--aa-bloom);}
.aa-car-btn:disabled{opacity:.3; cursor:default;}

/* Scroll track — arrows/autoplay drive it, so the native scrollbar is hidden */
.aa-track{
	display:flex; gap:22px; overflow-x:auto; scroll-snap-type:x mandatory;
	max-width:var(--aa-maxw); margin:0 auto; padding:0 32px 4px;
	scroll-behavior:smooth;
	scrollbar-width:none;      /* Firefox */
	-ms-overflow-style:none;   /* old Edge/IE */
}
.aa-track::-webkit-scrollbar{display:none; height:0;} /* Chrome/Safari/new Edge */

.aa-card{flex:0 0 270px; scroll-snap-align:start; background:rgba(251,242,233,.04); border:1px solid var(--aa-line); border-radius:6px; padding:18px;}
.aa-card h3{font-size:16px; margin-bottom:14px;}
.aa-news-card{flex:0 0 300px; scroll-snap-align:start; background:rgba(251,242,233,.04); border:1px solid var(--aa-line); border-radius:6px; overflow:hidden;}
.aa-news-img{aspect-ratio:16/10; background:linear-gradient(160deg, rgba(90,42,116,.3), rgba(188,81,48,.16)) center/cover no-repeat; border-bottom:1px solid var(--aa-line); margin-bottom:0;}
.aa-news-body{padding:16px 18px 20px;}
.aa-news-date{color:var(--aa-orange-soft); font-size:11.5px; margin:0 0 8px; text-transform:uppercase; letter-spacing:.03em;}

@media(max-width:900px){
	.aa-section{padding-top:60px; padding-bottom:60px;}
}
