From: moo Date: Wed, 8 Jul 2026 23:58:37 +0000 (-0700) Subject: first commit X-Git-Url: https://git.taranathan.com/?a=commitdiff_plain;ds=inline;p=adrians-mom.git first commit --- e8944cf7f3e481aeef871eb097d1705e32e266f1 diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000..112ac45 --- /dev/null +++ b/about/index.html @@ -0,0 +1,89 @@ + + + + + + About - Dr. Wan-Chen Weng + + + +
+ + +
+
+
+ Portrait of Dr. Wan-Chen Weng +

+ My name is Wan-Chen Weng (she/her) and I am a licensed psychologist practicing in Oregon (#2889). + I have extensive experiences working in various settings and helping individuals and couples with different + mental health issues. Whether you are new to therapy or continuing, self-understanding and awareness are + crucial for healing. I believe that trust within a therapeutic relationship is essential for positive therapy, + and I am honored to be part of your healing journey. +

+
+ +

Education

+
    +
  • Teachers College, Columbia University, Ph.D.
  • +
  • Boston College, M.A.
  • +
  • National Taiwan University, Taiwan, B.A, M.A.
  • +
  • Oregon License Number: 2889
  • +
+ +

Experiences

+

+ My graduate training was rooted in multicultural competency and social justice. I have dedicated my work in + various settings, including hospitals, community clinics, and college counseling settings in the US. I received + my pre-doctoral internship at Hamilton-Madison House in New York City and completed my post-doctoral residency + training at Reed College in Oregon. My approach is warm, collaborative and non-judgmental. My theoretical + orientation adopts an integrative approach, incorporating psychodynamic, DBT (dialectical behavioural therapy), + ACT (acceptance and commitment), mindfulness and interpersonal process. I have particular interests in helping + individuals adapt to different cultures, dealing with family issues, relationships, identities, trauma, grief, + and other developmental issues. As a cis-female and first-generation Taiwanese immigrant, I understand how + important it is to consider the impact of systematic oppression on intersecting identities and mental health. + I strive to take a perspective of social justice and honor your cultural contexts whether they are a source + of pride or marginalization in helping me understand your lived experiences. +

+ +

Specialties

+
    +
  • Acculturation
  • +
  • Intersecting identities
  • +
  • Family of origin
  • +
  • Relationship Issues
  • +
  • Stress management
  • +
  • Anxiety
  • +
  • Career/work stress
  • +
  • Life Transitions
  • +
  • Trauma/ Grief and Loss
  • +
+ +

Services

+
    +
  • Individual psychotherapy
  • +
  • Couples psychotherapy
  • +
  • Coaching
  • +
  • Consultation
  • +
  • Workshops and community outreach
  • +
+
+
+ +
+

Dr. Wan-Chen Weng

+
+
+ + \ No newline at end of file diff --git a/about/styles.css b/about/styles.css new file mode 100644 index 0000000..0e4234d --- /dev/null +++ b/about/styles.css @@ -0,0 +1,267 @@ +:root { + --bg: #f6f4f1; + --card: #ffffff; + --text: #1f2328; + --muted: #5f6872; + --line: #ddd7d0; + --accent: #557a8a; + --accent-dark: #3f616f; +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + color: var(--text); + background: radial-gradient(circle at top, #fdfbf8 0%, var(--bg) 40%); + line-height: 1.65; +} + +a { + color: var(--accent); + text-decoration-thickness: 1px; + text-underline-offset: 0.14em; +} + +a:hover { + color: var(--accent-dark); +} + +.site { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +.site-header { + border-bottom: 1px solid var(--line); + background: rgba(255, 255, 255, 0.94); + box-shadow: 0 1px 0 rgba(17, 24, 39, 0.03); +} + +.header-inner { + width: min(980px, 92%); + margin: 0 auto; + padding: 22px 0 18px; +} + +.site-title { + margin: 0; + font-size: 2.0rem; + font-weight: 600; +} + +.site-title a { + color: var(--text); + text-decoration: none; +} + +.site-description { + margin: 4px 0 16px; + color: var(--muted); + font-size: 0.95rem; +} + +.main-nav { + display: flex; + flex-wrap: wrap; + gap: 10px 16px; +} + +.main-nav a { + text-decoration: none; + color: var(--muted); + font-size: 0.95rem; + padding-bottom: 2px; + border-bottom: 1px solid transparent; +} + +.main-nav a.active, +.main-nav a:hover { + color: var(--accent-dark); + border-bottom-color: var(--accent-dark); +} + +.page-content { + /* width: min(980px, 92%); */ + margin: 0 5%; + padding: 32px 0 56px; + flex: 1; +} + +.hero { + position: relative; + border-radius: 14px; + min-height: clamp(420px, 62vh, 620px); + background-size: cover; + background-position: center; + overflow: hidden; + box-shadow: 0 10px 30px rgba(31, 35, 40, 0.13); +} + +.hero-overlay { + position: absolute; + inset: 0; + background: linear-gradient(180deg, rgba(14, 26, 32, 0.33), rgba(14, 26, 32, 0.5)); +} + +.hero-inner { + position: relative; + max-width: 760px; + margin: 0 auto; + padding: clamp(58px, 8vw, 92px) 26px; + text-align: center; + color: #fff; +} + +.hero h1 { + margin: 0 0 20px; + font-size: clamp(1.9rem, 3.4vw, 2.8rem); + font-weight: 500; + line-height: 1.2; +} + +.button { + display: inline-block; + border: 1px solid #fff; + border-radius: 999px; + padding: 10px 20px; + color: #192127; + background: #fff; + text-decoration: none; + font-size: 0.93rem; + font-weight: 500; +} + +.button:hover { + color: #192127; + background: rgba(255, 255, 255, 0.88); +} + +.hero-copy { + margin: 26px auto 0; + font-size: clamp(1.02rem, 1.55vw, 1.16rem); + line-height: 1.85; + max-width: 66ch; +} + +.hero-copy strong { + font-weight: 500; +} + +.content-block { + background: var(--card); + border: 1px solid var(--line); + border-radius: 14px; + padding: clamp(22px, 4vw, 38px); + box-shadow: 0 3px 18px rgba(31, 35, 40, 0.06); +} + +.content-block>*:first-child { + margin-top: 0; +} + +.content-block p { + max-width: 74ch; +} + +.about-intro { + display: grid; + grid-template-columns: 260px 1fr; + gap: 32px; + align-items: center; +} + +.about-photo { + width: 260px; + max-width: 100%; + aspect-ratio: 1 / 1; + object-fit: cover; + border-radius: 50%; + border: 3px solid #fff; + box-shadow: 0 8px 22px rgba(31, 35, 40, 0.16); +} + +h2, +h3 { + margin-top: 30px; + margin-bottom: 12px; + font-weight: 600; + line-height: 1.25; +} + +ul { + margin: 0; + padding-left: 1.2rem; +} + +li+li { + margin-top: 6px; +} + +.services-lead { + text-align: center; + font-size: clamp(1.05rem, 2.1vw, 1.25rem); + margin: 0 auto 28px; + max-width: 56ch; + color: #2d3742; +} + +.contact-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 24px; +} + +.contact-card { + border: 1px solid var(--line); + border-radius: 12px; + padding: 22px; + background: #fff; +} + +.social-links { + display: flex; + flex-wrap: wrap; + gap: 10px; + padding: 0; + margin: 16px 0 0; + list-style: none; +} + +.social-links a { + display: inline-block; + text-decoration: none; + border: 1px solid var(--line); + border-radius: 999px; + padding: 6px 10px; +} + +.site-footer { + border-top: 1px solid var(--line); + background: #fbfaf8; +} + +.site-footer p { + width: min(980px, 92%); + margin: 0 auto; + padding: 16px 0 22px; + font-size: 0.9rem; + color: var(--muted); +} + +@media (max-width: 900px) { + + .about-intro, + .contact-grid { + grid-template-columns: 1fr; + } + + .about-photo { + width: min(240px, 100%); + margin: 0 auto; + } +} \ No newline at end of file diff --git a/contact/index.html b/contact/index.html new file mode 100644 index 0000000..718ce2a --- /dev/null +++ b/contact/index.html @@ -0,0 +1,58 @@ + + + + + + Contact - Dr. Wan-Chen Weng + + + +
+ + +
+
+

Don’t hesitate to reach out to me with the contact information below.

+ +
+
+

Get in Touch

+

wengphd@gmail.com

+

(503)-567-9499

+

+ Please note: Email is not a secure medium, and confidentiality of emails cannot be guaranteed. + You will expect to hear from me within 48 hours, except for holidays and breaks. Emergency: + If you find yourself in a life-threatening mental health emergency, please dial 9-1-1, or go + immediately to your nearest hospital emergency department. +

+ + + + + +
+ + + + +
+
+
+ +
+

Dr. Wan-Chen Weng

+
+
+ + diff --git a/contact/styles.css b/contact/styles.css new file mode 100644 index 0000000..40848e9 --- /dev/null +++ b/contact/styles.css @@ -0,0 +1,267 @@ +:root { + --bg: #f6f4f1; + --card: #ffffff; + --text: #1f2328; + --muted: #5f6872; + --line: #ddd7d0; + --accent: #557a8a; + --accent-dark: #3f616f; +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + color: var(--text); + background: radial-gradient(circle at top, #fdfbf8 0%, var(--bg) 40%); + line-height: 1.65; +} + +a { + color: var(--accent); + text-decoration-thickness: 1px; + text-underline-offset: 0.14em; +} + +a:hover { + color: var(--accent-dark); +} + +.site { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +.site-header { + border-bottom: 1px solid var(--line); + background: rgba(255, 255, 255, 0.94); + box-shadow: 0 1px 0 rgba(17, 24, 39, 0.03); +} + +.header-inner { + width: min(980px, 92%); + margin: 0 auto; + padding: 22px 0 18px; +} + +.site-title { + margin: 0; + font-size: 2.0rem; + font-weight: 600; +} + +.site-title a { + color: var(--text); + text-decoration: none; +} + +.site-description { + margin: 4px 0 16px; + color: var(--muted); + font-size: 0.95rem; +} + +.main-nav { + display: flex; + flex-wrap: wrap; + gap: 10px 16px; +} + +.main-nav a { + text-decoration: none; + color: var(--muted); + font-size: 0.95rem; + padding-bottom: 2px; + border-bottom: 1px solid transparent; +} + +.main-nav a.active, +.main-nav a:hover { + color: var(--accent-dark); + border-bottom-color: var(--accent-dark); +} + +.page-content { + /* width: min(980px, 92%); */ + margin: 0 5%; + padding: 32px 0 56px; + flex: 1; +} + +.hero { + position: relative; + border-radius: 14px; + min-height: clamp(420px, 62vh, 620px); + background-size: cover; + background-position: center; + overflow: hidden; + box-shadow: 0 10px 30px rgba(31, 35, 40, 0.13); +} + +.hero-overlay { + position: absolute; + inset: 0; + background: linear-gradient(180deg, rgba(14, 26, 32, 0.33), rgba(14, 26, 32, 0.5)); +} + +.hero-inner { + position: relative; + max-width: 760px; + margin: 0 auto; + padding: clamp(58px, 8vw, 92px) 26px; + text-align: center; + color: #fff; +} + +.hero h1 { + margin: 0 0 20px; + font-size: clamp(1.9rem, 3.4vw, 2.8rem); + font-weight: 500; + line-height: 1.2; +} + +.button { + display: inline-block; + border: 1px solid #fff; + border-radius: 999px; + padding: 10px 20px; + color: #192127; + background: #fff; + text-decoration: none; + font-size: 0.93rem; + font-weight: 500; +} + +.button:hover { + color: #192127; + background: rgba(255, 255, 255, 0.88); +} + +.hero-copy { + margin: 26px auto 0; + font-size: clamp(1.02rem, 1.55vw, 1.16rem); + line-height: 1.85; + max-width: 66ch; +} + +.hero-copy strong { + font-weight: 500; +} + +.content-block { + background: var(--card); + border: 1px solid var(--line); + border-radius: 14px; + padding: clamp(22px, 4vw, 38px); + box-shadow: 0 3px 18px rgba(31, 35, 40, 0.06); +} + +.content-block>*:first-child { + margin-top: 0; +} + +.content-block p { + max-width: 74ch; +} + +.about-intro { + display: grid; + grid-template-columns: 260px 1fr; + gap: 32px; + align-items: center; +} + +.about-photo { + width: 260px; + max-width: 100%; + aspect-ratio: 1 / 1; + object-fit: cover; + border-radius: 50%; + border: 3px solid #fff; + box-shadow: 0 8px 22px rgba(31, 35, 40, 0.16); +} + +h2, +h3 { + margin-top: 30px; + margin-bottom: 12px; + font-weight: 600; + line-height: 1.25; +} + +ul { + margin: 0; + padding-left: 1.2rem; +} + +li+li { + margin-top: 6px; +} + +.services-lead { + text-align: center; + font-size: clamp(1.05rem, 2.1vw, 1.25rem); + margin: 0 auto 28px; + max-width: 56ch; + color: #2d3742; +} + +.contact-grid { + /* display: grid; */ + grid-template-columns: auto auto; + gap: 24px; +} + +.contact-card { + border: 1px solid var(--line); + border-radius: 12px; + padding: 22px; + background: #fff; +} + +.social-links { + display: flex; + flex-wrap: wrap; + gap: 10px; + padding: 0; + margin: 16px 0 0; + list-style: none; +} + +.social-links a { + display: inline-block; + text-decoration: none; + border: 1px solid var(--line); + border-radius: 999px; + padding: 6px 10px; +} + +.site-footer { + border-top: 1px solid var(--line); + background: #fbfaf8; +} + +.site-footer p { + width: min(980px, 92%); + margin: 0 auto; + padding: 16px 0 22px; + font-size: 0.9rem; + color: var(--muted); +} + +@media (max-width: 900px) { + + .about-intro, + .contact-grid { + grid-template-columns: 1fr; + } + + .about-photo { + width: min(240px, 100%); + margin: 0 auto; + } +} \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..6a31932 --- /dev/null +++ b/index.html @@ -0,0 +1,47 @@ + + + + + + Dr. Wan-Chen Weng - Psychological Services + + + +
+ + +
+
+
+
+

Welcome to my practice!

+

Learn more

+

+ + Do you often feel stuck in life and constantly juggle between personal space and various obligations? + Are you feeling emotionally “trapped” from the past and having a desire to move past this? + Allow yourself – Take a pause; Notice the vibe; Change with inner strength. Let’s begin this journey + through unlearning the old pattern from the past and relearning a healthy way of living. + +

+
+
+
+ +
+

Dr. Wan-Chen Weng

+
+
+ + diff --git a/services/index.html b/services/index.html new file mode 100644 index 0000000..2aa08b1 --- /dev/null +++ b/services/index.html @@ -0,0 +1,58 @@ + + + + + + Services and Fees - Dr. Wan-Chen Weng + + + +
+ + +
+
+

+ I provide individual and couples counseling via teletherapy. I also offer other services, including consultation, + workshops and community outreach. +

+ +
+
+
+

+ + Currently I am in-network with Aetna; for other insurances, I’m an out-of-network provider, which means that + I do not accept other insurances. My fee starts at $200 per 50-min session. I can provide Superbill statements + for you to receive reimbursement for most if not all of my fee from your insurance company. You can find out + more about your out-of-network benefits by calling your insurance carrier. If you have any questions, feel free + to contact me. + +

+ + Please note: If you are experiencing financial hardship as a barrier to care, I have some limited availability + for a reduced fee. Sliding scale may be available upon request. + +

+
+
+
+
+ + +
+ + diff --git a/services/styles.css b/services/styles.css new file mode 100644 index 0000000..0e4234d --- /dev/null +++ b/services/styles.css @@ -0,0 +1,267 @@ +:root { + --bg: #f6f4f1; + --card: #ffffff; + --text: #1f2328; + --muted: #5f6872; + --line: #ddd7d0; + --accent: #557a8a; + --accent-dark: #3f616f; +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + color: var(--text); + background: radial-gradient(circle at top, #fdfbf8 0%, var(--bg) 40%); + line-height: 1.65; +} + +a { + color: var(--accent); + text-decoration-thickness: 1px; + text-underline-offset: 0.14em; +} + +a:hover { + color: var(--accent-dark); +} + +.site { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +.site-header { + border-bottom: 1px solid var(--line); + background: rgba(255, 255, 255, 0.94); + box-shadow: 0 1px 0 rgba(17, 24, 39, 0.03); +} + +.header-inner { + width: min(980px, 92%); + margin: 0 auto; + padding: 22px 0 18px; +} + +.site-title { + margin: 0; + font-size: 2.0rem; + font-weight: 600; +} + +.site-title a { + color: var(--text); + text-decoration: none; +} + +.site-description { + margin: 4px 0 16px; + color: var(--muted); + font-size: 0.95rem; +} + +.main-nav { + display: flex; + flex-wrap: wrap; + gap: 10px 16px; +} + +.main-nav a { + text-decoration: none; + color: var(--muted); + font-size: 0.95rem; + padding-bottom: 2px; + border-bottom: 1px solid transparent; +} + +.main-nav a.active, +.main-nav a:hover { + color: var(--accent-dark); + border-bottom-color: var(--accent-dark); +} + +.page-content { + /* width: min(980px, 92%); */ + margin: 0 5%; + padding: 32px 0 56px; + flex: 1; +} + +.hero { + position: relative; + border-radius: 14px; + min-height: clamp(420px, 62vh, 620px); + background-size: cover; + background-position: center; + overflow: hidden; + box-shadow: 0 10px 30px rgba(31, 35, 40, 0.13); +} + +.hero-overlay { + position: absolute; + inset: 0; + background: linear-gradient(180deg, rgba(14, 26, 32, 0.33), rgba(14, 26, 32, 0.5)); +} + +.hero-inner { + position: relative; + max-width: 760px; + margin: 0 auto; + padding: clamp(58px, 8vw, 92px) 26px; + text-align: center; + color: #fff; +} + +.hero h1 { + margin: 0 0 20px; + font-size: clamp(1.9rem, 3.4vw, 2.8rem); + font-weight: 500; + line-height: 1.2; +} + +.button { + display: inline-block; + border: 1px solid #fff; + border-radius: 999px; + padding: 10px 20px; + color: #192127; + background: #fff; + text-decoration: none; + font-size: 0.93rem; + font-weight: 500; +} + +.button:hover { + color: #192127; + background: rgba(255, 255, 255, 0.88); +} + +.hero-copy { + margin: 26px auto 0; + font-size: clamp(1.02rem, 1.55vw, 1.16rem); + line-height: 1.85; + max-width: 66ch; +} + +.hero-copy strong { + font-weight: 500; +} + +.content-block { + background: var(--card); + border: 1px solid var(--line); + border-radius: 14px; + padding: clamp(22px, 4vw, 38px); + box-shadow: 0 3px 18px rgba(31, 35, 40, 0.06); +} + +.content-block>*:first-child { + margin-top: 0; +} + +.content-block p { + max-width: 74ch; +} + +.about-intro { + display: grid; + grid-template-columns: 260px 1fr; + gap: 32px; + align-items: center; +} + +.about-photo { + width: 260px; + max-width: 100%; + aspect-ratio: 1 / 1; + object-fit: cover; + border-radius: 50%; + border: 3px solid #fff; + box-shadow: 0 8px 22px rgba(31, 35, 40, 0.16); +} + +h2, +h3 { + margin-top: 30px; + margin-bottom: 12px; + font-weight: 600; + line-height: 1.25; +} + +ul { + margin: 0; + padding-left: 1.2rem; +} + +li+li { + margin-top: 6px; +} + +.services-lead { + text-align: center; + font-size: clamp(1.05rem, 2.1vw, 1.25rem); + margin: 0 auto 28px; + max-width: 56ch; + color: #2d3742; +} + +.contact-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 24px; +} + +.contact-card { + border: 1px solid var(--line); + border-radius: 12px; + padding: 22px; + background: #fff; +} + +.social-links { + display: flex; + flex-wrap: wrap; + gap: 10px; + padding: 0; + margin: 16px 0 0; + list-style: none; +} + +.social-links a { + display: inline-block; + text-decoration: none; + border: 1px solid var(--line); + border-radius: 999px; + padding: 6px 10px; +} + +.site-footer { + border-top: 1px solid var(--line); + background: #fbfaf8; +} + +.site-footer p { + width: min(980px, 92%); + margin: 0 auto; + padding: 16px 0 22px; + font-size: 0.9rem; + color: var(--muted); +} + +@media (max-width: 900px) { + + .about-intro, + .contact-grid { + grid-template-columns: 1fr; + } + + .about-photo { + width: min(240px, 100%); + margin: 0 auto; + } +} \ No newline at end of file diff --git a/static/lake.jpg b/static/lake.jpg new file mode 100644 index 0000000..7b252da Binary files /dev/null and b/static/lake.jpg differ diff --git a/static/mountains.jpg b/static/mountains.jpg new file mode 100644 index 0000000..7a54c1e Binary files /dev/null and b/static/mountains.jpg differ diff --git a/static/pfp.jpg b/static/pfp.jpg new file mode 100644 index 0000000..26e45cf Binary files /dev/null and b/static/pfp.jpg differ diff --git a/styles.css b/styles.css new file mode 100644 index 0000000..0e4234d --- /dev/null +++ b/styles.css @@ -0,0 +1,267 @@ +:root { + --bg: #f6f4f1; + --card: #ffffff; + --text: #1f2328; + --muted: #5f6872; + --line: #ddd7d0; + --accent: #557a8a; + --accent-dark: #3f616f; +} + +* { + box-sizing: border-box; +} + +body { + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + color: var(--text); + background: radial-gradient(circle at top, #fdfbf8 0%, var(--bg) 40%); + line-height: 1.65; +} + +a { + color: var(--accent); + text-decoration-thickness: 1px; + text-underline-offset: 0.14em; +} + +a:hover { + color: var(--accent-dark); +} + +.site { + min-height: 100vh; + display: flex; + flex-direction: column; +} + +.site-header { + border-bottom: 1px solid var(--line); + background: rgba(255, 255, 255, 0.94); + box-shadow: 0 1px 0 rgba(17, 24, 39, 0.03); +} + +.header-inner { + width: min(980px, 92%); + margin: 0 auto; + padding: 22px 0 18px; +} + +.site-title { + margin: 0; + font-size: 2.0rem; + font-weight: 600; +} + +.site-title a { + color: var(--text); + text-decoration: none; +} + +.site-description { + margin: 4px 0 16px; + color: var(--muted); + font-size: 0.95rem; +} + +.main-nav { + display: flex; + flex-wrap: wrap; + gap: 10px 16px; +} + +.main-nav a { + text-decoration: none; + color: var(--muted); + font-size: 0.95rem; + padding-bottom: 2px; + border-bottom: 1px solid transparent; +} + +.main-nav a.active, +.main-nav a:hover { + color: var(--accent-dark); + border-bottom-color: var(--accent-dark); +} + +.page-content { + /* width: min(980px, 92%); */ + margin: 0 5%; + padding: 32px 0 56px; + flex: 1; +} + +.hero { + position: relative; + border-radius: 14px; + min-height: clamp(420px, 62vh, 620px); + background-size: cover; + background-position: center; + overflow: hidden; + box-shadow: 0 10px 30px rgba(31, 35, 40, 0.13); +} + +.hero-overlay { + position: absolute; + inset: 0; + background: linear-gradient(180deg, rgba(14, 26, 32, 0.33), rgba(14, 26, 32, 0.5)); +} + +.hero-inner { + position: relative; + max-width: 760px; + margin: 0 auto; + padding: clamp(58px, 8vw, 92px) 26px; + text-align: center; + color: #fff; +} + +.hero h1 { + margin: 0 0 20px; + font-size: clamp(1.9rem, 3.4vw, 2.8rem); + font-weight: 500; + line-height: 1.2; +} + +.button { + display: inline-block; + border: 1px solid #fff; + border-radius: 999px; + padding: 10px 20px; + color: #192127; + background: #fff; + text-decoration: none; + font-size: 0.93rem; + font-weight: 500; +} + +.button:hover { + color: #192127; + background: rgba(255, 255, 255, 0.88); +} + +.hero-copy { + margin: 26px auto 0; + font-size: clamp(1.02rem, 1.55vw, 1.16rem); + line-height: 1.85; + max-width: 66ch; +} + +.hero-copy strong { + font-weight: 500; +} + +.content-block { + background: var(--card); + border: 1px solid var(--line); + border-radius: 14px; + padding: clamp(22px, 4vw, 38px); + box-shadow: 0 3px 18px rgba(31, 35, 40, 0.06); +} + +.content-block>*:first-child { + margin-top: 0; +} + +.content-block p { + max-width: 74ch; +} + +.about-intro { + display: grid; + grid-template-columns: 260px 1fr; + gap: 32px; + align-items: center; +} + +.about-photo { + width: 260px; + max-width: 100%; + aspect-ratio: 1 / 1; + object-fit: cover; + border-radius: 50%; + border: 3px solid #fff; + box-shadow: 0 8px 22px rgba(31, 35, 40, 0.16); +} + +h2, +h3 { + margin-top: 30px; + margin-bottom: 12px; + font-weight: 600; + line-height: 1.25; +} + +ul { + margin: 0; + padding-left: 1.2rem; +} + +li+li { + margin-top: 6px; +} + +.services-lead { + text-align: center; + font-size: clamp(1.05rem, 2.1vw, 1.25rem); + margin: 0 auto 28px; + max-width: 56ch; + color: #2d3742; +} + +.contact-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 24px; +} + +.contact-card { + border: 1px solid var(--line); + border-radius: 12px; + padding: 22px; + background: #fff; +} + +.social-links { + display: flex; + flex-wrap: wrap; + gap: 10px; + padding: 0; + margin: 16px 0 0; + list-style: none; +} + +.social-links a { + display: inline-block; + text-decoration: none; + border: 1px solid var(--line); + border-radius: 999px; + padding: 6px 10px; +} + +.site-footer { + border-top: 1px solid var(--line); + background: #fbfaf8; +} + +.site-footer p { + width: min(980px, 92%); + margin: 0 auto; + padding: 16px 0 22px; + font-size: 0.9rem; + color: var(--muted); +} + +@media (max-width: 900px) { + + .about-intro, + .contact-grid { + grid-template-columns: 1fr; + } + + .about-photo { + width: min(240px, 100%); + margin: 0 auto; + } +} \ No newline at end of file