:root { --primary:#16302b; --paper:#f7f1e7; --soft:#d2e8d0; --accent:#e56b4e; --ink:#17211f; --white:#fffdf8; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); background:var(--paper); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-width:320px; padding-bottom:68px; background:var(--paper); }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
a { color:inherit; }
img { display:block; width:100%; }
.public-skip { position:fixed; left:16px; top:-60px; z-index:20; padding:11px 15px; border-radius:8px; background:white; }
.public-skip:focus { top:16px; }
.public-header { position:sticky; top:0; z-index:10; min-height:100px; padding:0 clamp(22px,5vw,76px); border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent); background:color-mix(in srgb,var(--paper) 92%,transparent); backdrop-filter:blur(18px); display:grid; grid-template-columns:minmax(235px,1fr) auto minmax(235px,1fr); align-items:center; gap:24px; }
.public-lockup { min-width:0; display:flex; align-items:center; gap:12px; text-decoration:none; }
.public-lockup strong { font:600 clamp(16px,1.7vw,21px) Georgia,serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.public-mark { flex:0 0 auto; width:43px; height:43px; border-radius:50%; border:1px solid var(--primary); display:grid; place-items:center; font-size:11px; font-weight:900; letter-spacing:-.04em; }
.public-mark span { color:var(--accent); }
.public-mark img { max-width:82%; max-height:82%; object-fit:contain; }
.public-lockup strong img { display:block; width:auto; max-width:220px; max-height:42px; object-fit:contain; }
.public-header nav { display:flex; gap:25px; }
.public-header nav a { font-size:12px; font-weight:750; text-decoration:none; }
.public-header-actions { position:absolute; z-index:4; right:clamp(22px,5vw,76px); bottom:-70px; display:flex; align-items:center; gap:12px; }
.return-to-fido { position:fixed; z-index:30; top:114px; left:clamp(18px,3vw,48px); display:inline-flex; align-items:center; min-height:42px; padding:11px 17px; border:1px solid rgba(255,255,255,.24); border-radius:999px; background:rgba(16,37,31,.95); box-shadow:0 15px 34px rgba(10,24,19,.28); color:var(--white); font-size:11px; font-weight:900; line-height:1.15; text-decoration:none; white-space:nowrap; backdrop-filter:blur(12px); transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.return-to-fido:hover { background:#1c3b33; box-shadow:0 18px 38px rgba(10,24,19,.34); transform:translateY(-1px); }
.return-to-fido:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.public-language-control select { min-width:128px; padding:10px 30px 10px 13px; border:1px solid color-mix(in srgb,var(--ink) 18%,transparent); border-radius:999px; color:var(--ink); background:var(--paper); box-shadow:0 9px 22px rgba(10,24,19,.14); font-size:11px; font-weight:900; }
.fido-maker-mark { position:relative; isolation:isolate; width:190px; height:144px; flex:0 0 auto; padding:19px 24px 17px; border:1px solid rgba(216,240,107,.62); border-radius:18px 32px 23px 37px; background:radial-gradient(circle at 18% 23%,rgba(255,255,255,.075) 0 1px,transparent 1.5px) 0 0/12px 12px,linear-gradient(145deg,#1c312a 0%,#10211c 70%,#0b1915 100%); color:#f7f1e7; box-shadow:0 34px 30px -15px rgba(13,29,24,.5),0 18px 28px rgba(13,29,24,.24),-4px 5px 0 rgba(216,240,107,.2); display:flex; flex-direction:column; justify-content:center; text-align:left; text-decoration:none; transform:rotate(5.5deg); transform-origin:48% 54%; transition:box-shadow .22s ease; }
.fido-maker-mark::before { content:none; }
.fido-maker-mark::after { content:""; position:absolute; z-index:0; inset:0; border-radius:inherit; background:repeating-linear-gradient(9deg,transparent 0 8px,rgba(255,255,255,.025) 8px 9px); pointer-events:none; }
.fido-maker-mark:hover { transform:rotate(5.5deg); box-shadow:0 38px 34px -15px rgba(13,29,24,.54),0 21px 31px rgba(13,29,24,.27),-4px 5px 0 rgba(216,240,107,.2); }
.fido-maker-kicker,.fido-maker-mark em { position:relative; z-index:2; display:block; font-size:11.3px; font-style:normal; font-weight:900; letter-spacing:.17em; line-height:1; text-transform:uppercase; }
.fido-maker-mark strong { position:relative; z-index:2; display:block; margin:11px 0 7px; color:#d8f06b; font:900 53px/.76 "Arial Rounded MT Bold", Inter, sans-serif; letter-spacing:.025em; text-shadow:0 2px 0 rgba(0,0,0,.26); }
.fido-maker-paw { position:absolute; z-index:2; top:15px; right:17px; width:24px; height:23px; transform:rotate(12deg) scale(1.05); transform-origin:top right; }
.fido-maker-paw i { position:absolute; width:6px; height:8px; border-radius:55% 55% 48% 48%; background:#ff3b30; box-shadow:0 1px 0 rgba(0,0,0,.18); }
.fido-maker-paw i:nth-child(1) { left:1px; top:5px; transform:rotate(-24deg); }
.fido-maker-paw i:nth-child(2) { left:6px; top:0; transform:rotate(-8deg); }
.fido-maker-paw i:nth-child(3) { right:6px; top:0; transform:rotate(8deg); }
.fido-maker-paw i:nth-child(4) { right:1px; top:5px; transform:rotate(24deg); }
.fido-maker-paw::after { content:""; position:absolute; left:6px; bottom:1px; width:13px; height:11px; border-radius:62% 62% 52% 52%; background:#ff3b30; box-shadow:0 1px 0 rgba(0,0,0,.18); }
.public-header-cta { padding:14px 21px; border-radius:99px; background:var(--accent); color:var(--ink); box-shadow:0 12px 28px rgba(10,24,19,.2); font-size:11px; font-weight:900; text-decoration:none; white-space:nowrap; }
.public-hero { position:relative; min-height:min(790px,calc(100vh - 100px)); overflow:hidden; display:grid; align-items:end; }
.hero-corner-cta { position:absolute; z-index:2; top:clamp(125px,10vw,165px); right:clamp(20px,4.5vw,72px); }
.public-hero > img { position:absolute; inset:0; height:100%; object-fit:cover; }
.hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,24,19,.85) 0%,rgba(10,24,19,.62) 34%,rgba(10,24,19,.05) 70%),linear-gradient(0deg,rgba(10,20,16,.28),transparent 45%); }
.hero-copy { position:relative; z-index:1; width:min(690px,85vw); padding:clamp(70px,10vw,145px) 0 clamp(70px,9vw,125px) clamp(24px,7vw,105px); color:var(--white); }
.hero-copy > p,.section-heading > p,.about-copy > p,.area-section p,.availability-section p,.testimonial-section > p,.faq-section > div > p,.contact-intro > p { margin:0; color:var(--accent); font-size:11px; font-weight:850; letter-spacing:.15em; text-transform:uppercase; }
.hero-copy h1 { max-width:670px; margin:18px 0 24px; font:500 clamp(50px,6.7vw,98px)/.94 Georgia,serif; letter-spacing:-.055em; }
.hero-copy > span { display:block; max-width:540px; font-size:clamp(15px,1.4vw,20px); line-height:1.65; color:rgba(255,253,248,.83); }
.hero-copy > div { margin-top:33px; display:flex; align-items:center; gap:16px; }
.hero-copy > div a { padding:14px 19px; border-radius:99px; border:1px solid rgba(255,255,255,.55); color:white; font-size:12px; font-weight:850; text-decoration:none; }
.hero-copy > div a:first-child { border-color:var(--accent); background:var(--accent); color:var(--ink); }
.hero-note { position:absolute; right:clamp(24px,6vw,92px); bottom:clamp(22px,5vw,70px); z-index:1; width:210px; padding:20px; border-top:1px solid rgba(255,255,255,.5); color:white; }
.hero-note span { display:block; margin-bottom:9px; font-size:10px; text-transform:uppercase; letter-spacing:.12em; opacity:.7; }
.hero-note strong { font:500 19px/1.25 Georgia,serif; }
.trust-strip { min-height:118px; padding:28px clamp(24px,7vw,105px); background:var(--primary); color:var(--paper); display:grid; grid-template-columns:1fr 3fr; align-items:center; gap:35px; }
.trust-strip > p { margin:0; color:var(--accent); font-size:10px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.trust-strip > div { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.trust-strip span { padding-left:22px; position:relative; font:500 clamp(15px,1.4vw,20px) Georgia,serif; }
.trust-strip span::before { content:"✓"; position:absolute; left:0; color:var(--accent); font:800 12px Inter,sans-serif; }
.public-section { padding:clamp(75px,9vw,130px) clamp(24px,7vw,105px); }
.section-heading { display:grid; grid-template-columns:1fr 2fr 1fr; gap:35px; align-items:start; }
.section-heading h2,.about-copy h2,.area-section h2,.availability-section h2,.faq-section h2,.contact-intro h2 { margin:0; font:500 clamp(38px,4.8vw,68px)/1 Georgia,serif; letter-spacing:-.04em; }
.section-heading > span,.area-section > div > span,.availability-section > div > span,.contact-intro > span { color:color-mix(in srgb,var(--ink) 65%,transparent); font-size:14px; line-height:1.7; }
.service-list { margin-top:58px; border-top:1px solid color-mix(in srgb,var(--ink) 17%,transparent); }
.service-card { padding:27px 0; border-bottom:1px solid color-mix(in srgb,var(--ink) 17%,transparent); display:grid; grid-template-columns:70px 1.1fr 2fr auto; align-items:start; gap:25px; }
.service-card > span { color:var(--accent); font-size:11px; font-weight:900; }
.service-card h3 { margin:0; font:500 clamp(23px,2.4vw,34px) Georgia,serif; }
.service-card p { max-width:540px; margin:3px 0 0; color:color-mix(in srgb,var(--ink) 65%,transparent); font-size:14px; line-height:1.65; }
.service-card strong { padding:9px 13px; border-radius:99px; background:var(--soft); white-space:nowrap; font-size:12px; }
.about-section { display:grid; grid-template-columns:1fr 1fr; background:var(--white); }
.about-image { min-height:680px; overflow:hidden; }
.about-image img { height:100%; object-fit:cover; object-position:66% center; transform:scale(1.18); }
.about-copy { padding:clamp(70px,9vw,135px) clamp(35px,8vw,120px); align-self:center; }
.about-copy h2 { margin-top:17px; }
.about-copy > div { margin-top:27px; color:color-mix(in srgb,var(--ink) 70%,transparent); font-size:16px; line-height:1.8; }
.about-copy dl { margin:45px 0 0; display:grid; gap:13px; }
.about-copy dl div { padding:13px 0; border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent); display:grid; grid-template-columns:50px 1fr; }
.about-copy dt { color:var(--accent); font-size:11px; font-weight:850; }
.about-copy dd { margin:0; font-size:13px; font-weight:750; }
.area-section { padding:clamp(70px,9vw,130px) clamp(24px,7vw,105px); background:var(--soft); display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(45px,9vw,140px); align-items:end; }
.area-section h2 { max-width:660px; margin:18px 0 25px; }
.area-section aside { padding:30px; border:1px solid color-mix(in srgb,var(--primary) 20%,transparent); background:color-mix(in srgb,var(--paper) 55%,transparent); }
.area-section aside small { display:block; margin-bottom:14px; color:var(--primary); text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:850; }
.area-section aside strong { font:500 clamp(22px,2.5vw,35px)/1.25 Georgia,serif; }
.availability-section { padding:clamp(70px,9vw,130px) clamp(24px,7vw,105px); background:var(--accent); display:grid; grid-template-columns:.82fr 1.18fr; align-items:center; gap:clamp(45px,8vw,115px); }
.availability-copy > p { color:var(--primary); }
.availability-copy h2 { margin:15px 0 22px; font-size:clamp(38px,4.8vw,68px); }
.availability-copy > span { display:block; max-width:570px; color:color-mix(in srgb,var(--ink) 78%,transparent); font-size:15px; line-height:1.75; }
.availability-copy > a { display:inline-block; margin-top:28px; padding:14px 18px; border-radius:99px; background:var(--primary); color:var(--paper); font-size:12px; font-weight:850; text-decoration:none; }
.availability-key { margin-top:25px; display:flex; flex-wrap:wrap; gap:16px; font-size:11px; font-weight:800; }
.availability-key span { display:flex; align-items:center; gap:7px; }
.availability-key i { width:10px; height:10px; border-radius:50%; display:block; }
.availability-key .is-open { background:var(--paper); box-shadow:0 0 0 1px color-mix(in srgb,var(--ink) 14%,transparent); }
.availability-key .is-blocked { background:var(--primary); }
.public-calendar { border:1px solid rgba(255,255,255,.15); border-radius:22px; padding:clamp(20px,3vw,34px); background:var(--primary); color:var(--paper); box-shadow:0 28px 70px rgba(23,33,31,.2); }
.public-calendar-toolbar { margin-bottom:23px; display:grid; grid-template-columns:42px 1fr 42px; align-items:center; gap:15px; text-align:center; }
.public-calendar-toolbar button { width:42px; height:42px; border:1px solid rgba(255,255,255,.18); border-radius:50%; background:transparent; color:var(--paper); cursor:pointer; font-size:17px; }
.public-calendar-toolbar button:hover { background:rgba(255,255,255,.1); }
.public-calendar-toolbar small,.public-calendar-toolbar strong { display:block; }
.public-calendar-toolbar small { margin-bottom:6px; color:var(--accent); font-size:9px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.public-calendar-toolbar strong { font:500 clamp(22px,2.3vw,31px) Georgia,serif; }
.public-calendar-weekdays,.public-calendar-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; }
.public-calendar-weekdays { margin-bottom:7px; color:rgba(247,241,231,.55); text-align:center; font-size:8px; font-weight:800; text-transform:uppercase; }
.public-calendar-day { min-height:47px; border-radius:10px; background:rgba(255,255,255,.08); display:grid; place-items:center; position:relative; font-size:11px; font-weight:760; }
.public-calendar-day.is-empty { background:transparent; }
.public-calendar-day.is-today { box-shadow:inset 0 0 0 1px var(--accent); }
.public-calendar-day.is-blocked { background:color-mix(in srgb,var(--ink) 72%,black); color:rgba(247,241,231,.42); text-decoration:line-through; }
.public-calendar-day.is-blocked::after { content:attr(data-status-label); position:absolute; bottom:4px; font-size:6px; text-decoration:none; text-transform:uppercase; letter-spacing:.08em; }
.public-calendar > p { margin:18px 0 0; color:rgba(247,241,231,.58); font-size:10px; line-height:1.55; text-align:center; }
.process-section { padding:clamp(75px,9vw,130px) clamp(24px,7vw,105px); background:var(--paper); }
.process-grid { margin-top:58px; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid color-mix(in srgb,var(--ink) 17%,transparent); }
.process-grid article { padding:33px clamp(18px,3vw,38px) 10px 0; }
.process-grid article + article { padding-left:clamp(18px,3vw,38px); border-left:1px solid color-mix(in srgb,var(--ink) 17%,transparent); }
.process-grid span { color:var(--accent); font-size:11px; font-weight:900; }
.process-grid h3 { margin:20px 0 13px; font:500 clamp(23px,2.3vw,33px)/1.05 Georgia,serif; }
.process-grid p { max-width:360px; margin:0; color:color-mix(in srgb,var(--ink) 65%,transparent); font-size:14px; line-height:1.7; }
.gallery-section { padding:clamp(75px,9vw,130px) clamp(24px,7vw,105px); }
.gallery-grid { margin-top:52px; display:grid; grid-template-columns:1.3fr .8fr .8fr; gap:13px; }
.gallery-grid figure { min-height:420px; margin:0; overflow:hidden; }
.gallery-grid figure:nth-child(2) { transform:translateY(45px); }
.gallery-grid img { height:100%; object-fit:cover; }
.gallery-grid figure:nth-child(1) { min-height:500px; }
.gallery-grid figure:nth-child(2) { min-height:370px; }
.gallery-grid figure:nth-child(3) { min-height:455px; }
.testimonial-section { padding:clamp(80px,10vw,145px) clamp(24px,7vw,105px); background:var(--primary); color:var(--paper); }
.testimonial-section > p { margin-bottom:42px; }
.testimonial-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(35px,8vw,115px); }
.testimonial-card blockquote { margin:0; font:500 clamp(28px,3.5vw,51px)/1.1 Georgia,serif; letter-spacing:-.035em; }
.testimonial-card blockquote::before { content:"“"; display:block; height:48px; color:var(--accent); font-size:75px; line-height:1; }
.testimonial-card cite { display:block; margin-top:25px; color:var(--soft); font-size:11px; font-style:normal; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.faq-section { padding:clamp(75px,9vw,130px) clamp(24px,7vw,105px); display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(45px,9vw,140px); }
.faq-section h2 { margin-top:17px; }
.faq-item { border-top:1px solid color-mix(in srgb,var(--ink) 18%,transparent); }
.faq-item:last-child { border-bottom:1px solid color-mix(in srgb,var(--ink) 18%,transparent); }
.faq-item button { width:100%; padding:23px 0; border:0; background:transparent; display:flex; justify-content:space-between; gap:20px; text-align:left; cursor:pointer; font:600 19px Georgia,serif; }
.faq-item button span { color:var(--accent); }
.faq-item p { display:none; margin:-5px 40px 25px 0; color:color-mix(in srgb,var(--ink) 65%,transparent); font-size:14px; line-height:1.7; }
.faq-item.is-open p { display:block; }
.contact-section { padding:clamp(75px,9vw,130px) clamp(24px,7vw,105px); background:var(--white); display:grid; grid-template-columns:1fr 1fr; gap:clamp(55px,9vw,135px); }
.contact-intro h2 { max-width:520px; margin:17px 0 23px; }
.contact-intro > span { display:block; max-width:510px; }
.contact-intro > a { display:block; width:max-content; margin-top:18px; font-size:14px; font-weight:800; text-underline-offset:4px; }
#public-request-form { display:grid; grid-template-columns:1fr 1fr; gap:17px; }
#public-request-form label { color:color-mix(in srgb,var(--ink) 70%,transparent); font-size:11px; font-weight:800; }
#public-request-form .request-pet-details,#public-request-form .request-consent,#public-request-form button,#public-form-status { grid-column:1/-1; }
#public-request-form input,#public-request-form select,#public-request-form textarea { width:100%; margin-top:7px; padding:13px 14px; border:1px solid color-mix(in srgb,var(--ink) 20%,transparent); border-radius:4px; background:var(--paper); color:var(--ink); font:inherit; }
#public-request-form textarea { resize:vertical; }
#public-request-form .request-consent { display:flex; align-items:flex-start; gap:10px; font-size:10px; line-height:1.5; }
#public-request-form .request-consent input { flex:0 0 auto; width:16px; margin:0; accent-color:var(--primary); }
#public-request-form button { min-height:49px; border:0; border-radius:99px; background:var(--primary); color:var(--paper); cursor:pointer; font-size:12px; font-weight:850; }
#public-form-status { min-height:18px; margin:0; color:var(--primary); font-size:12px; }
.public-footer { position:fixed; left:0; right:0; bottom:0; z-index:9; min-height:68px; padding:9px clamp(24px,5vw,76px); border-top:1px solid rgba(216,240,107,.18); background:rgba(14,28,24,.97); color:var(--paper); box-shadow:0 -10px 30px rgba(14,28,24,.13); backdrop-filter:blur(14px); display:grid; grid-template-columns:1fr 1.4fr 1fr; gap:28px; align-items:center; }
.public-footer > div:first-child { display:flex; align-items:center; gap:13px; }
.public-footer .public-mark { border-color:var(--soft); }
.public-footer p { margin:0; color:rgba(247,241,231,.65); font-size:11px; line-height:1.6; }
.public-footer > div:last-child { text-align:right; }
.public-footer > div:last-child span,.public-footer > div:last-child small { display:block; }
.public-footer > div:last-child span { font-size:12px; font-weight:800; }
.public-footer > div:last-child small { margin-top:8px; color:var(--accent); }
[hidden] { display:none !important; }

html[dir="rtl"] body { direction:rtl; }
html[dir="rtl"] [data-i18n-ignore],
html[dir="rtl"] [data-fido-fallback-direction="ltr"] { direction:ltr; unicode-bidi:isolate; }
html[dir="rtl"] [data-fido-fallback-direction="ltr"] { text-align:start; }
html[dir="rtl"] .public-header-actions { right:auto; left:clamp(22px,5vw,76px); }
html[dir="rtl"] .return-to-fido { right:clamp(18px,3vw,48px); left:auto; direction:ltr; }
html[dir="rtl"] .hero-corner-cta { right:auto; left:clamp(20px,4.5vw,72px); }
html[dir="rtl"] .hero-shade { transform:scaleX(-1); }
html[dir="rtl"] .hero-copy { padding-right:clamp(24px,7vw,105px); padding-left:0; }
html[dir="rtl"] .hero-note { right:auto; left:clamp(24px,6vw,92px); }
html[dir="rtl"] .trust-strip span { padding-right:22px; padding-left:0; }
html[dir="rtl"] .trust-strip span::before { right:0; left:auto; }
html[dir="rtl"] .process-grid article { padding-right:0; padding-left:clamp(18px,3vw,38px); }
html[dir="rtl"] .process-grid article + article { padding-right:clamp(18px,3vw,38px); border-right:1px solid color-mix(in srgb,var(--ink) 17%,transparent); border-left:0; }
html[dir="rtl"] .faq-item button { text-align:right; }
html[dir="rtl"] .faq-item p { margin-right:0; margin-left:40px; }
html[dir="rtl"] .public-footer > div:last-child { text-align:left; }

@media (max-width:900px) {
	.public-header { grid-template-columns:1fr auto; }
	.public-header nav { display:none; }
	.hero-note { display:none; }
	.section-heading { grid-template-columns:1fr 2fr; }
	.section-heading > span { grid-column:2; }
	.about-section,.area-section,.faq-section,.contact-section { grid-template-columns:1fr; }
	.availability-section { grid-template-columns:1fr; }
	.about-image { min-height:480px; }
	.public-footer { min-height:54px; grid-template-columns:auto 1fr; }
	.public-footer > p { display:none; }
	.public-footer > div:last-child { text-align:right; }
}

@media (max-width:640px) {
	body { padding-bottom:44px; }
	.public-header { min-height:88px; padding:0 17px; gap:10px; }
	.public-lockup strong { font-size:14px; }
	.public-mark { width:36px; height:36px; }
	.public-header-actions { right:18px; bottom:-52px; gap:7px; }
	.return-to-fido { top:99px; left:14px; min-height:38px; padding:10px 13px; font-size:9px; }
	.public-language-control select { min-width:110px; padding:8px 25px 8px 10px; font-size:9px; }
	.fido-maker-mark { width:144px; height:112px; padding:14px 18px 12px; border-radius:15px 25px 18px 29px; }
	.fido-maker-kicker,.fido-maker-mark em { font-size:8.3px; }
	.fido-maker-mark strong { margin:7px 0 5px; font-size:41px; }
	.fido-maker-paw { top:11px; right:12px; transform:rotate(12deg) scale(.9); transform-origin:top right; }
	.public-header-cta { padding:11px 15px; font-size:9px; }
	.hero-corner-cta { top:76px; right:18px; }
	.public-hero { min-height:690px; align-items:end; }
	.public-hero > img { object-position:63% center; }
	.hero-shade { background:linear-gradient(0deg,rgba(10,24,19,.9) 0%,rgba(10,24,19,.58) 58%,rgba(10,24,19,.08)); }
	.hero-copy { width:100%; padding:70px 22px 54px; }
	.hero-copy h1 { font-size:48px; }
	.hero-copy > span { font-size:14px; }
	.hero-copy > div { align-items:stretch; flex-direction:column; }
	.hero-copy > div a { text-align:center; }
	.trust-strip { grid-template-columns:1fr; }
	.trust-strip > div { grid-template-columns:1fr; gap:16px; }
	.section-heading { grid-template-columns:1fr; }
	.section-heading > span { grid-column:auto; }
	.service-card { grid-template-columns:35px 1fr auto; }
	.service-card p { grid-column:2/-1; }
	.about-image { min-height:390px; }
	.about-copy { padding:68px 24px; }
	.public-calendar { padding:19px 14px; border-radius:15px; }
	.public-calendar-day { min-height:39px; border-radius:7px; font-size:9px; }
	.process-grid { grid-template-columns:1fr; }
	.process-grid article,.process-grid article + article { padding:28px 0; border-left:0; border-bottom:1px solid color-mix(in srgb,var(--ink) 17%,transparent); }
	.gallery-grid { grid-template-columns:1fr; }
	.gallery-grid figure { min-height:330px; }
	.public-footer { min-height:44px; padding:7px 17px; display:block; }
	.public-footer > div:first-child,.public-footer > p,.public-footer > div:last-child > span { display:none; }
	.public-footer > div:last-child { text-align:center; }
	.public-footer > div:last-child small { margin:0; font-size:8px; letter-spacing:.08em; }
	.gallery-grid figure:nth-child(2) { transform:none; }
	.testimonial-grid { grid-template-columns:1fr; }
	#public-request-form { grid-template-columns:1fr; }
	#public-request-form label,#public-request-form button,#public-form-status { grid-column:1; }
	html[dir="rtl"] .public-header-actions { right:auto; left:18px; }
	html[dir="rtl"] .return-to-fido { right:14px; left:auto; }
	html[dir="rtl"] .hero-corner-cta { right:auto; left:18px; }
	html[dir="rtl"] .hero-copy { padding:70px 22px 54px; }
}
