/* Shym warehouse location pages (Wollongong, Perth Tasmania).
   Design system B (Warm Nordic), rules in DESIGN.md at the project root.
   Every rule starts at .sl, the class on each section of these two pages, so nothing here
   can touch the rest of the site. Loaded by block 50 (inc/location-schema.php). */

@font-face{font-family:"Albert Sans";src:url("../fonts/AlbertSans.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

.sl{
  --sl-ink:#26222F;--sl-body:#4A4451;--sl-muted:#645D6A;--sl-line:#E3DCD5;--sl-cream:#EEE9E5;
  --sl-white:#FFFFFF;--sl-orange:#B5412A;--sl-orange-deep:#9C3622;
  --sl-font:"Albert Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-family:var(--sl-font);color:var(--sl-body);
}
.sl *,.sl *::before,.sl *::after{box-sizing:border-box}
/* some pages set the old font on every element, so each part says the font again */
.sl h1,.sl h2,.sl h3,.sl h4,.sl p,.sl li,.sl a,.sl span,.sl strong,.sl div{font-family:var(--sl-font)}

/* ---------- sections ---------- */
.e-con.sl{--padding-top:40px;--padding-bottom:40px;--padding-left:24px;--padding-right:24px;background:var(--sl-white)}
.e-con.sl>.e-con-inner{gap:28px}
.e-con.sl.sl-first{--padding-top:16px;--padding-bottom:24px}
.e-con.sl.sl-last{--padding-bottom:72px}
.sl .e-con{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px}
.sl .elementor-widget{margin:0}

/* ---------- type ---------- */
.sl .elementor-widget .elementor-heading-title{margin:0;padding:0;text-transform:none;font-family:var(--sl-font);text-wrap:balance}
.sl .sl-h2 .elementor-heading-title{font-size:clamp(26px,2.8vw,30px);font-weight:700;line-height:1.12;letter-spacing:-.02em;color:var(--sl-ink)}
.sl .sl-h3 .elementor-heading-title{font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--sl-ink)}
.sl .elementor-widget.sl-copy{font-family:var(--sl-font);font-size:16px;font-weight:400;line-height:1.65;color:var(--sl-body);max-width:70ch;text-align:left}
/* the line length is set on the paragraph: Elementor resets max-width on the widget box */
.sl .sl-copy p{margin:0 0 14px;max-width:70ch;font-size:16px;line-height:1.65;color:inherit}
.sl .sl-wide p{max-width:none}
.sl .sl-copy p:last-child,.sl .sl-copy ul:last-child,.sl .sl-copy ol:last-child{margin-bottom:0}
.sl .sl-copy strong{font-weight:600;color:var(--sl-ink)}
.sl .sl-copy a{color:var(--sl-orange);font-weight:600;text-decoration:none}
.sl .sl-copy a:hover,.sl .sl-copy a:focus-visible{color:var(--sl-orange-deep)}
.sl .elementor-widget.sl-wide{max-width:none;width:100%}

/* ---------- buttons ---------- */
.sl .e-con.sl-btnrow{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;width:auto}
.sl .elementor-widget.sl-btn{width:auto;max-width:100%}
.sl .sl-btn .elementor-button{
  position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:6px 22px;border:0;border-radius:999px;background:var(--sl-orange);color:var(--sl-white);fill:var(--sl-white);
  font-family:var(--sl-font);font-size:15px;font-weight:600;line-height:1.2;letter-spacing:normal;text-transform:none;text-decoration:none;text-align:center;
  box-shadow:none;transition:background .25s,color .3s .12s,box-shadow .25s,transform .2s;
}
.sl .sl-btn .elementor-button span{font:inherit;color:inherit}
/* primary: on hover, plum rises from the bottom with a curved top and fills the pill */
.sl .sl-btn .elementor-button::before{content:"";position:absolute;z-index:-1;left:-10%;width:120%;bottom:0;height:175%;background:var(--sl-ink);border-radius:50% 50% 0 0/32% 32% 0 0;transform:translateY(101%);transition:transform .65s cubic-bezier(.6,.05,.2,1);pointer-events:none}
.sl .sl-btn .elementor-button:hover::before,.sl .sl-btn .elementor-button:focus-visible::before{transform:translateY(0)}
.sl .sl-btn .elementor-button:hover,.sl .sl-btn .elementor-button:focus,.sl .sl-btn .elementor-button:visited{background:var(--sl-orange);color:var(--sl-white)}
.sl .sl-btn .elementor-button:active{transform:scale(.97)}
/* secondary: plum outline, fills plum on hover */
.sl .sl-btn--2 .elementor-button,.sl .sl-btn--2 .elementor-button:visited{background:transparent;color:var(--sl-ink);box-shadow:inset 0 0 0 1.5px var(--sl-ink)}
.sl .sl-btn--2 .elementor-button::before{display:none}
.sl .sl-btn--2 .elementor-button:hover,.sl .sl-btn--2 .elementor-button:focus{background:var(--sl-ink);color:var(--sl-white)}
/* on a photo the rise is cream with plum words, and the second button is a white outline */
.sl .sl-on-photo .sl-btn:not(.sl-btn--2) .elementor-button::before{background:var(--sl-cream)}
.sl .sl-on-photo .sl-btn:not(.sl-btn--2) .elementor-button:hover,.sl .sl-on-photo .sl-btn:not(.sl-btn--2) .elementor-button:focus-visible{color:var(--sl-ink)}
.sl .sl-on-photo .sl-btn--2 .elementor-button,.sl .sl-on-photo .sl-btn--2 .elementor-button:visited{color:var(--sl-white);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.7)}
.sl .sl-on-photo .sl-btn--2 .elementor-button:hover,.sl .sl-on-photo .sl-btn--2 .elementor-button:focus{background:rgba(255,255,255,.12);color:var(--sl-white)}

