/* Shared styles for the Explore Florida collection and its home-page feature. */
.ef-page,.ef-feature{--ef-teal:#164d50;--ef-dark:#173b3f;--ef-gold:#e6b368;--ef-sand:#f9f3e7;--ef-line:#ded8c7}
.ef-page{background:#fbf8f0;color:var(--ef-dark);margin:0;font:18px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif}
.ef-page *,.ef-feature *{box-sizing:border-box}
.ef-page a:focus-visible,.ef-feature a:focus-visible{outline:3px solid #a14e32;outline-offset:4px}
.ef-page main a,.ef-page footer a{color:#14585c;text-underline-offset:.2em}
.ef-wrap{width:min(1140px,calc(100% - 48px));margin-inline:auto}
.ef-skip{position:absolute;left:-9999px;z-index:20;padding:10px;background:#fff}
.ef-skip:focus{left:12px;top:12px}
.ef-page .ef-breadcrumb{margin:22px auto 16px;font-size:.88rem}
.ef-masthead{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);align-items:center;gap:clamp(22px,5vw,70px);padding:clamp(24px,5vw,60px);background:#e8eee3;border:1px solid #d2ddd0;border-radius:30px}
.ef-masthead::before{content:"";position:absolute;z-index:-1;width:520px;height:520px;right:-200px;top:-245px;border:1px solid #bdcfc3;border-radius:50%;box-shadow:0 0 0 26px #e0e8dc,0 0 0 27px #bdcfc3,0 0 0 54px #e0e8dc,0 0 0 55px #bdcfc3;pointer-events:none}
.ef-masthead h1{font:700 clamp(2.65rem,6vw,5.1rem)/.99 Georgia,serif;letter-spacing:-.045em;margin:12px 0 18px;color:var(--ef-dark)}
.ef-masthead .ef-detail-title{font-size:clamp(2.45rem,5vw,4.3rem)}
.ef-masthead h1 em{display:block;font-weight:400;color:#26666a}
.ef-masthead p{max-width:47ch;margin:0 0 18px}
.ef-label{display:inline-block;color:#78442d;font-size:.76rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.ef-photo{margin:0;min-width:0}
.ef-photo img,.ef-card img,.ef-feature img{display:block;width:100%;height:auto;object-fit:cover}
.ef-photo img{height:clamp(235px,31vw,395px);border-radius:19px;background:#e7ded0;box-shadow:0 12px 28px #193b3f26}
.ef-photo figcaption{margin-top:8px;color:#355755;font-size:.76rem}
.ef-photo .ef-portrait,.ef-card .ef-portrait{object-fit:scale-down;background:radial-gradient(ellipse,#f4e2bc,#bb885e)}
.ef-photo .ef-portrait{object-position:center}
.ef-page .ef-button,.ef-feature .ef-button{display:inline-block;border:1px solid transparent;border-radius:999px;padding:.62rem 1.05rem;color:#fff;background:var(--ef-teal);font-size:.95rem;font-weight:760;text-decoration:none}
.ef-page .ef-button:hover,.ef-feature .ef-button:hover{background:#235f62}
.ef-page .ef-button.ef-secondary{border-color:#236163;color:#174d50;background:transparent}
.ef-page .ef-button.ef-secondary:hover{background:#dbe9de}
.ef-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ef-section{margin:clamp(30px,5vw,60px) auto}
.ef-section h2,.ef-feature h2{font:700 clamp(1.85rem,4vw,3rem)/1.07 Georgia,serif;margin:0 0 10px;color:var(--ef-dark)}
.ef-section > p{margin:0 0 20px;max-width:68ch}
.ef-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ef-grid.ef-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
.ef-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--ef-line);border-radius:20px;background:#fffdf8;box-shadow:0 9px 23px #193b3f0e}
.ef-card img{height:clamp(155px,18vw,230px);background:#e7ded0}
.ef-card .ef-portrait{padding:9px}
.ef-card-body{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:19px 20px}
.ef-card h3,.ef-planning h3{font:700 1.5rem/1.17 Georgia,serif;margin:7px 0 8px}
.ef-card p{margin:0 0 14px;font-size:.96rem}
.ef-card .ef-card-link{margin-top:auto;font-weight:750}
.ef-notice{padding:16px 20px;margin:19px 0;background:#fff1d8;border:1px solid #deb16d;border-radius:14px}
.ef-notice p{margin:0}
.ef-notice p+p{margin-top:8px}
.ef-planning{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ef-planning article,.ef-endnote{padding:20px 22px;border:1px solid var(--ef-line);border-radius:17px;background:#fffdf8}
.ef-planning p,.ef-endnote p{margin:0}
.ef-endnote p+p{margin-top:8px}
.ef-page footer{border-top:1px solid var(--ef-line);background:#e8eee3;padding:24px 0;font-size:.9rem}
.ef-page footer nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.ef-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(18px,4vw,44px);padding:clamp(20px,4vw,39px);border:1px solid #d2ddd0;background:#e8eee3;border-radius:24px}
.ef-feature p{margin:8px 0 14px;color:var(--ef-dark);max-width:42ch}
.ef-feature-photos{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ef-feature img{height:clamp(130px,18vw,205px);border-radius:12px}
.ef-feature-credit{grid-column:1/-1;justify-self:end;color:#355755;font-size:.74rem;text-underline-offset:.15em}
@media(max-width:850px){.ef-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ef-masthead{gap:22px}}
@media(max-width:650px){.ef-wrap{width:calc(100% - 28px)}.ef-masthead,.ef-feature{grid-template-columns:1fr}.ef-photo img{height:250px}.ef-grid,.ef-grid.ef-featured,.ef-planning{grid-template-columns:1fr}.ef-card img{height:205px}}
