/*
Theme Name: Digital Pharma Advances
Theme URI: https://digitalpharmaconference.com/
Author: Global Insight Conferences
Description: Animated, Elementor-powered theme for the 15th Digital Pharma Advances Conference (27 January 2027, London). Includes the complete 2027 website content (speakers, programme, partners, logos, photos, tickets) and builds the site in one click after activation, including installing Elementor and WooCommerce.
Version: 1.1.0
Requires at least: 6.2
Tested up to: 6.8
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: dpa
Tags: dark, one-column, custom-menu, featured-images, e-commerce
*/

/* Content pages, posts and WooCommerce in the DPA design. Widget styles live in dpa-events/assets/dpa.css. */

body.dpa-site { font-family: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif; }
.dpa-skip { position: absolute; left: -9999px; top: 8px; z-index: 10000; background: #d6b67a; color: #07090d; padding: 10px 16px; border-radius: 999px; font-weight: 600; }
.dpa-skip:focus { left: 16px; }

.dpa.dpa-content { padding-block: 0 clamp(96px, 12vw, 160px); }
.dpa-content .wrap { max-width: 1100px; }
.dpa-content.is-shop .wrap { max-width: 1240px; }
.dpa-prose { color: var(--muted); font-size: 17px; line-height: 1.75; }
.dpa-prose > * + * { margin-top: 1.1em; }
.dpa-prose h2, .dpa-prose h3, .dpa-prose h4 { font-family: var(--serif); font-weight: 400; color: var(--text); line-height: 1.1; margin-top: 1.6em; }
.dpa-prose h2 { font-size: clamp(32px, 3.4vw, 48px); }
.dpa-prose h3 { font-size: clamp(26px, 2.6vw, 34px); }
.dpa-prose a { color: var(--gold); text-decoration: underline; text-underline-offset: 3px; }
.dpa-prose strong { color: var(--text); }
.dpa-prose ul, .dpa-prose ol { padding-left: 1.2em; list-style: revert; }
.dpa-prose li + li { margin-top: .4em; }
.dpa-prose blockquote { border-left: 1px solid var(--gold); padding-left: 22px; font-family: var(--serif); font-size: 24px; color: var(--text); }
.dpa-prose img { border-radius: 18px; }
.dpa-prose table { width: 100%; border-collapse: collapse; }
.dpa-prose th, .dpa-prose td { border-bottom: 1px solid var(--line); padding: 12px 10px; text-align: left; }
.dpa-feature { margin: 0 0 32px; border-radius: 24px; overflow: hidden; }
.dpa-404 { display: flex; flex-wrap: wrap; gap: 14px; }

/* Blog listing */
.dpa-posts { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; }
.dpa-post { display: flex; flex-direction: column; gap: 10px; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: var(--ink-2); transition: border-color .4s, transform .6s var(--ease); }
.dpa-post:hover { border-color: rgba(214,182,122,.5); transform: translateY(-4px); }
.dpa-post-img img { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 16px; }
.dpa-post-date { font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--gold); }
.dpa-post-title { font-family: var(--serif); font-size: 28px; line-height: 1.1; color: var(--text); }
.dpa-post-excerpt { color: var(--muted); font-size: 15px; }
.dpa-pager { margin-top: 40px; color: var(--muted); }
.dpa-pager a, .dpa-pager span { padding: 8px 14px; border: 1px solid var(--line); border-radius: 999px; margin-right: 6px; }

