/* T023 field-guide documents; native Woo form/block internals keep their own layout. */
.anzshell-document { margin:0; background:#ffffff; }
.anzshell { --anzshell-forest:#163e35; --anzshell-lime:#d5eb57; color:#17221e; background:#ffffff; font:16px/1.6 Aptos,"Segoe UI",Arial,sans-serif; max-width:1320px; margin-inline:auto; border:1px solid var(--anzshell-forest); position:relative; }
.anzshell, .anzshell * { box-sizing:border-box; }
.anzshell ::selection { background:var(--anzshell-lime); color:var(--anzshell-forest); }
.anzshell :is(input,textarea) { caret-color:var(--anzshell-forest); }
.anzshell a { color:inherit; text-underline-offset:4px; overflow-wrap:anywhere; }
.anzshell :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--anzshell-forest); outline-offset:4px; }
.anzshell :is(button,input:not([type=checkbox]):not([type=radio]),select,summary) { min-height:44px; }
.anzshell :is(h1,h2,h3) { color:inherit; font-weight:600; line-height:1.15; text-wrap:balance; }
.anzshell h1 { font-size:clamp(2rem,4vw,3.25rem); margin:0 0 32px; }
.anzshell h2 { font-size:clamp(1.4rem,2.5vw,2rem); margin:36px 0 16px; }
.anzshell-header { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:20px 64px; background:var(--anzshell-forest); color:#ffffff; }
.anzshell-header .anzshell-brand { display:flex; align-items:center; min-height:44px; }
.anzshell-brand img { display:block; width:216px; max-width:100%; height:auto; }
.anzshell-header nav { display:flex; flex-wrap:wrap; gap:8px 24px; }
.anzshell-header nav a { display:inline-flex; align-items:center; min-height:44px; }
.anzshell :is(.anzshell-header,.anzshell-footer) :focus-visible { outline-color:var(--anzshell-lime); }
.anzshell .anzshell-skip { position:absolute; top:8px; left:8px; z-index:10; padding:12px; background:var(--anzshell-lime); color:var(--anzshell-forest); transform:translateY(-180%); }
.anzshell .anzshell-skip:focus { transform:none; }
.anzshell-main { padding:48px 64px 72px; min-height:45vh; }
.anzshell-content { min-width:0; }
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content { width:100%; max-width:none; margin-inline:0; font-size:18px; }
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content :is(p,ul,ol,blockquote) { max-width:96ch; }
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content > :is(.wp-block-group,.wp-block-columns,.wp-block-cover,.wp-block-image,.wp-block-table) { width:100%; max-width:none; margin-inline:0; }
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { margin-inline:0; }
.anzshell .anzshell-page .anzjourney-help { max-width:none; margin-inline:0; }
.anzshell-content table { max-width:100%; }
.anzshell-content > table { display:block; overflow-x:auto; }
.anzshell-content :is(img,video,iframe) { max-width:100%; }
.anzshell-content :is(img,video) { height:auto; }
.anzshell-content :is(pre,.wp-block-table) { max-width:100%; overflow:auto; }
.anzshell-content { overflow-wrap:anywhere; }
.anzshell-content :is(p,ul,ol) { margin-block:0 24px; }
.anzshell-content .anzfg-travel { margin:0; border:0; }
.anzshell-list { border-top:1px solid var(--anzshell-forest); }
.anzshell-entry { display:grid; grid-template-columns:minmax(0,1fr) 180px; gap:12px 32px; padding:28px 0; border-bottom:1px solid var(--anzshell-forest); }
.anzshell-entry h2 { margin:0; }
.anzshell-entry h2 a { display:inline-flex; align-items:center; min-height:44px; }
.anzshell-entry time { font-variant-numeric:tabular-nums; padding-top:8px; }
.anzshell-entry p { grid-column:1; max-width:70ch; margin:0; }
.anzshell .pagination { margin-top:32px; }
.anzshell .pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.anzshell .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:8px; border:1px solid var(--anzshell-forest); }
.anzshell .page-numbers.current { background:var(--anzshell-lime); }
.anzshell-footer { padding:36px 64px; background:var(--anzshell-forest); color:#ffffff; }
@media(max-width:767px) {
    .anzshell-header { padding:16px 20px; flex-wrap:wrap; gap:12px; }
    .anzshell-header nav { width:100%; justify-content:space-between; gap:4px 12px; }
    .anzshell-main { padding:28px 20px 48px; }
    .anzshell h1 { margin-bottom:24px; }
    .anzshell-entry { grid-template-columns:1fr; gap:8px; padding:24px 0; }
    .anzshell-entry time { padding:0; }
    .anzshell-footer { padding:28px 20px; }
}
@media(max-width:540px) {
    .anzshell .anzshell-footer { padding-bottom:calc(120px + env(safe-area-inset-bottom)); }
    .anzshell .anzshell-commerce { padding-right:24px; }
}
@media(prefers-reduced-motion:reduce) {
    .anzshell { scroll-behavior:auto; }
}
/* Contact: installed WPForms remains the sole owner of fields, validation and submission. */
.anzshell .anzshell-page .wpforms-container { width:100%; max-width:960px; margin:32px 0; --wpforms-field-background-color:#ffffff; --wpforms-field-text-color:#17221e; --wpforms-field-border-color:#163e35; --wpforms-label-color:#17221e; --wpforms-label-sublabel-color:#344e44; --wpforms-button-background-color:#d5eb57; --wpforms-button-text-color:#163e35; }
.anzshell .wpforms-container .wpforms-form :is(input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],select,textarea) { box-sizing:border-box; font:inherit; color:#17221e; background:#ffffff; border:1px solid #163e35; border-radius:0; padding:12px 14px; min-height:48px; width:100%; max-width:100%; box-shadow:none; }
.anzshell .wpforms-container .wpforms-form textarea:not([hidden]) { min-height:180px; resize:vertical; }
.anzshell .wpforms-container .wpforms-form :is(input,textarea)::placeholder { color:#52655d; opacity:1; }
.anzshell .wpforms-container .wpforms-form .wpforms-field-label { display:block; color:#17221e; font-weight:600; margin-bottom:8px; }
.anzshell .wpforms-container .wpforms-form :is(.wpforms-field-sublabel,.wpforms-field-description) { color:#344e44; font-size:15px; line-height:1.5; }
.anzshell .wpforms-container .wpforms-form :is(label.wpforms-error,em.wpforms-error,.wpforms-error-container) { display:block; color:#8b2424; font-size:15px; line-height:1.5; }
.anzshell .wpforms-container .wpforms-form :is(input,textarea,select).wpforms-error { border:2px solid #8b2424; }
/* Remove only explanatory HTML/note surfaces' inherited or inline black treatment. */
.anzshell .wpforms-container :is(.wpforms-description,.wpforms-field-html,.wpforms-field-content),
.anzshell .wpforms-container :is(.wpforms-description,.wpforms-field-html,.wpforms-field-content) :is(p,div,span) { background-color:#ffffff !important; color:#17221e !important; }
.anzshell .wpforms-container :is(.wpforms-recaptcha-container,.wpforms-hcaptcha-container) { max-width:100%; margin-block:24px; padding:0; background:transparent; }
.anzshell .wpforms-container .wpforms-form button.wpforms-submit { min-height:48px; padding:12px 28px; border:1px solid #163e35; border-radius:0; background:#d5eb57; color:#163e35; font:600 18px/1.4 Aptos,"Segoe UI",Arial,sans-serif; box-shadow:none; cursor:pointer; }
.anzshell .wpforms-container .wpforms-form button.wpforms-submit:hover { background:#163e35; color:#ffffff; }
.anzshell .wpforms-container .wpforms-form :is(input,textarea,select,button):focus-visible { outline:3px solid #163e35; outline-offset:4px; box-shadow:none; }
.anzshell .wpforms-container .wpforms-form button.wpforms-submit:disabled { background:#ffffff; color:#344e44; border-style:dashed; cursor:not-allowed; opacity:1; }
/* Only the server-gated empty Cart replacement uses these classes. */
.anzshell .anzshell-destinations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-block:32px; }
.anzshell .anzshell-destination { display:grid; grid-template-columns:minmax(100px,0.8fr) minmax(0,1.2fr); align-items:center; gap:24px; border-block:1px solid #163e35; padding:24px 0; min-width:0; }
.anzshell .anzshell-destination img { width:100%; height:200px; object-fit:contain; }
.anzshell .anzshell-destination h3 { font-size:24px; margin:0 0 16px; }
.anzshell .anzshell-destination-facts { font-size:15px; font-variant-numeric:tabular-nums; margin:0 0 20px; }
.anzshell .anzshell-destination-action { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 16px; border:1px solid #163e35; background:#d5eb57; color:#163e35; text-decoration:none; font-weight:600; line-height:1.4; }
.anzshell .anzshell-destination-action:hover { background:#163e35; color:#ffffff; }
@media(max-width:1023px) {
    .anzshell .anzshell-destination { grid-template-columns:1fr; gap:16px; }
    .anzshell .anzshell-destination img { height:180px; }
}
@media(max-width:540px) {
    .anzshell .anzshell-destinations { grid-template-columns:1fr; gap:24px; }
    .anzshell .anzshell-destination { grid-template-columns:100px minmax(0,1fr); }
    .anzshell .anzshell-destination img { height:140px; }
    .anzshell .anzshell-destination h3 { font-size:22px; }
    .anzshell .wpforms-container .wpforms-form :is(.wpforms-field-row,.wpforms-field-medium,.wpforms-field-large) { max-width:100%; }
}

.anzshell .anzshell-page .anzjourney-help { background:#ffffff; font:inherit; }
.anzshell .anzjourney-help .anzjourney-heading { padding:0; background:#ffffff; color:#17221e; }
.anzshell .anzjourney-help .anzjourney-body { padding:0; }
.anzshell .anzjourney-help section { max-width:96ch; }
.anzshell .wpforms-container .wpforms-form .wpforms-field { margin-block:0 24px; }
/* Read surfaces: long tables scroll within their wrapper without crushing short labels. */
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content table { width:100%; border-collapse:collapse; }
.anzshell :is(.anzshell-page,.anzshell-post) .anzshell-content :is(th,td) { min-width:10ch; padding:12px; text-align:left; vertical-align:top; border-bottom:1px solid #163e35; }
/* T024 r4: only Woo Cart's native checkout navigation, never express-payment controls. */
.anzshell .anzshell-commerce .wp-block-woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button { background:#d5eb57; color:#163e35; border:1px solid #163e35; opacity:1; }
.anzshell .anzshell-commerce .wp-block-woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:hover { background:#163e35; color:#ffffff; }
.anzshell .anzshell-commerce .wp-block-woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button:focus-visible { background:#d5eb57; color:#163e35; outline:3px solid #163e35; outline-offset:4px; }
.anzshell .anzshell-commerce .wp-block-woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button[disabled],
.anzshell .anzshell-commerce .wp-block-woocommerce-cart a.wc-block-components-button.wc-block-cart__submit-button[aria-disabled="true"] { background:#ffffff; color:#163e35; border-style:dashed; opacity:1; cursor:not-allowed; }
/* PM-confirmed Contact hero only; important overrides its maintained inline gradient. */
body.page-id-18 .anzshell .anzshell-page .anzshell-content.post-18 > .has-background:first-child { background:linear-gradient(0deg,rgba(255,255,255,0) 16%,#163e35 16%) !important; color:#ffffff; }