/* ---------- hero ----------
   Francis, 12 Oct 2026: the hero runs the full width of the screen, with square corners.
   The words inside line up with the page content (1365px wide). */
.e-con.sl.sl-herosec{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px}
.sl .e-con.sl-hero{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(480px,44vw,660px);border-radius:0;overflow:hidden;isolation:isolate;background:var(--sl-ink)}
.sl .e-con.sl-hero::after{content:"";position:absolute;inset:0;z-index:1;opacity:1;pointer-events:none;
  background:linear-gradient(0deg,rgba(38,34,47,.6) 0%,rgba(38,34,47,0) 46%),linear-gradient(90deg,rgba(38,34,47,.86) 0%,rgba(38,34,47,.66) 34%,rgba(38,34,47,.2) 62%,rgba(38,34,47,0) 100%)}
.sl .sl-hero .elementor-widget.sl-hero-img,.sl .sl-hero .sl-hero-img .elementor-widget-container{position:static}
.sl .sl-hero .sl-hero-img img{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:62% 55%;border-radius:0}
.sl .e-con.sl-hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:0;width:100%;max-width:1413px;margin:auto auto 0;padding:40px 24px 124px}
.sl .sl-hero .elementor-widget.sl-h1{max-width:780px}
.sl .sl-kicker .elementor-heading-title{display:inline-flex;align-items:center;gap:7px;height:32px;margin:0 0 18px;padding:0 14px 0 11px;border-radius:999px;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);font-size:13px;font-weight:500;line-height:1;color:var(--sl-white)}
.sl .sl-kicker .elementor-heading-title::before{content:"";flex:0 0 14px;width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") center/contain no-repeat}
.sl .sl-h1 .elementor-heading-title{font-size:clamp(36px,5.2vw,56px);font-weight:700;line-height:1.04;letter-spacing:-.025em;color:var(--sl-white)}
.sl .elementor-widget.sl-hero-sub{margin-top:16px;max-width:54ch;font-family:var(--sl-font);font-size:18px;font-weight:400;line-height:1.55;color:rgba(255,255,255,.9);text-align:left}
.sl .sl-hero-sub p{margin:0;max-width:54ch;font-size:18px;line-height:1.55;color:inherit;text-wrap:balance}
.sl .sl-hero .e-con.sl-btnrow{margin-top:26px}
/* rating line: five stars, then the saved Google numbers (shortcodes from block 18) */
.sl .elementor-widget.sl-rating{margin-top:22px;font-family:var(--sl-font);font-size:14px;font-weight:400;line-height:1.5;color:rgba(255,255,255,.88);text-align:left}
.sl .sl-rating p{display:flex;align-items:center;flex-wrap:wrap;gap:0 6px;margin:0;font-size:14px;line-height:1.5;color:inherit}
.sl .sl-rating p::before{content:"";flex:0 0 88px;width:88px;height:16px;margin-right:2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F6BB06' d='M12 2.5l2.9 6.1 6.6.9-4.8 4.6 1.2 6.6L12 17.6l-5.9 3.1 1.2-6.6L2.5 9.5l6.6-.9z'/%3E%3C/svg%3E") repeat-x 0 50%/17.6px 16px}
.sl .sl-rating strong{font-weight:600;color:var(--sl-white)}
.sl .sl-rating span{font:inherit;color:inherit;letter-spacing:inherit}

/* facts bar: a cream card that sits half on the hero photo and half on the page */
.e-con.sl.sl-factsec{--padding-top:0px;--padding-bottom:0px;position:relative;z-index:3;margin-top:-60px;background:transparent}
.sl .e-con.sl-factbar{display:block;padding:26px 32px;border-radius:18px;background:var(--sl-cream)}
.sl .sl-factbar .sl-copy ul.sl-facts{grid-template-columns:minmax(0,1.5fr) minmax(0,1.3fr) minmax(0,.85fr) minmax(0,1.1fr);gap:20px 28px}

/* quiet motion, once: the photo settles and the words rise in */
@media (prefers-reduced-motion:no-preference){
  .sl .sl-hero .sl-hero-img img{animation:sl-settle 9s cubic-bezier(.2,.8,.2,1) both}
  .sl .sl-hero-copy>*{animation:sl-rise .8s cubic-bezier(.2,.8,.2,1) both}
  .sl .sl-hero-copy>*:nth-child(2){animation-delay:.08s}
  .sl .sl-hero-copy>*:nth-child(3){animation-delay:.16s}
  .sl .sl-hero-copy>*:nth-child(4){animation-delay:.24s}
  .sl .sl-hero-copy>*:nth-child(5){animation-delay:.32s}
  .sl .e-con.sl-factbar{animation:sl-rise .8s .4s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes sl-settle{from{transform:scale(1.07)}to{transform:scale(1)}}
@keyframes sl-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ---------- layout blocks ---------- */
.sl .e-con.sl-stack{display:flex;flex-direction:column;align-items:flex-start;gap:18px;min-width:0}
.sl .e-con.sl-head{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.sl .e-con.sl-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.sl .e-con.sl-cols--57{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.sl .e-con.sl-cols--75{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.sl .e-con.sl-cols--48{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.sl .e-con.sl-cols--mid{align-items:center}
.sl .e-con.sl-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
.sl .e-con.sl-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.sl .e-con.sl-grid5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch}

/* photo on its own (not in a card) */
.sl .sl-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:18px}
.sl .sl-photo--tall img{aspect-ratio:4/5}

/* cream card */
.sl .e-con.sl-card{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:10px 10px 24px;border-radius:18px;background:var(--sl-cream);min-width:0}
.sl .sl-card>.elementor-widget:not(.sl-media),.sl .sl-card>.e-con{margin-left:14px;margin-right:14px;max-width:calc(100% - 28px)}
.sl .sl-card>.elementor-widget.sl-media{width:100%;margin-bottom:6px}
.sl .sl-media img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;border-radius:14px}
.sl .sl-media--tall img{aspect-ratio:4/5}
.sl .sl-media--square img{aspect-ratio:1/1}
/* a product photo on white shows whole and blends into the cream card (DESIGN.md, product card step 2) */
.sl .sl-media--product img{object-fit:contain;mix-blend-mode:multiply;border-radius:0}
.sl .sl-card>.e-con.sl-btnrow{margin-top:auto;padding-top:6px}
.sl .e-con.sl-card.sl-card--pad{gap:18px;padding:40px}
.sl .sl-card--pad>.elementor-widget:not(.sl-media),.sl .sl-card--pad>.e-con{margin-left:0;margin-right:0;max-width:100%}
.sl .sl-card--pad>.elementor-widget-html{width:100%}
.sl .e-con.sl-card.sl-card--white{background:var(--sl-white)}

/* soft panel: a wide cream block. Cards and chips inside it turn white */
.sl .e-con.sl-panel{padding:56px;border-radius:28px;background:var(--sl-cream)}
.sl .sl-panel .e-con.sl-card{background:var(--sl-white)}

/* small plum label, for "Warehouse only" */
.sl .sl-badge .elementor-heading-title{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;background:var(--sl-ink);color:var(--sl-white);font-size:12.5px;font-weight:600;line-height:1.2}

/* ---------- lists inside the text ---------- */
.sl .sl-copy ul,.sl .sl-copy ol{margin:0 0 14px;padding:0;list-style:none}
.sl .sl-copy li{margin:0;font-size:16px;line-height:1.5;color:var(--sl-body)}

/* ticks */
.sl .sl-copy ul.sl-ticks{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 32px}
/* long lists run down in columns, so they read top to bottom */
.sl .sl-copy ul.sl-ticks--2,.sl .sl-copy ul.sl-ticks--3{display:block;column-gap:32px}
.sl .sl-copy ul.sl-ticks--2{columns:2}
.sl .sl-copy ul.sl-ticks--3{columns:3}
.sl .sl-copy ul.sl-ticks--2 li,.sl .sl-copy ul.sl-ticks--3 li{break-inside:avoid;margin-bottom:10px}
.sl .sl-copy ul.sl-ticks li{position:relative;padding-left:30px}
.sl .sl-copy ul.sl-ticks li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;
  background:var(--sl-ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/12px no-repeat}

/* groups: two short lists side by side, each under a bold name */
.sl .sl-copy ul.sl-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 32px;margin-bottom:16px}
.sl .sl-copy ul.sl-groups>li>strong{display:block;margin-bottom:10px}
.sl .sl-copy ul.sl-groups ul{margin:0}

/* tiles: each list item is a small cream card */
.sl .sl-copy ul.sl-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sl .sl-copy ul.sl-tiles--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.sl .sl-copy ul.sl-tiles--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.sl .sl-copy ul.sl-tiles li{padding:22px;border-radius:18px;background:var(--sl-cream);line-height:1.55}
.sl .sl-copy ul.sl-tiles li strong{display:block;margin-bottom:6px;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--sl-ink)}
.sl .sl-copy ul.sl-tiles--inline li strong{display:inline;margin:0;font-size:inherit;line-height:inherit;letter-spacing:normal}
.sl .sl-panel .sl-copy ul.sl-tiles li,.sl .sl-card .sl-copy ul.sl-tiles li{background:var(--sl-white)}

/* numbered steps */
.sl .sl-copy ol.sl-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:sl-step}
.sl .sl-copy ol.sl-steps li{position:relative;padding:0 0 0 44px;min-height:32px;display:flex;align-items:center;counter-increment:sl-step;line-height:1.4}
.sl .sl-copy ol.sl-steps li::before{content:counter(sl-step);position:absolute;left:0;top:0;width:32px;height:32px;border-radius:50%;background:var(--sl-ink);color:var(--sl-white);font-size:14px;font-weight:600;line-height:32px;text-align:center}

/* lines: items split by a thin line, with a bold lead */
.sl .sl-copy ul.sl-lines{display:grid;gap:0}
.sl .sl-copy ul.sl-lines li{padding:14px 0;border-top:1px solid var(--sl-line)}
.sl .sl-copy ul.sl-lines li:last-child{padding-bottom:0}
.sl .sl-copy ul.sl-lines li strong{display:block;margin-bottom:2px}

/* chips */
.sl .sl-copy ul.sl-chips{display:flex;flex-wrap:wrap;gap:8px}
.sl .sl-copy ul.sl-chips li{line-height:1}
.sl .sl-copy ul.sl-chips a,.sl .sl-copy ul.sl-chips a:visited{display:inline-flex;align-items:center;height:32px;padding:0 13px;border-radius:999px;background:var(--sl-white);color:var(--sl-ink);font-size:13px;font-weight:500;line-height:1;text-decoration:none;transition:background .2s,color .2s}
.sl .sl-copy ul.sl-chips a:hover,.sl .sl-copy ul.sl-chips a:focus-visible{background:var(--sl-ink);color:var(--sl-white)}

/* contact facts */
.sl .sl-copy ul.sl-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px}
.sl .sl-copy ul.sl-facts li{position:relative;padding-left:54px;min-height:40px;font-size:14px;line-height:1.5;color:var(--sl-body)}
.sl .sl-copy ul.sl-facts li a{overflow-wrap:anywhere}
.sl .sl-copy ul.sl-facts li strong{display:block;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--sl-ink)}
.sl .sl-copy ul.sl-facts li::before{content:"";position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--sl-ink) center/20px no-repeat}
.sl .sl-copy ul.sl-facts li.sl-f-pin::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E")}
.sl .sl-copy ul.sl-facts li.sl-f-clock::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9' fill='none' stroke='%23fff' stroke-width='2'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.sl .sl-copy ul.sl-facts li.sl-f-phone::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.02-.24c1.12.37 2.33.57 3.57.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1A17 17 0 0 1 3 4a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.45.57 3.57a1 1 0 0 1-.25 1.02l-2.2 2.2z'/%3E%3C/svg%3E")}
.sl .sl-copy ul.sl-facts li.sl-f-mail::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='5' width='18' height='14' rx='2' fill='none' stroke='%23fff' stroke-width='2'/%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M4 7l8 6 8-6'/%3E%3C/svg%3E")}

