/* Homepage presentation. All business content and destinations are core blocks. */
.asg-home-wrap{width:90%;max-width:1240px;margin-left:auto;margin-right:auto}.asg-home-section{padding-top:64px;padding-bottom:64px}.asg-block-home .wp-block-columns{gap:48px;margin-bottom:0}.asg-block-home .wp-block-column{min-width:0}.asg-block-home figure{margin:0 0 22px}.asg-block-home figure img{display:block;width:100%;height:auto}.asg-block-home .wp-block-buttons{margin-top:24px}.asg-block-home .wp-block-button__link{border-radius:0;background:#bf4b00;color:#fff;border:1px solid #bf4b00;font:500 var(--type-button)/1.3 var(--display);padding:14px 24px;text-decoration:none}.asg-block-home .is-style-outline .wp-block-button__link{background:transparent;color:#be4c08;border-color:currentColor}.asg-block-home .wp-block-button__link:hover{background:#a84200;color:white}.asg-home-hero{padding:0!important;overflow:hidden;background:#052f53;isolation:isolate;align-items:center;min-height:530px}.asg-home-hero:after{position:absolute;inset:0;content:'';z-index:1;background:linear-gradient(90deg,rgba(0,38,73,.96),rgba(0,38,73,.87) 37%,rgba(0,38,73,.25) 72%,rgba(0,38,73,.04))}.asg-home-hero .wp-block-cover__inner-container{position:relative;z-index:2;width:100%;padding:64px 0}.asg-home-hero .asg-home-wrap>*{max-width:620px}.asg-home-hero h1{font-weight:600;line-height:1.08;color:#fff;max-width:610px;margin-bottom:24px}.asg-home-hero .eyebrow{color:#ffb37b}.asg-hero-description{line-height:1.5;color:#fff;max-width:540px!important}.asg-home-hero .wp-block-cover__video-background,.asg-hero-poster{position:absolute!important;inset:0;width:100%;height:100%!important;object-fit:cover;z-index:0}.asg-home-hero video{opacity:0;transition:opacity .3s}.asg-home-hero video.is-playing{opacity:1}.asg-hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.asg-home-hero .wp-block-buttons{margin-top:8px}.asg-home-hero .is-style-outline .wp-block-button__link{color:#fff}.asg-category-section{padding-top:40px;padding-bottom:40px}.asg-process-section,.asg-about,.asg-videos{background:#eaf6fc}.asg-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;margin-top:32px;margin-bottom:48px;text-align:center}.asg-process-step{position:relative}.asg-process-step figure{margin-bottom:12px}.asg-process-arrow{position:absolute;right:-30px;top:36%;color:#69707e}.asg-process-step:last-child .asg-process-arrow{display:none}.asg-equipment-grid,.asg-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.asg-equipment-card{background:white;padding:24px;display:flex;flex-direction:column}.asg-equipment-card figure img{aspect-ratio:4/3;object-fit:cover}.asg-equipment-card .wp-block-buttons{margin-top:auto;padding-top:12px}.asg-equipment-card .wp-block-button__link{padding:10px 18px;}.asg-welcome-columns>.wp-block-column:first-child{flex-basis:42%}.asg-welcome-columns>.wp-block-column:last-child{flex-basis:58%}.asg-welcome-columns figure{position:sticky;top:30px}.asg-welcome-columns figure img{aspect-ratio:4/5;object-fit:cover}.asg-quote{scroll-margin-top:30px}.asg-quote .asg-quote-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.asg-quote-fields p{margin:0;font-weight:700}.asg-quote-fields p:nth-child(n+5){grid-column:1/-1}.asg-quote-fields input,.asg-quote-fields textarea{width:100%;margin-top:6px;border:1px solid #6e5a42;border-radius:0;padding:10px;background:#fff;color:#102b46}.asg-quote-fields textarea{height:110px;resize:vertical}.asg-quote input[type=submit]{background:#052f53;color:white;border:0;padding:14px 24px;cursor:pointer;margin-top:20px}.asg-quote .wpcf7-not-valid-tip{color:#6b0000}.asg-quote .wpcf7-response-output{border-color:#052f53!important}.asg-featured{background:linear-gradient(#052f53 0,#052f53 260px,#fff 260px,#fff 100%)}.asg-featured h2{color:white}.asg-featured .eyebrow{color:#ffb37b}.asg-featured-card{background:#fff;padding:14px 14px 24px}.asg-featured-card figure img{aspect-ratio:4/3;object-fit:cover}.asg-testimonials{background:#081d32;color:#fff;text-align:center}.asg-testimonials h2{color:#fff;margin-bottom:36px}.asg-testimonial-slider{max-width:900px;margin:auto}.asg-testimonial-slider blockquote{border:0;margin:0;padding:20px 36px 32px}.asg-testimonial-slider blockquote p{line-height:1.7}.asg-testimonial-slider cite{font-style:normal;color:#cddce8}.asg-testimonial-slider cite strong{color:#ffb37b;font-family:var(--display);}.asg-testimonial-slider [hidden]{display:none!important}.asg-slider-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px}.asg-slider-controls button{background:transparent;color:#fff;border:1px solid #7990a5;padding:8px 14px;}.asg-slider-controls button[aria-current=true]{background:#bf4b00;border-color:#bf4b00}.asg-slider-dots{display:flex;gap:8px}.asg-slider-dots button{border-radius:50%;width:32px;height:32px;padding:0}.asg-videos.asg-home-wrap{width:100%;max-width:none;padding-left:max(5%,calc((100% - 1240px)/2));padding-right:max(5%,calc((100% - 1240px)/2));background:#fff}.asg-video-card figure img{aspect-ratio:16/9;object-fit:cover}.asg-videos>.wp-block-buttons{justify-content:center;margin-top:36px}.asg-about-columns>.wp-block-column:first-child{flex-basis:45%}.asg-about-columns>.wp-block-column:last-child{flex-basis:55%}.asg-about figure img{height:auto}.asg-about figure+figure{max-width:420px;margin:36px auto 0}.asg-cta{background:#f29a3b;padding:36px 0;color:#102b46}.asg-cta .asg-home-wrap{position:relative;padding-right:200px}.asg-cta h2{color:#102b46;margin-bottom:10px}.asg-cta h2 .asg-icon{margin-right:12px}.asg-cta p{margin:0}.asg-cta .wp-block-buttons{position:absolute;right:0;top:50%;transform:translateY(-50%);margin:0}.asg-cta .is-style-outline .wp-block-button__link{color:#102b46}.editor-styles-wrapper .asg-home-hero video{opacity:1}.editor-styles-wrapper .asg-home-hero:after{pointer-events:none}.editor-styles-wrapper .asg-equipment-grid{display:grid}
@media(max-width:1000px){.asg-equipment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asg-block-home .wp-block-columns{gap:28px}}
@media(max-width:767px){.asg-home-section{padding-top:40px;padding-bottom:40px}.asg-home-hero{min-height:530px!important}.asg-home-hero .wp-block-cover__inner-container{padding:42px 0}.asg-home-hero:after{background:rgba(0,38,73,.88)}.asg-home-hero video{display:none}.asg-hero-actions{gap:10px}.asg-home-hero .wp-block-button__link{padding:12px 18px}.asg-block-home .wp-block-columns{display:block}.asg-block-home .wp-block-column+.wp-block-column{margin-top:28px}.asg-category-section{padding:28px 0}.asg-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-bottom:30px}.asg-process-arrow{display:none}.asg-equipment-grid,.asg-three-grid{grid-template-columns:1fr;gap:24px}.asg-equipment-card{padding:20px}.asg-welcome-columns figure{position:static}.asg-welcome-columns figure img{aspect-ratio:4/3}.asg-quote .asg-quote-fields{grid-template-columns:1fr}.asg-quote-fields p{grid-column:1/-1}.asg-testimonial-slider blockquote{padding:12px 0 24px}.asg-slider-controls{gap:8px}.asg-cta .asg-home-wrap{padding-right:0}.asg-cta .wp-block-buttons{position:static;transform:none;margin-top:24px}.asg-about-columns>.wp-block-column:first-child figure+figure{max-width:280px}}
@media(prefers-reduced-motion:reduce){.asg-home-hero video{display:none}.asg-home-hero *{transition:none}html{scroll-behavior:auto}}