/* Forms (comments, search, WooCommerce) */
body.dpa-site .dpa-content input[type="text"], body.dpa-site .dpa-content input[type="email"], body.dpa-site .dpa-content input[type="tel"], body.dpa-site .dpa-content input[type="password"],
body.dpa-site .dpa-content input[type="number"], body.dpa-site .dpa-content input[type="search"], body.dpa-site .dpa-content input[type="url"], body.dpa-site .dpa-content textarea, body.dpa-site .dpa-content select,
body.dpa-site .dpa-content .select2-container--default .select2-selection--single {
	width: 100%; background: rgba(255,255,255,.03); border: 1px solid var(--line-2); border-radius: 12px; color: var(--text);
	font: inherit; font-size: 15px; padding: 12px 14px; min-height: 48px; box-shadow: none; outline: none; transition: border-color .3s;
}
body.dpa-site .dpa-content input:focus, body.dpa-site .dpa-content textarea:focus, body.dpa-site .dpa-content select:focus { border-color: var(--gold); }
.dpa-content .select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--text); line-height: 24px; padding: 0; }
.dpa-content .select2-container--default .select2-selection--single .select2-selection__arrow { top: 11px; right: 8px; }
.select2-dropdown { background: #0c1117; border-color: rgba(255,255,255,.16); color: #eef1f4; }
.select2-search--dropdown .select2-search__field { background: #121922; color: #eef1f4; border-color: rgba(255,255,255,.16); }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: #d6b67a; color: #07090d; }
.dpa-content label { color: var(--text); font-size: 14px; font-weight: 500; }
.dpa-content .required { color: var(--gold); text-decoration: none; }
.dpa-content button, .dpa-content .button, body.dpa-site .dpa-content input[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; background: var(--gold); color: var(--ink);
	border: 0; border-radius: 999px; padding: 15px 28px; font: inherit; font-weight: 600; font-size: 15px; cursor: pointer; transition: background .3s;
}
.dpa-content button:hover, .dpa-content .button:hover, body.dpa-site .dpa-content input[type="submit"]:hover { background: var(--gold-2); color: var(--ink); }

/* WooCommerce: notices */
.dpa-content .woocommerce-message, .dpa-content .woocommerce-info, .dpa-content .woocommerce-error, .dpa-content .woocommerce-NoticeGroup ul {
	list-style: none; margin: 0 0 24px; padding: 18px 22px; border-radius: 16px; border: 1px solid var(--line-2); background: var(--ink-2); color: var(--text);
}
.dpa-content .woocommerce-message { border-color: rgba(79,209,197,.5); }
.dpa-content .woocommerce-error { border-color: rgba(255,138,128,.6); color: #ffd2cc; }
.dpa-content .woocommerce-message::before, .dpa-content .woocommerce-info::before, .dpa-content .woocommerce-error::before { display: none; }
.dpa-content .woocommerce-message a, .dpa-content .woocommerce-info a { color: var(--gold); }
.dpa-content .woocommerce-message .button { float: right; padding: 8px 16px; font-size: 13px; }

/* WooCommerce: classic checkout */
.dpa-content form.checkout { display: flow-root; }
.dpa-content form.checkout #customer_details { float: left; width: 54%; }
.dpa-content form.checkout #order_review_heading, .dpa-content form.checkout #order_review { float: right; clear: right; width: 41%; }
.dpa-content form.checkout #order_review_heading { margin: 0 0 16px; }
.dpa-content .col2-set { width: 100%; }
.dpa-content .col2-set .col-1, .dpa-content .col2-set .col-2 { width: 100%; float: none; }
.dpa-content .col2-set .col-2 { margin-top: 28px; }
.dpa-content .woocommerce-billing-fields h3, .dpa-content .woocommerce-additional-fields h3, .dpa-content #order_review_heading {
	font-family: var(--serif); font-weight: 400; font-size: clamp(30px, 3vw, 40px); color: var(--text); margin: 0 0 18px;
}
.dpa-content .form-row { margin: 0 0 16px; padding: 0; }
.dpa-content .form-row label { display: block; margin-bottom: 6px; }
.dpa-content .form-row-first, .dpa-content .form-row-last { width: calc(50% - 8px); display: inline-block; vertical-align: top; }
.dpa-content .form-row-first { margin-right: 12px; }
.dpa-content #order_review { border: 1px solid var(--line); border-radius: 24px; background: var(--ink-2); padding: clamp(20px, 3vw, 32px); }
.dpa-content table.shop_table { width: 100%; border-collapse: collapse; border: 0; color: var(--muted); font-size: 15px; }
.dpa-content table.shop_table th, .dpa-content table.shop_table td { padding: 14px 4px; border: 0; border-bottom: 1px solid var(--line); text-align: left; background: none; }
.dpa-content table.shop_table td:last-child, .dpa-content table.shop_table th:last-child { text-align: right; }
.dpa-content table.shop_table .product-name { color: var(--text); }
.dpa-content table.shop_table .order-total th, .dpa-content table.shop_table .order-total td { color: var(--text); font-size: 18px; border-bottom: 0; }
.dpa-content table.shop_table .order-total .amount { font-family: var(--serif); font-size: 30px; color: var(--gold-2); }
.dpa-content table.shop_table .fee td { color: var(--teal); }
.dpa-content #payment { background: none; border-radius: 0; margin-top: 12px; }
.dpa-content #payment ul.payment_methods { list-style: none; padding: 0; margin: 0 0 16px; border: 0; }
.dpa-content #payment ul.payment_methods li { padding: 14px 0; border-bottom: 1px solid var(--line); color: var(--text); }
.dpa-content #payment div.payment_box { background: rgba(255,255,255,.03); color: var(--muted); border-radius: 12px; padding: 12px 14px; margin-top: 10px; font-size: 14px; }
.dpa-content #payment div.payment_box::before { display: none; }
.dpa-content #payment .place-order { padding: 0; }
.dpa-content #place_order { width: 100%; padding: 18px; font-size: 16px; margin-top: 12px; }
.dpa-content .woocommerce-privacy-policy-text, .dpa-content .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--dim); }
.dpa-content .woocommerce-form-coupon-toggle .woocommerce-info { padding: 14px 20px; }
body.dpa-site .dpa-content input[type="checkbox"] { accent-color: var(--gold); width: 18px; height: 18px; vertical-align: -3px; margin-right: 8px; }

