
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');
:root{--ink:#173c2c;--leaf:#326044;--cream:#fbf8ee;--sun:#ffdc77;--line:#d9dfcc}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #ba741d;outline-offset:5px}
.wrap{width:min(1296px,92%);margin-inline:auto}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px}
.brand{font-size:1.55rem;font-weight:700;letter-spacing:-.07em;white-space:nowrap}
.brand span{color:#a9611a;margin-right:.25em}
nav{display:flex;align-items:center;gap:clamp(12px,3vw,44px);font-size:.9rem;font-weight:700}
.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:13px 21px;border:1px solid currentColor;border-radius:100px;font-weight:700;min-height:46px}
.button:hover{background:var(--sun);color:var(--ink)}
.primary{background:var(--ink);color:white;border-color:var(--ink)}
.hero{display:grid;grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr);min-height:560px;border-radius:32px;overflow:hidden;background:#edf0d9}
.intro{display:flex;justify-content:center;align-items:flex-start;flex-direction:column;padding:clamp(26px,5vw,76px)}
.kicker{font-size:.77rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:var(--leaf)}
h1,h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.04em;margin:0;line-height:.98}
h1{font-size:clamp(3.6rem,6.9vw,7rem);margin:13px 0}
h1 em{color:var(--leaf)}
.intro p:not(.kicker){line-height:1.65;max-width:33ch;margin:12px 0 25px}
.hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:52% center}
.services{text-align:center;padding:64px 0 74px}
.sunburst{display:block;width:100%;height:94px;margin:0 auto 12px;background:repeating-conic-gradient(from 5deg at 50% 12px, transparent 0 14deg,#ecc562 14deg 14.35deg,transparent 14.35deg 28deg);mask-image:linear-gradient(black,transparent);position:relative}
.sunburst::before{content:'';position:absolute;top:0;left:50%;translate:-50%;height:30px;width:30px;border-radius:50%;background:#f5be47}
h2{font-size:clamp(3rem,5.8vw,5.6rem)}
.services>p{margin:14px 0 28px;color:var(--leaf)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;text-align:left}
article{background:#fffdf7;border:1px solid var(--line);border-radius:18px;padding:20px}
article:nth-child(3n+2){background:#f0f2e2}
article:nth-child(3n){background:#fff3d6}
article h3{margin:0 0 7px;font-size:1.02rem}
article p{margin:0;color:#395745;font-size:.9rem;line-height:1.55}
.contact{background:var(--ink);color:var(--cream);border-radius:30px;padding:clamp(26px,5vw,70px);display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}
.contact p{line-height:1.6;margin-bottom:0}
.actions{display:flex;gap:10px;flex-wrap:wrap}
footer{padding:30px 0;color:var(--leaf);font-size:.9rem}
@media(max-width:900px){.hero{min-height:440px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){header .wrap{min-height:67px}.nav-services{display:none}.hero{grid-template-columns:1fr;border-radius:23px}.intro{padding:31px 23px 34px}.hero img{height:auto;aspect-ratio:3/2}.services{padding:40px 0 45px}.cards{gap:8px}article{padding:13px}.sunburst{height:68px}}
@media(max-width:355px){.cards{grid-template-columns:1fr}}

.section{padding:clamp(38px,7vw,90px) 0}
.section+.section{border-top:1px solid var(--line)}
.section>h2{margin-bottom:22px}
.section>p{max-width:65ch;line-height:1.65}
.page-hero{display:block;min-height:0;padding:clamp(24px,6vw,78px)}
.page-hero h1{font-size:clamp(2.8rem,7vw,6.6rem);overflow-wrap:anywhere}
.page-hero p{max-width:61ch;line-height:1.65}
article a{display:block}
article:has(a):hover{border-color:var(--leaf)}
article a span{display:block;margin-top:12px;font-weight:700;font-size:.85rem}
.footer-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}
.footer-links a:hover,nav a:not(.button):hover{text-decoration:underline}
details{border-bottom:1px solid var(--line);padding:18px 0}
summary{cursor:pointer;font-weight:700}
details p{max-width:68ch;line-height:1.65}
@media(max-width:650px){header .wrap{flex-wrap:wrap;gap:8px;padding:12px 0}nav{gap:12px;font-size:.78rem}nav .button{padding:8px 12px}.section .cards,.services .cards{grid-template-columns:1fr}.hero h1{font-size:clamp(3rem,11vw,4.8rem)}}
/* The same garden palette follows visitors from the homepage to every detail page. */
:root{--cream:#fffbee;--sun:#ffdc77;--line:#dddcc0}
body{background:radial-gradient(ellipse at 90% 0%,#ffe8a1 0,transparent 35rem),linear-gradient(145deg,#fffbee,#f2f4e4 80%);min-height:100vh}
header{margin-bottom:12px}
.hero,.page-hero{background:radial-gradient(ellipse at 90% 10%,#ffecab 0,transparent 65%),linear-gradient(135deg,#fff9e6,#e6edcf);border:1px solid #dedfc1}
.kicker{color:#416342}
.button{background:#ffedb8;color:var(--ink);border-color:#ccad5e}
.button:hover{background:#ffda73;border-color:#b38427}
.button.primary{background:var(--ink);color:#fff9e8;border-color:var(--ink)}
.button.primary:hover{background:#326044}
.cards{gap:16px}
article,article:nth-child(n){background:linear-gradient(145deg,#fffdf2,#eef2dd);border-color:#d8ddc1;box-shadow:0 6px 18px #3c492c0c}
article:nth-child(3n+2){background:linear-gradient(145deg,#fffcef,#fceab5)}
article:nth-child(3n){background:linear-gradient(145deg,#f9fbea,#e7efd6)}
article a span{color:#365a3e}
.contact{background:radial-gradient(ellipse at 95% 0%,#426d47,transparent 65%),#173c2c}
.services .cards{grid-template-columns:repeat(7,minmax(0,1fr))}
.services .cards article{padding:16px 12px;overflow-wrap:break-word}
.sunburst{height:110px;margin:18px 0 0;background:none;mask-image:none}
.sunburst::before{z-index:1;width:33px;height:33px;box-shadow:0 0 24px #ffc54e;background:#ffce59}
.sunburst i{position:absolute;inset:16px 0 0;background:linear-gradient(180deg,#efbd4c,#e2bd5355);clip-path:polygon(49.9% 0,var(--tip) 100%,calc(var(--tip) + .3%) 100%,50.1% 0)}
.services .cards article a{height:100%;display:flex;flex-direction:column}
.services .cards article a span{margin-top:auto;padding-top:12px}
@media(max-width:1000px){.services .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sunburst{height:42px;width:min(220px,100%);margin:12px auto 10px}}
@media(max-width:650px){.services .cards{grid-template-columns:1fr}.sunburst{height:34px}.sunburst::before{width:24px;height:24px}}
.home-opening {
  background: linear-gradient(180deg, #fffbeeaa, #fffbeeec 72%, #f4f5e5),
    url("sunlit-garden.png") center top / cover no-repeat;
  border: 1px solid var(--line);
  border-radius: 32px;
  padding: clamp(14px, 3vw, 42px);
}
.home-hero.hero { display: block; min-height: 0; border: 0; background: none; }
.home-hero .intro { padding: 8px 0 18px; }
.home-hero h1 { font-size: clamp(3rem, 6vw, 6rem); }
.home-hero .intro p:not(.kicker) { max-width: 58ch; margin: 8px 0 0; }
.home-opening .services { padding: 8px 0 0; }
.home-opening .services h2 { font-size: clamp(2.6rem, 4.5vw, 4.4rem); }
.home-opening .services > p { margin: 10px 0 0; }
.home-opening .sunburst { height: 55px; margin-top: 10px; }
@media (max-width: 650px) {
  .home-opening { border-radius: 23px; background-size: 100% 100%, auto 360px; }
  .home-opening .sunburst { height: 34px; }
}
.page-hero[style], .cards article[style] {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.section {
  background: radial-gradient(ellipse at 95% 35%, #ffdc773d, transparent 56%);
}
.contact {
  background: radial-gradient(ellipse at 90% 0%, #6b873c, transparent 63%),
    linear-gradient(130deg, #173c2c 30%, #31533b);
}
.section[style], .contact[style] {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.section[style] {
  padding-inline: clamp(16px, 4vw, 48px);
  border-radius: 24px;
  margin-block: 18px;
}
.page-story {
  background-position: center top;
  background-size: 100% min(680px, 100%), 100% auto;
  background-repeat: no-repeat;
  border-radius: 32px 32px 0 0;
}
.page-story .page-hero { background: #fffbee36; }
.page-story .section {
  padding-inline: clamp(16px, 4vw, 48px);
  background: linear-gradient(110deg, #fffbee9c, #f2f4e447);
}
@media (max-width: 650px) {
  .page-story { background-size: 100% min(480px, 100%), auto 480px; }
}
.language-menu{position:relative;z-index:3;border:0;padding:0}
.language-menu summary{padding:10px 4px}
.language-menu > div{position:absolute;inset-inline-end:0;min-width:10rem;max-height:54vh;overflow:auto;display:grid;padding:6px;background:#fffbee;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 22px #173c2c26}
.language-menu a{padding:8px 12px;border-radius:8px}
.language-menu a:hover,.language-menu a[aria-current]{background:#f4e5b6}
html:not([lang="en"]) h1,html:not([lang="en"]) h2{font-family:system-ui,sans-serif;line-height:1.35;letter-spacing:normal;font-weight:650}
html:not([lang="en"]) .home-hero h1,html:not([lang="en"]) .page-hero h1{font-size:clamp(1.9rem,5vw,4rem)}
html:not([lang="en"]) h2,html:not([lang="en"]) .home-opening .services h2{font-size:clamp(1.6rem,4vw,3.2rem)}
html:not([lang="en"]) article{line-height:1.65}
html:not([lang="en"]) main > .contact{margin-top:24px}
[dir="rtl"] .cards,[dir="rtl"] .language-menu > div{text-align:right}
@media(max-width:650px){header nav{flex-wrap:wrap}}
