.aaws-service-catalogue .page-hero { padding-block: 64px; }
.aaws-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.aaws-service-card { display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: 0 12px 36px rgba(17,27,46,.06); }
.aaws-service-art { background: var(--cream); padding: 24px; }
.aaws-service-art figure { margin: 0 auto; max-width: 240px; }
.aaws-service-art img { width: 100%; height: auto; border-radius: 12px; }
.aaws-service-card-body { padding: 28px; display: flex; flex-direction: column; flex: 1; gap: 18px; }
.aaws-service-card-body h2 { font-size: 26px; line-height: 1.2; margin: 0; letter-spacing: -.03em; }
.aaws-service-card-body ul { padding-left: 22px; margin: 0; font-size: 16px; line-height: 1.65; }
.aaws-service-card-body li { margin-bottom: 10px; }
.aaws-service-card-body li::marker { color: var(--blue); }
.aaws-service-card-body p { font-size: 17px; line-height: 1.6; margin: auto 0 0; }
.aaws-service-card-body p a { display: block; color: var(--blue); text-decoration: underline; text-underline-offset: 4px; margin-top: 8px; }
.aaws-service-card-body .wp-block-buttons { margin: 0; }
.aaws-service-card-body .wp-block-button { width: 100%; }
.aaws-service-card-body .wp-block-button__link { display: block; background: var(--blue); color: white; border-radius: 10px; padding: 14px 18px; font-size: 16px; font-weight: 700; }
.aaws-service-project { margin-top: 40px; padding: 32px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--soft); }
.aaws-service-project h2 { font-size: 28px; margin: 0 0 16px; }
.aaws-service-project p { font-size: 18px; line-height: 1.7; margin: 0; }
.aaws-service-project a { color: var(--blue); text-decoration: underline; }
.aaws-commerce-breadcrumb { display: flex; gap: 12px; flex-wrap: wrap; padding-block: 28px; font-size: 15px; color: var(--muted); }
.aaws-commerce-breadcrumb a:hover { color: var(--blue); }
.aaws-native-product { padding-bottom: 64px; }
.aaws-native-product > .wp-block-group { border: 1px solid var(--line); border-radius: var(--radius); padding: clamp(24px,4vw,48px); box-shadow: var(--shadow); }
.aaws-native-product p, .aaws-native-product li { font-size: 18px; line-height: 1.7; }
.aaws-native-product ul { padding-left: 24px; }
.aaws-native-product li { margin-bottom: 12px; }
.aaws-native-product h1 { font-size: clamp(32px,4vw,52px); line-height: 1.12; }
.aaws-native-product h3 { font-size: 24px; }
@media (max-width: 1000px) { .aaws-service-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 640px) { .aaws-service-grid { grid-template-columns: 1fr; } .aaws-service-card-body { padding: 24px; } .aaws-service-catalogue .page-hero { padding-block: 40px; } .aaws-service-project { padding: 24px; } }

.aaws-checkout-page { padding-bottom:64px; }
.aaws-checkout-page h1 { font-size:clamp(32px,4vw,48px); letter-spacing:-.04em; margin:8px 0 16px; }
.aaws-checkout-page>.container>p { font-size:18px; color:var(--muted); margin-bottom:32px; line-height:1.6; }
.aaws-checkout-native { border:1px solid var(--line); border-radius:18px; overflow:hidden; }
.aaws-checkout-native .wp-block-surecart-columns.is-full-height { min-height:0; }
@media(max-width:640px) { .aaws-checkout-native .wp-block-surecart-column { padding:24px!important; } }

.aaws-detail-heading { padding-bottom:32px; }
.aaws-detail-heading h1 { font-size:clamp(34px,4.5vw,60px); line-height:1.1; letter-spacing:-.045em; max-width:900px; margin:12px 0 18px; text-wrap:balance; }
.aaws-detail-heading>p:last-child { color:var(--muted); font-size:18px; line-height:1.65; max-width:700px; }
.aaws-detail-content { padding-bottom:48px; }
.aaws-detail-layout { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr); gap:40px; align-items:start; }
.aaws-detail-overview { border-top:1px solid var(--line); padding-top:28px; }
.aaws-detail-overview h2 { font-size:28px; letter-spacing:-.03em; margin:0 0 28px; }
.aaws-detail-overview p,.aaws-detail-overview li { font-size:17px; line-height:1.75; }
.aaws-detail-overview ul,.aaws-detail-overview ol { padding-left:24px; margin:0 0 24px; }
.aaws-detail-overview li { margin-bottom:12px; }
.aaws-detail-overview li::marker { color:var(--blue); }
.aaws-detail-overview h3,.aaws-detail-overview h4 { font-size:23px; line-height:1.4; margin:28px 0 16px; }
.aaws-detail-purchase { padding:28px; background:var(--cream); border:1px solid var(--line); border-radius:20px; min-width:0; }
.aaws-detail-image { display:block; width:100%; max-height:260px; object-fit:contain; border-radius:12px; margin:0 auto 24px; }
.aaws-detail-price-label { font-size:15px; font-weight:600; margin:0 0 8px; }
.aaws-detail-price { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px; margin-bottom:24px; }
.aaws-detail-price>:first-child { font-size:42px; font-weight:700; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.aaws-detail-price>:last-child:not(:first-child) { color:var(--muted); font-size:16px; }
.aaws-detail-purchase .sc-choice { padding:14px; min-height:0; border-radius:10px; font-size:15px; box-shadow:none; border:1px solid var(--line); }
.aaws-detail-purchase .sc-choice[aria-checked="true"] { border:2px solid var(--blue); background:#f1f5ff; padding:13px; }
.aaws-detail-purchase .sc-choice>.wp-block-group { flex-direction:row; flex-wrap:wrap; gap:6px; align-items:baseline; }
.aaws-detail-purchase .wp-block-surecart-product-buy-buttons { margin-top:24px; display:grid; gap:12px; }
.aaws-detail-purchase .wp-block-button { width:100%; margin:0; }
.aaws-detail-purchase .wp-block-button__link { width:100%; padding:15px; border-radius:10px; background:var(--blue); color:white; font-size:16px; border:1px solid var(--blue); font-weight:600; }
.aaws-detail-purchase .is-style-outline .wp-block-button__link { background:white; color:var(--blue); }
.aaws-detail-currency { font-size:14px; color:var(--muted); line-height:1.6; margin:20px 0 12px; }
.aaws-detail-cart { color:var(--blue); font-size:15px; font-weight:600; }
.aaws-detail-help { display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line); padding-block:32px 56px; }
.aaws-detail-help h2 { font-size:26px; margin:0 0 8px; letter-spacing:-.03em; }
.aaws-detail-help p { font-size:17px; color:var(--muted); margin:0; }
.aaws-service-detail a:focus-visible,.aaws-detail-purchase .sc-choice:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
@media(max-width:800px) { .aaws-detail-layout { grid-template-columns:1fr; gap:28px; } .aaws-detail-purchase { grid-row:1; } .aaws-detail-image { max-height:180px; } .aaws-detail-help { flex-direction:column; align-items:start; } }
