/*
Theme Name: The Fairy Experience
Description: A bespoke woodland portrait website for The Fairy Experience, with studio enquiries, area interest, gallery and original film.
Version: 1.0.1
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: the-fairy-experience
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--forest:#18271f;--deep:#101a16;--ivory:#f4f0e7;--gold:#d1bb86;--ink:#263c30;--muted:#b8c0b7;--line:#ffffff29}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;background:var(--ivory);color:var(--ink);font:17px/1.75 Arial,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h1{font-size:clamp(46px,5.2vw,78px);letter-spacing:-2px}h2{font-size:clamp(37px,3.5vw,55px);letter-spacing:-1.4px}h3{font-size:29px}em{font-weight:400;color:inherit}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--deep);color:var(--ivory);position:relative;z-index:5;border-bottom:1px solid var(--line)}.wordmark{font:30px/1 Georgia,serif;text-align:center;white-space:nowrap}.wordmark span{display:block;font:10px/1.7 Arial;letter-spacing:4px}.wordmark small{display:block;font:9px/2.4 Arial;letter-spacing:3px}nav{display:flex;gap:32px;align-items:center;font-size:14px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:12px 25px;background:var(--gold);color:var(--deep);border:1px solid var(--gold);font-size:14px;letter-spacing:.25px;transition:background .2s}.button:hover{background:#e5d4ab}.button.small{min-height:44px;padding:8px 19px}.text-link{font-size:14px;border-bottom:1px solid #bdae89;padding-bottom:5px}.text-link:hover{color:var(--gold)}.dark-link:hover{color:#705522}.actions{display:flex;gap:28px;align-items:center;margin-top:30px}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:600;line-height:1.7;margin-bottom:23px}.hero{height:690px;min-height:580px;position:relative;background:var(--deep);color:var(--ivory);overflow:hidden}.hero>img{height:100%;width:73%;margin-left:auto;object-position:65% 51%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101a16 0%,#101a16ee 17%,#101a1677 47%,transparent 74%),linear-gradient(0deg,#101a16b0,transparent 23%)}.hero-copy{position:absolute;top:21%;left:7%;max-width:680px}.hero-copy .eyebrow{color:var(--gold)}.hero-copy>p:not(.eyebrow){margin-top:27px;line-height:1.8;color:#dedfd6}.hero-bottom{position:absolute;bottom:28px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:2px;color:#d8dacc}.section{padding:105px 8%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-copy{max-width:460px}.intro-copy>p:not(.eyebrow){margin-top:25px;color:#5c675d}.intro-copy .text-link{display:inline-block;margin-top:27px}.framed{padding:12px;border:1px solid #c4baa5}.framed img{aspect-ratio:1.15}.framed figcaption{text-align:center;font:italic 17px Georgia;padding:19px 0 9px;color:#697260}.menu-toggle{display:none}.skip{position:absolute;left:10px;top:-60px;z-index:20;background:white;color:black;padding:10px}.skip:focus{top:5px}:focus-visible{outline:3px solid #b48139;outline-offset:5px}[hidden]{display:none!important}@media(min-width:1600px){.hero-copy{left:calc((100% - 1380px)/2)}}@media(max-width:800px){header{height:90px;padding:0 6%}header nav{display:none}.wordmark{font-size:25px}.wordmark small{font-size:8px}.menu-toggle{display:block;background:none;border:1px solid var(--line);color:var(--ivory);padding:8px 15px;font-size:14px}#mobile-menu{position:absolute;top:90px;left:0;right:0;background:var(--deep);color:var(--ivory);padding:24px;z-index:6;flex-direction:column;align-items:flex-start;gap:18px}.hero{height:750px}.hero>img{width:100%;height:65%;object-position:64% 50%}.hero-shade{background:linear-gradient(0deg,#101a16 0%,#101a16 23%,#101a16a0 52%,transparent 80%)}.hero-copy{left:7%;right:7%;top:auto;bottom:85px}.hero h1{font-size:47px;letter-spacing:-1.8px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px;max-width:270px}.hero-copy>p:not(.eyebrow){font-size:16px;margin-top:20px}.hero-bottom span{display:none}.hero-bottom{font-size:9px}.section{padding:65px 7%}.intro{grid-template-columns:1fr;gap:40px}.actions{gap:18px;flex-wrap:wrap}h2{font-size:40px}}
.story-band{display:grid;grid-template-columns:1.1fr 1fr;background:var(--forest);color:var(--ivory)}.story-band>img{height:100%;min-height:610px;object-position:50% 50%}.story-panel{padding:85px 16% 85px 13%;align-self:center}.story-panel .eyebrow{color:var(--gold)}.story-panel p:not(.eyebrow){color:#c7cdc2;margin-top:25px}.story-panel .text-link{display:inline-block;margin-top:28px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:43px}.section-heading>p{max-width:340px;color:#657062;font-size:15px;line-height:1.8}.film-poster{position:relative;display:block;width:100%;border:0;padding:0;background:var(--deep);text-align:left;overflow:hidden}.film-poster img{height:490px;object-position:50% 45%;filter:brightness(.82);transition:transform .5s}.film-poster:hover img{transform:scale(1.025)}.film-label{position:absolute;bottom:35px;left:40px;display:flex;align-items:center;gap:20px;color:white;font:25px Georgia}.film-label small{display:block;font:12px Arial;margin-top:12px;letter-spacing:1px}.play-symbol{border:1px solid #ffffff80;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font:35px Georgia}.features{padding-top:10px;padding-bottom:95px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:50px}.number{font:italic 24px Georgia;color:#967b43;display:block;border-top:1px solid #cfc7b6;padding-top:20px;margin-bottom:25px}.feature-grid h3{font-size:25px;line-height:1.22;max-width:190px}.feature-grid p{font-size:15px;line-height:1.8;color:#657062;margin-top:18px}.gallery-wrap{padding:95px 8%;background:var(--deep);color:var(--ivory)}.gallery-wrap .eyebrow{color:var(--gold)}.gallery-wrap .section-heading>p{color:#bac3b7}.gallery{display:grid;grid-template-columns:1fr 1.2fr 1fr;grid-template-rows:265px 265px;gap:20px}.gallery-item{position:relative;border:0;padding:0;overflow:hidden;background:var(--forest);color:white;text-align:left}.gallery-item img{height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item.tall{grid-row:span 2}.gallery-item:nth-child(4){grid-column:2;grid-row:2}.gallery-item.wide{display:none}.gallery-item span{position:absolute;bottom:0;left:0;right:0;padding:40px 20px 18px;background:linear-gradient(transparent,#101a16bd);font:italic 20px Georgia}.range{display:grid;grid-template-columns:1.05fr 1fr;gap:9%;align-items:center}.range-images{position:relative;padding:0 19% 60px 0}.range-images img:first-child{aspect-ratio:.9;object-position:55%}.range-images img:last-child{position:absolute;bottom:0;right:0;width:44%;border:7px solid var(--ivory);aspect-ratio:.73}.range p:not(.eyebrow){margin-top:24px;color:#657062}.range .text-link{display:inline-block;margin-top:25px}.find-section{max-width:none;background:#e7e8df}.finder-tabs{display:flex;border-bottom:1px solid #bec5b8;gap:34px;margin-top:45px}.finder-tabs button{padding:15px 0;border:0;border-bottom:2px solid transparent;background:none;color:#697363;font-size:15px}.finder-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--ink)}.finder-note{font-size:13px;color:#64705e;margin:24px 0}.locations{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.locations button{text-align:left;color:var(--ink);border:1px solid #bec6b6;background:transparent;padding:28px 23px;transition:background .2s}.locations button:hover{background:var(--ivory)}.locations span{font-size:9px;letter-spacing:1px}.locations h3{margin:18px 0 25px;font-size:32px}.locations small{font-size:12px;border-bottom:1px solid #859278;padding-bottom:5px}.studio-notice{padding:35px 0;max-width:650px}.studio-notice p{margin:18px 0 24px}.interest{display:grid;grid-template-columns:.85fr 1fr;gap:12%}.interest p:not(.eyebrow){color:#657062;margin-top:25px}.fine-note{display:block;font-size:12px!important;line-height:1.7;color:#778070;margin-top:24px}.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start}.lead-form label{font-size:13px;line-height:1.5}.lead-form label>span{color:#737c6c}.lead-form input:not([type=checkbox]),.lead-form select{display:block;width:100%;margin-top:8px;padding:12px;background:transparent;border:1px solid #bfc4b5;border-radius:0;color:var(--ink);min-width:0}.lead-form .check{display:flex;align-items:flex-start;gap:10px;grid-column:1/-1;margin:2px 0 8px}.check input{margin:5px 0 0;accent-color:var(--forest);width:17px;height:17px;flex-shrink:0}.lead-form .button{justify-self:start}.full,.form-result{grid-column:1/-1}.form-result{font-size:14px;background:#e5e9dd;padding:15px;border-left:3px solid #697e57}.founder{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-top:30px}.founder-art{position:relative;background:#d9d8c8;padding:30px 30px 58px}.founder-art img{aspect-ratio:1;object-fit:cover}.founder-art span{display:block;position:absolute;bottom:19px;left:0;right:0;text-align:center;letter-spacing:2px;font-size:9px}.founder p:not(.eyebrow){margin-top:22px;color:#657062}.plain{border-top:0;border-left:0;border-right:0;background:none;padding-left:0;padding-right:0;color:inherit;margin-top:24px}.photographers{max-width:none;background:var(--forest);color:var(--ivory);display:flex;justify-content:space-between;align-items:center;gap:60px;padding-top:65px;padding-bottom:65px}.photographers .eyebrow{color:var(--gold)}.photographers h2{font-size:36px}.photographers p:not(.eyebrow){max-width:650px;color:#c7cdc2;margin-top:20px;font-size:15px}.outline{background:transparent;color:var(--ivory);white-space:nowrap}.outline:hover{color:var(--deep)}.final-cta{height:460px;position:relative;color:var(--ivory);overflow:hidden;background:var(--deep)}.final-cta>img{height:100%;width:65%;margin-left:auto;object-position:50% 40%;opacity:.65}.final-cta:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--deep) 15%,#101a16b0 42%,transparent 78%)}.final-cta>div{position:absolute;top:85px;left:8%;z-index:1}.final-cta .eyebrow{color:var(--gold)}footer{padding:65px 8% 25px;background:var(--deep);color:#d1d6ca}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:45px}.footer-top .wordmark{justify-self:start;margin-top:4px}.footer-top>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:13px}.footer-top button{padding:0;border:0;background:transparent;color:inherit;font-size:13px}.footer-top a:hover,.footer-top button:hover{color:var(--gold)}.footer-bottom{border-top:1px solid var(--line);padding-top:25px;margin-top:50px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#9fa99b}dialog{width:min(650px,90vw);max-height:90vh;border:1px solid #b5bda9;background:var(--ivory);color:var(--ink);padding:50px;overflow:auto}dialog::backdrop{background:#08110de6}dialog h2{font-size:38px;margin-bottom:25px}dialog p+p,dialog .lead-form{margin-top:22px}dialog .close-dialog{position:absolute;top:10px;right:15px;background:transparent;border:0;color:inherit;font:30px Arial;z-index:2;width:36px;height:36px}#lightbox{width:min(1000px,94vw);background:var(--deep);color:var(--ivory);padding:35px 45px 20px;border:0}#lightbox>img{max-height:72vh;object-fit:contain}#lightbox>p{font:italic 21px Georgia;text-align:center;margin-top:18px}.lightbox-actions{display:flex;justify-content:center;gap:40px;margin-top:20px}.lightbox-actions button{border:0;background:none;color:var(--gold);font-size:14px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:1000px){.story-panel{padding:60px 10%}.locations{grid-template-columns:repeat(2,1fr)}.interest{gap:7%}.footer-top{gap:25px}.gallery{grid-template-rows:230px 230px}.feature-grid{gap:25px}.photographers{gap:30px}}@media(max-width:800px){.story-band,.range,.interest,.founder{grid-template-columns:1fr}.story-band>img{height:380px;min-height:0}.story-panel{padding:55px 7%}.section-heading{display:block}.section-heading>p{margin-top:24px}.film-poster img{height:320px}.film-label{left:22px;bottom:25px;font-size:21px;gap:14px}.play-symbol{width:48px;height:48px;font-size:27px}.features{padding-top:0}.feature-grid{grid-template-columns:1fr 1fr;gap:30px 25px}.feature-grid h3{font-size:23px}.feature-grid p{font-size:14px}.gallery-wrap{padding:65px 7%}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:285px 220px;gap:12px}.gallery-item.tall{grid-row:auto}.gallery-item:nth-child(3){grid-column:2;grid-row:1}.gallery-item:nth-child(4){grid-row:2;grid-column:2}.gallery-item span{font-size:17px;padding:30px 13px 15px}.range{gap:40px}.range-images{max-width:500px}.locations{gap:13px}.locations button{padding:22px 16px}.locations h3{font-size:28px}.locations span{font-size:8px}.locations small{font-size:11px}.interest{gap:35px}.lead-form{gap:18px 14px}.founder{gap:35px;padding-top:0}.founder-art{max-width:490px}.photographers{display:block}.photographers .button{margin-top:28px}.final-cta{height:500px}.final-cta>img{width:100%;opacity:.4}.final-cta:after{background:linear-gradient(90deg,#101a16c0,transparent)}.final-cta>div{top:95px;left:7%;right:7%}.final-cta h2{font-size:43px}.final-cta .actions{align-items:flex-start;flex-direction:column;gap:24px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top .wordmark{grid-column:1/-1;margin-bottom:15px}.footer-bottom{flex-direction:column;gap:10px;font-size:10px}dialog{padding:45px 25px 30px}#lightbox{padding:45px 15px 25px}.hero .actions .text-link{font-size:13px}.hero .button{padding:12px 19px}}@media(max-width:370px){.lead-form{grid-template-columns:1fr}.locations{grid-template-columns:1fr}.hero h1{font-size:41px}.feature-grid{grid-template-columns:1fr}.gallery{grid-template-rows:230px 180px}.footer-top{grid-template-columns:1fr}}
header{height:140px;background:var(--ivory);color:var(--ink);border-bottom:1px solid #c9c9b7}header .wordmark{display:block;width:240px;height:138px;overflow:hidden;position:relative}.brand-logo{width:100%;height:100%;object-fit:contain}header .brand-logo{position:absolute;width:310px;max-width:none;height:217px;left:-35px;top:-32px}footer .wordmark{display:block;width:230px;height:145px;background:var(--ivory);overflow:hidden;position:relative}footer .brand-logo{position:absolute;width:290px;max-width:none;height:203px;left:-30px;top:-25px}.founder-art{max-width:400px;justify-self:center}.founder-art img{aspect-ratio:360/504}.anita-portrait{width:220px;margin-top:25px}.menu-toggle{color:var(--ink);border-color:#9da58f}@media(max-width:800px){header{height:120px}.menu-toggle{font-size:13px}header .wordmark{width:185px;height:120px}header .brand-logo{width:250px;height:175px;left:-33px;top:-24px}#mobile-menu{top:120px}.hero{height:710px}}
header .brand-logo{width:270px;height:189px;left:-15px;top:-14px}footer .brand-logo{width:270px;height:189px;left:-20px;top:-10px}@media(max-width:800px){header .brand-logo{width:230px;height:161px;left:-22px;top:-14px}}
.hero-copy{max-width:740px}.hero h1{font-size:clamp(45px,5vw,74px)}.hero-copy>p:not(.eyebrow){max-width:470px}.gallery{grid-template-columns:repeat(3,1fr);grid-template-rows:330px 290px}.gallery-item.tall{grid-row:auto}.gallery-item:nth-child(4){grid-column:auto;grid-row:auto}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.studio-grid article{border:1px solid #bec6b6;padding:30px}.studio-grid h3{font-size:29px}.studio-grid article>p:not(.eyebrow){margin-top:12px}#film-dialog{width:min(1060px,94vw)}#film-dialog video{display:block;width:100%;margin-top:25px;max-height:65vh;background:#101a16}header nav{gap:22px;font-size:13px}@media(max-width:1100px){header nav{gap:14px;font-size:12px}header .wordmark{width:200px}}@media(max-width:800px){.hero h1{font-size:46px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:285px 220px 220px}.gallery-item:nth-child(3),.gallery-item:nth-child(4){grid-column:auto;grid-row:auto}.studio-grid{grid-template-columns:1fr}.studio-grid h3{font-size:27px}}

.studio-website{display:table;margin-top:20px}

.studio-grid article{display:flex;flex-direction:column;align-items:flex-start}.studio-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:auto;padding-top:28px}.studio-actions .studio-website{display:inline-block;margin:0}.studio-enquire{background:var(--forest);border-color:var(--forest);color:var(--ivory);min-height:46px;padding:10px 20px}.studio-enquire:hover{background:#304737;color:var(--ivory)}

.studio-grid .studio-actions{display:block;width:100%;padding-top:28px}.studio-actions .studio-enquire{display:block;width:max-content;max-width:100%;margin:0}.studio-grid .studio-actions .studio-website{display:block;width:max-content;max-width:100%;margin:24px 0 0;padding-bottom:5px;line-height:1.6}

/* Final studio action layout. Explicit margins also work in older browsers. */
.studio-grid article{display:flex;flex-direction:column;align-items:flex-start}
.studio-grid .studio-actions{display:block;width:100%;margin-top:24px;padding:0}
.studio-actions .studio-enquire{display:block;width:max-content;max-width:100%;margin:0;background:var(--forest);color:var(--ivory);border-color:var(--forest)}
.studio-grid .studio-actions .studio-website{display:block;width:max-content;max-width:100%;margin:24px 0 0;padding-bottom:5px;line-height:1.6}
.gallery-item>span{display:none}
.tfe-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.lead-form>.fine-note{margin-top:0}.form-result[data-error=true]{background:#f5e7dd;border-color:#954e38}
.button:disabled{opacity:.6;cursor:wait}.lead-form textarea{width:100%}
.tfe-feedback{margin:25px auto;padding:20px;max-width:1100px;background:#e5e9dd;border-left:3px solid #697e57}
.tfe-menu{list-style:none;display:flex;align-items:center;gap:22px;margin:0;padding:0}.tfe-menu li{list-style:none}.tfe-menu .sub-menu{display:none}
#mobile-menu .tfe-menu{display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.page-content{max-width:900px;margin:auto;padding:70px 7%;min-height:45vh}.page-content h1{font-size:48px;margin-bottom:30px}.page-content h2,.page-content h3{margin:30px 0 15px}.page-content p{margin:15px 0}.page-content a{text-decoration:underline}.page-content ul,.page-content ol{padding-left:25px}
body.admin-bar #mobile-menu{top:152px}
@media(max-width:1100px){.tfe-menu{gap:14px}}@media(max-width:800px){body.admin-bar #mobile-menu{top:166px}.studio-actions .studio-enquire{font-size:14px}.hero-copy{max-width:none}}
