/* Frame the Toys / editorial finish — loaded last, leaves the existing shop functional. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--ft-ink:#171b19;--ft-muted:#6a706b;--ft-paper:#f6f4ee;--ft-gold:#dba875;--ft-dark:#111714;--ft-line:#d9d9d0}
html{scroll-padding-top:86px}
body{background:var(--ft-paper);color:var(--ft-ink);font-family:'DM Sans',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:#c59058;color:#111}
:focus-visible{outline:3px solid #dc9d5e;outline-offset:3px}
.wrap{width:min(1400px,calc(100% - 84px))}
.announcement{height:32px;background:#151a17!important;color:#ebe9db!important;letter-spacing:.19em;font-size:9px!important}
.announcement span{color:#e6ad72}
.ft-header{background:#f8f7f3!important;border-bottom:1px solid #e2e2d9;position:sticky!important;top:0;z-index:90;box-shadow:0 9px 30px #11171209;backdrop-filter:blur(16px)}
.ft-header-row{max-width:1400px!important;margin:auto;padding:0 42px!important}
.ft-logo img{filter:contrast(1.07)}
.ft-nav a{font-family:'Outfit',sans-serif!important;font-weight:700!important;letter-spacing:.12em!important;transition:color .2s}
.ft-nav a:hover,.ft-nav a:focus-visible{color:#b47746!important}
.ft-bag{border:1px solid #1b2420!important;padding:10px 16px!important;transition:background .2s,color .2s}
.ft-bag:hover{background:#18231d;color:#fff!important}
.hero{height:min(790px,calc(100svh - 103px));min-height:620px;background:var(--ft-dark)!important}
.hero-atmosphere{background:radial-gradient(ellipse at 74% 17%,#5c6b492e,transparent 43%),linear-gradient(120deg,#0d1411,#1b2820 70%,#222d24)!important}
.hero-grid{max-width:1500px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important}
.hero-copy{padding:clamp(105px,12vh,165px) 36px 0 clamp(10px,2.7vw,45px)!important}
.hero h1,.hero h1 em,h2,h2 em,blockquote{font-family:'Playfair Display',Georgia,serif!important}
.hero h1{font-size:clamp(68px,7vw,118px)!important;font-weight:400;letter-spacing:-.055em!important;line-height:1.02!important;margin-top:25px!important}
.hero h1 em{font-style:italic;color:#e5b482!important}
.hero-copy p{font-size:clamp(15px,1.15vw,18px)!important;color:#ccd1c9!important;line-height:1.8!important;max-width:490px}
.hero-art{border-left:1px solid #ffffff15;background:#1b2b22!important;isolation:isolate}
.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#111a14bb 0%,transparent 28%),linear-gradient(0deg,#0c120a88,transparent 35%);pointer-events:none;z-index:1}
.hero-photo{filter:brightness(.89) saturate(1.12)!important;transition:transform 8s cubic-bezier(.2,.7,.2,1);transform:scale(1.01)}
.hero:hover .hero-photo{transform:scale(1.07)}
.hero-art-caption{z-index:2;right:35px!important;bottom:35px!important;color:#fff!important}
.hero-bottom{color:#b8bdb3!important;border-color:#ffffff31!important;letter-spacing:.17em!important}
.eyebrow{font-family:'Outfit',sans-serif;font-size:11px!important;letter-spacing:.21em!important;font-weight:700!important}
.button,.text-link,.gallery-foot,.ft-bag{font-family:'Outfit',sans-serif;letter-spacing:.09em}
.button{border-radius:2px;padding:18px 25px!important;transition:transform .25s,background .25s,box-shadow .25s!important}
.button:hover{box-shadow:0 12px 35px #0002}
.button.light{background:#f4e9d8!important;color:#19251e!important}
.button.light:hover{background:#fff!important}
.dark-button{background:#17241c!important}
.intro-section{padding-top:135px!important;padding-bottom:115px!important}
.section-top{align-items:end!important}
.section-top h2,.social-section h2,.prints-inner h2,.story-copy h2{letter-spacing:-.045em!important;line-height:1.12!important}
.section-top>p{font-size:16px!important;max-width:375px!important}
.ftt-gallery-grid{gap:13px!important}
.ftt-gallery-tile{position:relative;overflow:hidden;background:#243126!important;box-shadow:0 1px 0 #0000000d;isolation:isolate}
.ftt-gallery-tile img{transition:transform .7s cubic-bezier(.2,.7,.3,1),filter .4s!important}
.ftt-gallery-tile:hover img{transform:scale(1.065)!important;filter:saturate(1.13)}
.ftt-gallery-tile:after{content:'VIEW PHOTOGRAPH';position:absolute;left:18px;bottom:17px;color:#fff;font:700 10px 'Outfit',sans-serif;letter-spacing:.14em;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s;text-shadow:0 2px 8px #000}
.ftt-gallery-tile:hover:after{opacity:1;transform:translateY(0)}
.ftt-photo-arrow{z-index:2!important}
.gallery-foot{padding-top:21px;border-top:1px solid #d7d6cf;margin-top:36px!important}
.gallery-foot a{transition:color .2s}.gallery-foot a:hover{color:#9b643a}
.quote-section{background:#e4e5dc!important;border-top:1px solid #d5d7cf;border-bottom:1px solid #d5d7cf;padding:110px 0!important}
.quote-inner blockquote{font-size:clamp(52px,6.4vw,92px)!important;letter-spacing:-.05em!important}
.story-section{gap:9%!important}
.story-visual{background:radial-gradient(circle at 45% 48%,#a58668,#765845 30%,#243b30 65%,#101e18)!important}
.story-copy p{color:#626a63!important}
.prints-section{background:#101b16!important;position:relative;overflow:hidden}
.prints-section:before{content:'';width:520px;height:520px;position:absolute;right:-130px;top:-190px;border:1px solid #ffffff1c;border-radius:50%;box-shadow:0 0 0 80px #ffffff03,0 0 0 160px #ffffff03;pointer-events:none}
.print-card{filter:drop-shadow(0 24px 25px #02080377)}
.social-section{padding-top:140px!important;padding-bottom:145px!important}
.insta-link{background:#fff;border:1px solid #cfcfc6!important;transition:transform .25s,box-shadow .25s}
.insta-link:hover{transform:translateY(-3px);box-shadow:0 18px 40px #1a211216}
.social-gallery{gap:12px!important}.social-gallery a{overflow:hidden}.social-gallery img{transition:transform .5s}.social-gallery a:hover img{transform:scale(1.06)}
footer{background:#101813!important;color:#e7ebe5!important}
.footer-bottom{font-size:10px;letter-spacing:.1em}
.footer-nav a:hover{color:#ecc19b}
.ftt-seo-band{padding:96px 0;background:#eaeae2;border-top:1px solid #dbded3}
.ftt-seo-band-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(30px,8vw,130px);align-items:start}
.ftt-seo-band h2{font:400 clamp(40px,4.2vw,68px)/1.08 'Playfair Display',Georgia,serif;letter-spacing:-.05em;margin:16px 0}
.ftt-seo-band h2 em{color:#a86e47}
.ftt-seo-band p{color:#59635a;line-height:1.85;margin:0 0 18px;font-size:15px}
.ftt-seo-band a{font-family:'Outfit',sans-serif;font-weight:700;text-decoration:underline;text-underline-offset:6px}
.ftt-editorial-callout{display:flex;gap:18px;align-items:start;border-top:1px solid #ccd0c5;padding:24px 0}
.ftt-editorial-callout b{color:#b1794e;font:600 22px 'Playfair Display',serif}
.ftt-editorial-callout strong{display:block;font-size:15px;margin-bottom:5px}
.ftt-editorial-callout span{display:block;color:#697269;font-size:13px;line-height:1.6}
.subhero{background:#15221a!important}.subhero h1{font-family:'Playfair Display',Georgia,serif!important}
.product-detail .product-info h1{font-family:'Playfair Display',Georgia,serif!important}
.store-section,.page-content{background:var(--ft-paper)}
.store-grid a img,.product-image img{transition:transform .5s}.store-grid a:hover img{transform:scale(1.04)}
@media(max-width:1000px){.hero h1{font-size:clamp(60px,8vw,90px)!important}.hero-copy{padding-top:120px!important}.wrap{width:min(100% - 52px,1400px)}}
@media(max-width:700px){
 .wrap{width:calc(100% - 34px)!important}
 .ft-header-row{padding:0 17px!important}
 .announcement{font-size:8px!important;letter-spacing:.09em!important;gap:9px}
 .hero{height:auto!important;min-height:0!important}
 .hero-grid{display:flex!important;flex-direction:column-reverse;height:auto!important;width:100%!important}
 .hero-art{height:clamp(310px,72vw,470px)!important;width:100%;border:0}
 .hero-art:after{background:linear-gradient(0deg,#101a13bb,transparent 40%)}
 .hero-copy{padding:45px 20px 55px!important}
 .hero h1{font-size:clamp(57px,12vw,80px)!important;margin:18px 0 17px!important}
 .hero-copy p{font-size:14px!important;line-height:1.75!important}
 .hero-actions{gap:18px!important;margin-top:24px!important}
 .hero-bottom{height:auto!important;min-height:45px;padding:10px 0;gap:12px;font-size:8px!important}
 .hero-bottom span:nth-child(3){display:none}
 .intro-section{padding-top:75px!important;padding-bottom:75px!important}
 .section-top{display:block!important;margin-bottom:28px!important}
 .section-top h2{font-size:clamp(42px,9vw,66px)!important}
 .section-top>p{font-size:14px!important;max-width:540px!important}
 .quote-section{padding:75px 0!important}.quote-inner blockquote{font-size:clamp(43px,10vw,67px)!important}
 .story-section{padding-top:80px!important;padding-bottom:80px!important}
 .story-visual{height:330px!important}
 .prints-section{padding:80px 0!important}
 .prints-inner{gap:40px!important}
 .social-section{padding:80px 0!important}
 .social-gallery{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}
 .ftt-seo-band{padding:65px 0}.ftt-seo-band-grid{grid-template-columns:1fr;gap:10px}
 .footer-top{padding:50px 0!important}
}
@media(max-width:420px){.hero-art{height:320px!important}.hero-bottom span:nth-child(2){display:none}.button{width:100%;justify-content:center}.hero-actions .text-link{margin:0 auto}.ftt-gallery-tile:after{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-photo{transform:none!important}}
