/* PT GAS multistep checkout */

.ptgas-checkout {
	--ptgas-primary: #2563eb;
	--ptgas-primary-dark: #1d4ed8;
	--ptgas-border: #d5dae0;
	--ptgas-muted: #6b7280;
	--ptgas-error: #dc2626;
	--ptgas-ok: #16a34a;
	--ptgas-bg-soft: #f5f7fa;
	max-width: 1040px;
	margin: 0 auto;
}

/* Two-column body: form (left) + order summary (right) */
.ptgas-checkout__body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	gap: 2rem;
	align-items: start;
}

/* On the review step the summary is hidden, so the form spans full width. */
.ptgas-checkout__body:has(.ptgas-summary[hidden]) {
	grid-template-columns: 1fr;
}

.ptgas-checkout *,
.ptgas-checkout *::before,
.ptgas-checkout *::after {
	box-sizing: border-box;
}

/* Visually-hidden helper (kept accessible to screen readers) */
.ptgas-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Page head: title + step counter */
.ptgas-checkout__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.75rem;
}

.ptgas-checkout__heading {
	margin: 0;
	font-size: 1.5rem;
	font-weight: 700;
	color: #111827;
}

.ptgas-checkout__progress {
	flex: 0 0 auto;
	color: var(--ptgas-muted);
	font-size: .9rem;
	font-weight: 600;
}

/* Stepper: numbered circles joined by a connector line, labels below */
.ptgas-steps {
	display: flex;
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
}

.ptgas-steps__item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .55rem;
	flex: 1 1 0;
	min-width: 0;
	text-align: center;
	color: var(--ptgas-muted);
	font-size: .85rem;
}

/* Connector segments to the left/right of each circle */
.ptgas-steps__item::before,
.ptgas-steps__item::after {
	content: "";
	position: absolute;
	top: .95rem;
	height: 2px;
	background: var(--ptgas-border);
	z-index: 0;
}

.ptgas-steps__item::before {
	left: 0;
	right: 50%;
	margin-right: .95rem;
}

.ptgas-steps__item::after {
	left: 50%;
	right: 0;
	margin-left: .95rem;
}

.ptgas-steps__item:first-child::before,
.ptgas-steps__item:last-child::after {
	display: none;
}

/* Fill the line up to and including the current step */
.ptgas-steps__item.is-done::before,
.ptgas-steps__item.is-done::after,
.ptgas-steps__item.is-active::before {
	background: var(--ptgas-primary);
}

.ptgas-steps__num {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.9rem;
	height: 1.9rem;
	flex: 0 0 auto;
	border-radius: 50%;
	border: 2px solid var(--ptgas-border);
	background: #fff;
	font-weight: 700;
	line-height: 1;
}

.ptgas-steps__item.is-active .ptgas-steps__num {
	border-color: var(--ptgas-primary);
	background: var(--ptgas-primary);
	color: #fff;
}

.ptgas-steps__item.is-done .ptgas-steps__num {
	border-color: var(--ptgas-primary);
	background: var(--ptgas-primary);
	color: transparent;
}

/* Completed steps show a checkmark instead of the number */
.ptgas-steps__item.is-done .ptgas-steps__num::after {
	content: "";
	position: absolute;
	inset: 0;
	background: center / 55% no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
}

.ptgas-steps__item.is-active .ptgas-steps__label {
	color: #111827;
	font-weight: 600;
}

.ptgas-steps__label {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Panels — each rendered as a bordered card (only the active one shows) */
.ptgas-panel {
	display: none;
	background: #fff;
	border: 1px solid var(--ptgas-border);
	border-radius: 14px;
	padding: 1.75rem;
}

.ptgas-panel.is-active {
	display: block;
	animation: ptgas-fade .18s ease;
}

/* Review step stacks its own section cards, so the outer card is dropped. */
.ptgas-panel--plain {
	background: none;
	border: 0;
	border-radius: 0;
	padding: 0;
}

@keyframes ptgas-fade {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: none; }
}

.ptgas-panel__title {
	margin: 0 0 1.25rem;
	font-size: 1.35rem;
}

.ptgas-panel__title + .ptgas-panel__subtitle {
	margin: -0.9rem 0 1.25rem;
}

.ptgas-panel__subtitle {
	color: var(--ptgas-muted);
	font-size: .92rem;
}

/* Fields */
.ptgas-field {
	margin-bottom: 1.25rem;
	border: 0;
	padding: 0;
}

.ptgas-label {
	display: block;
	margin-bottom: .4rem;
	font-weight: 600;
}

