/* Dreamland — Blog: independent WordPress post/archive/search layouts. */
.dl-bp-hero,.dl-bp-results,.dl-bp-single-hero,.dl-bp-single-content,
.dl-bp-hero *,.dl-bp-results *,.dl-bp-single-hero *,.dl-bp-single-content *,
.dl-bp-hero *::before,.dl-bp-results *::before,.dl-bp-single-hero *::before,.dl-bp-single-content *::before,
.dl-bp-hero *::after,.dl-bp-results *::after,.dl-bp-single-hero *::after,.dl-bp-single-content *::after{box-sizing:border-box}
.dl-bp-hero,.dl-bp-results,.dl-bp-single-hero,.dl-bp-single-content{width:100%;max-width:100%;margin:0;overflow:clip}
.dl-bp-kicker{
    display:block;font:500 clamp(10px,.73vw,13px)/1.5 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    text-transform:uppercase;letter-spacing:.15em;
}
.dl-bp-hero{
    --dl-bp-title:106px;--dl-bp-top:145px;--dl-bp-bottom:90px;
    --dl-bp-side:62px;--dl-bp-ink:#101010;
    --dl-bp-muted:#55534e;--dl-bp-accent:#72e6ad;
    background:#f0eee8;color:var(--dl-bp-ink);
}
.dl-bp-hero__inner{
    max-width:1920px;margin:auto;min-height:clamp(570px,65vh,850px);
    padding:var(--dl-bp-top) var(--dl-bp-side) var(--dl-bp-bottom);
    display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;
    gap:clamp(55px,9vw,140px);
}
.dl-bp-hero .dl-bp-kicker{color:var(--dl-bp-muted)}
.dl-bp-hero__title{
    color:var(--dl-bp-ink);margin:0;max-width:1500px;
    font:600 var(--dl-bp-title)/.94 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    letter-spacing:-.047em;text-wrap:balance;overflow-wrap:anywhere;
}
.dl-bp-hero__bottom{
    display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:clamp(35px,7vw,140px);border-top:1px solid #b6b3ad;padding-top:30px;
}
.dl-bp-hero__description{
    margin:0;color:var(--dl-bp-ink);
    font:400 clamp(18px,1.6vw,24px)/1.52 "Helvetica Neue",Helvetica,Arial,sans-serif;
    text-wrap:pretty;overflow-wrap:anywhere;
}
.dl-bp-hero__description strong{font-weight:600}
.dl-bp-search{
    display:flex;align-items:center;gap:10px;
    border-bottom:1px solid #74716d;min-width:0;
}
.dl-bp-search input[type="search"]{
    min-width:0;min-height:50px;width:100%;
    border:0!important;border-radius:0!important;
    padding:10px 2px!important;box-shadow:none!important;
    background:transparent!important;color:var(--dl-bp-ink)!important;
    font:400 clamp(16px,1.25vw,20px)/1.4 "Helvetica Neue",Arial,sans-serif;
}
.dl-bp-search input[type="search"]::placeholder{color:#66615b;opacity:1}
.dl-bp-search button{
    border:1px solid #888;min-height:45px;min-width:45px;
    display:grid;place-items:center;padding:10px;margin:0;
    background:transparent;color:var(--dl-bp-ink);border-radius:50%;cursor:pointer;
    transition:background .2s,border-color .2s,color .2s;
}
.dl-bp-search button svg{display:block;width:20px;height:20px}
.dl-bp-search button:is(:hover,:focus-visible){
    background:var(--dl-bp-accent);border-color:var(--dl-bp-accent);color:#101010;
}
.dl-bp-search :is(button,input):focus-visible{outline:2px solid var(--dl-bp-accent);outline-offset:3px}
.dl-bp-results{
    --dl-bp-side:62px;--dl-bp-vertical:110px;
    --dl-bp-card-title:39px;--dl-bp-light:#f2f0ea;--dl-bp-soft:#b7b4ae;
    --dl-bp-accent:#72e6ad;
    color:var(--dl-bp-light);background:#101010;
}
.dl-bp-results__inner{margin:auto;max-width:1920px;padding:var(--dl-bp-vertical) var(--dl-bp-side)}
.dl-bp-results__grid{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:start;gap:clamp(60px,6vw,116px) clamp(25px,3vw,62px);
}
.dl-bp-results__article{min-width:0;display:flex;flex-direction:column;gap:0}
.dl-bp-results__media{
    aspect-ratio:3/2;position:relative;overflow:hidden;
    display:block;background:#222;text-decoration:none;
}
.dl-bp-results__media:focus-visible{outline:3px solid var(--dl-bp-accent);outline-offset:5px}
.dl-bp-results__image{
    position:absolute;inset:0;width:100%;height:100%;
    display:block;object-fit:cover;margin:0;max-width:none;
    transition:transform .5s ease;
}
.dl-bp-results__fallback{
    position:absolute;inset:0;display:grid;place-items:center;
    background:linear-gradient(145deg,#171717,#292929);
}
.dl-bp-results__fallback img{display:block;width:clamp(65px,22%,155px);opacity:.34}
.dl-bp-results__meta{
    display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;
    margin:23px 0 12px;color:var(--dl-bp-soft);
    font:500 11px/1.4 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    letter-spacing:.12em;text-transform:uppercase;
}
.dl-bp-results__name{
    color:var(--dl-bp-light);margin:0 0 17px;
    font:600 var(--dl-bp-card-title)/1.08 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    letter-spacing:-.04em;overflow-wrap:anywhere;text-wrap:balance;
}
.dl-bp-results__name a,.dl-bp-results__name a:visited{color:inherit;text-decoration:none}
.dl-bp-results__name a:is(:hover,:focus-visible){color:var(--dl-bp-accent)}
.dl-bp-results__excerpt{
    font:400 clamp(15px,1.08vw,18px)/1.56 "Helvetica Neue",Arial,sans-serif;
    color:var(--dl-bp-soft);margin:0 0 24px;max-width:600px;
}
.dl-bp-results__read{
    display:inline-flex;gap:16px;align-items:center;align-self:flex-start;margin-top:auto;
    font:600 12px/1.3 "Coolvetica","Helvetica Neue",Arial,sans-serif;letter-spacing:.1em;
    color:var(--dl-bp-light);border-bottom:1px solid #666;padding-bottom:10px;text-decoration:none;
}
.dl-bp-results__read:visited{color:var(--dl-bp-light)}
.dl-bp-results__read svg{height:18px;width:18px}
.dl-bp-results__read:is(:hover,:focus-visible){color:var(--dl-bp-accent);border-color:var(--dl-bp-accent)}
.dl-bp-results__empty{
    color:var(--dl-bp-light);margin:0;
    font:400 clamp(20px,2vw,32px)/1.4 "Coolvetica","Helvetica Neue",Arial,sans-serif;
}
.dl-bp-results__pagination{margin-top:100px;border-top:1px solid #484848;padding-top:23px}
.dl-bp-results__pagination ul{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}
.dl-bp-results__pagination li{list-style:none;margin:0;padding:0}
.dl-bp-results__pagination a,.dl-bp-results__pagination span{
    display:grid;place-items:center;min-height:42px;min-width:42px;
    padding:9px;border:1px solid #555;background:transparent;
    font:500 13px/1 "Coolvetica",Arial,sans-serif;text-decoration:none;color:var(--dl-bp-light);
}
.dl-bp-results__pagination .current,
.dl-bp-results__pagination a:is(:hover,:focus-visible){
    color:#101010;background:var(--dl-bp-accent);border-color:var(--dl-bp-accent);
}
/* Single Post: visual rail shared with the real Dreamland Header (1680px + responsive gutters). */
.dl-bp-single-hero{
    --dl-bp-single-title:68px;--dl-bp-side:48px;--dl-bp-ink:#101010;
    color:var(--dl-bp-ink);background:#f0eee8;
}
.dl-bp-single-hero__inner{
    margin-inline:auto;max-width:1680px;
    padding:clamp(112px,9vw,150px) var(--dl-bp-side) clamp(46px,4.8vw,74px);
}
.dl-bp-single-hero__title{
    font:600 var(--dl-bp-single-title)/1.04 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    letter-spacing:-.045em;color:var(--dl-bp-ink);
    margin:clamp(28px,3.2vw,54px) 0 27px;max-width:1280px;
    overflow-wrap:anywhere;text-wrap:balance;
}
.dl-bp-single-hero time{
    display:block;font:500 12px/1.4 "Coolvetica",Arial,sans-serif;letter-spacing:.15em;
}
.dl-bp-single-hero__feature{
    width:100%;max-width:1680px;margin-inline:auto;
    padding-inline:var(--dl-bp-side);overflow:hidden;
}
.dl-bp-single-hero__feature img{
    display:block;width:100%;height:auto;max-height:none;
    aspect-ratio:auto;object-fit:initial;object-position:center;
    background:transparent;
}
.dl-bp-single-content{
    --dl-bp-side:48px;--dl-bp-reading:1600px;
    --dl-bp-ink:#101010;--dl-bp-accent:#72e6ad;
    color:var(--dl-bp-ink);background:#f0eee8;
    padding:clamp(64px,6vw,106px) 0 clamp(92px,8vw,144px);
}
/* Full usable desktop rail: exactly the Header's 1680px canvas with identical side gutters. */
.dl-bp-single-content__body{
    width:min(var(--dl-bp-reading),calc(100% - 2 * var(--dl-bp-side)),calc(1680px - 2 * var(--dl-bp-side)));
    max-width:100%;
    margin-left:max(var(--dl-bp-side),calc((100% - 1680px)/2 + var(--dl-bp-side)));
    margin-right:0;
}
.dl-bp-single-content__body>*:first-child{margin-top:0}
.dl-bp-single-content__body :is(p,li){
    font:400 clamp(17px,1.3vw,21px)/1.65 "Helvetica Neue",Helvetica,Arial,sans-serif;
    overflow-wrap:break-word;
}
.dl-bp-single-content__body h2,.dl-bp-single-content__body h3{
    margin:1.65em 0 .64em;font-family:"Coolvetica","Helvetica Neue",Arial,sans-serif;
    line-height:1.16;letter-spacing:-.022em;
}
.dl-bp-single-content__body h2{font-size:clamp(27px,2.45vw,40px)}
.dl-bp-single-content__body h3{font-size:clamp(22px,1.9vw,31px)}
.dl-bp-single-content__body :is(img,video,iframe){max-width:100%;height:auto}
.dl-bp-single-content__body iframe{aspect-ratio:16/9;width:100%}
.dl-bp-single-content__body figure{max-width:100%}
.dl-bp-single-content__body a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.dl-bp-single-content__body a:hover{background:var(--dl-bp-accent);color:#101010}
.dl-bp-single-content__nav{
    display:flex;justify-content:space-between;align-items:start;gap:20px;
    width:calc(100% - 2 * var(--dl-bp-side));
    max-width:calc(1680px - 2 * var(--dl-bp-side));
    margin:clamp(72px,7vw,120px) auto 0;
    padding-top:27px;border-top:1px solid #96928b;flex-wrap:wrap;
}
.dl-bp-single-content__nav a{
    display:inline-flex;align-items:center;gap:12px;
    font:500 clamp(12px,1.1vw,17px)/1.35 "Coolvetica","Helvetica Neue",Arial,sans-serif;
    color:var(--dl-bp-ink);text-decoration:none;
    max-width:min(100%,500px);
}
.dl-bp-single-content__nav svg{width:19px;height:19px;flex:none}
.dl-bp-single-content__nav a:is(:hover,:focus-visible){color:#147f50}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
    .dl-bp-results__article:hover .dl-bp-results__image{transform:scale(1.035)}
}
@media(min-width:1921px){
    .dl-bp-hero__inner,.dl-bp-results__inner{max-width:2100px}
}
@media(max-width:1024px){
    .dl-bp-results__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dl-bp-hero__inner{min-height:550px}
    .dl-bp-single-hero__inner{padding-top:112px}
    .dl-bp-single-hero__title{line-height:1.05}
}
@media(max-width:767px){
    .dl-bp-hero__inner{min-height:0;gap:60px}
    .dl-bp-hero__title{font-size:min(var(--dl-bp-title),clamp(35px,10vw,56px));line-height:1.02}
    .dl-bp-hero__bottom{display:flex;flex-direction:column;gap:28px}
    .dl-bp-results__grid{grid-template-columns:1fr;gap:72px}
    .dl-bp-results__name{font-size:min(var(--dl-bp-card-title),clamp(26px,8vw,36px))}
    .dl-bp-results__pagination{margin-top:70px}
    .dl-bp-single-hero__inner{padding-top:96px;padding-bottom:38px}
    .dl-bp-single-hero__title{font-size:min(var(--dl-bp-single-title),clamp(30px,8.2vw,40px));line-height:1.08;margin:28px 0 22px}
    .dl-bp-single-content{padding-top:48px;padding-bottom:78px}
    .dl-bp-single-content__body h2{font-size:clamp(25px,6.4vw,31px)}
    .dl-bp-single-content__body h3{font-size:clamp(21px,5.2vw,27px)}
    .dl-bp-single-content__body :is(p,li){font-size:16px;line-height:1.62}
    .dl-bp-single-content__nav{display:flex;flex-direction:column;gap:26px;margin-top:66px}
}
@media(max-width:359px){
    .dl-bp-hero__title{font-size:min(var(--dl-bp-title),34px)}
    .dl-bp-single-hero__title{font-size:min(var(--dl-bp-single-title),30px)}
}
@media(prefers-reduced-motion:reduce){
    .dl-bp-hero *,.dl-bp-results *,.dl-bp-single-hero *,.dl-bp-single-content *{transition:none!important;animation:none!important}
}