.asg-home-hero .asg-home-wrap>h1{max-width:540px}
/* Keep the featured video together within the quote column, like the Welcome photo. */

/* Equal-height grid cards keep their actions on the bottom edge of each row. */
@media(min-width:768px){
 .asg-featured-card,.asg-video-card{display:flex;flex-direction:column}
 .asg-featured-card>.wp-block-buttons,.asg-video-card>.wp-block-buttons{margin-top:auto;padding-top:2px}
}

/* Homepage blocks use the same roles and spacing as inner templates. */
.asg-home-wrap{width:var(--wrap-width);max-width:var(--max)}
.asg-home-section,.asg-category-section,.asg-cta{padding-top:var(--section-pad);padding-bottom:var(--section-pad)}
.asg-home-hero .wp-block-cover__inner-container{padding:var(--section-pad) 0}
.asg-block-home h2{font-size:var(--type-h2);margin-bottom:var(--heading-gap)}
.asg-block-home h3{font-size:var(--type-h3)}
.asg-home-hero h1{font-size:var(--type-h1);line-height:var(--heading-leading)}
.asg-block-home .eyebrow{font-size:var(--type-kicker)}
.asg-hero-description{font-size:var(--type-lead);line-height:var(--body-leading)}
.asg-welcome p,.asg-about p{font-size:var(--type-body)}
.asg-block-home :is(.asg-equipment-card,.asg-featured-card,.asg-video-card,.asg-category-cover,.asg-process-step) :is(h2,h3){font-size:var(--type-card);margin-bottom:var(--title-text-gap)}
.asg-block-home :is(.asg-equipment-card,.asg-featured-card,.asg-video-card,.asg-category-cover) p,.asg-quote-fields p,.asg-testimonial-slider cite{font-size:var(--type-small);line-height:var(--body-leading)}
.asg-testimonial-slider blockquote p{font-size:var(--type-lead);line-height:var(--body-leading)}.asg-testimonial-slider cite strong{font-size:var(--type-card)}
.asg-block-home .wp-block-button__link,.asg-quote input[type=submit]{font:500 var(--type-button)/1.3 var(--display);text-transform:uppercase;height:var(--button-height);min-height:var(--button-height);display:inline-flex;align-items:center;justify-content:center;padding:0 var(--space-5);background:var(--orange);border:1px solid var(--orange);color:#fff}
.asg-block-home .is-style-outline .wp-block-button__link{text-transform:none;background:transparent;color:var(--orange)}
.asg-home-hero .is-style-outline .wp-block-button__link{color:white;border-color:currentColor}
.asg-cta .is-style-outline .wp-block-button__link{color:#102b46;border-color:currentColor}

.asg-block-home .wp-block-columns,.asg-equipment-grid,.asg-three-grid,.asg-process-grid{gap:var(--grid-gap)}
.asg-equipment-card,.asg-featured-card{padding:var(--card-pad)!important}
.asg-block-home :is(.asg-equipment-card,.asg-featured-card,.asg-video-card,.asg-process-step) figure{margin-bottom:var(--image-title-gap)}
.asg-block-home p,.asg-block-home figure{margin-bottom:var(--block-gap)}
.asg-process-step a{display:inline-flex;min-height:var(--target);min-width:var(--target);align-items:center;justify-content:center}
.asg-slider-controls button{min-width:var(--target);min-height:var(--target);font-size:var(--type-small)}
.asg-slider-dots button{width:var(--target);height:var(--target)}

.asg-block-home :is(.asg-equipment-card,.asg-featured-card,.asg-video-card,.asg-category-cover,.asg-process-step) :is(h2,h3){text-transform:none;margin-top:0}
.asg-testimonial-slider cite strong{font-weight:500}
.asg-block-home figure>a{display:block}
.asg-video-card{padding:0}
.asg-process-grid{margin-top:var(--heading-gap);margin-bottom:var(--grid-gap)}

/* Outline buttons fill on hover and keyboard focus (founder request, 16 Oct).
   Beats the later transparent outline rules (0,3,0) with (0,4,0). */
.asg-block-home .is-style-outline .wp-block-button__link,.asg-slider-controls button{transition:background-color .2s ease,border-color .2s ease,color .2s ease}
.asg-block-home .is-style-outline .wp-block-button__link:hover,.asg-block-home .is-style-outline .wp-block-button__link:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff}
.asg-block-home .asg-cta .is-style-outline .wp-block-button__link:hover,.asg-block-home .asg-cta .is-style-outline .wp-block-button__link:focus-visible{background:#102b46;border-color:#102b46;color:#fff}
.asg-slider-controls button:hover,.asg-slider-controls button:focus-visible{background:var(--orange);border-color:var(--orange);color:#fff}
/* Clickable homepage pictures zoom slightly on hover/keyboard focus (same 6% over .35s as Related Machinery); the link clips the zoom. */
:is(.asg-process-step,.asg-equipment-card,.asg-featured-card,.asg-video-card) .wp-block-image a{display:block;overflow:hidden}
:is(.asg-process-step,.asg-equipment-card,.asg-featured-card,.asg-video-card) .wp-block-image a img{transition:transform .35s ease}
:is(.asg-process-step,.asg-equipment-card,.asg-featured-card,.asg-video-card) .wp-block-image a:is(:hover,:focus-visible) img{transform:scale(1.06)}
@media(prefers-reduced-motion:reduce){:is(.asg-process-step,.asg-equipment-card,.asg-featured-card,.asg-video-card) .wp-block-image a img{transition:none}:is(.asg-process-step,.asg-equipment-card,.asg-featured-card,.asg-video-card) .wp-block-image a:is(:hover,:focus-visible) img{transform:none}}
/* The bottle-to-flake steps stand on their own white row under the hero (they replaced the photo cards); the row's padding sets the spacing. */
.asg-steps-section .asg-process-grid{margin-top:0;margin-bottom:0}
/* Contact / quote section: a full-width orange band like the testimonials band (the Bali video column was removed);
   heading, intro and form centred in a readable column. */
.asg-quote{background:#f29a3b;color:#102b46}
.asg-quote-inner{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.asg-quote-text>*:last-child{margin-bottom:0}
.asg-quote-text .eyebrow{color:#102b46;margin-bottom:12px}
.asg-quote-text h2{margin-bottom:16px}
.asg-quote-text h2:after{display:none}
.asg-quote-contact{margin:28px 0 0}
.asg-quote-contact li{margin-bottom:10px}
.asg-quote-contact a,.asg-quote-contact i{color:#102b46}
/* Form: two equal columns, every field the same height; rows align at the top so an error message under one field
   never pushes its neighbour out of line. */
.asg-quote .asg-quote-fields{align-items:start}
.asg-block-home .asg-quote .asg-quote-fields>p{margin:0}
.asg-quote-fields label{display:block}
.asg-quote-fields input{height:46px;box-sizing:border-box}
.asg-quote-fields textarea{height:100px;box-sizing:border-box;display:block}
.asg-quote-form .wpcf7 form>p:last-of-type{margin:0}
.asg-quote-form input[type=submit]{margin-top:18px}
@media(max-width:900px){.asg-quote-inner{grid-template-columns:1fr;gap:28px}}
/* Steps row (founder option B, numbered timeline): centred heading, numbered circles joined by a line, one line of
   text per step. The numbers are a CSS counter, so moving a step in the editor renumbers the row. */
.asg-steps-head{text-align:center;margin-bottom:28px}
.asg-steps-head h2{margin-bottom:0}
.asg-steps-section .asg-process-grid{counter-reset:asg-step;position:relative}
.asg-steps-section .asg-process-grid:before{content:"";position:absolute;left:12.5%;right:12.5%;top:23px;height:2px;background:#dde4ea}
.asg-steps-section .asg-process-step{counter-increment:asg-step}
.asg-steps-section .asg-process-step:before{content:counter(asg-step);position:relative;z-index:1;display:flex;width:48px;height:48px;margin:0 auto 10px;border-radius:50%;align-items:center;justify-content:center;background:#102b46;color:#fff;font:500 18px/1 var(--display);box-shadow:0 0 0 6px #fff;transition:background .2s}
.asg-steps-section .asg-process-step:hover:before{background:#bf4b00}
.asg-steps-section .asg-process-arrow{display:none}
.asg-step-desc{font-size:var(--type-small);line-height:1.5;margin:6px 0 0}
@media(max-width:767px){.asg-steps-section .asg-process-grid:before{display:none}}
@media(prefers-reduced-motion:reduce){.asg-steps-section .asg-process-step:before{transition:none}}

/* Testimonial controls on one line: phones show icons for Previous / Next / Pause and smaller number circles. */
.asg-slider-step .asg-slider-icon{display:none}
@media(max-width:600px){
 .asg-slider-controls{flex-wrap:nowrap;gap:6px}
 .asg-slider-dots{gap:4px}
 .asg-slider-controls button{min-width:0;min-height:0;width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center}
 .asg-slider-step .asg-slider-icon{display:block}
 .asg-slider-step .asg-slider-text{display:none}
}
@media(max-width:360px){
 .asg-slider-controls{gap:4px}
 .asg-slider-controls button{width:32px;height:32px}
}