.ptgas-req {
	color: var(--ptgas-error);
}

.ptgas-hint {
	display: block;
	margin-top: .35rem;
	font-size: .8rem;
	color: var(--ptgas-muted);
}

.ptgas-field input[type="text"],
.ptgas-field input[type="email"],
.ptgas-field input[type="file"],
.ptgas-field select {
	width: 100%;
	padding: .7rem .85rem;
	border: 1px solid var(--ptgas-border);
	border-radius: 8px;
	font-size: 1rem;
	background: #fff;
}

.ptgas-field input:focus,
.ptgas-field select:focus {
	outline: none;
	border-color: var(--ptgas-primary);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, .15);
}

.ptgas-field.has-error input,
.ptgas-field.has-error select {
	border-color: var(--ptgas-error);
}

.ptgas-error {
	display: none;
	margin-top: .35rem;
	color: var(--ptgas-error);
	font-size: .82rem;
}

/* Two fields sharing a row (e.g. Whatsapp + Email) */
.ptgas-field-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

.ptgas-field-row--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ptgas-field-row .ptgas-field {
	margin-bottom: 0;
}

@media (max-width: 560px) {
	.ptgas-field-row,
	.ptgas-field-row--3 {
		grid-template-columns: 1fr;
	}
}

/* Custom file control (Foto KTP) */
.ptgas-file {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	padding: .7rem .85rem;
	border: 1px solid var(--ptgas-border);
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	transition: border-color .15s, box-shadow .15s;
}

.ptgas-file:hover {
	border-color: var(--ptgas-primary);
}

.ptgas-file:focus-within {
	border-color: var(--ptgas-primary);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, .15);
}

