/* /assets/stylesheets/agadir.css */

  .agadir-page { background:#f9f0ec; color:#181d24; }
  .agadir-page * { box-sizing:border-box; }
  .agadir-page .ag-copy,
  .agadir-page .ag-copy p,
  .agadir-page .ag-copy li { text-transform:none; letter-spacing:0; }

  .ag-hero {
    position:relative;
    min-height:78vh;
    min-height:calc(var(--viewport-height, 100vh) * .78);
    overflow:hidden;
    background:#181d24;
    color:#f9f0ec;
  }
  .ag-hero__image,
  .ag-hero__shade { position:absolute; inset:0; }
  .ag-hero__image img { width:100%; height:100%; object-fit:cover; display:block; }
  .ag-hero__shade {
    background:linear-gradient(180deg, rgba(15,19,24,.20) 0%, rgba(15,19,24,.14) 40%, rgba(15,19,24,.70) 100%);
  }
  .ag-hero__content {
    position:relative;
    z-index:2;
    min-height:78vh;
    min-height:calc(var(--viewport-height, 100vh) * .78);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding-top:150px;
    padding-bottom:clamp(46px,7vw,100px);
  }
  .ag-eyebrow {
    margin:0 0 18px;
    font-size:12px;
    line-height:1.4;
    letter-spacing:.18em;
    text-transform:uppercase;
    color:#ca9d75;
  }
  .ag-hero h1 {
    max-width:860px;
    margin:0;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-weight:400;
    font-size:clamp(42px,6vw,88px);
    line-height:.98;
    letter-spacing:-.035em;
    text-transform:none;
    color:#f9f0ec;
  }
  .ag-hero__sub {
    max-width:700px;
    margin:26px 0 0;
    font-family:"Euclid Square", Helvetica, Arial, sans-serif;
    font-size:clamp(16px,1.35vw,20px);
    line-height:1.65;
    letter-spacing:0;
    text-transform:none;
    color:rgba(249,240,236,.92);
  }

  .ag-section { padding:clamp(72px,8vw,130px) 0; }
  .ag-section--tight { padding:clamp(54px,6vw,90px) 0; }
  .ag-section--dark { background:#181d24; color:#f9f0ec; }
  .ag-section--warm { background:#eee2d8; }
  .ag-section--white { background:#f9f0ec; }

  .ag-grid-2 { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(40px,7vw,120px); align-items:start; }
  .ag-grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:rgba(24,29,36,.15); }
  .ag-section--dark .ag-grid-3 { background:rgba(249,240,236,.16); }

  .ag-heading {
    margin:0;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-weight:400;
    font-size:clamp(32px,3.7vw,58px);
    line-height:1.04;
    letter-spacing:-.03em;
    text-transform:none;
  }
  .ag-subheading {
    margin:0 0 14px;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-weight:400;
    font-size:clamp(24px,2.2vw,36px);
    line-height:1.15;
    letter-spacing:-.02em;
    text-transform:none;
  }
  .ag-copy { max-width:760px; }
  .ag-copy p {
    margin:0 0 22px;
    font-family:"Euclid Square", Helvetica, Arial, sans-serif;
    font-size:clamp(16px,1.15vw,18px);
    line-height:1.78;
  }
  .ag-copy p:last-child { margin-bottom:0; }
  .ag-copy strong { font-weight:500; }

  .ag-intro { max-width:900px; margin-left:auto; }
  .ag-intro p {
    margin:0;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-size:clamp(25px,3vw,44px);
    line-height:1.25;
    letter-spacing:-.025em;
    text-transform:none;
  }

  .ag-facts { margin-top:clamp(55px,7vw,100px); border-top:1px solid rgba(24,29,36,.20); border-bottom:1px solid rgba(24,29,36,.20); }
  .ag-fact { padding:34px 26px 32px; background:#f9f0ec; min-height:165px; }
  .ag-fact__value {
    display:block;
    margin-bottom:8px;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-size:clamp(27px,2.4vw,40px);
    line-height:1;
    letter-spacing:-.025em;
    text-transform:none;
    color:#ac835e;
  }
  .ag-fact__text {
    margin:0;
    font-size:13px;
    line-height:1.6;
    letter-spacing:.03em;
    text-transform:none;
  }

  .ag-photo { margin:0; overflow:hidden; background:#d8cdc4; }
  .ag-photo img { display:block; width:100%; height:100%; object-fit:cover; }
  .ag-photo--landscape { aspect-ratio:16/10; }
  .ag-photo--portrait { aspect-ratio:4/5; }
  .ag-photo figcaption {
    padding-top:10px;
    font-size:11px;
    line-height:1.5;
    letter-spacing:.05em;
    text-transform:none;
    opacity:.7;
  }

  .ag-note {
    margin-top:34px;
    padding:24px 0 0;
    border-top:1px solid rgba(24,29,36,.20);
    font-size:14px;
    line-height:1.7;
    letter-spacing:0;
    text-transform:none;
  }
  .ag-section--dark .ag-note { border-top-color:rgba(249,240,236,.2); }

  .ag-list { list-style:none; padding:0; margin:32px 0 0; }
  .ag-list li {
    position:relative;
    padding:18px 0 18px 30px;
    border-top:1px solid rgba(24,29,36,.16);
    font-size:16px;
    line-height:1.65;
  }
  .ag-list li:last-child { border-bottom:1px solid rgba(24,29,36,.16); }
  .ag-list li::before {
    content:"";
    position:absolute;
    left:0;
    top:29px;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#ca9d75;
  }
  .ag-list strong { display:block; margin-bottom:3px; font-weight:500; }

  .ag-zone-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(24,29,36,.14); margin-top:44px; }
  .ag-zone { background:#f9f0ec; padding:clamp(28px,3vw,46px); }
  .ag-zone h3 {
    margin:0 0 12px;
    font-family:"SangBleu Empire", Helvetica, Arial, sans-serif;
    font-size:clamp(23px,2vw,32px);
    line-height:1.12;
    letter-spacing:-.02em;
    text-transform:none;
  }
  .ag-zone p { margin:0; font-size:15px; line-height:1.72; letter-spacing:0; text-transform:none; }

  .ag-source-list { margin:24px 0 0; padding:0; list-style:none; }
  .ag-source-list li { margin:0 0 10px; font-size:13px; line-height:1.6; letter-spacing:0; text-transform:none; }
  .ag-source-list a { color:inherit; text-decoration:underline; text-underline-offset:3px; }

  .ag-cta { display:flex; justify-content:space-between; align-items:end; gap:40px; }
  .ag-cta__text { max-width:720px; }
  .ag-cta__links { display:flex; gap:12px; flex-wrap:wrap; }

  @media (max-width:979px) {
    .ag-grid-2 { grid-template-columns:1fr; gap:44px; }
    .ag-grid-3 { grid-template-columns:1fr; }
    .ag-zone-grid { grid-template-columns:1fr; }
    .ag-cta { display:block; }
    .ag-cta__links { margin-top:32px; }
    .ag-photo--portrait { aspect-ratio:16/10; }
  }

  @media (max-width:567px) {
    .ag-hero { min-height:72vh; }
    .ag-hero__content { min-height:72vh; padding-top:120px; padding-bottom:42px; }
    .ag-hero h1 { font-size:44px; }
    .ag-hero__sub { font-size:16px; line-height:1.55; }
    .ag-fact { min-height:auto; padding:25px 20px; }
    .ag-section { padding:68px 0; }
    .ag-section--tight { padding:52px 0; }
    .ag-copy p { font-size:16px; line-height:1.7; }
  }