/* ---------- what we keep: small rows with a photo ---------- */
.sl .e-con.sl-keep{display:grid;gap:0;width:100%}
.sl .sl-keep .elementor-widget-image-box{padding:14px 0;border-top:1px solid var(--sl-line)}
.sl .sl-keep .elementor-widget-image-box:first-child{border-top:0;padding-top:0}
.sl .sl-keep .elementor-image-box-wrapper{display:flex;flex-direction:row;align-items:center;gap:16px;text-align:left}
.sl .sl-keep .elementor-image-box-img{flex:0 0 84px;width:84px;margin:0}
.sl .sl-keep .elementor-image-box-img a{display:block}
.sl .sl-keep .elementor-image-box-img img{display:block;width:84px;height:84px;object-fit:cover;border-radius:14px;background:var(--sl-white)}
.sl .sl-keep .elementor-image-box-content{flex:1;min-width:0;width:auto}
.sl .sl-keep .elementor-image-box-title{margin:0 0 2px;font-family:var(--sl-font);font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--sl-ink)}
.sl .sl-keep .elementor-image-box-title a{color:inherit;font:inherit;text-decoration:none}
.sl .sl-keep .elementor-image-box-title a:hover{color:var(--sl-orange)}
.sl .sl-keep .elementor-image-box-description{margin:0;font-family:var(--sl-font);font-size:14px;font-weight:400;line-height:1.5;color:var(--sl-muted)}

