/*
Theme Name: Dar Al Maghreb — Blocs
Description: Thème à blocs de la recette Dar Al Maghreb.
Version: 0.2.0
Requires at least: 6.7
Requires PHP: 7.4
Text Domain: dam-blocs
*/
:root {
  --dam-indigo:#413d8a;
  --dam-indigo-dark:#29265d;
  --dam-green:#007b3c;
  --dam-gold:#eec327;
  --dam-red:#9e2415;
  --dam-ink:#252340;
  --dam-muted:#4e4c64;
  --dam-paper:#fff;
  --dam-line:#e1dff0;
}
body { margin:0; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid var(--dam-red); outline-offset:4px; }
.dam-bar,.dam-foot { padding:1.1rem max(1.1rem, calc((100% - 73rem)/2)); }
.dam-bar { background:var(--dam-paper); border-bottom:1px solid var(--dam-line); }
.dam-bar .wp-block-site-title a { text-decoration:none; }
.dam-bar .wp-block-site-title { font-size:clamp(.95rem,2vw,1.15rem); font-weight:800; color:var(--dam-indigo-dark); white-space:nowrap; margin:0; }
.dam-brand { flex-wrap:nowrap; gap:.65rem; }
.dam-brand .wp-block-site-logo img { display:block; width:clamp(2.75rem,6vw,3.65rem); height:auto; }
.dam-bar .wp-block-navigation { color:var(--dam-indigo-dark); font-weight:650; }
.dam-bar .wp-block-navigation-item.current-menu-item a { text-decoration:underline; text-underline-offset:.35em; }
.dam-main { width:min(73rem, calc(100% - 2.2rem)); margin:clamp(1.2rem,4vw,3rem) auto clamp(2.6rem,6vw,5rem); }
.dam-hero { position:relative; isolation:isolate; overflow:hidden; background:linear-gradient(122deg,var(--dam-indigo-dark),var(--dam-indigo)); color:#fff; padding:clamp(2rem,7vw,6rem) clamp(1.35rem,6vw,5rem); border-radius:1.5rem .25rem 1.5rem .25rem; }
.dam-hero::after {
  content:"";
  position:absolute;
  inset-block-start:50%;
  inset-inline-end:clamp(-10rem,-7vw,-3rem);
  width:clamp(15rem,38vw,34rem);
  aspect-ratio:1;
  translate:0 -50%;
  background:repeating-conic-gradient(from 22.5deg,#fff0 0deg 16deg,#fff3 16deg 22.5deg,#fff0 22.5deg 39deg,#eec3276b 39deg 45deg);
  clip-path:polygon(50% 0,62% 21%,85% 15%,79% 38%,100% 50%,79% 62%,85% 85%,62% 79%,50% 100%,38% 79%,15% 85%,21% 62%,0 50%,21% 38%,15% 15%,38% 21%);
  mask-image:radial-gradient(circle,#0000 18%,#000 29%,#000 58%,#0000 78%);
  z-index:-1;
  opacity:.65;
  pointer-events:none;
}
.dam-hero h1,.dam-heading h1 { font-size:clamp(2.55rem,6.5vw,5.4rem); line-height:1.04; letter-spacing:-.045em; margin-block:.2em .3em; max-inline-size:17ch; text-wrap:balance; }
.dam-hero p:not(.dam-kicker),.dam-heading p:not(.dam-kicker) { font-size:clamp(1rem,2vw,1.22rem); max-inline-size:57ch; }
.dam-kicker { font-size:.8rem; text-transform:uppercase; letter-spacing:.14em; font-weight:750; color:var(--dam-green); }
.dam-hero .dam-kicker { color:var(--dam-gold); }
.dam-hero .wp-block-button__link { color:var(--dam-ink); background:var(--dam-gold); }
.dam-hero .is-style-outline .wp-block-button__link { color:#fffdf7; background:transparent; }
.dam-hero a:focus-visible { outline-color:#fffdf7; }
.dam-section { margin-block:clamp(2.4rem,7vw,5rem); }
.dam-section h2 { font-size:clamp(1.75rem,4vw,3rem); line-height:1.13; letter-spacing:-.025em; }
.dam-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.dam-card { margin:0; padding:1.45rem; background:var(--dam-paper); border:1px solid var(--dam-line); border-top:3px solid var(--dam-indigo); border-radius:.3rem .3rem .8rem .8rem; }
.dam-card:nth-child(2) { border-top-color:var(--dam-green); }
.dam-card:nth-child(3) { border-top-color:var(--dam-gold); }
.dam-card h3 { font-size:1.35rem; margin-block:0 .6rem; }
.dam-card p { color:var(--dam-muted); }
.dam-feature { background:#eeedf8; padding:clamp(1.3rem,4vw,3rem); border-radius:1rem; border-inline-start:.32rem solid var(--dam-indigo); }
.dam-heading { margin-block:1rem 2rem; padding:clamp(1.3rem,4vw,3rem); background:#eeedf8; border-radius:1rem; border-inline-start:.32rem solid var(--dam-indigo); }
.dam-photo img { display:block; width:100%; max-height:35rem; object-fit:contain; border-radius:1rem; background:#eeedf8; }
.dam-photo figcaption { color:var(--dam-muted); text-align:start; }
.dam-rtl { font-family:Tahoma,Arial,sans-serif; line-height:1.9; }
.dam-rtl h1 { max-inline-size:19ch; letter-spacing:0; line-height:1.35; }
.dam-rtl h2,.dam-rtl .dam-kicker { letter-spacing:0; }
.dam-form { max-inline-size:43rem; padding:clamp(1.2rem,4vw,2.2rem); background:var(--dam-paper); border:1px solid var(--dam-line); border-radius:1rem; }
.dam-form label { display:block; font-weight:700; margin-block:.85rem .35rem; }
.dam-form input,.dam-form textarea { box-sizing:border-box; width:100%; color:var(--dam-ink); background:#fff; border:1px solid #6d6a83; border-radius:.35rem; font:inherit; padding:.6rem .8rem; }
.dam-form button { display:inline-block; margin-block-start:1rem; border:0; border-radius:.4rem; padding:.65rem 1rem; background:var(--dam-indigo); color:white; font:inherit; font-weight:700; cursor:pointer; }
.dam-notice { border-inline-start:.25rem solid var(--dam-red); padding:.7rem 1rem; background:#faefed; }
.dam-foot { background:var(--dam-indigo-dark); color:#fff; padding-block:1.65rem; }
.dam-foot p { margin:0; }
@media(max-width:700px) { .dam-grid { grid-template-columns:1fr; } .dam-hero::after { opacity:.26; inset-inline-end:-8rem; } .dam-bar { column-gap:.5rem; } }

.dam-archive-gallery { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr)); gap:1rem; }
.dam-archive-gallery > figure { margin:0; }
.dam-archive-gallery img { max-height:25rem; }
.dam-main .wp-block-video video { max-height:34rem; }
.dam-main :where(p,li,a) { overflow-wrap:anywhere; }
