/* Amaya Journal - uses the colour tokens and fonts from style.css */
.hero-journal{min-height:78svh}
.hero-journal h1{text-transform:uppercase;letter-spacing:.12em;font-size:clamp(2.4rem,8vw,5.8rem)}
.hero-journal p{max-width:640px;margin:1rem auto 0;font-weight:300}
.j-photo{display:block;overflow:hidden;border-radius:4px;background:var(--mist)}
.j-photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.j-photo:hover img{transform:scale(1.05)}
.j-eyebrow,.j-cat{display:block;font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--clay)}
.j-link{font-size:.8rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--deep);border-bottom:1px solid currentColor;padding-bottom:2px;transition:color .2s,letter-spacing .3s}
.j-link:hover{color:var(--clay);letter-spacing:.2em}
/* featured */
.j-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding-block:clamp(4rem,9vw,7rem) clamp(3rem,6vw,5rem)}
.j-feature .j-photo{aspect-ratio:4/3}
.j-feature h2{font-size:clamp(1.9rem,4vw,3.1rem);margin:.8rem 0 1.2rem}
.j-feature p{color:#33423d;margin-bottom:1.8rem;max-width:460px}
/* tabs */
.j-tabs{display:flex;gap:.4rem 2rem;flex-wrap:wrap;justify-content:center;border-block:1px solid var(--line);padding-block:1.1rem;margin-bottom:clamp(2.5rem,5vw,4rem)}
.j-tab{background:none;border:0;font:inherit;font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#6b7a73;padding:.4rem 0;cursor:pointer;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.j-tab:hover{color:var(--ink)}.j-tab.on{color:var(--deep);border-color:var(--clay)}
/* grid */
.j-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(2.5rem,4vw,3.5rem) clamp(1.5rem,3vw,2.5rem)}
.j-card{display:flex;flex-direction:column}
.j-card[hidden]{display:none}
.j-card .j-photo{aspect-ratio:4/5;margin-bottom:1.2rem}
.j-card h3{font-size:1.5rem;margin:.5rem 0 .7rem}
.j-card p{color:#4a5a53;font-size:.95rem;font-family:var(--serif);font-style:italic;line-height:1.6;flex:1}
.j-meta{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.78rem;color:#6b7a73}
.pop{animation:pop .6s cubic-bezier(.2,.7,.2,1) both}
@keyframes pop{from{opacity:0;transform:translateY(18px)}}
/* quote */
.j-quote{margin-top:clamp(4rem,9vw,8rem);min-height:68svh;display:grid;place-items:center;background-size:cover;background-position:center;color:#fff;text-align:center;padding:4rem 1.5rem}
.j-quote blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(2rem,6vw,4.6rem);line-height:1.2;max-width:900px}
/* life at amaya */
.j-life{padding-block:clamp(4rem,9vw,8rem) 0}
.j-life h2{text-align:center;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(1.8rem,4.5vw,3rem);margin-bottom:clamp(2rem,5vw,3.5rem)}
.j-life-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(190px,24vw,320px);gap:1rem}
.j-life figure{position:relative;overflow:hidden;border-radius:4px;margin:0}
.j-life img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.j-life figure:hover img{transform:scale(1.05)}
.j-life figcaption{position:absolute;inset:auto 0 0 0;padding:3rem 1.3rem 1.1rem;color:#fff;background:linear-gradient(transparent,rgba(5,15,12,.75));display:flex;flex-direction:column}
.j-life figcaption strong{font-family:var(--serif);font-weight:400;font-size:1.3rem}
.j-life figcaption span{font-size:.85rem;opacity:.85}
.l-a{grid-column:span 7;grid-row:span 2}.l-b{grid-column:span 5}.l-c{grid-column:span 5}
.l-d{grid-column:span 6}.l-e{grid-column:span 6}
/* quote collection */
.j-quotes{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-block:clamp(4rem,8vw,7rem) 0}
.j-quotes blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.45;padding:1.6rem 1.6rem 1.6rem 0;margin-right:1.6rem;border-top:1px solid var(--clay);color:var(--deep)}
/* cta */
.j-cta{margin-top:clamp(4rem,9vw,8rem);min-height:80svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;background-size:cover;background-position:center;padding:5rem 1.5rem}
.j-cta h2{text-transform:uppercase;letter-spacing:.1em;font-size:clamp(2.2rem,6.5vw,4.8rem)}
.j-cta p{margin:1rem 0 2.4rem;font-size:clamp(1rem,2vw,1.25rem)}
.j-btns{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}
.j-btns .btn{margin:0;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:500}
.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.7)}.btn-ghost:hover{background:#fff;color:var(--deep)}
.j-cta+.footer,main+.j-modal+script+.footer{margin-top:0}
/* story modal */
.j-modal{position:fixed;inset:0;z-index:200;background:rgba(10,20,17,.88);display:grid;place-items:center;padding:1rem;overflow-y:auto}
.j-modal[hidden]{display:none}
.j-modal-box{position:relative;background:#fff;max-width:980px;width:100%;display:grid;grid-template-columns:1.1fr 1fr;border-radius:6px;overflow:hidden;animation:pop .5s both}
.j-modal-box img{width:100%;height:100%;min-height:340px;object-fit:cover}
.j-modal-text{padding:clamp(1.5rem,4vw,3rem);align-self:center}
.j-modal-text h3{font-size:clamp(1.5rem,3vw,2.2rem);margin:.7rem 0 1rem}
.j-modal-text p{color:#33423d;margin-bottom:1.2rem}
.j-modal-text time{font-size:.8rem;color:#6b7a73}
.j-close{position:absolute;top:8px;right:14px;z-index:2;background:rgba(255,255,255,.9);border:0;border-radius:50%;width:38px;height:38px;font-size:1.6rem;line-height:1;cursor:pointer}
/* responsive */
@media(max-width:1000px){
  .j-grid{grid-template-columns:repeat(2,1fr)}
  .j-quotes{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .j-feature{grid-template-columns:1fr}
  .j-modal-box{grid-template-columns:1fr}.j-modal-box img{min-height:240px;max-height:42vh}
}
@media(max-width:640px){
  .j-grid{grid-template-columns:1fr}
  .j-card .j-photo{aspect-ratio:4/3.4}
  .j-tabs{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:1.4rem;scrollbar-width:none}
  .j-tab{white-space:nowrap}
  .j-life-grid{display:flex;flex-direction:column}
  .j-life figure{height:clamp(230px,62vw,340px)}
  .j-quotes{grid-template-columns:1fr}
  .j-quotes blockquote{margin-right:0;padding-right:0}
  .j-btns{flex-direction:column;width:100%;max-width:320px}
  .j-btns .btn{width:100%}
}
@media(max-height:520px) and (orientation:landscape){.j-quote,.j-cta,.hero-journal{min-height:auto;padding-block:6rem 3rem}}