.ptgas-file__text {
	min-width: 0;
	color: var(--ptgas-muted);
	font-size: .95rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ptgas-file.has-file .ptgas-file__text {
	color: #111827;
	font-weight: 600;
}

.ptgas-file__icon {
	flex: 0 0 auto;
	color: var(--ptgas-primary);
	line-height: 0;
}

.ptgas-field.has-error .ptgas-file {
	border-color: var(--ptgas-error);
}

.ptgas-field.has-error .ptgas-error,
.ptgas-error.is-visible {
	display: block;
}

/* Service selector: cards laid side by side */
.ptgas-field--radio {
	display: block;
}

.ptgas-radio-group {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-bottom: .35rem;
}

@media (max-width: 640px) {
	.ptgas-radio-group {
		grid-template-columns: 1fr;
	}
}

.ptgas-radio {
	position: relative;
	display: block;
	margin: 0;
	padding: 1rem 2.75rem 1rem 1.1rem;
	border: 1px solid var(--ptgas-border);
	border-radius: 10px;
	cursor: pointer;
	transition: border-color .15s, box-shadow .15s, background .15s;
}

.ptgas-radio:hover {
	border-color: var(--ptgas-primary);
}

/* Native radio hidden but kept in the DOM for form semantics & validation */
.ptgas-radio input {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	opacity: 0;
	pointer-events: none;
}

.ptgas-radio:has(input:checked) {
	border-color: var(--ptgas-primary);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
	background: var(--ptgas-bg-soft);
}

.ptgas-radio:has(input:focus-visible) {
	border-color: var(--ptgas-primary);
	box-shadow: 0 0 0 3px rgba(37, 99, 235, .3);
}

/* Selected-state checkmark badge, top-right */
.ptgas-radio__check {
	position: absolute;
	top: .85rem;
	right: .85rem;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	background: var(--ptgas-primary);
	color: #fff;
	line-height: 0;
	opacity: 0;
	transform: scale(.6);
	transition: opacity .15s, transform .15s;
	pointer-events: none;
}

.ptgas-radio:has(input:checked) .ptgas-radio__check {
	opacity: 1;
	transform: scale(1);
}

.ptgas-radio__body {
	display: flex;
	flex-direction: column;
	gap: .2rem;
}

.ptgas-radio__title {
	font-weight: 700;
}

.ptgas-radio__desc {
	color: var(--ptgas-muted);
	font-size: .88rem;
	line-height: 1.4;
}

/* Order summary sidebar */
.ptgas-summary {
	position: sticky;
	top: 1.5rem;
	padding: 1.25rem 1.35rem;
	background: var(--ptgas-bg-soft);
	border: 1px solid var(--ptgas-border);
	border-radius: 12px;
}

.ptgas-summary[hidden] {
	display: none;
}

.ptgas-summary__title {
	margin: 0 0 1rem;
	font-size: 1.1rem;
}

.ptgas-summary__list {
	margin: 0;
	padding: 0;
}

.ptgas-summary__row {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: .5rem 0;
	font-size: .9rem;
	border-bottom: 1px dashed #e5e7eb;
}

.ptgas-summary__row dt {
	margin: 0;
	color: var(--ptgas-muted);
}

.ptgas-summary__row dd {
	margin: 0;
	font-weight: 600;
	text-align: right;
	word-break: break-word;
}

.ptgas-summary__total {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	margin-top: .9rem;
	padding-top: .9rem;
	border-top: 2px solid var(--ptgas-primary);
	font-size: 1.05rem;
	font-weight: 600;
}

.ptgas-summary__total strong {
	color: var(--ptgas-primary-dark);
}

/* Location map picker */
.ptgas-map-search {
	margin-bottom: .6rem;
}

.ptgas-map {
	width: 100%;
	height: 320px;
	border-radius: 10px;
	border: 1px solid var(--ptgas-border);
	background: var(--ptgas-bg-soft);
}

.ptgas-map-coords {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-top: .55rem;
	font-size: .85rem;
	color: var(--ptgas-muted);
}

.ptgas-map-coords strong {
	color: #111827;
	font-variant-numeric: tabular-nums;
}

.ptgas-map-msg {
	margin: .5rem 0 0;
	font-size: .82rem;
	color: var(--ptgas-muted);
}

.ptgas-map-msg.is-error {
	color: var(--ptgas-error);
}

/* Technical-photo dropzones */
.ptgas-teknis-grid {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: 1rem;
	margin-top: .5rem;
}

@media ( max-width: 640px ) {
	.ptgas-teknis-grid {
		grid-template-columns: 1fr;
	}
}

.ptgas-teknis-slot {
	position: relative;
}

.ptgas-dropzone {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	border: 1px solid var(--ptgas-border);
	border-radius: 8px;
	background: #f3f4f6;
	overflow: hidden;
	cursor: pointer;
	transition: border-color .15s, box-shadow .15s;
}

.ptgas-dropzone:hover {
	border-color: var(--ptgas-primary, #2563eb);
}

.ptgas-teknis-slot.is-invalid .ptgas-dropzone,
.ptgas-dropzone.has-error {
	border-color: var(--ptgas-error);
}

/* Empty state */
.ptgas-dropzone__empty {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .35rem;
	padding: 1rem;
	text-align: center;
}

.ptgas-dropzone__icon {
	color: #9ca3af;
	line-height: 0;
}

.ptgas-dropzone__title {
	font-weight: 600;
	color: var(--ptgas-text, #1f2937);
}

.ptgas-dropzone__subtitle {
	font-size: .85rem;
	color: var(--ptgas-muted, #9ca3af);
}

.ptgas-teknis-slot.has-file .ptgas-dropzone__empty {
	display: none;
}

/* Filled state */
.ptgas-dropzone__preview {
	position: absolute;
	inset: 0;
	display: block;
}

.ptgas-dropzone__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.ptgas-dropzone__caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: .5rem;
	font-size: .85rem;
	font-weight: 600;
	color: #fff;
	text-align: center;
	background: linear-gradient( transparent, rgba( 0, 0, 0, .55 ) );
}

.ptgas-dropzone__check {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 26px;
	height: 26px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #16a34a;
	color: #fff;
	box-shadow: 0 1px 3px rgba( 0, 0, 0, .3 );
}

/* Delete ("Hapus") button — sibling of the label so it never re-opens the picker */
.ptgas-dropzone__remove {
	position: absolute;
	top: 8px;
	left: 8px;
	display: none;
	padding: .25rem .6rem;
	font-size: .78rem;
	font-weight: 600;
	line-height: 1.4;
	border: 0;
	border-radius: 5px;
	background: rgba( 17, 24, 39, .8 );
	color: #fff;
	cursor: pointer;
	transition: background .15s;
	z-index: 2;
}

.ptgas-dropzone__remove:hover {
	background: var(--ptgas-error, #cc1818);
}

.ptgas-teknis-slot.has-file .ptgas-dropzone__remove {
	display: inline-block;
}

.ptgas-teknis-note {
	margin-top: .75rem;
}

/* Review — a stack of section cards */
.ptgas-review {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.ptgas-review__group {
	background: #fff;
	border: 1px solid var(--ptgas-border);
	border-radius: 12px;
	overflow: hidden;
}

.ptgas-review__group-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: .85rem 1.1rem;
	border-bottom: 1px solid var(--ptgas-border);
}

.ptgas-review__group-title {
	display: flex;
	align-items: center;
	gap: .55rem;
	margin: 0;
	font-size: 1rem;
}

.ptgas-review__group-icon {
	display: inline-flex;
	color: var(--ptgas-primary);
	line-height: 0;
}

.ptgas-review__edit {
	appearance: none;
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	flex: 0 0 auto;
	padding: .35rem .75rem;
	border: 1px solid var(--ptgas-border);
	border-radius: 6px;
	background: #fff;
	color: var(--ptgas-primary);
	font-size: .82rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s, color .15s, border-color .15s;
}

.ptgas-review__edit:hover {
	background: var(--ptgas-primary);
	border-color: var(--ptgas-primary);
	color: #fff;
}

/* Two-column body of label/value pairs */
.ptgas-review__body {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .7rem 1.5rem;
	padding: 1.1rem;
}

.ptgas-review__item {
	display: flex;
	gap: .75rem;
	min-width: 0;
	font-size: .9rem;
}

.ptgas-review__item--full {
	grid-column: 1 / -1;
}

.ptgas-review__label {
	flex: 0 0 auto;
	min-width: 104px;
	color: var(--ptgas-muted);
}

.ptgas-review__value {
	min-width: 0;
	font-weight: 600;
	word-break: break-word;
}

.ptgas-review__item--total {
	margin-top: .3rem;
	padding-top: .8rem;
	border-top: 1px solid var(--ptgas-border);
}

.ptgas-review__item--total .ptgas-review__label {
	color: #111827;
}

.ptgas-review__item--total .ptgas-review__value {
	color: var(--ptgas-primary-dark);
	font-size: 1.05rem;
}

.ptgas-review__thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.ptgas-review__thumbs img {
	width: 240px;
	max-width: 100%;
	aspect-ratio: 86 / 54;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid var(--ptgas-border);
}

.ptgas-review__thumb {
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: .25rem;
}

.ptgas-review__thumb figcaption {
	font-size: .72rem;
	color: var(--ptgas-muted, #6b7280);
	text-align: center;
}

/* Foto Teknis in the review: bigger images, 3 columns filling the container */
.ptgas-review__tech {
	display: grid;
	grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
	gap: .75rem;
	padding: .75rem 1rem 1rem;
}

.ptgas-review__tech-item {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: .35rem;
}

.ptgas-review__tech-item img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid var(--ptgas-border);
}

.ptgas-review__tech-item figcaption {
	font-size: .8rem;
	font-weight: 600;
	color: var(--ptgas-muted);
	text-align: center;
}

.ptgas-review__map {
	height: 200px;
	width: 100%;
	border-radius: 8px;
	border: 1px solid var(--ptgas-border);
	background: var(--ptgas-bg-soft);
}

/* Agree */
.ptgas-agree {
	display: flex;
	align-items: flex-start;
	gap: .6rem;
	margin-bottom: 1.25rem;
	padding: 1rem 1.1rem;
	border: 1px solid var(--ptgas-border);
	border-radius: 10px;
	font-size: .92rem;
}

.ptgas-agree input {
	margin-top: .2rem;
}

/* Nav + buttons */
.ptgas-nav {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.75rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--ptgas-border);
}

.ptgas-btn__arrow {
	margin-left: .4rem;
}

.ptgas-btn__arrow--left {
	margin-left: 0;
	margin-right: .4rem;
}

.ptgas-btn {
	appearance: none;
	border: 1px solid transparent;
	border-radius: 8px;
	padding: .75rem 1.5rem;
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .15s, opacity .15s;
}

.ptgas-btn--primary {
	background: var(--ptgas-primary);
	color: #fff;
}

.ptgas-btn--primary:hover {
	background: var(--ptgas-primary-dark);
}

.ptgas-btn--ghost {
	background: #fff;
	border-color: var(--ptgas-border);
	color: #374151;
}

.ptgas-btn--ghost:hover {
	background: var(--ptgas-bg-soft);
}

.ptgas-btn[disabled] {
	opacity: .6;
	cursor: not-allowed;
}

.ptgas-btn.is-loading {
	position: relative;
	color: transparent;
}

.ptgas-btn.is-loading::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1.1rem;
	height: 1.1rem;
	margin: -.55rem 0 0 -.55rem;
	border: 2px solid rgba(255, 255, 255, .5);
	border-top-color: #fff;
	border-radius: 50%;
	animation: ptgas-spin .7s linear infinite;
}

@keyframes ptgas-spin {
	to { transform: rotate(360deg); }
}

/* Form notice */
.ptgas-form__notice {
	margin-top: 1.25rem;
	padding: .9rem 1.1rem;
	border-radius: 8px;
	font-size: .9rem;
}

.ptgas-form__notice.is-error {
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: var(--ptgas-error);
}

.ptgas-form__notice.is-success {
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	color: var(--ptgas-ok);
}

/* Order-pay screen (woocommerce/checkout/form-pay.php override): order
   created -> confirmation card -> pay button that submits to the gateway.
   Rendered outside .ptgas-checkout, so it carries its own variables. */
.ptgas-success {
	--ptgas-border: #d5dae0;
	--ptgas-muted: #6b7280;
	--ptgas-bg-soft: #f5f7fa;
	max-width: 620px;
	margin: 0 auto;
	padding: 2.5rem 0 1rem;
	text-align: center;
	animation: ptgas-fade .18s ease;
}

.ptgas-success *,
.ptgas-success *::before,
.ptgas-success *::after {
	box-sizing: border-box;
}

/* Storefront (loaded after this sheet) styles #order_review / #payment with
   floats, margins and sizing of its own; out-specify it so the card stays
   centered and keeps this design's spacing. */
.woocommerce-order-pay form#order_review.ptgas-success {
	float: none;
	clear: both;
	width: auto;
	max-width: 620px;
	margin: 0 auto;
}

.woocommerce-order-pay form#order_review.ptgas-success #payment .form-row {
	margin: 0;
	padding: 0;
}

