/* ELORA — Account, FAQ, Contact, Search */

/* ---------- My Account (classic WooCommerce templates) ---------- */

.elora-account-page .woocommerce-MyAccount-navigation {
	border-top: 1px solid rgba(201,169,106,.35);
	width: 240px;
	float: left;
	margin-right: 60px;
}
.elora-account-page .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.elora-account-page .woocommerce-MyAccount-navigation-link {
	border-bottom: 1px solid rgba(201,169,106,.22);
}
.elora-account-page .woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 17px 4px;
	font-size: 12px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #16203B;
	text-decoration: none;
}
.elora-account-page .woocommerce-MyAccount-navigation-link.is-active a,
.elora-account-page .woocommerce-MyAccount-navigation-link a:hover {
	color: #8C6A3D;
}

.elora-account-page .woocommerce-MyAccount-content {
	overflow: hidden;
	font-size: 15px;
	line-height: 1.9;
	color: #16203B;
	font-weight: 300;
}
.elora-account-page .woocommerce-MyAccount-content h2,
.elora-account-page .woocommerce-MyAccount-content h3 {
	font-family: 'Cormorant Garamond', serif;
	font-size: 32px;
	font-weight: 300;
	margin: 0 0 26px;
}
.elora-account-page .woocommerce-MyAccount-content a { color: #8C6A3D; }

.elora-account-page .woocommerce-form-row label {
	display: block;
	font-size: 10px;
	letter-spacing: .24em;
	text-transform: uppercase;
	color: #8C6A3D;
	margin-bottom: 6px;
}
.elora-account-page .woocommerce-form-row .woocommerce-Input,
.elora-account-page .woocommerce-form-login .woocommerce-Input,
.elora-account-page select {
	width: 100%;
	border: none;
	border-bottom: 1px solid rgba(10,18,37,.2);
	background: #F7F5F1;
	color: #16203B;
	padding: 12px 2px;
	font-size: 15px;
	outline: none;
	border-radius: 0;
}
.elora-account-page button[type="submit"],
.elora-account-page input[type="submit"],
.elora-account-page .woocommerce-Button {
	background: #F7F5F1;
	border: 1px solid rgba(10,18,37,.85);
	color: #16203B;
	padding: 16px 34px;
	font-size: 11px;
	letter-spacing: .24em;
	text-transform: uppercase;
	cursor: pointer;
	border-radius: 0;
	margin-top: 20px;
}
.elora-account-page button[type="submit"]:hover,
.elora-account-page .woocommerce-Button:hover {
	background: #0A1225;
	color: #E9D7A5;
	border-color: #0A1225;
}

.elora-account-page .woocommerce-Address {
	border: 1px solid rgba(201,169,106,.4);
	background: #F7F5F1;
	color: #16203B;
	padding: 28px;
}
.elora-account-page .woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 10px;
}
.elora-account-page .woocommerce-Address-title h3 {
	font-size: 22px;
	margin: 0;
}
.elora-account-page .woocommerce-Addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 22px;
	max-width: 780px;
}

/* Sidebar nav is float-based with a fixed 240px width — with no breakpoint
   this leaves almost nothing for the content column on phones/tablets, so
   stack the nav above the content and let both go full-width. */
@media (max-width: 780px) {
	.elora-account-page .woocommerce-MyAccount-navigation {
		width: 100%;
		float: none;
		margin-right: 0;
		margin-bottom: 30px;
	}
	.elora-account-page .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}
}

.elora-account-page .woocommerce-orders-table {
	border-top: 1px solid rgba(201,169,106,.35);
	border-collapse: collapse;
	width: 100%;
}
.elora-account-page .woocommerce-orders-table th {
	font-size: 10px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #8C6A3D;
	text-align: left;
	padding: 16px 10px;
}
.elora-account-page .woocommerce-orders-table td {
	padding: 20px 10px;
	border-bottom: 1px solid rgba(201,169,106,.22);
	font-size: 14px;
}
.elora-account-page .woocommerce-orders-table__cell-order-number a {
	font-family: 'Cormorant Garamond', serif;
	font-size: 20px;
}
.elora-account-page mark.order-status {
	background: #F7F5F1;
	color: #8C6A3D;
	font-size: 10px;
	letter-spacing: .18em;
	text-transform: uppercase;
}
.elora-account-page .woocommerce-button.view {
	border: 1px solid rgba(201,169,106,.5);
	background: #F7F5F1;
	color: #8C6A3D;
	padding: 8px 16px;
	font-size: 10px;
	letter-spacing: .16em;
	text-transform: uppercase;
	border-radius: 0;
}

