/*
Theme Name: Ariade
Theme URI: https://ananyoo.com/accessible-theme/
Author: Shivaji Mitra
Author URI: https://ananyoo.com
Description: Ariade is a WCAG 2.2 AA compliant Full Site Editing (FSE) WordPress block theme for accessible professional-services and business websites. Ships with an accessible mega-menu, screen-reader-tested patterns, keyboard-operable carousel, forms and login, and predesigned inner pages. Built by M/S. Anblik.
Version: 1.5.2
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ariade
Tags: full-site-editing, block-patterns, accessibility-ready, blog, e-commerce, portfolio, custom-colors, custom-menu, featured-images, threaded-comments, translation-ready, wide-blocks

Ariade WordPress Theme, (C) 2026 Shivaji Mitra / M/S. Anblik.
Ariade is distributed under the terms of the GNU GPL v2 or later.
*/

/* Block themes load their visual styles from theme.json + the enqueued
   assets/css/theme.css. This file is required only for the theme header
   above and a couple of safe base rules. */

:root { color-scheme: light; }

.screen-reader-text,
.sr-only {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0);
	white-space: nowrap; border: 0;
}

/* Accessible skip link */
.skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 1000;
	background: #0E1B36;
	color: #fff;
	padding: .75rem 1.1rem;
	border-radius: 0 0 8px 0;
	font-weight: 600;
}
.skip-link:focus { left: 0; }

