/*
Theme Name: FTR Photography
Theme URI: https://ftr-photography.nl/
Author: FTR Photography
Description: A visual studio-rental theme for FTR Photography with themed rooms, studio information, rules and an inquiry form.
Version: 1.1.0
Text Domain: ftr-photography
*/

:root{--brand:#107851;--brand-dark:#0b5439;--brand-light:#eaf4ef;--bg:#f7f9f7;--surface:#fff;--surface2:#edf3f0;--text:#111714;--muted:#66736d;--line:#d5dfda;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.55}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{background:var(--surface);border-bottom:1px solid var(--line)}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-brand img{display:block;width:auto;height:58px}.navlinks{display:flex;gap:26px;align-items:center;font-size:14px}.navlinks a:hover{color:var(--brand)}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:9px 12px;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px;border:1px solid var(--text);font-weight:700;font-size:13px;letter-spacing:.04em;cursor:pointer;background:transparent}.btn.fill{background:var(--brand);border-color:var(--brand);color:#fff}.btn.fill:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.hero{padding:86px 0 72px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.eyebrow{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--brand);font-weight:700}.hero h1{font:clamp(46px,6vw,78px)/.98 Georgia,serif;margin:18px 0 24px;max-width:680px}.hero p{font-size:18px;color:var(--muted);max-width:590px}.hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.hero-art{min-height:470px;background:linear-gradient(135deg,var(--surface2),var(--surface));border:1px solid var(--line);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.hero-art img{max-width:72%;max-height:62%;object-fit:contain}.hero-art:after{content:"";position:absolute;inset:12%;border:1px solid rgba(16,120,81,.22);pointer-events:none}section{padding:76px 0}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.section-head h2{font:42px Georgia,serif;margin:0}.section-head p{max-width:500px;color:var(--muted);margin:0}.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.room{background:var(--surface);border:1px solid var(--line);overflow:hidden;transition:transform .2s,border-color .2s}.room:hover{transform:translateY(-4px);border-color:var(--brand)}.room-photo{height:270px;background:linear-gradient(145deg,var(--surface2),var(--brand-light));position:relative;overflow:hidden}.room-photo img{width:100%;height:100%;object-fit:cover}.room-photo .placeholder{height:100%;display:grid;place-items:center;color:var(--muted);font-size:11px;letter-spacing:.16em}.room-body{padding:21px}.room h3{font:26px Georgia,serif;margin:0 0 8px}.room p{color:var(--muted);font-size:14px;margin:0 0 18px}.room-link{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:var(--brand)}.strip{background:var(--surface2);border-block:1px solid var(--line)}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.fact{background:var(--surface);padding:28px}.fact strong{display:block;font:30px Georgia,serif;margin-bottom:5px}.fact span{color:var(--muted);font-size:13px}.rules{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rule{border-top:1px solid var(--line);padding:20px 0}.rule b{font-size:14px}.rule p{color:var(--muted);font-size:14px;margin:6px 0 0}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step{padding:28px;border:1px solid var(--line);background:var(--surface)}.num{font:32px Georgia,serif;color:var(--brand)}.step h3{font-size:17px;margin:12px 0 7px}.step p{color:var(--muted);font-size:14px;margin:0}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}.contact h2{font:44px Georgia,serif;margin:0 0 15px}.contact p{color:var(--muted)}form{display:grid;gap:13px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:700;letter-spacing:.04em}.field input,.field textarea,.field select{font:inherit;padding:13px 14px;background:var(--surface);color:var(--text);border:1px solid var(--line);outline:none;width:100%}.field textarea{min-height:140px;resize:vertical}.notice{padding:14px 16px;background:var(--brand-light);border-left:3px solid var(--brand);font-size:13px;color:var(--muted)}.form-success{color:var(--brand-dark)}.single-room{padding:70px 0}.single-room-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:45px;align-items:start}.single-room-image img{width:100%;max-height:650px;object-fit:cover}.single-room h1{font:clamp(42px,5vw,68px)/1 Georgia,serif;margin:14px 0}.single-room .content{color:var(--muted);font-size:17px}.site-footer{padding:34px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.archive-header{padding:70px 0 35px}.archive-header h1{font:52px Georgia,serif;margin:12px 0}.pagination{padding:45px 0;text-align:center}.pagination .page-numbers{display:inline-block;padding:8px 12px;border:1px solid var(--line);margin:2px}.pagination .current{background:var(--brand);color:#fff;border-color:var(--brand)}@media(max-width:800px){.navlinks{display:none}.menu-toggle{display:block}.nav.open .navlinks{display:flex;position:absolute;left:0;right:0;top:82px;background:var(--surface);border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;align-items:flex-start;z-index:20}.hero,.contact,.single-room-grid{grid-template-columns:1fr}.hero{padding-top:55px}.hero-art{min-height:300px}.rooms{grid-template-columns:1fr 1fr}.facts{grid-template-columns:1fr 1fr}.rules,.process{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:12px}}@media(max-width:520px){.container{width:min(100% - 26px,var(--max))}.rooms,.fields{grid-template-columns:1fr}.hero h1{font-size:47px}.hero-art{min-height:240px}.facts{grid-template-columns:1fr 1fr}.fact{padding:20px}.site-brand img{height:50px}}