/* WooCommerce: order received, account, cart */
.dpa-content .woocommerce-order-overview { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin: 24px 0 40px; }
.dpa-content .woocommerce-order-overview li { border: 1px solid var(--line); border-radius: 16px; padding: 16px 18px; color: var(--muted); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; margin: 0; }
.dpa-content .woocommerce-order-overview li strong { display: block; margin-top: 6px; color: var(--text); font-size: 16px; letter-spacing: 0; text-transform: none; }
.dpa-content .woocommerce-thankyou-order-received { font-family: var(--serif); font-size: clamp(28px, 3vw, 40px); color: var(--text); }
.dpa-content .woocommerce-order-details__title, .dpa-content .woocommerce-column__title, .dpa-content .wc-bacs-bank-details-heading { font-family: var(--serif); font-weight: 400; font-size: 32px; color: var(--text); margin-top: 32px; }
.dpa-content .woocommerce-customer-details address { border: 1px solid var(--line); border-radius: 16px; padding: 18px; color: var(--muted); font-style: normal; }
.dpa-content .woocommerce-MyAccount-navigation ul { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.dpa-content .woocommerce-MyAccount-navigation a { display: block; padding: 10px 18px; border: 1px solid var(--line-2); border-radius: 999px; color: var(--muted); text-decoration: none; }
.dpa-content .woocommerce-MyAccount-navigation .is-active a { background: var(--gold); color: var(--ink); border-color: var(--gold); }
.dpa-content .wc-block-components-text-input input, .dpa-content .wc-block-components-textarea { background: rgba(255,255,255,.03) !important; color: var(--text) !important; }
.dpa-content .wp-block-woocommerce-cart, .dpa-content .wc-block-components-totals-wrapper, .dpa-content .wc-block-cart-items { color: var(--text); }
.dpa-content .wc-block-cart__submit-button, .dpa-content .wc-block-components-button:not(.is-link) { background: var(--gold) !important; color: var(--ink) !important; border-radius: 999px !important; }

@media (max-width: 900px) {
	.dpa-content form.checkout #customer_details, .dpa-content form.checkout #order_review_heading, .dpa-content form.checkout #order_review { float: none; width: 100%; }
	.dpa-content form.checkout #order_review_heading { margin-top: 40px; }
}
@media (max-width: 560px) {
	.dpa-content .form-row-first, .dpa-content .form-row-last { width: 100%; margin-right: 0; }
}
