/*
Theme Name: Zelma Photography
Theme URI: https://zelmagutierrez.com
Author: OpenAI for Zelma Photography
Description: Tema editorial minimalista para Zelma Photography.
Version: 1.0.0
Text Domain: zelma-photography
*/

:root{--ink:#181816;--muted:#6d665d;--paper:#f7f3ec;--cream:#fffdf8;--line:#ded6c8;--olive:#68705d;--gold:#b39a70;--success:#2d6044;--error:#8d2f24;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,"Times New Roman",serif}body,button,input,textarea,select{font-size:16px}a{color:inherit}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px clamp(18px,4vw,56px);border-bottom:1px solid rgba(24,24,22,.12);background:rgba(247,243,236,.94);backdrop-filter:blur(18px)}.brand{font-size:1.25rem;text-decoration:none}.top-nav{display:flex;gap:clamp(12px,2vw,28px);font-family:Arial,sans-serif;font-size:.9rem}.top-nav a{text-decoration:none}.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr);gap:clamp(24px,5vw,72px);align-items:center;padding:clamp(36px,6vw,86px) clamp(18px,4vw,56px)}.hero-copy,.hero-image,.booking-panel,.event-form{min-width:0}.hero-copy h1{margin:0;font-size:clamp(4rem,12vw,10rem);line-height:.88;font-weight:400;overflow-wrap:anywhere}.hero-copy>p{max-width:620px;color:var(--muted);line-height:1.7}.eyebrow{margin:0 0 16px;font-family:Arial,sans-serif;text-transform:uppercase;font-size:.78rem;color:var(--olive);letter-spacing:.08em}.hero-actions,.flow-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.button{min-height:46px;border:1px solid var(--ink);border-radius:4px;padding:12px 18px;font-family:Arial,sans-serif;text-decoration:none;cursor:pointer;background:transparent}.button.primary{background:var(--ink);color:var(--cream)}.button.wide{width:100%}.hero-image{min-height:min(74vh,720px);background:linear-gradient(180deg,transparent 50%,rgba(24,24,22,.08)),var(--hero-image) center/cover;border-radius:6px;box-shadow:0 40px 90px rgba(24,24,22,.18)}.section{padding:clamp(52px,8vw,110px) clamp(18px,4vw,56px)}.section h2{margin:0 0 18px;font-size:clamp(2rem,5vw,5rem);line-height:.98;font-weight:400}.editorial-grid,.booking-layout,.events-layout,.contact{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(360px,1.3fr);gap:clamp(28px,5vw,72px)}.portfolio-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(160px,24vw);gap:14px}.portfolio-card{position:relative;display:flex;align-items:flex-end;min-height:180px;padding:18px;border-radius:6px;overflow:hidden;color:var(--cream);background:linear-gradient(145deg,#3c3a35,#b8a27c)}.portfolio-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45))}.portfolio-card span{position:relative;font-family:Arial,sans-serif}.portfolio-card.large{grid-column:span 3;grid-row:span 2;background:var(--hero-image) center/cover}.portfolio-card.tonal,.portfolio-card.quiet,.portfolio-card.ink{grid-column:span 3}.portfolio-card.tonal{background:linear-gradient(145deg,#68705d,#e8dfd1)}.portfolio-card.quiet{background:linear-gradient(145deg,#eee7da,#82796c)}.portfolio-card.ink{background:linear-gradient(145deg,#181816,#5f5b52)}.booking-panel,.event-form,.contact-form,.legal article{border:1px solid var(--line);border-radius:6px;background:rgba(255,253,248,.7);padding:clamp(18px,3vw,32px)}.note,.help{color:var(--muted);line-height:1.55}.note{border-left:3px solid var(--gold);padding-left:16px;margin-top:24px}.steps{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 28px;list-style:none;font-family:Arial,sans-serif;font-size:.83rem}.steps li{padding:7px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}.steps li.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.flow-step{display:none}.flow-step.active{display:block}.flow-step h3{margin-top:0;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:400}.service-options,.time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.service-card,.slot-button{border:1px solid var(--line);border-radius:6px;background:var(--cream);color:var(--ink);cursor:pointer;text-align:left;padding:16px;font-family:Arial,sans-serif}.service-card strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.3rem;font-weight:400;margin-bottom:8px}.service-card.selected,.slot-button.selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}label{display:grid;gap:8px;margin-bottom:14px;font-family:Arial,sans-serif}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:4px;padding:12px;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}textarea{resize:vertical}.check{display:flex;align-items:center;gap:10px}.check input{width:auto}.review-box,.confirmation{border:1px solid var(--line);border-radius:6px;padding:18px;background:var(--cream);line-height:1.7}.confirmation{border-color:rgba(45,96,68,.35)}.about{max-width:980px}.about p,.contact p,.events-layout p,.booking-intro p{color:var(--muted);line-height:1.7}.legal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.legal h2{font-size:1.4rem;line-height:1.15}.legal p{color:var(--muted);line-height:1.65}.footer{display:flex;justify-content:space-between;gap:16px;padding:28px clamp(18px,4vw,56px);border-top:1px solid var(--line);font-family:Arial,sans-serif;color:var(--muted)}.error{color:var(--error);font-family:Arial,sans-serif}.notice{padding:12px;border-left:3px solid var(--gold);background:var(--cream)}
@media(max-width:920px){.site-header,.footer{align-items:flex-start;flex-direction:column}.top-nav{width:100%;overflow-x:auto;padding-bottom:4px}.hero,.editorial-grid,.booking-layout,.events-layout,.contact,.legal{grid-template-columns:1fr}.hero{min-height:auto}.hero-image{min-height:58vh}.service-options,.time-slots,.field-grid{grid-template-columns:1fr}}
@media(max-width:620px){.hero-copy h1{font-size:clamp(3rem,18vw,4.25rem)}.portfolio-grid{grid-template-columns:1fr;grid-auto-rows:minmax(180px,62vw)}.portfolio-card.large,.portfolio-card.tonal,.portfolio-card.quiet,.portfolio-card.ink{grid-column:auto;grid-row:auto}}