/* ---------- FAQ ---------- */
.sl .sl-faq .elementor-toggle-item{border-top:1px solid var(--sl-line)}
.sl .sl-faq .elementor-toggle-item:last-child{border-bottom:1px solid var(--sl-line)}
.sl .sl-faq .elementor-toggle .elementor-tab-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0;padding:20px 0;border:0;cursor:pointer;font-family:var(--sl-font);font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--sl-ink)}
.sl .sl-faq .elementor-toggle .elementor-toggle-title{flex:1;order:1;color:var(--sl-ink);font:inherit;text-decoration:none}
.sl .sl-faq .elementor-toggle .elementor-toggle-icon{order:2;float:none;flex:0 0 32px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--sl-cream)}
.sl .sl-faq .elementor-toggle .elementor-toggle-icon svg{width:12px;height:12px;fill:var(--sl-ink)}
.sl .sl-faq .elementor-toggle .elementor-tab-title:hover .elementor-toggle-icon{background:var(--sl-ink)}
.sl .sl-faq .elementor-toggle .elementor-tab-title:hover .elementor-toggle-icon svg{fill:var(--sl-white)}
.sl .sl-faq .elementor-toggle .elementor-tab-content{padding:0 52px 22px 0;border:0;font-family:var(--sl-font);font-size:16px;font-weight:400;line-height:1.65;color:var(--sl-body)}
.sl .sl-faq .elementor-tab-content p{margin:0;font-size:16px;line-height:1.65;color:inherit}
.sl .sl-faq .elementor-tab-content a{color:var(--sl-orange);font-weight:600;text-decoration:none}
.sl .sl-faq .elementor-tab-content a:hover{color:var(--sl-orange-deep)}

