@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#171816;--paper:#f3f1ec;--muted:#777871;--line:rgba(23,24,22,.17);--accent:#a84934;--white:#fffefa;--max:1380px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(var(--max),calc(100% - 80px));margin:auto}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:700;color:var(--muted)}.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em}.site-header{height:86px;display:flex;align-items:center;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(243,241,236,.94);backdrop-filter:blur(14px);z-index:20}.nav{display:flex;align-items:center;justify-content:space-between}.brand{font-family:Manrope,sans-serif;font-size:15px;letter-spacing:.19em;font-weight:800;line-height:1.1}.brand small{display:block;font-size:8px;letter-spacing:.34em;font-weight:500;margin-top:7px}.nav-links{display:flex;align-items:center;gap:31px;font-size:12px}.nav-links a{transition:opacity .2s}.nav-links a:hover{opacity:.55}.nav-links .nav-cta{border:1px solid var(--ink);padding:11px 16px}.menu-toggle{display:none;background:none;border:0;font-size:12px;letter-spacing:.1em}.hero{min-height:690px;display:grid;grid-template-columns:.85fr 1.15fr;gap:5%;align-items:center;padding:70px 0 88px}.hero-copy{padding:10px 0 20px}.hero h1{font-size:clamp(54px,7vw,100px);line-height:.96;margin:24px 0 27px;max-width:650px}.hero h1 em{font-style:italic;color:var(--accent)}.hero p{max-width:410px;color:#555750;font-size:16px;line-height:1.8}.actions{display:flex;gap:12px;align-items:center;margin-top:32px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink);transition:background .2s,color .2s,transform .2s}.btn:hover{background:transparent;color:var(--ink);transform:translateY(-2px)}.btn.secondary{background:transparent;color:var(--ink)}.btn.secondary:hover{background:var(--ink);color:var(--paper)}.hero-visual{height:555px;position:relative;overflow:hidden;background:#d8d5cc}.hero-visual img{height:100%;object-fit:cover;object-position:center}.hero-visual:after{content:'SELECTED WORK — 2024 / 2026';position:absolute;bottom:17px;left:18px;color:white;font-size:9px;letter-spacing:.2em;text-shadow:0 1px 10px #000}.hero-index{display:flex;justify-content:space-between;margin-top:14px;font-size:10px;color:var(--muted);letter-spacing:.1em}.section{padding:100px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head h2{font-size:clamp(38px,5vw,68px);line-height:1.02;margin:10px 0 0}.section-head p{max-width:360px;color:#666860;font-size:13px;margin:0 0 4px}.work-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:58px 28px;align-items:start}.work-item:nth-child(even){margin-top:110px}.work-image{overflow:hidden;background:#ddd9d0;position:relative}.work-image img{height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.work-item:hover .work-image img{transform:scale(1.035)}.work-item:nth-child(1) .work-image{aspect-ratio:4/3}.work-item:nth-child(2) .work-image{aspect-ratio:4/5}.work-item:nth-child(3) .work-image{aspect-ratio:5/4}.work-item:nth-child(4) .work-image{aspect-ratio:4/3}.work-meta{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.work-meta h3{font-size:14px;margin:0;font-weight:600}.work-meta span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.band{background:#20211e;color:var(--paper);padding:90px 0}.band .eyebrow{color:#aaa99f}.band-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.band h2{font-size:clamp(40px,5.5vw,76px);line-height:1;margin:17px 0 0}.band p{color:#c1c0b8;max-width:440px;font-size:14px}.text-link{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid currentColor;padding:8px 0;margin-top:14px}.services-preview{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:40px}.service-card{padding:24px 24px 20px 0;border-right:1px solid var(--line);margin-right:24px}.service-card:last-child{border:0;margin:0}.service-card .num{font-size:10px;color:var(--accent);letter-spacing:.16em}.service-card h3{font-size:20px;font-weight:500;margin:13px 0 8px}.service-card p{font-size:12px;color:#666860;max-width:300px}.about-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}.about-photo{height:540px;overflow:hidden;background:#ddd}.about-photo img{height:100%;object-fit:cover;object-position:center 30%}.about-copy h2{font-size:clamp(42px,5vw,68px);line-height:1;margin:15px 0 25px}.about-copy p{color:#5f615a;max-width:560px}.cta-footer{padding:100px 0 90px;background:#e7e4dd}.cta-footer h2{font-size:clamp(46px,7vw,94px);line-height:.98;margin:15px 0 28px;max-width:900px}.footer{padding:32px 0;background:var(--ink);color:#e9e6df}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer .brand small{color:#aaa99f}.footer-links{display:flex;gap:20px;font-size:11px;color:#d0cec7}.footer-bottom{border-top:1px solid #454640;margin-top:28px;padding-top:15px;display:flex;justify-content:space-between;color:#999a92;font-size:10px}.page-hero{padding:85px 0 64px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(52px,8vw,110px);line-height:.92;margin:18px 0 25px;max-width:1000px}.page-hero p{max-width:590px;color:#5e6059;font-size:16px}.portfolio-filters{display:flex;gap:9px;flex-wrap:wrap;margin:35px 0}.filter-btn{border:1px solid var(--line);background:transparent;padding:9px 13px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--ink);color:var(--paper)}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 20px;padding-bottom:90px}.portfolio-grid .work-image{aspect-ratio:4/3}.portfolio-grid .work-item:nth-child(even){margin-top:0}.portfolio-grid .work-item:nth-child(3n + 2){margin-top:65px}.portfolio-grid .work-item[hidden]{display:none}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:54px 0;border-bottom:1px solid var(--line)}.service-detail h2{font-size:clamp(30px,4vw,52px);line-height:1.05;margin:12px 0}.price{font-size:clamp(32px,4vw,50px);font-family:Georgia,serif;letter-spacing:-.04em;margin:20px 0}.price small{font:11px 'DM Sans',sans-serif;letter-spacing:.04em;color:var(--muted)}.service-detail p,.service-detail li{font-size:13px;color:#62645d}.service-detail ul{padding-left:18px}.service-detail .btn{margin-top:18px}.services-note{background:#e6e3dc;padding:24px 28px;margin-top:40px;font-size:12px;color:#555750}.about-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start;padding:75px 0}.about-page-grid .about-photo{height:690px}.about-page-grid h2{font-size:clamp(36px,4vw,58px);line-height:1;margin:15px 0 25px}.about-page-grid p{color:#60615a}.card-section{padding:50px 0 100px;border-top:1px solid var(--line)}.card-intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.card-intro h2{font-size:clamp(32px,4vw,50px);margin:8px 0 0}.flip-wrap{width:min(740px,100%);margin:0 auto;perspective:1500px;cursor:pointer;outline:none}.flip-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:8px}.flip-card{position:relative;aspect-ratio:1536/962;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.75,.2,1)}.flip-wrap.is-flipped .flip-card{transform:rotateY(180deg)}.card-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;border-radius:3px;box-shadow:0 25px 60px rgba(25,25,20,.15)}.card-face img{width:100%;height:100%;object-fit:fill}.card-back{transform:rotateY(180deg)}.flip-hint{text-align:center;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-top:20px}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%;padding:65px 0 100px}.contact-info h2{font-size:clamp(35px,4vw,55px);line-height:1.05;margin:12px 0 25px}.contact-info p{color:#666860;font-size:13px}.contact-line{border-top:1px solid var(--line);padding:15px 0;font-size:12px}.contact-line span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.15em;margin-bottom:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.field input,.field select,.field textarea{background:transparent;border:0;border-bottom:1px solid #a9aaa2;border-radius:0;padding:12px 0;outline:none;color:var(--ink)}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.form-note{font-size:11px;color:var(--muted);margin:15px 0}.form-status{font-size:12px;padding:12px;background:#e2e7dc;margin-top:16px;display:none}.form-status.show{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{animation:rise .65s both}@keyframes rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.wrap{width:calc(100% - 44px)}.hero{grid-template-columns:1fr 1fr;gap:28px;min-height:auto;padding:54px 0 65px}.hero-visual{height:450px}.hero h1{font-size:clamp(50px,7vw,76px)}.section{padding:75px 0}.work-grid{gap:42px 20px}.work-item:nth-child(even){margin-top:70px}.about-split{gap:6%}.about-photo{height:460px}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid .work-item:nth-child(3n + 2){margin-top:0}.portfolio-grid .work-item:nth-child(even){margin-top:45px}.contact-layout{gap:6%}.about-page-grid .about-photo{height:560px}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.site-header{height:70px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;top:69px;left:0;right:0;background:var(--paper);padding:22px 20px 25px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.nav-links.open{display:flex}.nav-links a{padding:13px 0;border-bottom:1px solid var(--line)}.nav-links .nav-cta{text-align:center;margin-top:12px;padding:12px}.brand{font-size:13px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:47px 0 50px;gap:35px}.hero h1{font-size:clamp(54px,14vw,78px);max-width:480px}.hero p{font-size:14px}.hero-visual{height:390px;order:2}.hero-copy{order:1}.section{padding:62px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:18px}.work-grid{grid-template-columns:1fr;gap:30px}.work-item:nth-child(even){margin-top:0}.work-item:nth-child(1) .work-image,.work-item:nth-child(2) .work-image,.work-item:nth-child(3) .work-image,.work-item:nth-child(4) .work-image{aspect-ratio:4/3}.band{padding:62px 0}.band-inner{grid-template-columns:1fr;gap:20px}.services-preview{grid-template-columns:1fr;margin-top:25px}.service-card{border-right:0;border-bottom:1px solid var(--line);margin:0;padding:21px 0}.about-split{grid-template-columns:1fr;gap:30px}.about-photo{height:420px}.cta-footer{padding:68px 0}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap;gap:12px 18px}.page-hero{padding:62px 0 44px}.page-hero h1{font-size:clamp(50px,13vw,78px)}.portfolio-grid{grid-template-columns:1fr;gap:28px}.portfolio-grid .work-item:nth-child(even){margin-top:0}.service-detail{grid-template-columns:1fr;gap:12px;padding:38px 0}.about-page-grid{grid-template-columns:1fr;gap:30px;padding:45px 0}.about-page-grid .about-photo{height:460px;order:2}.card-section{padding:42px 0 65px}.card-intro{display:block}.contact-layout{grid-template-columns:1fr;gap:40px;padding:45px 0 70px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.flip-card{aspect-ratio:1536/962}.card-face{border-radius:2px}.hero-index{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* Rains signature direction — cinematic, electric, personal */
:root{--ink:#f4f3ef;--paper:#071011;--muted:#9aa5a4;--line:rgba(239,244,241,.17);--accent:#ff2c1b;--white:#f8f7f2;--max:1440px}
html{background:var(--paper)}body{background:var(--paper);color:var(--ink)}
.site-header{background:rgba(5,13,14,.9);border-bottom:1px solid rgba(255,255,255,.12);color:var(--ink)}
.brand{letter-spacing:.22em}.brand small{color:#a9b2b0}
.nav-links a{color:#e6e8e3}.nav-links .nav-cta{border-color:var(--accent);background:var(--accent);color:#fff}.nav-links .nav-cta:hover{background:transparent;color:var(--accent)}
.eyebrow{color:#a9b3b1}.hero{position:relative;min-height:730px;padding-top:84px;padding-bottom:90px;isolation:isolate}.hero:before{content:"";position:absolute;z-index:-1;left:-8vw;right:-8vw;top:17%;height:13px;background:linear-gradient(90deg,transparent 0%,#c70d13 12%,#ff2419 45%,#f04a1d 67%,transparent 90%);filter:drop-shadow(0 0 9px rgba(255,34,25,.8));transform:rotate(-2deg);opacity:.8}.hero:after{content:"";position:absolute;z-index:-1;left:-10vw;right:-10vw;bottom:17%;height:5px;background:linear-gradient(90deg,transparent,#ff2c1b 18%,#ff4d23 52%,transparent 88%);filter:drop-shadow(0 0 8px rgba(255,34,25,.9));transform:rotate(1.3deg);opacity:.9}
.hero h1{font-size:clamp(56px,7.4vw,112px);letter-spacing:-.07em;max-width:700px}.hero h1 em,.section-head h2 em{color:var(--accent)}.hero p{color:#c0c8c5}.hero-visual{height:590px;border:1px solid rgba(255,255,255,.14);box-shadow:0 25px 80px rgba(0,0,0,.4)}.hero-visual:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(3,10,11,.05),transparent 55%,rgba(3,10,11,.28))}.hero-visual:after{z-index:2}.hero-index{color:#9ca9a6}.btn{background:var(--accent);border-color:var(--accent);color:white;font-weight:700}.btn:hover{background:transparent;color:var(--accent)}.btn.secondary{border-color:rgba(255,255,255,.45);color:var(--ink)}.btn.secondary:hover{background:var(--accent);border-color:var(--accent);color:white}
.section{padding:112px 0}.section-head p,.service-card p,.about-copy p{color:#b1bab7}.work-image{background:#101a1a;border:1px solid rgba(255,255,255,.1)}.work-image:after{content:"";position:absolute;inset:0;pointer-events:none;border-bottom:2px solid var(--accent);opacity:0;transform:scaleX(.2);transform-origin:left;transition:opacity .35s,transform .45s}.work-item:hover .work-image:after{opacity:1;transform:scaleX(1)}.work-meta h3{color:#f4f3ef}.work-meta span{color:#9aa5a4}.text-link{border-color:var(--accent)}.band{background:#111c1d;position:relative;overflow:hidden}.band:after{content:"";position:absolute;width:42%;height:3px;right:-3%;top:24%;background:var(--accent);box-shadow:0 0 20px rgba(255,44,27,.65);transform:rotate(-12deg)}.band p{color:#c1cbc7}.services-preview{border-color:rgba(255,255,255,.18)}.service-card{border-color:rgba(255,255,255,.18)}.service-card .num{color:var(--accent)}.service-card h3{color:#f4f3ef}.about-photo{border:1px solid rgba(255,255,255,.16);position:relative}.about-photo:after{content:"ZAC RAINS / PHOTOGRAPHER";position:absolute;bottom:0;left:0;background:var(--accent);color:white;padding:9px 13px;font-size:9px;letter-spacing:.17em}.cta-footer{background:#e9e6df;color:#101514;position:relative;overflow:hidden}.cta-footer:before{content:"";position:absolute;right:-6%;top:18%;width:40%;height:8px;background:var(--accent);transform:rotate(-17deg);box-shadow:0 0 20px rgba(255,44,27,.35)}.cta-footer .eyebrow{color:#5f625e}.cta-footer h2{max-width:1000px}.footer{background:#030909;color:#f0f0e9}.footer-bottom{border-color:#263130;color:#8b9693}.footer-links{color:#c6cecb}
.page-hero{border-color:var(--line);position:relative;overflow:hidden}.page-hero h1 em{color:var(--accent)}.page-hero p{color:#b6bfbc}.portfolio-filters .filter-btn{border-color:rgba(255,255,255,.22);color:#e7e9e4}.filter-btn.active,.filter-btn:hover{background:var(--accent);border-color:var(--accent);color:white}.service-detail{border-color:rgba(255,255,255,.17)}.service-detail p,.service-detail li{color:#b6bfbc}.price{color:#fff}.price small{color:#a5afac}.services-note{background:#111c1d;color:#c7cfcc;border-left:3px solid var(--accent)}.about-page-grid p{color:#b6bfbc}.card-section{border-color:var(--line)}.flip-hint{color:#a5afac}.contact-info p{color:#b6bfbc}.contact-line{border-color:var(--line)}.field label{color:#d8ddda}.field input,.field select,.field textarea{color:#f5f4ef;border-color:#596461}.field input::placeholder,.field textarea::placeholder{color:#899390}.form-status{background:#152b20;color:#e9f4eb}
/* Premium pricing cards */
.pricing-intro{padding:64px 0 25px}.pricing-intro h2{font-size:clamp(34px,4vw,58px);line-height:1.04;margin:12px 0}.pricing-intro p{max-width:620px;color:#b5bfbc}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:18px 0 70px}.pricing-card{border:1px solid rgba(255,255,255,.2);padding:30px 26px 28px;position:relative;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.008));min-height:100%;display:flex;flex-direction:column;transition:transform .3s,border-color .3s,background .3s}.pricing-card:hover{transform:translateY(-6px);border-color:var(--accent);background:linear-gradient(145deg,rgba(255,44,27,.11),rgba(255,255,255,.01))}.pricing-card.featured{border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.pricing-card .tier{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-weight:700}.pricing-card h3{font-family:Georgia,serif;font-size:36px;font-weight:400;letter-spacing:-.05em;margin:10px 0 4px}.pricing-card .tier-desc{font-size:12px;color:#aeb9b5;min-height:40px}.price-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;padding:18px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.price-pair span{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:#a6b0ad}.price-pair strong{display:block;font-family:Georgia,serif;font-size:30px;line-height:1.25;font-weight:400;letter-spacing:-.04em;color:white}.price-pair small{font-family:'DM Sans',sans-serif;font-size:10px;letter-spacing:0;color:#a6b0ad}.pricing-card ul{list-style:none;padding:0;margin:0 0 25px;flex:1}.pricing-card li{font-size:12px;color:#d1d8d5;padding:9px 0 9px 21px;position:relative;border-bottom:1px solid rgba(255,255,255,.07)}.pricing-card li:before{content:none}.pricing-card .btn{width:100%;margin-top:auto}.addons{padding:55px 0 90px;border-top:1px solid rgba(255,255,255,.17)}.addons-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.addons h2{font-size:clamp(34px,4vw,54px);margin:10px 0 0}.addons-head p{max-width:370px;color:#aeb9b5;font-size:12px}.addon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.addon{border:1px solid rgba(255,255,255,.16);padding:22px 18px;background:#0d1718}.addon h3{font-size:14px;margin:0 0 10px}.addon strong{display:block;font-family:Georgia,serif;font-size:27px;font-weight:400;color:var(--accent);margin-bottom:8px}.addon p{font-size:11px;color:#aeb9b5;margin:0}.pricing-footnote{font-size:11px;color:#8f9b97;margin-top:25px;max-width:850px}
@media(max-width:900px){.hero{min-height:0;padding-top:65px}.hero-visual{height:470px}.pricing-grid{grid-template-columns:1fr 1fr}.pricing-card:last-child{grid-column:1/-1}.addon-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.site-header{height:72px}.hero{grid-template-columns:1fr;padding-top:50px;gap:28px}.hero h1{font-size:clamp(53px,15vw,82px)}.hero-visual{height:420px}.hero:before{top:22%}.hero:after{bottom:12%}.section{padding:76px 0}.section-head{align-items:start;flex-direction:column}.work-grid{gap:34px 14px}.work-item:nth-child(even){margin-top:50px}.about-split{gap:32px}.about-photo{height:420px}.band{padding:68px 0}.band-inner{grid-template-columns:1fr;gap:25px}.pricing-intro{padding-top:48px}.pricing-grid{grid-template-columns:1fr;gap:14px;padding-bottom:45px}.pricing-card:last-child{grid-column:auto}.pricing-card{padding:26px 22px}.pricing-card .tier-desc{min-height:0}.price-pair strong{font-size:28px}.addons{padding:40px 0 65px}.addons-head{display:block}.addon-grid{grid-template-columns:1fr 1fr}.addon{padding:18px 14px}.addon strong{font-size:24px}.cta-footer{padding:75px 0}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}.page-hero{padding:58px 0 44px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* HOME V2 — cinematic centered composition, consistent image rhythm, stronger contrast */
.home-page{--accent:#ff3024;background:#050b0c;color:#f4f4ef;overflow-x:hidden}
.home-page .site-header{background:rgba(5,11,12,.92);border-color:rgba(255,255,255,.12)}
.home-page .home-hero{position:relative;overflow:hidden;padding:84px 0 46px;isolation:isolate;background:radial-gradient(ellipse at 50% 10%,rgba(14,65,61,.38),transparent 45%),#050b0c}
.home-page .home-hero:before,.home-page .home-hero:after{content:"";position:absolute;pointer-events:none;z-index:-1;left:-10%;width:120%;height:2px;background:linear-gradient(90deg,transparent 4%,rgba(255,48,36,.0) 15%,#ff3024 37%,#ff6a2b 48%,rgba(255,48,36,.15) 72%,transparent 96%);filter:drop-shadow(0 0 8px rgba(255,48,36,.7));transform:rotate(-2.5deg)}
.home-page .home-hero:before{top:31%;opacity:.85}.home-page .home-hero:after{top:66%;transform:rotate(1.4deg);opacity:.65}
.home-page .hero-glow{position:absolute;z-index:-1;top:5%;left:50%;width:min(900px,90vw);height:480px;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(0,185,151,.12),transparent 67%);pointer-events:none}
.home-page .home-hero-inner{position:relative;text-align:center;max-width:1260px}
.home-page .home-kicker{display:flex;align-items:center;justify-content:center;gap:10px;color:#bac5c1;font-size:10px;letter-spacing:.19em}
.home-page .status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px rgba(255,48,36,.75);flex:0 0 auto}
.home-page .home-hero h1{max-width:none;margin:28px auto 18px;font-family:Manrope,sans-serif;font-weight:600;font-size:clamp(48px,7.4vw,100px);letter-spacing:-.075em;line-height:.99;text-wrap:balance}
.home-page .home-hero h1 em,.home-page .home-statement h2 em,.home-page .home-contact h2 em{font-style:normal;color:var(--accent);text-shadow:0 0 38px rgba(255,48,36,.14)}
.home-page .home-intro{max-width:510px;margin:0 auto;color:#c5cecb;font-size:15px;line-height:1.75}
.home-page .home-actions{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin:26px 0 48px}
.home-page .home-actions .btn{gap:16px;padding:14px 20px}
.home-page .quiet-link{font-size:11px;letter-spacing:.08em;color:#edf0ec;border-bottom:1px solid rgba(255,255,255,.35);padding:12px 0;transition:color .2s,border-color .2s}.home-page .quiet-link:hover{color:var(--accent);border-color:var(--accent)}
.home-page .hero-frame{position:relative;max-width:1160px;margin:0 auto;border:1px solid rgba(255,255,255,.18);background:rgba(8,18,19,.84);padding:12px;box-shadow:0 32px 100px rgba(0,0,0,.55),0 0 70px rgba(0,175,143,.055)}
.home-page .frame-top,.home-page .frame-bottom{display:flex;justify-content:space-between;gap:20px;padding:8px 10px 13px;font-size:9px;letter-spacing:.16em;color:#bac5c1;text-align:left}
.home-page .frame-top b{color:var(--accent);font-weight:500}.home-page .frame-bottom{padding:13px 10px 6px;color:#a3afab}
.home-page .hero-image{height:clamp(300px,46vw,570px);position:relative;overflow:hidden;background:#0b1617}
.home-page .hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:saturate(.93) contrast(1.06)}
.home-page .image-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,7,8,.04) 35%,rgba(2,7,8,.76) 100%),linear-gradient(90deg,rgba(2,7,8,.22),transparent 45%,rgba(2,7,8,.12));pointer-events:none}
.home-page .hero-image-caption{position:absolute;left:clamp(18px,4vw,44px);right:clamp(18px,4vw,44px);bottom:clamp(18px,3vw,32px);display:flex;align-items:end;justify-content:space-between;gap:20px;text-align:left;color:#fff;font-size:clamp(13px,1.6vw,19px);font-weight:500;letter-spacing:-.02em}.home-page .hero-image-caption span:last-child{font-size:9px;font-weight:600;letter-spacing:.15em;color:#d5dcd8}
.home-page .hero-crosshair{position:absolute;top:25px;right:28px;color:#ff4a3d;font-size:24px;font-weight:300;text-shadow:0 0 16px rgba(255,48,36,.9)}
.home-page .hero-scroll{display:flex;align-items:center;justify-content:center;gap:11px;margin-top:30px;color:#899793;font-size:9px;letter-spacing:.19em}.home-page .scroll-line{height:24px;width:1px;background:var(--accent);box-shadow:0 0 9px rgba(255,48,36,.7)}
.home-page .home-work{background:#080f10;padding-top:96px}.home-page .section-head{align-items:end}.home-page .section-head h2{color:#f5f4ef}.home-page .section-head p{color:#b9c3bf;line-height:1.8}.home-page .home-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 24px;align-items:start}.home-page .home-work-grid .work-item{margin:0;min-width:0}.home-page .home-work-grid .work-image{aspect-ratio:1.32/1;height:auto}.home-page .home-work-grid .work-image img{width:100%;height:100%;object-fit:cover}.home-page .home-work-grid .work-meta{align-items:center;margin-top:13px}.home-page .home-work-grid .work-meta h3{font-size:14px}.home-page .home-work-grid .work-meta span{font-size:9px;letter-spacing:.14em;white-space:nowrap}.home-page .home-work-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);color:#aab5b1;font-size:11px}
.home-page .home-statement{padding:100px 0 108px;background:#101a1b;position:relative;overflow:hidden}.home-page .statement-inner{position:relative}.home-page .statement-inner>.eyebrow{color:#bac4c0}.home-page .home-statement h2{max-width:1000px;font-family:Manrope,sans-serif;font-size:clamp(42px,6.8vw,86px);line-height:1.02;letter-spacing:-.07em;font-weight:500;margin:20px 0 32px}.home-page .statement-bottom{display:flex;justify-content:space-between;align-items:end;gap:36px;max-width:1000px}.home-page .statement-bottom p{max-width:570px;margin:0;color:#c4ceca;line-height:1.85;font-size:14px}.home-page .statement-rule{position:absolute;right:-5%;top:17%;width:30%;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:rotate(-21deg);box-shadow:0 0 15px rgba(255,48,36,.55)}
.home-page .home-services{background:#050b0c}.home-page .services-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid rgba(255,255,255,.18);margin-top:42px}.home-page .service-card{display:flex;flex-direction:column;align-items:flex-start;min-height:250px;padding:25px 26px 24px 0;margin:0 24px 0 0;border-right:1px solid rgba(255,255,255,.16);transition:background .25s,transform .25s}.home-page .service-card:last-child{border:0;margin:0}.home-page .service-card:hover{transform:translateY(-4px)}.home-page .service-card .num{color:#ff6a5e;font-size:9px}.home-page .service-card h3{font-size:22px;line-height:1.2;margin:18px 0 8px}.home-page .service-card p{color:#b9c4c0;font-size:12px;line-height:1.8;max-width:280px}.home-page .service-arrow{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--accent);padding-bottom:6px;margin-top:auto;color:#f2f3ee}
.home-page .home-about{padding:70px 0 110px;background:#080f10}.home-page .about-split{grid-template-columns:.85fr 1.15fr;gap:9%}.home-page .about-photo{height:clamp(390px,47vw,580px);border:1px solid rgba(255,255,255,.17)}.home-page .about-photo img{object-position:center 30%}.home-page .about-photo:after{background:var(--accent)}.home-page .about-copy h2{color:#f5f4ef;font-size:clamp(42px,5.2vw,70px);letter-spacing:-.06em}.home-page .about-copy p{color:#c2ccc8;line-height:1.85;font-size:14px}.home-page .about-copy .text-link{color:#f4f4ef}
.home-page .home-contact{padding:94px 0 100px;background:#050b0c;overflow:hidden}.home-page .contact-callout{position:relative;border:1px solid rgba(255,255,255,.18);padding:clamp(28px,6vw,76px);background:radial-gradient(ellipse at 85% 30%,rgba(12,86,76,.24),transparent 44%),#0a1314;overflow:hidden}.home-page .contact-callout>.eyebrow{display:flex;align-items:center;gap:10px}.home-page .home-contact h2{position:relative;z-index:1;font-family:Manrope,sans-serif;font-weight:600;font-size:clamp(46px,7vw,92px);line-height:.99;letter-spacing:-.075em;margin:24px 0 28px}.home-page .contact-callout-bottom{display:flex;justify-content:space-between;align-items:end;gap:30px;position:relative;z-index:1}.home-page .contact-callout-bottom p{max-width:390px;color:#c3ceca;margin:0;font-size:14px}.home-page .contact-orbit{position:absolute;width:280px;height:280px;border:1px solid rgba(255,48,36,.28);border-radius:50%;right:-45px;top:0;box-shadow:0 0 0 28px rgba(255,48,36,.025),0 0 0 58px rgba(255,48,36,.018)}
.home-page .cta-footer{display:none}.home-page .footer{background:#020707}.home-page .footer-links a:hover{color:#ff6a5e}
@media(max-width:900px){.home-page .home-hero{padding-top:68px}.home-page .home-work-grid{gap:34px 18px}.home-page .statement-bottom{align-items:start;flex-direction:column}.home-page .about-split{gap:7%}.home-page .home-services .service-card{margin-right:15px;padding-right:15px}}
@media(max-width:600px){.home-page .home-hero{padding:54px 0 30px}.home-page .home-hero h1{font-size:clamp(45px,12.8vw,68px);margin-top:24px}.home-page .home-intro{font-size:14px;max-width:340px}.home-page .home-actions{margin:23px 0 32px;gap:20px}.home-page .hero-frame{padding:7px}.home-page .frame-top,.home-page .frame-bottom{font-size:7px;letter-spacing:.1em;padding-left:4px;padding-right:4px}.home-page .hero-image{height:330px}.home-page .hero-image-caption{display:block}.home-page .hero-image-caption span{display:block}.home-page .hero-image-caption span:last-child{margin-top:8px;font-size:8px}.home-page .home-work{padding-top:72px}.home-page .home-work-grid{grid-template-columns:1fr;gap:30px}.home-page .home-work-grid .work-image{aspect-ratio:1.22/1}.home-page .home-work-footer{align-items:flex-start;flex-direction:column;gap:8px}.home-page .home-statement{padding:72px 0}.home-page .home-statement h2{font-size:clamp(40px,11vw,60px)}.home-page .statement-bottom{gap:22px}.home-page .statement-rule{top:9%;width:44%}.home-page .home-services{padding:72px 0}.home-page .home-services .services-preview{grid-template-columns:1fr;margin-top:25px}.home-page .home-services .service-card{min-height:0;padding:24px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.16);margin:0}.home-page .home-services .service-card:last-child{border-bottom:0}.home-page .home-services .service-card h3{margin:12px 0 5px}.home-page .home-about{padding:50px 0 75px}.home-page .about-split{grid-template-columns:1fr;gap:30px}.home-page .about-photo{height:430px}.home-page .home-about .about-copy h2{font-size:48px}.home-page .home-contact{padding:65px 0}.home-page .contact-callout{padding:27px 22px}.home-page .home-contact h2{font-size:clamp(43px,12vw,64px)}.home-page .contact-callout-bottom{align-items:flex-start;flex-direction:column;gap:20px}.home-page .contact-orbit{width:170px;height:170px;right:-75px;top:5px}}
@media(prefers-reduced-motion:reduce){.home-page .hero-image img,.home-page .service-card,.home-page .quiet-link{transition:none!important}}

/* Portfolio refinement: consistent, editorial grid with no staggered cards. */
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
  gap:42px 24px;
}
.portfolio-grid .work-item,
.portfolio-grid .work-item:nth-child(even),
.portfolio-grid .work-item:nth-child(3n + 2){
  margin-top:0;
  min-width:0;
}
.portfolio-grid .work-image{
  width:100%;
  aspect-ratio:4 / 3;
  height:auto;
  overflow:hidden;
  background:#111819;
}
.portfolio-grid .work-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.portfolio-grid .work-meta{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:14px;
  min-height:26px;
  margin-top:14px;
}
.portfolio-grid .work-meta h3{margin:0;line-height:1.4}
.portfolio-grid .work-meta span{flex-shrink:0;text-align:right}
.portfolio-grid .work-item[hidden]{display:none!important}
@media(max-width:900px){
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 20px}
  .portfolio-grid .work-item,
  .portfolio-grid .work-item:nth-child(even),
  .portfolio-grid .work-item:nth-child(3n + 2){margin-top:0}
}
@media(max-width:600px){
  .portfolio-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .portfolio-grid .work-image{aspect-ratio:4 / 3}
  .portfolio-grid .work-meta{margin-top:11px}
}

/* Rains Photography identity refinement: charcoal, warm white and amber. */
:root{--ink:#10100f;--paper:#f3f0e9;--muted:#77736b;--line:rgba(20,18,15,.18);--accent:#c58a32;--white:#fffdf8}
.btn{background:#b87925;border-color:#b87925;color:#100f0d}.btn:hover{background:transparent;color:#b87925}.btn.secondary{background:transparent;color:var(--ink)}
.nav-links .nav-cta{border-color:#b87925}.nav-links .nav-cta:hover{background:#b87925;color:#111}
.hero h1 em,.page-hero h1 em,.home-page em{color:#d39a45}
.service-card .num,.eyebrow,.work-meta span{ }
.home-page{--accent:#d39a45}.home-page .hero-glow{background:radial-gradient(ellipse at 78% 35%,rgba(197,138,50,.18),transparent 48%)}
.home-page .home-statement{background:#171512}.home-page .contact-callout{background:radial-gradient(ellipse at 85% 30%,rgba(197,138,50,.18),transparent 44%),#11100e}
.home-page .contact-orbit{border-color:rgba(211,154,69,.34);box-shadow:0 0 0 28px rgba(211,154,69,.025),0 0 0 58px rgba(211,154,69,.018)}
.home-page .statement-rule{background:linear-gradient(90deg,transparent,#c58a32,transparent);box-shadow:0 0 15px rgba(197,138,50,.4)}
/* Ensure decorative arrows/icons remain visible and never rely on clipped pseudo-elements on mobile. */
.service-arrow,.text-link,.quiet-link,.nav-cta,.btn{white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){.service-arrow{display:inline-flex;align-items:center;gap:7px;min-height:28px}.home-page .hero-crosshair{display:block;right:14px;bottom:14px}.home-page .hero-image-caption{max-width:calc(100% - 20px)}.nav-links .nav-cta{display:inline-flex;justify-content:center}}
/* Quote estimator */
.quote-tool{background:#11100e;color:#f5f1e8;padding:clamp(28px,5vw,58px);margin:55px auto 80px;border:1px solid rgba(197,138,50,.38)}
.quote-tool .eyebrow{color:#d6a354}.quote-tool h2{font:500 clamp(34px,5vw,58px)/1.02 Georgia,serif;letter-spacing:-.04em;margin:12px 0}.quote-tool>p{color:#c8c1b5;max-width:680px;font-size:13px}
.quote-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px;margin-top:30px}.quote-fields label{display:block;color:#e9dfcf;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.quote-fields select,.quote-fields input{width:100%;padding:13px 12px;border:1px solid #51483b;background:#1c1a16;color:#fff;border-radius:0}.quote-checks{display:flex;flex-wrap:wrap;gap:12px 20px;margin:22px 0}.quote-checks label{display:flex;align-items:center;gap:8px;color:#d9d1c4;font-size:12px}.quote-checks input{accent-color:#c58a32}.quote-result{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #51483b;margin-top:24px;padding-top:22px}.quote-result strong{display:block;font:500 clamp(30px,4vw,46px) Georgia,serif;color:#e4b76d}.quote-result small{color:#bcb3a5;font-size:11px}.quote-tool .btn{margin-top:12px}.quote-disclaimer{font-size:10px!important;color:#a99f90!important;margin-top:14px}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:35px}.pricing-card{border:1px solid var(--line);padding:27px;background:#fffdf8}.pricing-card.featured{border:1px solid #b87925;box-shadow:0 12px 35px rgba(30,20,5,.08)}.pricing-card .tier{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#9a6a27}.pricing-card h3{font:400 31px Georgia,serif;margin:12px 0 6px}.pricing-card .tier-desc{color:#68645c;font-size:12px;min-height:40px}.pricing-card .price-pair{display:flex;gap:22px;margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.pricing-card .price-pair span{display:block;font-size:9px;color:#777;letter-spacing:.1em;text-transform:uppercase}.pricing-card .price-pair strong{font:400 27px Georgia,serif}.pricing-card ul{padding-left:18px;min-height:155px}.pricing-card li{font-size:12px;color:#555047;margin:8px 0}.pricing-card .btn{width:100%;margin-top:12px}.pricing-intro{padding-top:50px}.addons{padding-bottom:30px}.addon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.addon{border-top:1px solid var(--line);padding:15px 0}.addon h3{font-size:13px;margin:0 0 8px}.addon strong{font:26px Georgia,serif}.addon p{font-size:11px;color:#777;margin:3px 0}.faq-list{border-top:1px solid var(--line);margin:35px 0 80px}.faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.faq-list summary{cursor:pointer;font-size:14px;font-weight:600}.faq-list details p{max-width:760px;color:#68645c;font-size:13px;margin:12px 0 0}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr 1fr}.addon-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.quote-fields{grid-template-columns:1fr}.quote-result{align-items:flex-start;flex-direction:column}.pricing-grid{grid-template-columns:1fr}.pricing-card .tier-desc,.pricing-card ul{min-height:0}.addon-grid{grid-template-columns:1fr 1fr}.quote-tool{margin:35px auto 55px;padding:24px 19px}}


/* Readability and clean-link finish: stronger secondary text, no decorative arrows. */
:root{--muted:#625f58}
.eyebrow,.work-meta span,.hero-index,.flip-hint,.contact-line span{color:#625f58}
.hero p,.section-head p,.service-card p,.about-copy p,.about-page-grid p,.contact-info p,.page-hero p,.service-detail p,.service-detail li,.faq-list details p,.tier-desc,.pricing-card li,.addon p,.addons-head p,.pricing-footnote,.form-note,.quote-disclaimer{color:#4f4b44}
.band .eyebrow,.footer .brand small,.footer-links,.footer-bottom{color:#d0cec7}
.quote-tool .eyebrow{color:#edc27b}
.quote-tool>p,.quote-result small{color:#e0d8cb}
.quote-disclaimer{color:#d0c5b3!important}
.pricing-intro p{color:#e0d8cb}
.pricing-card .tier-desc,.pricing-card li,.price-pair span,.price-pair small{color:#ded8ce}
.addons-head p,.addon p,.pricing-footnote{color:#d0c8bb}
.service-arrow,.text-link,.quiet-link,.nav-cta,.btn{white-space:normal;overflow-wrap:anywhere}
/* Pricing cards use a light surface; keep their text dark and readable. */
.pricing-card{background:#fffdf8;color:#171816}
.pricing-card .tier{color:#80551d}
.pricing-card .tier-desc,.pricing-card li{color:#4f4b44}
.pricing-card .price-pair span,.pricing-card .price-pair small{color:#625f58}
.pricing-card .price-pair strong{color:#171816}