.woocommerce-order-pay form#order_review.ptgas-success .button#place_order {
	font-size: 1rem;
}

.ptgas-success__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin: 0 auto 1.25rem;
	border-radius: 14px;
	background: #f6a723;
	color: #fff;
}

.ptgas-success__title {
	margin: 0 0 .75rem;
	font-size: 1.35rem;
	font-weight: 700;
	color: #111827;
}

.ptgas-success__subtitle {
	margin: 0 auto 1.75rem;
	max-width: 480px;
	color: var(--ptgas-muted);
	font-size: .92rem;
	line-height: 1.6;
}

.ptgas-success__card {
	margin: 0 0 1.5rem;
	background: #fff;
	border: 1px solid var(--ptgas-border);
	border-radius: 12px;
	overflow: hidden;
	text-align: left;
}

.ptgas-success__card-head {
	padding: .9rem 1.4rem;
	background: var(--ptgas-bg-soft);
	border-bottom: 1px solid var(--ptgas-border);
	font-weight: 700;
	color: #111827;
}

.ptgas-success__rows {
	margin: 0;
	padding: .4rem 1.4rem;
}

.ptgas-success__row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	padding: .7rem 0;
}

.ptgas-success__row dt {
	color: var(--ptgas-muted);
	font-size: .92rem;
}

