:root{  --color-bg:#ffffff;  --color-text:#2b2b2b;  --color-muted:#6b6b6b;  --color-accent:#7fb3b3;  --color-border:#e8e8e8;  --font-serif:'Cormorant Garamond',Georgia,serif;  --font-sans:'Inter',-apple-system,sans-serif;  --container:1200px;  --container-narrow:720px;}*{box-sizing:border-box;}html,body{margin:0;padding:0;}body{  background:var(--color-bg);  color:var(--color-text);  font-family:var(--font-sans);  font-size:15px;  line-height:1.7;  -webkit-font-smoothing:antialiased;}a{color:inherit;text-decoration:none;transition:opacity .2s;}a:hover{opacity:.65;}img{max-width:100%;height:auto;display:block;}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:400;letter-spacing:.01em;}h1{font-size:2.4rem;}h2{font-size:1.9rem;}h3{font-size:1.4rem;}.container{max-width:var(--container);margin:0 auto;padding:0 24px;}.container--narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 24px;}.text-center{text-align:center;}.site-header{  padding:28px 32px;  background:#fff;  position:relative;  z-index:100;}.site-header__inner{  display:grid;  grid-template-columns:1fr auto 1fr;  align-items:center;  gap:24px;  max-width:1400px;  margin:0 auto;}.site-nav .menu{  list-style:none;  margin:0;  padding:0;  display:flex;  gap:28px;  font-size:13px;  letter-spacing:.04em;}.menu--left{justify-content:flex-start;}.menu--right{justify-content:flex-end;}.menu li{position:relative;}.menu .sub-menu{  position:absolute;  top:100%;  left:0;  background:#fff;  border:1px solid var(--color-border);  padding:12px 0;  min-width:180px;  list-style:none;  margin:8px 0 0;  opacity:0;  visibility:hidden;  transition:.2s;  z-index:50;}.menu li:hover > .sub-menu{opacity:1;visibility:visible;}.menu .sub-menu li{padding:6px 18px;}.menu .sub-menu a{font-size:13px;}.site-brand{text-align:center;}.site-brand img,.custom-logo,.custom-logo-link img{max-height:110px;width:auto;margin:0 auto;}.site-brand__text{font-family:var(--font-serif);font-size:1.3rem;letter-spacing:.04em;}.nav-toggle{  display:none;  background:none;  border:0;  cursor:pointer;  padding:8px;}.nav-toggle span{  display:block;  width:22px;  height:1px;  background:var(--color-text);  margin:5px 0;}.site-main{min-height:60vh;}.site-footer{  padding:60px 32px 28px;  border-top:1px solid var(--color-border);  margin-top:80px;}.site-footer__inner{  max-width:1400px;  margin:0 auto;  text-align:center;}.footer-nav .menu{  list-style:none;  margin:0 0 24px;  padding:0;  display:flex;  justify-content:center;  gap:28px;  font-size:13px;  letter-spacing:.04em;}.footer-social{margin:20px 0;display:flex;justify-content:center;gap:22px;}.footer-social a{color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;transition:background .2s,color .2s;}.footer-social a:hover{background:var(--color-text);color:#fff;opacity:1;}.footer-copy{font-size:12px;color:var(--color-muted);letter-spacing:.06em;}.btn{  display:inline-block;  padding:14px 32px;  border:1px solid var(--color-text);  font-size:12px;  letter-spacing:.18em;  text-transform:uppercase;  background:transparent;  color:var(--color-text);  cursor:pointer;  transition:background .2s,color .2s;}.btn:hover{background:var(--color-text);color:#fff;opacity:1;}.btn--link{  border:0;  border-bottom:1px solid var(--color-text);  padding:6px 0;}.intro{  max-width:620px;  margin:60px auto 50px;  text-align:center;  padding:0 24px;}.intro h1{  font-size:1.8rem;  margin:0 0 24px;}.intro p{  font-size:14px;  line-height:1.9;  color:var(--color-text);  margin:0 0 12px;}.portfolio-grid{  display:grid;  grid-template-columns:repeat(3,1fr);  gap:10px;  max-width:1100px;  margin:40px auto;  padding:0 16px;}.portfolio-grid__item{  overflow:hidden;  background:#f4f4f4;}.portfolio-grid__item img{  width:100%;  height:100%;  object-fit:cover;  transition:transform .6s ease;}.portfolio-grid__item:hover img{transform:scale(1.04);}.portfolio-grid__item--tall{grid-row:span 2;}.cta-block{  text-align:center;  padding:60px 24px;  max-width:720px;  margin:40px auto;}.cta-block__eyebrow{  font-size:12px;  letter-spacing:.2em;  text-transform:uppercase;  margin-bottom:18px;  color:var(--color-accent);}.cta-block p{font-size:14px;line-height:1.9;}.testimonials{  max-width:1100px;  margin:80px auto;  padding:0 24px;}.testimonials__heading{  text-align:center;  font-size:1.4rem;  margin:0 0 40px;}.testimonial{  display:grid;  grid-template-columns:1fr 1fr 1fr;  gap:40px;  align-items:center;}.testimonial__left img,.testimonial__right img{  width:100%;  max-width:280px;  margin:0 auto;}.testimonial__body{text-align:center;}.testimonial__name{font-family:var(--font-serif);font-size:1.3rem;margin:0 0 20px;}.testimonial__text{font-size:14px;line-height:1.9;}.testimonial__small{font-size:11px;margin-top:10px;letter-spacing:.04em;}.testimonial-nav{display:flex;justify-content:center;gap:20px;margin:0 0 40px;}.testimonial-nav button{background:none;border:0;cursor:pointer;font-size:18px;opacity:.5;}.testimonial-nav button:hover{opacity:1;}.ig-handle{  text-align:center;  padding:40px 24px;  font-size:12px;  letter-spacing:.2em;}.page-content{  max-width:720px;  margin:60px auto;  padding:0 24px;}.page-content h1{text-align:center;margin-bottom:40px;}.post-entry{margin-bottom:48px;padding-bottom:48px;border-bottom:1px solid var(--color-border);}.post-entry__title{margin:0 0 12px;}@media (max-width:900px){  .site-header__inner{grid-template-columns:1fr auto 1fr;}  .site-nav{display:none;}  .site-nav.is-open{    display:block;    position:absolute;    top:100%;left:0;right:0;    background:#fff;    padding:20px;    border-top:1px solid var(--color-border);  }  .site-nav.is-open .menu{flex-direction:column;gap:16px;align-items:center;}  .nav-toggle{display:block;justify-self:end;}  .menu--left ~ .nav-toggle{display:block;}  .portfolio-grid{grid-template-columns:repeat(2,1fr);}  .portfolio-grid__item--tall{grid-row:span 1;}  .testimonial{grid-template-columns:1fr;gap:24px;}  .testimonial__left img,.testimonial__right img{max-width:200px;}  h1{font-size:1.8rem;}  h2{font-size:1.5rem;}}.page-template-page-faq .page-content{max-width:1200px;}.faq-grid{  display:grid;  grid-template-columns:repeat(3,1fr);  gap:50px 40px;  margin-top:40px;}.faq-item h3{  text-align:center;  font-size:1.1rem;  margin:0 0 16px;  line-height:1.4;}.faq-item p{  font-size:14px;  line-height:1.8;  margin:0 0 14px;}@media (max-width:900px){  .faq-grid{grid-template-columns:1fr;gap:40px;}}.page-template-page-contact .page-content{max-width:1200px;}.booking-cards{  display:grid;  grid-template-columns:1fr 1fr;  gap:40px;  margin-top:40px;}.booking-card{  background:#fff;  border:1px solid var(--color-border);  display:flex;  flex-direction:column;}.booking-card__image{  width:100%;  padding-top:65%;  background-size:cover;  background-position:center;}.booking-card__body{  padding:32px 28px;  display:flex;  flex-direction:column;  flex:1;}.booking-card__eyebrow{  font-size:11px;  letter-spacing:.16em;  text-transform:uppercase;  color:var(--color-accent);  margin-bottom:12px;  text-align:center;}.booking-card__title{  text-align:center;  font-size:1.5rem;  margin:0 0 20px;  line-height:1.3;}.booking-card p{font-size:14px;line-height:1.7;}.booking-card ul{font-size:14px;line-height:1.8;padding-left:20px;margin:0 0 16px;}.booking-card .btn{  align-self:center;  margin-top:auto;}@media (max-width:900px){  .booking-cards{grid-template-columns:1fr;gap:30px;}}.portfolio-grid__item{display:block;cursor:zoom-in;}.lightbox{  position:fixed;  inset:0;  background:rgba(0,0,0,.92);  display:none;  align-items:center;  justify-content:center;  z-index:9999;  padding:40px;}.lightbox.is-open{display:flex;}.lightbox__img{  max-width:92vw;  max-height:90vh;  object-fit:contain;  box-shadow:0 10px 40px rgba(0,0,0,.5);  user-select:none;}.lightbox button{  position:absolute;  background:rgba(255,255,255,.1);  color:#fff;  border:1px solid rgba(255,255,255,.3);  width:48px;  height:48px;  border-radius:50%;  cursor:pointer;  font-size:22px;  line-height:1;  display:flex;  align-items:center;  justify-content:center;  transition:background .2s;}.lightbox button:hover{background:rgba(255,255,255,.25);}.lightbox__close{top:24px;right:24px;}.lightbox__prev{left:24px;top:50%;transform:translateY(-50%);}.lightbox__next{right:24px;top:50%;transform:translateY(-50%);}@media (max-width:600px){  .lightbox__prev,.lightbox__next{width:40px;height:40px;}  .lightbox__close{top:14px;right:14px;}}body.lightbox-open{overflow:hidden;}.hero{  max-width:1200px;  margin:50px auto 60px;  padding:0 32px;}.hero__inner{  display:grid;  grid-template-columns:1.4fr 1fr;  gap:60px;  align-items:start;}.hero__heading{  font-size:2.4rem;  margin:0 0 24px;  line-height:1.15;}.hero__lead{  font-size:17px;  line-height:1.7;  margin:0 0 20px;  color:var(--color-text);  font-weight:400;}.hero__body{  font-size:14.5px;  line-height:1.9;  margin:0 0 14px;  color:var(--color-muted);}.photographer-card{  background:#fafaf7;  border:1px solid var(--color-border);  padding:32px 28px;  text-align:center;  position:sticky;  top:24px;}.photographer-card__avatar{  width:110px;  height:110px;  border-radius:50%;  overflow:hidden;  margin:0 auto 18px;  border:3px solid #fff;  box-shadow:0 4px 20px rgba(0,0,0,.08);}.photographer-card__avatar img{  width:100%;  height:100%;  object-fit:cover;}.photographer-card__name{  font-family:var(--font-serif);  font-size:1.6rem;  margin:0 0 4px;  font-weight:400;}.photographer-card__title{  font-size:12px;  letter-spacing:.1em;  text-transform:uppercase;  color:var(--color-muted);  margin:0 0 18px;}.photographer-card__rating{  display:inline-flex;  align-items:center;  gap:8px;  font-size:12px;  color:var(--color-text);  margin-bottom:20px;  padding:8px 14px;  background:#fff;  border-radius:999px;  border:1px solid var(--color-border);}.photographer-card__rating .stars{  color:#f5a623;  letter-spacing:1px;  font-size:13px;}.photographer-card__rating:hover{opacity:1;background:#fff;border-color:var(--color-accent);}.photographer-card__phone{  display:flex;  align-items:center;  justify-content:center;  gap:8px;  padding:10px 0;  margin-bottom:16px;  font-size:15px;  font-family:var(--font-serif);  color:var(--color-text);}.photographer-card__socials{  display:flex;  justify-content:center;  gap:10px;  margin-bottom:24px;}.photographer-card__socials a{  width:38px;  height:38px;  border-radius:50%;  display:inline-flex;  align-items:center;  justify-content:center;  color:var(--color-text);  border:1px solid var(--color-border);  background:#fff;  transition:all .2s;}.photographer-card__socials a:hover{  background:var(--color-text);  color:#fff;  opacity:1;  border-color:var(--color-text);}.photographer-card__book{  display:block;  width:100%;  text-align:center;}@media (max-width:900px){  .hero{margin-top:20px;padding:0 20px;}  .hero__inner{grid-template-columns:1fr;gap:40px;}  .photographer-card{position:static;}  .hero__heading{font-size:1.9rem;}}.intro{display:none;}