/* ---------- FAQ (native details/summary — real, no JS needed) ---------- */

.elora-faq-item {
	border-bottom: 1px solid rgba(201,169,106,.3);
}
.elora-faq-item summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 24px;
	padding: 26px 0;
	font-family: 'Cormorant Garamond', serif;
	font-size: 25px;
	color: #16203B;
}
.elora-faq-item summary::-webkit-details-marker { display: none; }
.elora-faq-item summary::after {
	content: "+";
	color: #8C6A3D;
	font-size: 20px;
	flex: 0 0 auto;
}
.elora-faq-item[open] summary::after { content: "−"; }
.elora-faq-item p {
	font-size: 15px;
	line-height: 1.95;
	color: rgba(45,62,94,.8);
	font-weight: 300;
	padding: 0 60px 30px 0;
	margin: 0;
}

/* ---------- Contact form ---------- */

.elora-contact-form {
	display: grid;
	gap: 26px;
}
.elora-contact-form input[type="text"],
.elora-contact-form select,
.elora-contact-form textarea {
	border: none;
	border-bottom: 1px solid rgba(10,18,37,.2);
	background: #F7F5F1;
	padding: 13px 2px;
	font-size: 14px;
	font-family: 'Jost', sans-serif;
	color: #16203B;
	outline: none;
	border-radius: 0;
	width: 100%;
}
.elora-contact-form textarea {
	border: 1px solid rgba(10,18,37,.15);
	padding: 16px;
	min-height: 150px;
	resize: vertical;
}
.elora-contact-form button {
	background: #0A1225;
	color: #E9D7A5;
	border: none;
	text-align: center;
	padding: 19px;
	font-size: 11px;
	letter-spacing: .26em;
	text-transform: uppercase;
	cursor: pointer;
	border-radius: 0;
}
.elora-contact-form button:hover { background: #16203B; }
.elora-hp-field {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}
.elora-contact-notice {
	font-size: 13px;
	letter-spacing: .04em;
	padding: 14px 16px;
	margin: 0 0 20px;
	border: 1px solid;
}
.elora-contact-notice--success { color: #8C6A3D; border-color: rgba(201,169,106,.5); background: #F1EDE6; }
.elora-contact-notice--error { color: #a13a3a; border-color: rgba(161,58,58,.4); background: #f7ecec; }

/* ---------- Search ---------- */

.elora-search-again { max-width: 460px; }
.elora-search-again .wp-block-search__inside-wrapper {
	border: none;
	border-bottom: 1px solid rgba(201,169,106,.5);
	border-radius: 0;
	background: #F7F5F1;
}
.elora-search-again .wp-block-search__input {
	border: none;
	background: #F7F5F1;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	padding: 12px 4px;
	color: #16203B;
	outline: none;
	box-shadow: none;
}
.elora-search-again .wp-block-search__button {
	background: #F7F5F1 !important;
	border: none !important;
	color: #8C6A3D !important;
	font-size: 11px;
	letter-spacing: .18em;
	text-transform: uppercase;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 12px 4px !important;
}
.elora-search-again .wp-block-search__button:hover { color: #0A1225 !important; }

/* About editorial framing; existing story and claims are retained for content review. */
.elora-about > section { padding: var(--elora-space-section) var(--elora-gutter) !important; }
.elora-about > section:first-child {
	padding-block: clamp(3rem, 2rem + 2.25vw, 4.5rem) !important;
	text-align: center;
}
.elora-about > section:first-child > p:first-child { margin-inline: auto; }
.elora-about > section:first-child > h1 {
	max-width: 24ch;
	margin-inline: auto !important;
	margin-bottom: 0;
}
.elora-about h1 { font-size: var(--elora-text-display) !important; overflow-wrap: anywhere; }
.elora-about > section > .wp-block-columns { max-width: var(--elora-container-wide, 1320px); gap: clamp(2rem, 5vw, 5rem); }
.elora-about .wp-block-column { min-width: 0; }
.elora-about-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; }