.ptgas-success__row dd {
	margin: 0;
	font-weight: 600;
	color: #111827;
}

.ptgas-success__row--sep {
	border-top: 1px solid var(--ptgas-border);
}

.ptgas-success__status {
	color: #d97706;
}

.ptgas-success__row--total {
	border-top: 1px solid var(--ptgas-border);
}

.ptgas-success__row--total dt {
	color: #111827;
	font-weight: 700;
}

.ptgas-success__row--total dd {
	color: #d97706;
	font-weight: 700;
	font-size: 1.05rem;
}

/* Gateway list from checkout/payment-method.php. Hidden when only one
   gateway is enabled (its radio is preselected and still submits). */
.ptgas-success__methods {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	text-align: left;
}

.ptgas-success__methods li {
	padding: .5rem 0;
}

.ptgas-success__methods--single {
	display: none;
}

.ptgas-success__submit {
	margin: 0;
	padding: 0;
}

.ptgas-success__pay {
	display: block;
	width: 100%;
	padding: .95rem 1.5rem;
	background: #374151;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.ptgas-success__pay:hover {
	background: #1f2937;
	color: #fff;
}

.ptgas-success__note {
	margin: .9rem 0 0;
	color: var(--ptgas-muted);
	font-size: .8rem;
}

@media (max-width: 860px) {
	.ptgas-checkout__body {
		grid-template-columns: 1fr;
	}
	.ptgas-summary {
		position: static;
		order: -1;
	}
}

@media (max-width: 560px) {
	.ptgas-steps__item {
		font-size: .72rem;
	}
	.ptgas-review__body {
		grid-template-columns: 1fr;
	}
	.ptgas-nav {
		flex-direction: column-reverse;
	}
	.ptgas-btn {
		width: 100%;
	}
}