/* ---------- contact block at the end ---------- */
.sl .sl-map iframe{display:block;width:100%;border:0;border-radius:18px}
.sl .elementor-widget.sl-map{width:100%}

/* ---------- tablets ---------- */
@media (max-width:1024px){
  .sl .e-con.sl-cols,.sl .e-con.sl-cols--57,.sl .e-con.sl-cols--75,.sl .e-con.sl-cols--48{gap:32px}
  .sl .e-con.sl-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl .e-con.sl-grid3.sl-grid3--keep{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .sl .e-con.sl-grid5{grid-template-columns:repeat(6,minmax(0,1fr))}
  .sl .e-con.sl-grid5>.e-con{grid-column:span 2}
  .sl .e-con.sl-grid5>.e-con:nth-child(n+4){grid-column:span 3}
  .sl .sl-copy ul.sl-tiles,.sl .sl-copy ul.sl-tiles--5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl .sl-copy ol.sl-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sl .sl-copy ul.sl-ticks--3{columns:2}
  .sl .e-con.sl-panel{padding:40px}
  .sl .e-con.sl-card.sl-card--pad{padding:28px}
}

/* tablets only: the third card of a row of three takes the full width, with a wider photo */
@media (min-width:768px) and (max-width:1024px){
  .sl .e-con.sl-grid3>.e-con:last-child:nth-child(odd){grid-column:1/-1}
  .sl .e-con.sl-grid3>.e-con:last-child:nth-child(odd) .sl-media img{aspect-ratio:21/8}
  .sl .sl-copy ul.sl-facts{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:1024px){
  .sl .sl-factbar .sl-copy ul.sl-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---------- phones ---------- */
@media (max-width:767px){
  .e-con.sl{--padding-top:24px;--padding-bottom:24px;--padding-left:16px;--padding-right:16px}
  .e-con.sl>.e-con-inner{gap:22px}
  .e-con.sl.sl-first{--padding-top:12px;--padding-bottom:16px}
  .e-con.sl.sl-last{--padding-bottom:48px}
  .sl .e-con.sl-hero{min-height:480px}
  .sl .e-con.sl-hero-copy{padding:28px 16px 76px}
  .sl .e-con.sl-hero::after{background:linear-gradient(180deg,rgba(38,34,47,.28) 0%,rgba(38,34,47,.6) 34%,rgba(38,34,47,.9) 100%)}
  .sl .sl-hero .sl-hero-img img{object-position:74% 50%}
  .sl .sl-hero.sl-hero--focus-mid .sl-hero-img img{object-position:59% 50%}
  .e-con.sl.sl-factsec{margin-top:-44px}
  .sl .e-con.sl-factbar{padding:22px 20px}
  .sl .sl-factbar .sl-copy ul.sl-facts{grid-template-columns:minmax(0,1fr);gap:16px}
  .sl .elementor-widget.sl-hero-sub,.sl .sl-hero-sub p{font-size:16px}
  .sl .e-con.sl-cols,.sl .e-con.sl-cols--57,.sl .e-con.sl-cols--75,.sl .e-con.sl-cols--48{grid-template-columns:minmax(0,1fr);gap:24px}
  .sl .e-con.sl-cols--photo-first>.sl-photo{order:-1}
  .sl .e-con.sl-grid3,.sl .e-con.sl-grid3.sl-grid3--keep,.sl .e-con.sl-grid2{grid-template-columns:minmax(0,1fr);gap:16px}
  .sl .e-con.sl-grid5{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .sl .e-con.sl-grid5>.e-con,.sl .e-con.sl-grid5>.e-con:nth-child(n+4){grid-column:auto}
  .sl .e-con.sl-grid5>.e-con:last-child:nth-child(odd){grid-column:1/-1}
  .sl .sl-copy ul.sl-groups{grid-template-columns:minmax(0,1fr)}
  .sl .sl-copy ul.sl-tiles,.sl .sl-copy ul.sl-tiles--5,.sl .sl-copy ul.sl-tiles--2{grid-template-columns:minmax(0,1fr);gap:10px}
  .sl .sl-copy ul.sl-tiles li{padding:18px}
  .sl .sl-copy ol.sl-steps,.sl .sl-copy ul.sl-facts{grid-template-columns:minmax(0,1fr)}
  .sl .sl-copy ul.sl-ticks--2,.sl .sl-copy ul.sl-ticks--3{columns:1}
  .sl .sl-copy ol.sl-steps{gap:12px}
  .sl .e-con.sl-panel{padding:28px 20px;border-radius:22px}
  .sl .e-con.sl-card.sl-card--pad{padding:24px 20px}
  .sl .sl-faq .elementor-toggle .elementor-tab-content{padding-right:0}
  .sl .sl-photo img{aspect-ratio:3/2}
  .sl .sl-photo--tall img{aspect-ratio:4/3}
  .sl .e-con.sl-btnrow{width:100%}
}