/* Block styles registered in functions.php */
.wp-block-button.is-style-ariade-outline .wp-block-button__link{background:transparent;border:2px solid currentColor;color:inherit}
.is-style-ariade-card{background:#fff;border:1px solid #e6e8ee;border-radius:16px;padding:1.25rem 1.5rem;box-shadow:0 8px 22px rgba(14,27,54,.06)}

/* ---------------------------------------------------------------
   Front-page section rows sit flush: remove WordPress's default
   block gap between full-width top-level sections (matches design).
--------------------------------------------------------------- */
.wp-block-post-content > section,
.wp-block-post-content > .alignfull{margin-block-start:0;margin-block-end:0}

/* ---------------------------------------------------------------
   Accessible Forms rendered inside dark sections (.dark-scope):
   readable labels, legends, help and error text (WCAG 1.4.3).
   Inputs keep their white background and dark text from the plugin.
   Contrast on #0E1B36: labels 17.1:1, help 11.2:1, errors 10.1:1.
--------------------------------------------------------------- */
.dark-scope .aaf-form .aaf-label,
.dark-scope .aaf-form legend,
.dark-scope .aaf-form .aaf-form-title,
.dark-scope .aaf-form .aaf-choice,
.dark-scope .aaf-form .aaf-choice label{color:#fff}
.dark-scope .aaf-form .aaf-help{color:#c7d2e8}
.dark-scope .aaf-form .aaf-required,
.dark-scope .aaf-form .aaf-error,
.dark-scope .aaf-form .aaf-errors,
.dark-scope .aaf-form .aaf-errors-title{color:#ffb4b4}
.dark-scope .aaf-form .aaf-errors a{color:#ffd2d2;text-decoration:underline}
.dark-scope .aaf-form :is(input,select,textarea,button):focus-visible{outline:2px solid #fff;outline-offset:2px}

/* ---------------------------------------------------------------
   Site logo in the header (when set via Site Logo / Customizer).
--------------------------------------------------------------- */
.brand-logo{height:54px;width:auto;display:block}
@media (max-width:781px){.brand-logo{height:44px}}

/* =================================================================
   HERO CAROUSEL — single authoritative block (v1.3.0 consolidation).
   Scoped to .wp-block-anacb-slider, which the plugin's block wrapper
   guarantees on EVERY layout/animation variant. Design: rounded 16:7
   photo card; full control bar (prev, dots, next, play/pause) in one
   row BELOW the card; text box bottom-centred; brand navy behind
   photos; grey card variable neutralised (it arrives as an inline
   style, hence the justified !important).
================================================================= */
.hero .wp-block-anacb-slider{
	--aac-card-bg:transparent !important;
	width:1060px;width:min(1060px,100%);max-width:1060px;
	margin:1.25rem auto 0;padding:0;
	background:transparent !important;border:0;border-radius:0;box-shadow:none}

/* the track is the rounded, shadowed card */
.hero .wp-block-anacb-slider .aac-carousel__track{
	position:relative;aspect-ratio:16/7;height:auto;min-height:0;
	margin:0;padding:0;list-style:none;
	border-radius:18px;overflow:hidden;background:#0E1B36;
	box-shadow:none;border:1px solid #dfe3ee}

/* slides are layered; hidden ones keyed to aria-hidden */
.hero .wp-block-anacb-slider .aac-carousel__track > li{
	position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;
	margin:0;padding:0;overflow:hidden;background:#0E1B36;
	opacity:1;transition:opacity .45s ease}
.hero .wp-block-anacb-slider .aac-carousel__track > li[aria-hidden="true"]{opacity:0;pointer-events:none}
.hero .wp-block-anacb-slider .aac-carousel__track > li img{
	position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;margin:0}

/* text box: bottom-centred, above the photo */
.hero .wp-block-anacb-slider .aac-carousel__track > li > div{
	position:relative;z-index:2;align-self:flex-end;margin:0 auto 2.1rem;
	text-align:center;max-width:min(34rem,86%);border-radius:10px}

/* control bar: one row below the card, transparent */
.hero .wp-block-anacb-slider .aac-carousel__nav{
	position:static;inset:auto;z-index:auto;pointer-events:auto;
	display:flex;align-items:center;gap:1rem;padding:1.1rem .25rem 0;margin:0;width:auto;
	flex-wrap:nowrap;background:transparent !important;border:0;border-radius:0;box-shadow:none;
	-webkit-backdrop-filter:none;backdrop-filter:none}
.hero .wp-block-anacb-slider .aac-carousel__nav-left{display:contents}
.hero .wp-block-anacb-slider .aac-carousel__nav-left > button:first-child{order:0}
.hero .wp-block-anacb-slider .aac-carousel__nav-center{
	position:static;inset:auto;order:1;flex:1 1 auto;display:flex;justify-content:center;
	min-width:0;background:transparent}
.hero .wp-block-anacb-slider .aac-carousel__nav-left > button:last-child{order:2}
.hero .wp-block-anacb-slider .aac-carousel__nav-right{position:static;inset:auto;order:3;background:transparent}

/* arrows: 58px white circles with SVG chevrons; labels untouched */
.hero .wp-block-anacb-slider .aac-carousel__nav-left > button{
	display:inline-flex;align-items:center;justify-content:center;
	width:58px;height:58px;border-radius:50%;border:2px solid #8b90a0;
	background-color:#fff;color:transparent;font-size:0;
	box-shadow:0 6px 18px rgba(14,27,54,.12);
	background-repeat:no-repeat;background-position:center;background-size:24px 24px;
	background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.5 5 16 12l-6.5 7' fill='none' stroke='%230E1B36' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.hero .wp-block-anacb-slider .aac-carousel__nav-left > button:first-child{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.5 5 8 12l6.5 7' fill='none' stroke='%230E1B36' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.hero .wp-block-anacb-slider .aac-carousel__nav-left > button:hover{background-color:#f2f5fd}

/* pause/play: fixed-width pill so the label swap never shifts the dots */
.hero .wp-block-anacb-slider .aac-carousel__nav-right > button{
	display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
	min-height:54px;min-width:106px;padding:.5rem .9rem;border-radius:999px;
	border:2px solid #8b90a0;background:#fff;color:#0E1B36;font-size:.86rem;
	box-shadow:0 6px 18px rgba(14,27,54,.12)}
.hero .wp-block-anacb-slider .aac-carousel__nav-right > button:hover{background:#f2f5fd}

/* dots */
.hero .wp-block-anacb-slider .aac-carousel__dot{width:34px;height:34px}
.hero .wp-block-anacb-slider .aac-carousel__dot::before{background:#64748b;box-shadow:none}
.hero .wp-block-anacb-slider .aac-carousel__dot[aria-current="true"]::before{background:#184FCB}

@media (max-width:781px){
	.hero .wp-block-anacb-slider .aac-carousel__track{border-radius:12px;aspect-ratio:4/3}
	.hero .wp-block-anacb-slider .aac-carousel__nav{gap:.6rem;padding-inline:0}
	.hero .wp-block-anacb-slider .aac-carousel__nav-left > button{width:48px;height:48px}
	.hero .wp-block-anacb-slider .aac-carousel__nav-right > button{min-height:48px;min-width:98px}
	.hero .wp-block-anacb-slider .aac-carousel__track > li > div{margin-bottom:1.1rem;max-width:92%}
}
@media (max-width:480px){
	.hero .wp-block-anacb-slider .aac-carousel__nav{gap:.45rem}
	.hero .wp-block-anacb-slider .aac-carousel__dots{gap:.25rem}
	.hero .wp-block-anacb-slider .aac-carousel__nav-left > button{width:44px;height:44px}
	.hero .wp-block-anacb-slider .aac-carousel__dot{width:28px;height:28px}
	.hero .wp-block-anacb-slider .aac-carousel__nav-right > button{min-height:44px;min-width:88px;padding:.4rem .6rem;font-size:.8rem;gap:.35rem}
}
@media (prefers-reduced-motion:reduce){
	.hero .wp-block-anacb-slider .aac-carousel__track > li{transition:none}
}
@media (forced-colors:active){
	.hero .wp-block-anacb-slider .aac-carousel__nav-left > button{color:ButtonText;font-size:22px;background-image:none}
}
