/* Golden Willows owns this stylesheet. It is never loaded by the approved homepage. */
body { margin: 0; background: var(--color-warm-ivory); color: var(--color-dark-ink); font-family: var(--font-body); -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; scroll-padding-top: 104px; }
body.gw-menu-open, body.gw-media-open { overflow: hidden; }
.gw-page {
  --gw-content-width: 1260px;
  --gw-page-gutter: clamp(24px, 5.5vw, 86px);
  --gw-section-gap: clamp(76px, 7.2vw, 110px);
  --gw-heading-size: clamp(48px, 4.25vw, 62px);
  --gw-hero-size: clamp(70px, 6.2vw, 92px);
  --gw-rule: rgba(22,53,46,.2);
  --gw-transition: 200ms;
  overflow: clip;
}
.gw-page *, .gw-page *::before, .gw-page *::after { box-sizing: border-box; }
.gw-page [hidden] { display: none !important; }
.gw-page p, .gw-page h1, .gw-page h2, .gw-page h3, .gw-page figure { margin: 0; }
.gw-page p { font-size: 16px; line-height: 1.85; }
.gw-page h1, .gw-page h2, .gw-page h3 { font-family: var(--font-headline); font-weight: 400; letter-spacing: -.02em; }
.gw-page h2 { font-size: var(--gw-heading-size); line-height: 1.06; }
.gw-page a { color: inherit; text-decoration: none; }
.gw-page button, .gw-page input, .gw-page select { font: inherit; }
.gw-page button { cursor: pointer; }
.gw-page a, .gw-page button { -webkit-tap-highlight-color: transparent; }
.gw-page img { display: block; width: 100%; height: auto; }
.gw-page svg { width: 22px; height: 22px; flex-shrink: 0; }
.gw-page :focus-visible { outline: 2px solid var(--color-brass); outline-offset: 5px; }
.gw-container { width: min(calc(100% - 2 * var(--gw-page-gutter)), var(--gw-content-width)); margin-inline: auto; }
.gw-section { padding-block: var(--gw-section-gap); }
.gw-page .gw-eyebrow { font-size: 11px; font-weight: 500; line-height: 1.5; letter-spacing: .15em; text-transform: uppercase; }
.gw-muted { color: var(--color-muted-text); }
.gw-page figcaption { font: 400 10px/1.7 var(--font-body); }
.gw-button { display: inline-flex; justify-content: center; align-items: center; gap: 22px; min-height: 52px; padding: 15px 22px; border: 1px solid transparent; border-radius: var(--button-radius); font-size: 14px; font-weight: 600; line-height: 1.5; transition: background var(--gw-transition), transform var(--gw-transition); }
.gw-button-forest { background: var(--color-primary-forest); color: var(--color-warm-ivory) !important; }
.gw-button-forest:hover { background: var(--color-deep-forest); }
.gw-text-link { display: inline-flex; align-items: center; gap: 10px; border-bottom: 1px solid var(--gw-rule); padding-bottom: 7px; width: fit-content; font-size: 13px; font-weight: 600; line-height: 1.6; transition: border-color var(--gw-transition); }
.gw-text-link:hover { border-color: var(--color-primary-forest); }
.gw-text-link svg { width: 19px; height: 19px; transition: transform var(--gw-transition); }
.gw-text-link:hover svg { transform: translateX(3px); }
.gw-skip-link { position: absolute; z-index: 100; left: 20px; top: -90px; padding: 16px; background: var(--color-primary-forest); color: var(--color-warm-ivory) !important; }
.gw-skip-link:focus { top: 14px; }
.gw-noscript { margin-top: 20px !important; font-size: 13px !important; }

.gw-header { position: sticky; top: 0; z-index: 25; background: var(--color-warm-ivory); border-bottom: 1px solid var(--gw-rule); }
.gw-header-inner { height: 94px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.gw-wordmark { display: flex; flex-direction: column; gap: 9px; flex-shrink: 0; }
.gw-wordmark span { font-size: 16px; font-weight: 500; letter-spacing: .16em; line-height: 1; }
.gw-wordmark small { font-size: 8px; font-weight: 500; letter-spacing: .46em; line-height: 1; }
.gw-navigation { display: flex; align-items: center; gap: clamp(23px, 2.5vw, 36px); font-size: 12px; font-weight: 500; }
.gw-navigation > a:not(.gw-nav-request):hover { text-decoration: underline; text-underline-offset: 7px; }
.gw-nav-request { padding: 13px 17px; border: 1px solid var(--color-primary-forest); border-radius: var(--button-radius); display: inline-flex; align-items: center; gap: 20px; }
.gw-nav-request:hover { background: var(--color-soft-stone); }
.gw-menu-button { display: none; }

.gw-hero { padding-block: 24px 60px; }
.gw-breadcrumb { display: flex; gap: 15px; align-items: center; font-size: 10px; color: var(--color-muted-text); margin-bottom: 27px; }
.gw-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 4px; }
.gw-breadcrumb [aria-current] { color: var(--color-dark-ink); }
.gw-hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(40px,6vw,85px); }
.gw-hero-copy { padding-block: 18px; }
.gw-hero-copy .gw-eyebrow { margin-bottom: 22px; }
.gw-hero-copy h1 { font-size: var(--gw-hero-size); line-height: .99; max-width: 540px; }
.gw-page .gw-hero-tagline { font-family: var(--font-headline); font-size: 31px; font-style: italic; line-height: 1.3; margin-top: 22px; color: var(--color-primary-forest); }
.gw-hero-description { margin-top: 23px !important; max-width: 430px; color: var(--color-muted-text); }
.gw-page .gw-project-status { display: flex; align-items: center; gap: 9px; font-size: 11px; margin-top: 23px; }
.gw-project-status > span { width: 5px; height: 5px; border-radius: 50%; background: var(--color-brass); }
.gw-hero-actions { display: flex; flex-direction: column; gap: 23px; align-items: flex-start; margin-top: 27px; }
.gw-hero-note { margin-top: 40px; padding-top: 22px; border-top: 1px solid var(--gw-rule); max-width: 380px; }
.gw-hero-note > span { font-size: 8px; letter-spacing: .15em; }
.gw-hero-note p { margin-top: 7px; font-size: 11px; color: var(--color-muted-text); }
.gw-hero-visual { position: relative; height: clamp(570px,48vw,690px); align-self: stretch; overflow: hidden; }
.gw-hero-visual picture { display: block; height: 100%; }
.gw-hero-visual img { height: 100%; object-fit: cover; object-position: center 45%; }
.gw-hero-visual::after { content: ''; position: absolute; inset: auto 0 0; height: 65px; background: linear-gradient(transparent,rgba(13,39,34,.6)); pointer-events: none; }
.gw-hero-visual figcaption { position: absolute; bottom: 15px; left: 20px; right: 20px; z-index: 1; color: var(--color-warm-ivory); font-size: 9px; }
.gw-image-status { position: absolute; top: 18px; left: 20px; padding: 8px 11px; color: var(--color-warm-ivory); background: rgba(13,39,34,.82); font-size: 8px; letter-spacing: .1em; text-transform: uppercase; }
.gw-facts { background: var(--color-warm-white); border-top: 1px solid var(--gw-rule); border-bottom: 1px solid var(--gw-rule); }
.gw-facts-inner { display: grid; grid-template-columns: repeat(4,1fr); padding-block: 28px; }
.gw-facts-inner > div { border-left: 1px solid var(--gw-rule); padding-left: 30px; }
.gw-facts-inner > div:first-child { border-left: 0; padding-left: 0; }
.gw-facts-inner span { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; color: var(--color-muted-text); }
.gw-facts-inner p { font-size: 13px; font-weight: 500; margin-top: 7px; line-height: 1.6; }

.gw-story-top { display: grid; grid-template-columns: .55fr 1fr 1.05fr; gap: 35px; align-items: start; margin-bottom: 39px; }
.gw-story-top > .gw-eyebrow { padding-top: 6px; max-width: 150px; }
.gw-story-top h2 { font-size: 52px; }
.gw-story-top > div p { font-size: 15px; }
.gw-story-top > div p + p { margin-top: 17px; font-size: 13px; }
.gw-story-visual { position: relative; height: 520px; overflow: hidden; }
.gw-story-visual img { height: 100%; object-fit: cover; object-position: center 80%; }
.gw-story-visual::after { content: ''; position: absolute; inset: 50% 0 0; background: linear-gradient(transparent,rgba(13,39,34,.6)); pointer-events: none; }
.gw-story-visual figcaption { position: absolute; bottom: 19px; right: 23px; left: 23px; z-index: 1; color: var(--color-warm-ivory); text-align: right; }
.gw-visual-word { position: absolute; bottom: 38px; left: 35px; z-index: 1; color: var(--color-warm-ivory); font-family: var(--font-headline); font-size: 52px; letter-spacing: -.02em; }
.gw-story-bottom { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-top: 22px; }
.gw-story-bottom p { font-size: 11px; color: var(--color-muted-text); max-width: 580px; }
.gw-story-bottom .gw-text-link { flex-shrink: 0; font-size: 12px; }

.gw-residences { background: var(--color-soft-stone); }
.gw-section-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 50px; margin-bottom: 38px; }
.gw-section-heading .gw-eyebrow { margin-bottom: 20px; }
.gw-section-heading > p { max-width: 400px; color: var(--color-muted-text); font-size: 15px; padding-bottom: 5px; }
.gw-configuration-tabs { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--gw-rule); border-bottom: 1px solid var(--gw-rule); margin-bottom: 32px; }
.gw-configuration-tabs button { position: relative; text-align: left; padding: 21px 24px; border: 0; border-left: 1px solid var(--gw-rule); background: transparent; color: var(--color-dark-ink); transition: background var(--gw-transition); }
.gw-configuration-tabs button:first-child { border-left: 0; }
.gw-configuration-tabs button[aria-selected="true"] { background: var(--color-primary-forest); color: var(--color-warm-ivory); }
.gw-configuration-tabs button > span { display: block; font-family: var(--font-headline); font-size: 31px; line-height: 1.1; }
.gw-configuration-tabs button > small { display: block; font-size: 9px; font-weight: 400; line-height: 1.8; margin-top: 8px; }
.gw-residence-panel { display: grid; grid-template-columns: .86fr 1.3fr; gap: clamp(38px,5.5vw,76px); }
.gw-residence-copy { padding-block: 11px; }
.gw-residence-copy > .gw-eyebrow { font-size: 9px; margin-bottom: 24px; }
.gw-select-label { display: block; font-size: 11px; font-weight: 600; margin-bottom: 9px; }
.gw-residence-copy select, .gw-floor-picker select { appearance: auto; width: 100%; padding: 11px 12px; min-height: 45px; border: 1px solid var(--gw-rule); border-radius: 4px; color: var(--color-dark-ink); background: var(--color-warm-ivory); font-size: 13px; }
.gw-residence-copy h3 { font-size: 45px; margin-top: 27px; line-height: 1.05; }
.gw-residence-copy h3 em { display: block; font-size: 27px; color: var(--color-primary-forest); font-style: italic; margin-top: 10px; }
.gw-area-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 26px; }
.gw-area-head > span { font-size: 10px; text-transform: uppercase; letter-spacing: .11em; }
.gw-area-units { display: flex; border-bottom: 1px solid var(--gw-rule); }
.gw-area-units button { font-size: 10px; padding: 5px 8px; border: 0; background: transparent; color: var(--color-muted-text); }
.gw-area-units button[aria-pressed="true"] { color: var(--color-primary-forest); border-bottom: 1px solid var(--color-brass); font-weight: 600; }
.gw-page .gw-area-value { font-family: var(--font-headline); font-size: 59px; line-height: 1.2; letter-spacing: -.015em; margin-top: 7px; white-space: nowrap; }
.gw-area-value > small { font-family: var(--font-body); font-size: 12px; letter-spacing: 0; margin-left: 10px; }
.gw-residence-facts { margin-block: 21px 19px; }
.gw-residence-facts > div { display: flex; justify-content: space-between; gap: 18px; border-top: 1px solid var(--gw-rule); padding-block: 12px; font-size: 11px; line-height: 1.7; }
.gw-residence-facts dd { margin: 0; text-align: right; font-weight: 500; }
.gw-residence-facts dt { color: var(--color-muted-text); }
.gw-page .gw-residence-area-note { font-size: 11px; color: var(--color-muted-text); line-height: 1.8; padding-left: 13px; border-left: 1px solid var(--color-brass); }
.gw-residence-copy > .gw-button { margin-top: 25px; font-size: 12px; width: 100%; justify-content: space-between; padding-inline: 17px; }
.gw-source-link { margin-top: 18px; font-size: 11px; }
.gw-residence-plan { background: var(--color-warm-white); min-width: 0; }
.gw-plan-toolbar { padding: 17px 21px; border-bottom: 1px solid var(--gw-rule); display: flex; justify-content: space-between; align-items: center; gap: 15px; flex-wrap: wrap; }
.gw-plan-toolbar > p { font-size: 11px; font-weight: 600; }
.gw-plan-toolbar > span { font-size: 8px; color: var(--color-muted-text); text-transform: uppercase; letter-spacing: .08em; }
.gw-plan-image-link { display: block; position: relative; background: white; }
.gw-plan-image-link img { aspect-ratio: 1; object-fit: contain; max-height: 635px; }
.gw-image-enlarge { display: inline-flex; align-items: center; gap: 7px; position: absolute; right: 14px; bottom: 14px; padding: 9px 12px; border: 1px solid var(--gw-rule); background: var(--color-warm-ivory); border-radius: 3px; font-size: 10px; font-weight: 600; box-shadow: 0 1px 8px rgba(13,39,34,.1); }
.gw-image-enlarge svg { width: 17px; height: 17px; }
.gw-plan-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 15px 20px; border-top: 1px solid var(--gw-rule); }
.gw-plan-foot p { font-size: 9px; color: var(--color-muted-text); }
.gw-plan-foot a { display: flex; gap: 6px; align-items: center; font-size: 10px; }
.gw-plan-foot a svg { width: 14px; height: 14px; }
.gw-page .gw-residence-footnote { max-width: 850px; color: var(--color-muted-text); font-size: 10px; line-height: 1.9; margin-top: 24px; }

.gw-experience { background: var(--color-primary-forest); color: var(--color-warm-ivory); padding-top: var(--gw-section-gap); }
.gw-experience-heading { display: flex; justify-content: space-between; gap: 55px; align-items: flex-end; padding-bottom: 42px; }
.gw-experience-heading .gw-eyebrow { margin-bottom: 23px; color: var(--color-muted-sage); }
.gw-experience-heading > p { max-width: 380px; color: rgba(244,240,231,.88); font-size: 15px; }
.gw-experience-image { position: relative; overflow: hidden; height: 570px; width: min(100%,1600px); margin-inline: auto !important; }
.gw-experience-image img { height: 100%; object-fit: cover; object-position: center 48%; }
.gw-experience-image::after { content: ''; position: absolute; inset: auto 0 0; height: 90px; background: linear-gradient(transparent,rgba(13,39,34,.65)); pointer-events: none; }
.gw-experience-image figcaption { position: absolute; z-index: 1; bottom: 19px; left: var(--gw-page-gutter); right: 20px; font-size: 9px; color: var(--color-warm-ivory); }
.gw-experience-caption { display: flex; justify-content: space-between; align-items: center; gap: 30px; padding-block: 23px 26px; }
.gw-experience-caption > span { font-family: var(--font-headline); font-size: 26px; }
.gw-experience-caption > p { color: var(--color-muted-sage); font-size: 10px; }
.gw-amenities { background: var(--color-warm-ivory); }
.gw-amenity-tabs { display: flex; gap: 37px; border-bottom: 1px solid var(--gw-rule); margin-top: 23px; }
.gw-amenity-tabs button { display: inline-flex; gap: 11px; align-items: center; padding: 16px 0; border: 0; background: transparent; color: var(--color-muted-text); font-size: 12px; line-height: 1.5; }
.gw-amenity-tabs button > span { font-size: 9px; color: var(--color-brass); }
.gw-amenity-tabs button[aria-selected="true"] { color: var(--color-primary-forest); font-weight: 600; box-shadow: 0 1px var(--color-primary-forest); }
.gw-amenity-panel { display: grid; grid-template-columns: .9fr 1.25fr; gap: 70px; align-items: center; margin-top: 38px; }
.gw-amenity-copy h2 { font-size: 52px; }
.gw-amenity-copy > p:not(.gw-amenity-status) { color: var(--color-muted-text); margin-top: 26px; font-size: 15px; }
.gw-page .gw-amenity-status { font-size: 10px; margin-top: 22px; text-transform: uppercase; letter-spacing: .08em; color: var(--color-primary-forest); }
.gw-amenity-copy .gw-text-link { margin-top: 23px; font-size: 11px; }
.gw-amenity-visual img { aspect-ratio: 1.45; object-fit: contain; background: var(--color-warm-white); }
.gw-amenity-visual figcaption { color: var(--color-muted-text); margin-top: 11px; font-size: 9px; }

.gw-plans { background: var(--color-warm-white); border-block: 1px solid var(--gw-rule); }
.gw-plan-controls { display: flex; justify-content: space-between; align-items: center; gap: 25px; border-bottom: 1px solid var(--gw-rule); padding-bottom: 20px; margin-bottom: 27px; }
.gw-plan-mode { display: flex; gap: 8px; }
.gw-plan-mode button { border: 1px solid var(--gw-rule); color: var(--color-primary-forest); background: transparent; border-radius: 4px; padding: 12px 16px; min-height: 43px; font-size: 11px; }
.gw-plan-mode button[aria-pressed="true"] { background: var(--color-primary-forest); color: var(--color-warm-ivory); }
.gw-floor-picker { display: flex; gap: 12px; align-items: center; }
.gw-floor-picker label { font-size: 11px; }
.gw-floor-picker select { min-width: 155px; font-size: 11px; }
.gw-drawing-grid { display: grid; grid-template-columns: 1.7fr .85fr; gap: 48px; align-items: center; }
.gw-masterplan-figure { min-width: 0; }
.gw-masterplan-figure > a { position: relative; display: block; background: white; }
.gw-masterplan-figure img { aspect-ratio: 1.45; max-height: 550px; object-fit: contain; }
.gw-masterplan-figure figcaption { margin-top: 13px; color: var(--color-muted-text); }
.gw-drawing-copy h3 { font-size: 42px; line-height: 1.07; margin-top: 18px; }
.gw-drawing-copy > p:not(.gw-eyebrow,.gw-drawing-note) { font-size: 15px; color: var(--color-muted-text); margin-top: 22px; }
.gw-drawing-copy > .gw-text-link { font-size: 11px; margin-top: 24px; }
.gw-page .gw-drawing-note { font-size: 11px; color: var(--color-muted-text); border-top: 1px solid var(--gw-rule); margin-top: 28px; padding-top: 19px; }

.gw-location { background: var(--color-warm-ivory); }
.gw-location-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 60px; }
.gw-location-map { min-width: 0; }
.gw-location-map > a { display: block; position: relative; }
.gw-location-map img { aspect-ratio: 1491/1055; object-fit: contain; }
.gw-location-map figcaption { margin-top: 11px; color: var(--color-muted-text); }
.gw-location-copy { padding-block: 10px; }
.gw-location-copy h3 { font-size: 42px; line-height: 1.08; margin-top: 19px; }
.gw-page .gw-address { font-size: 13px; color: var(--color-muted-text); margin-top: 19px; max-width: 310px; }
.gw-location-copy > .gw-text-link { margin-top: 23px; font-size: 12px; }
.gw-location-notes { margin-top: 29px; }
.gw-location-notes details { border-top: 1px solid var(--gw-rule); padding-block: 13px; }
.gw-location-notes details:last-child { border-bottom: 1px solid var(--gw-rule); }
.gw-location-notes summary { list-style: none; font-size: 11px; font-weight: 600; display: flex; align-items: center; justify-content: space-between; gap: 15px; cursor: pointer; }
.gw-location-notes summary::-webkit-details-marker { display: none; }
.gw-location-notes summary > span { font-size: 17px; font-weight: 400; }
.gw-location-notes details[open] summary > span { transform: rotate(45deg); }
.gw-location-notes p { font-size: 12px; margin-top: 11px; color: var(--color-muted-text); }

.gw-trust { background: var(--color-soft-stone); }
.gw-trust-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 85px; }
.gw-trust-grid > div:first-child .gw-eyebrow { margin-bottom: 24px; }
.gw-trust-grid > div:first-child h2 { font-size: 51px; }
.gw-trust-grid > div:first-child > p:not(.gw-eyebrow) { font-size: 15px; color: var(--color-muted-text); max-width: 390px; margin-top: 24px; }
.gw-trust-rows > div { display: flex; gap: 22px; border-top: 1px solid var(--gw-rule); padding-block: 22px; }
.gw-trust-rows > div > span { font-family: var(--font-headline); font-size: 18px; color: var(--color-primary-forest); }
.gw-trust-rows > div p { font-size: 13px; color: var(--color-muted-text); line-height: 1.8; }
.gw-trust-rows > div strong { display: block; color: var(--color-dark-ink); font-size: 14px; font-weight: 600; margin-bottom: 6px; }
.gw-trust-rows > div a { display: inline-flex; gap: 6px; align-items: center; font-size: 12px; color: var(--color-primary-forest); }
.gw-trust-rows > div a svg { width: 15px; height: 15px; }
.gw-registrations { border-block: 1px solid var(--gw-rule); padding-block: 20px; }
.gw-registrations summary { list-style: none; display: flex; justify-content: space-between; gap: 15px; align-items: center; font-size: 13px; font-weight: 600; cursor: pointer; }
.gw-registrations summary::-webkit-details-marker { display: none; }
.gw-registrations summary > span { font-size: 19px; font-weight: 400; }
.gw-registrations[open] summary > span { transform: rotate(45deg); }
.gw-registrations dl { margin: 23px 0; }
.gw-registrations dl > div { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--gw-rule); padding-block: 7px; font-size: 11px; }
.gw-registrations dd { margin: 0; font-variant-numeric: tabular-nums; }
.gw-registrations .gw-text-link { font-size: 11px; }
.gw-registrations p { font-size: 10px; margin-top: 16px; color: var(--color-muted-text); }

.gw-faq-grid { display: grid; grid-template-columns: .9fr 1.15fr; gap: 76px; }
.gw-faq-grid > div:first-child .gw-eyebrow { margin-bottom: 24px; }
.gw-faq-grid > div:first-child > p:not(.gw-eyebrow) { color: var(--color-muted-text); font-size: 14px; margin-top: 25px; }
.gw-faq-items details { border-top: 1px solid var(--gw-rule); }
.gw-faq-items details:last-child { border-bottom: 1px solid var(--gw-rule); }
.gw-faq-items summary { min-height: 78px; padding-block: 21px; display: flex; align-items: center; gap: 21px; list-style: none; cursor: pointer; font-size: 13px; font-weight: 600; line-height: 1.7; }
.gw-faq-items summary::-webkit-details-marker { display: none; }
.gw-faq-items summary > span:nth-child(2) { flex: 1; }
.gw-faq-number { font-family: var(--font-headline); font-size: 16px; color: var(--color-muted-text); font-weight: 400; }
.gw-faq-plus { font-size: 21px; font-weight: 400; transition: transform var(--gw-transition); }
.gw-faq-items details[open] .gw-faq-plus { transform: rotate(45deg); }
.gw-faq-items details > p { padding: 0 31px 24px 36px; font-size: 14px; color: var(--color-muted-text); }

.gw-enquiry { background: var(--color-deep-forest); color: var(--color-warm-ivory); }
.gw-enquiry-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(60px,8vw,115px); align-items: center; }
.gw-enquiry-copy .gw-eyebrow { color: var(--color-muted-sage); margin-bottom: 26px; }
.gw-enquiry-copy h2 { font-size: 66px; }
.gw-enquiry-copy > p:not(.gw-eyebrow) { margin-top: 26px; max-width: 390px; color: rgba(244,240,231,.85); }
.gw-enquiry-note { display: flex; gap: 18px; align-items: center; margin-top: 45px; }
.gw-enquiry-note > span { height: 1px; width: 35px; background: var(--color-brass); }
.gw-enquiry-note p { font-size: 11px; color: var(--color-muted-sage); }
.gw-enquiry-panel { padding: 36px; background: var(--color-warm-ivory); color: var(--color-dark-ink); border-radius: 8px; }
.gw-enquiry-panel > .gw-eyebrow { font-size: 9px; color: var(--color-muted-text); }
.gw-enquiry-panel h3 { font-size: 39px; line-height: 1.2; margin-top: 13px; }
.gw-request-modes { display: flex; gap: 5px; margin-block: 22px 25px; }
.gw-request-modes button { flex: 1; border: 1px solid var(--gw-rule); padding: 11px 8px; border-radius: 4px; font-size: 10px; min-height: 42px; background: transparent; color: var(--color-dark-ink); }
.gw-request-modes button[aria-pressed="true"] { border-color: var(--color-primary-forest); color: var(--color-primary-forest); font-weight: 600; background: var(--color-soft-stone); }
.gw-field { margin-top: 18px; }
.gw-field label { display: block; font-size: 11px; font-weight: 600; margin-bottom: 8px; }
.gw-field input, .gw-field select { border: 1px solid var(--gw-rule); background: transparent; color: var(--color-dark-ink); width: 100%; min-height: 47px; border-radius: 4px; padding: 12px; font-size: 13px; }
.gw-field input::placeholder { color: var(--color-muted-text); opacity: 1; }
.gw-field input[aria-invalid="true"] { border-color: #923b2c; }
.gw-phone-input { display: flex; border: 1px solid var(--gw-rule); border-radius: 4px; }
.gw-phone-input > span { padding: 15px 12px; font-size: 11px; }
.gw-phone-input > input { border: 0; flex: 1; min-width: 0; }
.gw-page .gw-field-error { font-size: 11px; color: #923b2c; margin-top: 5px; line-height: 1.7; }
.gw-submit { width: 100%; justify-content: space-between; margin-top: 25px; font-size: 13px; }
.gw-page .gw-preview-note { font-size: 10px; line-height: 1.8; color: var(--color-muted-text); margin-top: 20px; padding-top: 15px; border-top: 1px solid var(--gw-rule); }
.gw-form-result { font-size: 12px; line-height: 1.8; background: var(--color-soft-stone); padding: 15px; border-left: 2px solid var(--color-primary-forest); margin-top: 16px; }

.gw-footer { background: var(--color-deep-forest); color: var(--color-warm-ivory); border-top: 1px solid rgba(244,240,231,.17); padding-block: 42px 29px; }
.gw-footer-top { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding-bottom: 31px; }
.gw-footer-top > p { font-family: var(--font-headline); font-size: 24px; color: var(--color-muted-sage); }
.gw-footer-top > a:last-child { font-size: 11px; border-color: rgba(244,240,231,.4); }
.gw-footer-bottom { display: grid; grid-template-columns: 1.2fr 1fr; gap: 50px; padding-top: 24px; border-top: 1px solid rgba(244,240,231,.17); }
.gw-footer-bottom p { font-size: 9px; line-height: 1.9; color: var(--color-muted-sage); }
.gw-footer-bottom p:last-child { margin-top: 9px; }
.gw-footer-links { display: flex; justify-content: flex-end; flex-wrap: wrap; align-content: start; gap: 13px 24px; }
.gw-footer-links a { font-size: 10px; display: flex; gap: 6px; align-items: center; }
.gw-footer-links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.gw-footer-links svg { width: 13px; height: 13px; }

.gw-media-dialog { background: var(--color-warm-ivory); color: var(--color-dark-ink); border: 0; border-radius: 7px; width: min(1180px,calc(100% - 40px)); max-height: 92svh; padding: 28px 32px; overflow-y: auto; box-shadow: 0 25px 100px rgba(0,0,0,.25); }
.gw-media-dialog::backdrop { background: rgba(13,39,34,.82); }
.gw-media-heading { display: flex; gap: 25px; justify-content: space-between; align-items: flex-start; }
.gw-media-heading .gw-eyebrow { font-size: 9px; }
.gw-media-heading h2 { font-size: 32px; line-height: 1.15; margin-top: 8px; }
.gw-media-close { border: 1px solid var(--gw-rule); border-radius: 50%; background: transparent; color: var(--color-dark-ink); width: 43px; height: 43px; flex-shrink: 0; font-size: 26px; font-weight: 400; }
.gw-media-tools { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-block: 17px; }
.gw-media-tools > div { display: flex; gap: 7px; }
.gw-media-tools button { min-width: 37px; height: 37px; background: var(--color-warm-white); border: 1px solid var(--gw-rule); border-radius: 3px; padding-inline: 10px; font-size: 13px; }
.gw-media-tools a { font-size: 11px; }
.gw-media-scroll { height: 57svh; overflow: auto; background: var(--color-soft-stone); border: 1px solid var(--gw-rule); }
.gw-media-scroll img { display: block; width: 100%; max-width: none; height: auto; margin-inline: auto; }
.gw-page .gw-media-note { font-size: 10px; color: var(--color-muted-text); line-height: 1.8; margin-top: 13px; }

@media (max-width: 1100px) {
  .gw-navigation { gap: 21px; font-size: 11px; }
  .gw-hero-grid { gap: 40px; }
  .gw-hero-copy h1 { font-size: 72px; }
  .gw-hero-visual { height: 620px; }
  .gw-story-top { grid-template-columns: .6fr 1.2fr 1.4fr; gap: 25px; }
  .gw-story-top h2 { font-size: 45px; }
  .gw-residence-panel { gap: 36px; }
  .gw-residence-copy h3 { font-size: 40px; }
  .gw-page .gw-area-value { font-size: 52px; }
  .gw-residence-copy > .gw-button { font-size: 11px; gap: 12px; }
  .gw-amenity-panel, .gw-location-grid { gap: 40px; }
  .gw-trust-grid, .gw-faq-grid { gap: 50px; }
  .gw-amenity-copy h2, .gw-trust-grid > div:first-child h2 { font-size: 45px; }
  .gw-enquiry-copy h2 { font-size: 57px; }
  .gw-enquiry-panel { padding: 30px 26px; }
}
@media (max-width: 900px) {
  .gw-page { --gw-page-gutter: 32px; }
  .gw-header-inner { height: 82px; }
  .gw-menu-button { display: flex; flex-direction: column; justify-content: center; gap: 7px; width: 44px; height: 44px; border: 1px solid var(--gw-rule); background: transparent; border-radius: 4px; padding: 10px; z-index: 28; }
  .gw-menu-button > span { width: 22px; height: 1px; background: var(--color-primary-forest); transition: transform var(--gw-transition); }
  .gw-menu-button[aria-expanded="true"] > span:first-child { transform: translateY(4px) rotate(45deg); }
  .gw-menu-button[aria-expanded="true"] > span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .gw-header .gw-wordmark { position: relative; z-index: 28; }
  .gw-navigation { display: none; position: fixed; inset: 0; height: 100svh; background: var(--color-warm-ivory); flex-direction: column; align-items: flex-start; gap: 30px; padding: 135px var(--gw-page-gutter) 50px; font-size: 20px; overflow-y: auto; }
  .gw-navigation.is-open { display: flex; }
  .gw-nav-request { font-size: 16px; }
  .gw-hero-grid { gap: 28px; }
  .gw-hero-copy h1 { font-size: 66px; }
  .gw-page .gw-hero-tagline { font-size: 28px; }
  .gw-hero-description { font-size: 14px !important; }
  .gw-hero-note { margin-top: 29px; }
  .gw-facts-inner > div { padding-left: 20px; }
  .gw-facts-inner p { font-size: 11px; }
  .gw-story-top { grid-template-columns: 1fr 1.2fr; gap: 25px; }
  .gw-story-top > .gw-eyebrow { grid-column: 1/-1; max-width: none; padding-top: 0; }
  .gw-story-visual { height: 430px; }
  .gw-story-bottom { align-items: flex-start; }
  .gw-story-bottom p { max-width: 350px; }
  .gw-configuration-tabs button { padding: 18px 15px; }
  .gw-configuration-tabs button > span { font-size: 27px; }
  .gw-configuration-tabs button > small { font-size: 8px; }
  .gw-residence-panel { grid-template-columns: .92fr 1.15fr; gap: 27px; }
  .gw-plan-toolbar { padding-inline: 14px; }
  .gw-plan-foot { padding-inline: 14px; }
  .gw-residence-facts > div { font-size: 10px; }
  .gw-residence-copy h3 { font-size: 36px; }
  .gw-page .gw-area-value { font-size: 44px; }
  .gw-experience-heading > p { max-width: 300px; font-size: 14px; }
  .gw-experience-image { height: 460px; }
  .gw-amenity-panel { gap: 30px; }
  .gw-amenity-copy h2 { font-size: 43px; }
  .gw-amenity-copy > p:not(.gw-amenity-status) { font-size: 14px; }
  .gw-drawing-grid { grid-template-columns: 1.45fr 1fr; gap: 30px; }
  .gw-drawing-copy h3 { font-size: 35px; }
  .gw-drawing-copy > p:not(.gw-eyebrow,.gw-drawing-note) { font-size: 13px; }
  .gw-location-grid { gap: 30px; }
  .gw-location-copy h3 { font-size: 36px; }
  .gw-location-notes { margin-top: 22px; }
  .gw-trust-grid, .gw-faq-grid { gap: 33px; }
  .gw-trust-grid > div:first-child h2 { font-size: 42px; }
  .gw-enquiry-grid { gap: 40px; }
  .gw-enquiry-copy h2 { font-size: 51px; }
  .gw-enquiry-panel { padding-inline: 23px; }
  .gw-request-modes button { font-size: 9px; }
  .gw-footer-top { gap: 18px; }
  .gw-footer-top > p { font-size: 20px; }
}
@media (max-width: 700px) {
  html { scroll-padding-top: 88px; }
  .gw-page { --gw-page-gutter: 24px; --gw-section-gap: 64px; --gw-heading-size: 40px; --gw-hero-size: 57px; }
  .gw-header-inner { height: 76px; }
  .gw-wordmark span { font-size: 14px; }
  .gw-breadcrumb { font-size: 9px; margin-bottom: 18px; gap: 12px; }
  .gw-hero { padding-block: 20px 40px; }
  .gw-hero-grid { grid-template-columns: 1fr; gap: 26px; }
  .gw-hero-visual { order: -1; height: 410px; }
  .gw-hero-visual img { object-position: center 32%; }
  .gw-hero-visual figcaption { font-size: 8px; left: 14px; right: 14px; bottom: 13px; }
  .gw-image-status { left: 14px; top: 14px; font-size: 7px; }
  .gw-hero-copy { padding: 0; }
  .gw-hero-copy .gw-eyebrow { font-size: 9px; margin-bottom: 17px; }
  .gw-hero-copy h1 { font-size: var(--gw-hero-size); max-width: 100%; }
  .gw-page .gw-hero-tagline { font-size: 27px; margin-top: 15px; }
  .gw-hero-description { font-size: 16px !important; line-height: 1.8 !important; margin-top: 18px !important; }
  .gw-project-status { margin-top: 19px !important; }
  .gw-hero-actions { margin-top: 23px; gap: 20px; }
  .gw-hero-actions .gw-button { width: 100%; justify-content: space-between; font-size: 14px; }
  .gw-hero-note { margin-top: 29px; max-width: none; padding-top: 19px; }
  .gw-facts-inner { grid-template-columns: 1fr 1fr; gap: 21px 18px; padding-block: 25px; }
  .gw-facts-inner > div { padding-left: 17px; }
  .gw-facts-inner > div:nth-child(3) { border-left: 0; padding-left: 0; }
  .gw-facts-inner span { font-size: 8px; }
  .gw-facts-inner p { font-size: 12px; }
  .gw-story-top { grid-template-columns: 1fr; gap: 21px; margin-bottom: 29px; }
  .gw-story-top h2 { font-size: var(--gw-heading-size); }
  .gw-story-top > div p { font-size: 16px; }
  .gw-story-top > div p + p { font-size: 14px; }
  .gw-story-visual { height: 395px; }
  .gw-story-visual img { object-position: 58% center; }
  .gw-visual-word { font-size: 37px; left: 22px; bottom: 42px; }
  .gw-story-visual figcaption { text-align: left; font-size: 8px; left: 22px; right: 16px; bottom: 15px; }
  .gw-story-bottom { flex-direction: column; gap: 19px; margin-top: 19px; }
  .gw-story-bottom p { font-size: 11px; max-width: none; }
  .gw-story-bottom .gw-text-link { font-size: 13px; }
  .gw-section-heading { display: block; margin-bottom: 29px; }
  .gw-section-heading > p { margin-top: 23px; max-width: none; font-size: 15px; }
  .gw-section-heading .gw-eyebrow { margin-bottom: 19px; }
  .gw-configuration-tabs { gap: 0; margin-bottom: 26px; }
  .gw-configuration-tabs button { padding: 15px 8px; text-align: center; min-height: 62px; }
  .gw-configuration-tabs button > span { font-size: 25px; white-space: nowrap; }
  .gw-configuration-tabs button > small { display: none; }
  .gw-residence-panel { grid-template-columns: 1fr; gap: 28px; }
  .gw-residence-copy { padding: 0; }
  .gw-residence-copy > .gw-eyebrow { margin-bottom: 18px; }
  .gw-select-label { font-size: 12px; }
  .gw-residence-copy select { font-size: 16px; min-height: 49px; }
  .gw-residence-copy h3 { font-size: 41px; margin-top: 24px; }
  .gw-residence-copy h3 em { font-size: 27px; }
  .gw-area-head { margin-top: 24px; }
  .gw-page .gw-area-value { font-size: 53px; }
  .gw-residence-facts > div { font-size: 12px; }
  .gw-page .gw-residence-area-note { font-size: 12px; }
  .gw-residence-copy > .gw-button { font-size: 13px; margin-top: 24px; }
  .gw-source-link { font-size: 12px; }
  .gw-plan-toolbar { padding: 16px; }
  .gw-plan-toolbar > p { font-size: 11px; }
  .gw-plan-image-link img { max-height: none; }
  .gw-plan-foot { padding: 14px; }
  .gw-image-enlarge { right: 10px; bottom: 10px; font-size: 9px; padding: 8px 10px; }
  .gw-page .gw-residence-footnote { font-size: 11px; line-height: 1.8; }
  .gw-experience-heading { display: block; padding-bottom: 31px; }
  .gw-experience-heading > p { max-width: none; font-size: 16px; margin-top: 23px; }
  .gw-experience-image { height: 380px; }
  .gw-experience-image img { object-position: 53% center; }
  .gw-experience-image figcaption { left: 24px; font-size: 8px; line-height: 1.8; max-width: 300px; }
  .gw-experience-caption { align-items: flex-start; flex-direction: column; gap: 10px; padding-block: 22px 27px; }
  .gw-experience-caption > span { font-size: 24px; }
  .gw-experience-caption > p { font-size: 10px; }
  .gw-amenity-tabs { gap: 18px; justify-content: space-between; margin-top: 19px; }
  .gw-amenity-tabs button { flex-direction: column; gap: 6px; align-items: flex-start; font-size: 11px; padding-block: 15px; }
  .gw-amenity-tabs button > span { font-size: 8px; }
  .gw-amenity-panel { grid-template-columns: 1fr; gap: 26px; margin-top: 30px; }
  .gw-amenity-copy h2 { font-size: var(--gw-heading-size); }
  .gw-amenity-copy > p:not(.gw-amenity-status) { font-size: 16px; margin-top: 22px; }
  .gw-amenity-copy .gw-text-link { font-size: 12px; }
  .gw-amenity-visual img { aspect-ratio: 1.28; }
  .gw-amenity-visual figcaption { font-size: 9px; }
  .gw-plan-controls { flex-direction: column; align-items: flex-start; gap: 18px; padding-bottom: 23px; }
  .gw-plan-mode { width: 100%; }
  .gw-plan-mode button { font-size: 12px; flex: 1; min-height: 46px; padding-inline: 12px; }
  .gw-floor-picker { width: 100%; }
  .gw-floor-picker label { font-size: 12px; }
  .gw-floor-picker select { flex: 1; font-size: 16px; }
  .gw-drawing-grid { grid-template-columns: 1fr; gap: 29px; }
  .gw-masterplan-figure img { aspect-ratio: 1.2; max-height: none; }
  .gw-masterplan-figure figcaption { font-size: 9px; }
  .gw-drawing-copy h3 { font-size: 36px; }
  .gw-drawing-copy > p:not(.gw-eyebrow,.gw-drawing-note) { font-size: 16px; }
  .gw-drawing-copy > .gw-text-link { font-size: 12px; }
  .gw-page .gw-drawing-note { font-size: 12px; margin-top: 23px; }
  .gw-location-grid { grid-template-columns: 1fr; gap: 29px; }
  .gw-location-map { margin-inline: -7px !important; }
  .gw-location-map figcaption { font-size: 9px; }
  .gw-location-copy { padding: 0; }
  .gw-location-copy h3 { font-size: 39px; }
  .gw-page .gw-address { font-size: 14px; max-width: none; }
  .gw-location-copy > .gw-text-link { font-size: 13px; }
  .gw-location-notes summary { font-size: 12px; padding-block: 6px; }
  .gw-location-notes p { font-size: 14px; }
  .gw-trust-grid { grid-template-columns: 1fr; gap: 32px; }
  .gw-trust-grid > div:first-child h2 { font-size: var(--gw-heading-size); }
  .gw-trust-grid > div:first-child > p:not(.gw-eyebrow) { font-size: 16px; max-width: none; }
  .gw-trust-rows > div { gap: 17px; padding-block: 20px; }
  .gw-trust-rows > div p { font-size: 14px; }
  .gw-trust-rows > div strong { font-size: 14px; }
  .gw-trust-rows > div a { font-size: 13px; }
  .gw-registrations summary { font-size: 12px; }
  .gw-registrations dl > div { font-size: 10px; }
  .gw-registrations p { font-size: 11px; }
  .gw-faq-grid { grid-template-columns: 1fr; gap: 29px; }
  .gw-faq-grid > div:first-child > p:not(.gw-eyebrow) { font-size: 15px; margin-top: 21px; }
  .gw-faq-items summary { font-size: 13px; gap: 15px; padding-block: 19px; }
  .gw-faq-items details > p { padding-inline: 28px 6px; font-size: 14px; }
  .gw-enquiry-grid { grid-template-columns: 1fr; gap: 34px; }
  .gw-enquiry-copy h2 { font-size: 44px; }
  .gw-enquiry-copy > p:not(.gw-eyebrow) { font-size: 16px; margin-top: 22px; }
  .gw-enquiry-note { margin-top: 25px; }
  .gw-enquiry-panel { padding: 29px 23px 25px; }
  .gw-enquiry-panel h3 { font-size: 36px; }
  .gw-request-modes button { font-size: 10px; min-height: 44px; padding-inline: 7px; }
  .gw-field label { font-size: 12px; }
  .gw-field input, .gw-field select { font-size: 16px; min-height: 49px; }
  .gw-phone-input > span { font-size: 12px; padding-top: 16px; }
  .gw-submit { font-size: 13px; }
  .gw-page .gw-preview-note { font-size: 10px; }
  .gw-footer { padding-block: 32px 27px; }
  .gw-footer-top { flex-wrap: wrap; gap: 23px; }
  .gw-footer-top > p { order: 3; flex-basis: 100%; font-size: 24px; }
  .gw-footer-top .gw-text-link { font-size: 10px; gap: 6px; }
  .gw-footer-bottom { grid-template-columns: 1fr; gap: 23px; }
  .gw-footer-links { justify-content: flex-start; gap: 13px 23px; }
  .gw-footer-links a { font-size: 10px; min-height: 30px; }
  .gw-media-dialog { width: calc(100% - 24px); padding: 22px 15px; }
  .gw-media-heading h2 { font-size: 26px; }
  .gw-media-heading .gw-eyebrow { font-size: 8px; }
  .gw-media-tools a { font-size: 10px; }
  .gw-media-scroll { height: 59svh; }
  .gw-page .gw-media-note { font-size: 9px; }
}
@media (max-width: 360px) {
  .gw-page { --gw-page-gutter: 20px; --gw-hero-size: 51px; --gw-heading-size: 37px; }
  .gw-hero-visual { height: 350px; }
  .gw-wordmark span { font-size: 12px; }
  .gw-facts-inner p { font-size: 11px; }
  .gw-configuration-tabs button > span { font-size: 22px; }
  .gw-page .gw-area-value { font-size: 48px; }
  .gw-residence-facts > div { font-size: 11px; }
  .gw-amenity-tabs { gap: 10px; }
  .gw-amenity-tabs button { font-size: 10px; }
  .gw-enquiry-panel { padding-inline: 18px; }
  .gw-footer-top .gw-text-link { font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .gw-page *, .gw-page *::before, .gw-page *::after { transition: none !important; animation: none !important; }
}

.gw-screenreader { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* =========================================================
   GOLDEN WILLOWS HERO — FINAL POLISH
   ========================================================= */

@media (min-width: 1101px) {
  .gw-hero-grid {
    grid-template-columns: 0.8fr 1.2fr;
    gap: clamp(40px, 5vw, 72px);
  }
}

.gw-hero-visual figcaption {
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
  text-shadow: 0 1px 6px rgba(13, 39, 34, 0.55);
}

.gw-hero-actions .gw-text-link {
  color: var(--color-primary-forest);
  border-color: rgba(22, 53, 46, 0.42);
}

.gw-hero-actions .gw-text-link:hover {
  border-color: var(--color-primary-forest);
}

@media (max-width: 700px) {
  .gw-hero-visual figcaption {
    font-size: 8px;
    font-weight: 400;
  }
}
/* =========================================================
   GOLDEN WILLOWS STORY — MANIFESTO SECTION
   ========================================================= */

.gw-story {
  background: var(--color-deep-forest);
  color: var(--color-warm-ivory);
}

.gw-story-intro {
  display: grid;
  grid-template-columns: 0.45fr 1.15fr 0.95fr;
  gap: clamp(30px, 5vw, 72px);
  align-items: start;
  margin-bottom: 58px;
}

.gw-story-intro > .gw-eyebrow {
  color: var(--color-muted-sage);
  padding-top: 8px;
  max-width: 180px;
}

.gw-story-intro h2 {
  font-size: clamp(54px, 5vw, 74px);
  line-height: 0.98;
  max-width: 650px;
}

.gw-story-intro h2 em {
  display: block;
  font-weight: 400;
  font-style: italic;
  color: var(--color-brass);
  margin-top: 8px;
}

.gw-story-intro-copy {
  padding-top: 5px;
}

.gw-story-intro-copy p {
  font-size: 15px;
  line-height: 1.85;
  color: rgba(244, 240, 231, 0.88);
}

.gw-story-intro-copy p + p {
  margin-top: 22px;
  font-size: 12px;
  color: var(--color-muted-sage);
}


/* MASTERPLAN + STORY */

.gw-story-stage {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(270px, 0.7fr);
  gap: clamp(32px, 5vw, 70px);
  align-items: stretch;
}

.gw-story-masterplan {
  background: var(--color-warm-white);
  padding: 20px;
  min-width: 0;
}

.gw-story-masterplan img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.gw-story-masterplan figcaption {
  color: rgba(23, 37, 33, 0.64);
  margin-top: 14px;
  font-size: 9px;
}


/* RIGHT-HAND IDEA COLUMN */

.gw-story-pillars {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.gw-story-side-label {
  font-size: 9px !important;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--color-muted-sage);
  margin-bottom: 17px !important;
}

.gw-story-pillar {
  display: grid;
  grid-template-columns: 36px 1fr;
  gap: 18px;
  padding: 24px 0;
  border-top: 1px solid rgba(244, 240, 231, 0.18);
}

.gw-story-pillar > span {
  font-size: 9px;
  letter-spacing: 0.12em;
  color: var(--color-brass);
  padding-top: 6px;
}

.gw-story-pillar h3 {
  font-family: var(--font-headline);
  font-size: 29px;
  font-weight: 400;
  line-height: 1.1;
  color: var(--color-warm-ivory);
}

.gw-story-pillar p {
  margin-top: 9px !important;
  font-size: 12px !important;
  line-height: 1.75 !important;
  color: var(--color-muted-sage);
}

.gw-story-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: auto;
  padding: 20px 0 9px;
  border-bottom: 1px solid rgba(244, 240, 231, 0.45);
  color: var(--color-warm-ivory);
  font-size: 13px;
  font-weight: 600;
}

.gw-story-cta svg {
  width: 20px;
  height: 20px;
}

.gw-story-cta:hover {
  border-color: var(--color-brass);
}


/* TABLET */

@media (max-width: 900px) {

  .gw-story-intro {
    grid-template-columns: 1fr 1.5fr;
  }

  .gw-story-intro > .gw-eyebrow {
    grid-column: 1 / -1;
  }

  .gw-story-intro-copy {
    padding-top: 0;
  }

  .gw-story-stage {
    grid-template-columns: 1fr;
  }

  .gw-story-cta {
    margin-top: 18px;
  }
}


/* MOBILE */

@media (max-width: 700px) {

  .gw-story-intro {
    grid-template-columns: 1fr;
    gap: 22px;
    margin-bottom: 38px;
  }

  .gw-story-intro h2 {
    font-size: clamp(43px, 12vw, 56px);
  }

  .gw-story-intro-copy p {
    font-size: 16px;
  }

  .gw-story-intro-copy p + p {
    font-size: 13px;
  }

  .gw-story-masterplan {
    padding: 10px;
  }

  .gw-story-pillars {
    margin-top: 8px;
  }

  .gw-story-pillar {
    padding: 20px 0;
  }

  .gw-story-pillar h3 {
    font-size: 27px;
  }

  .gw-story-pillar p {
    font-size: 14px !important;
  }

  .gw-story-cta {
    min-height: 48px;
    margin-top: 18px;
  }
}
/* =========================================================
   GOLDEN WILLOWS — BRAND MANIFESTO
   ========================================================= */

.gw-story-manifesto {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(
      circle at 80% 20%,
      rgba(169, 177, 165, 0.08),
      transparent 28%
    ),
    var(--color-deep-forest);
  color: var(--color-warm-ivory);
}

.gw-manifesto-inner {
  position: relative;
  z-index: 1;
}

.gw-manifesto-background {
  position: absolute;
  top: 8%;
  right: -3%;
  max-width: 900px;

  font-family: "Instrument Serif", serif;
  font-size: clamp(110px, 14vw, 220px);
  line-height: 0.72;
  letter-spacing: -0.04em;

  color: rgba(244, 240, 231, 0.025);

  pointer-events: none;
  user-select: none;
  white-space: nowrap;
}


/* TOP COMPOSITION */

.gw-manifesto-heading {
  display: grid;
  grid-template-columns: 0.42fr 1.4fr;
  gap: 48px;
  align-items: start;
}

.gw-manifesto-heading .gw-eyebrow {
  color: var(--color-brass);
  padding-top: 12px;
}

.gw-manifesto-heading h2 {
  margin: 0;

  font-family: "Instrument Serif", serif;
  font-size: clamp(72px, 8vw, 118px);
  font-weight: 400;
  line-height: 0.82;
  letter-spacing: -0.035em;

  color: var(--color-warm-ivory);
}

.gw-manifesto-heading h2 em {
  color: var(--color-brass);
  font-weight: 400;
}


/* MAIN COPY */

.gw-manifesto-copy {
  width: min(520px, 100%);
  margin: 58px 0 0 auto;
}

.gw-manifesto-kicker {
  margin-bottom: 18px;

  font-family: "Instrument Serif", serif;
  font-size: 28px;
  line-height: 1.15;

  color: var(--color-warm-ivory);
}

.gw-manifesto-copy > p:last-child {
  font-size: 16px;
  line-height: 1.8;

  color: rgba(244, 240, 231, 0.72);
}


/* ARCHITECTURAL LINE */

.gw-manifesto-line {
  width: 100%;
  height: 1px;
  margin: 68px 0 0;

  background: linear-gradient(
    90deg,
    var(--color-brass),
    rgba(181, 154, 104, 0.14)
  );
}


/* THREE IDEAS */

.gw-manifesto-pillars {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.gw-manifesto-pillars article {
  padding: 34px 42px 28px 0;
}

.gw-manifesto-pillars article + article {
  padding-left: 42px;
  border-left: 1px solid rgba(244, 240, 231, 0.12);
}

.gw-manifesto-pillars span {
  display: block;
  margin-bottom: 22px;

  font-size: 10px;
  letter-spacing: 0.14em;

  color: var(--color-brass);
}

.gw-manifesto-pillars h3 {
  margin: 0;

  font-family: "Instrument Serif", serif;
  font-size: 34px;
  font-weight: 400;

  color: var(--color-warm-ivory);
}

.gw-manifesto-pillars p {
  max-width: 260px;
  margin-top: 13px;

  font-size: 13px;
  line-height: 1.7;

  color: var(--color-muted-sage);
}


/* CTA */

.gw-manifesto-cta {
  display: inline-flex;
  align-items: center;
  gap: 18px;

  margin-top: 42px;
  padding-bottom: 8px;

  border-bottom: 1px solid rgba(244, 240, 231, 0.45);

  color: var(--color-warm-ivory);
  font-size: 14px;
  font-weight: 600;
}

.gw-manifesto-cta:hover {
  border-color: var(--color-brass);
}


/* =========================================================
   DECORATIVE WILLOW MOTIF
   Clearly decorative — not project imagery
   ========================================================= */

.gw-willow-decoration {
  position: absolute;
  width: 310px;
  height: 430px;

  top: 18%;
  right: -90px;

  opacity: 0.18;

  pointer-events: none;
}

.gw-branch {
  position: absolute;
  width: 250px;
  height: 360px;

  border-left: 1px solid var(--color-brass);
  border-radius: 50%;

  transform: rotate(-18deg);
}

.gw-leaf {
  position: absolute;

  width: 46px;
  height: 15px;

  border: 1px solid var(--color-brass);
  border-radius: 100% 0 100% 0;

  transform-origin: left center;
}

.leaf-one {
  top: 90px;
  left: 28px;
  transform: rotate(-30deg);
}

.leaf-two {
  top: 155px;
  left: 7px;
  transform: rotate(25deg);
}

.leaf-three {
  top: 225px;
  left: 30px;
  transform: rotate(-20deg);
}

.leaf-four {
  top: 290px;
  left: 1px;
  transform: rotate(34deg);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {

  .gw-manifesto-background {
    top: 8%;
    right: -25%;
    font-size: 100px;
    white-space: normal;
    width: 500px;
  }

  .gw-manifesto-heading {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .gw-manifesto-heading h2 {
    font-size: clamp(56px, 17vw, 78px);
  }

  .gw-manifesto-copy {
    margin: 44px 0 0;
  }

  .gw-manifesto-kicker {
    font-size: 25px;
  }

  .gw-manifesto-line {
    margin-top: 48px;
  }

  .gw-manifesto-pillars {
    grid-template-columns: 1fr;
  }

  .gw-manifesto-pillars article {
    padding: 26px 0;
  }

  .gw-manifesto-pillars article + article {
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid rgba(244, 240, 231, 0.12);
  }

  .gw-manifesto-pillars h3 {
    font-size: 30px;
  }

  .gw-manifesto-pillars p {
    max-width: 100%;
    font-size: 14px;
  }

  .gw-willow-decoration {
    width: 200px;
    height: 300px;

    top: 32%;
    right: -115px;

    opacity: 0.12;
  }
}
/* =========================================================
   GOLDEN WILLOWS MANIFESTO — VISUAL DEPTH PASS
   ========================================================= */

/* Tighter overall composition */
.gw-story-manifesto {
  padding-top: clamp(70px, 7vw, 110px);
  padding-bottom: clamp(70px, 7vw, 110px);
}


/* Stronger oversized identity in background */
.gw-manifesto-background {
  top: 0;
  right: -4%;

  font-size: clamp(150px, 17vw, 270px);
  line-height: 0.72;

  color: rgba(244, 240, 231, 0.045);
}


/* Add a huge editorial W as another visual layer */
.gw-story-manifesto::before {
  content: "W";

  position: absolute;
  left: -2%;
  bottom: -15%;

  font-family: "Instrument Serif", serif;
  font-size: clamp(260px, 33vw, 520px);
  line-height: 0.7;

  color: rgba(181, 154, 104, 0.035);

  pointer-events: none;
  user-select: none;
}


/* Make headline composition feel more deliberate */
.gw-manifesto-heading {
  grid-template-columns: 0.34fr 1.5fr;
  gap: clamp(34px, 5vw, 80px);
}

.gw-manifesto-heading h2 {
  max-width: 700px;
  position: relative;
  z-index: 2;
}


/* Give the descriptive copy its own architectural frame */
.gw-manifesto-copy {
  position: relative;

  width: min(520px, 100%);
  margin: 46px 5% 0 auto;

  padding: 34px 36px 34px 42px;

  border-left: 1px solid rgba(181, 154, 104, 0.7);
  border-top: 1px solid rgba(181, 154, 104, 0.16);

  background:
    linear-gradient(
      120deg,
      rgba(244, 240, 231, 0.035),
      rgba(244, 240, 231, 0)
    );
}


/* Small decorative brass marker */
.gw-manifesto-copy::before {
  content: "";

  position: absolute;
  left: -4px;
  top: 28px;

  width: 7px;
  height: 7px;

  border-radius: 50%;
  background: var(--color-brass);
}


/* Stronger divider */
.gw-manifesto-line {
  margin-top: 58px;

  background:
    linear-gradient(
      90deg,
      var(--color-brass) 0%,
      rgba(181, 154, 104, 0.55) 28%,
      rgba(181, 154, 104, 0.08) 100%
    );
}


/* Make three ideas feel like designed editorial panels */
.gw-manifesto-pillars {
  position: relative;
}

.gw-manifesto-pillars article {
  min-height: 190px;
  padding-top: 34px;
  padding-bottom: 34px;
}

.gw-manifesto-pillars h3 {
  font-size: clamp(32px, 2.5vw, 40px);
}


/* Much stronger willow graphic */
.gw-willow-decoration {
  width: 420px;
  height: 560px;

  top: 5%;
  right: -65px;

  opacity: 0.34;
}

.gw-branch {
  width: 350px;
  height: 480px;

  border-left: 1px solid rgba(181, 154, 104, 0.7);
}

.gw-leaf {
  width: 64px;
  height: 20px;

  border-color: rgba(181, 154, 104, 0.8);
}


/* More intentional CTA positioning */
.gw-manifesto-cta {
  margin-top: 28px;
  padding: 14px 0 9px;

  font-size: 14px;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {

  .gw-story-manifesto {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  .gw-story-manifesto::before {
    font-size: 260px;
    bottom: -7%;
    left: -20%;
  }

  .gw-manifesto-background {
    font-size: 105px;
    right: -35%;
  }

  .gw-manifesto-copy {
    margin: 38px 0 0;
    padding: 26px 20px 26px 28px;
  }

  .gw-willow-decoration {
    width: 240px;
    height: 330px;

    top: 22%;
    right: -125px;

    opacity: 0.20;
  }

  .gw-manifesto-pillars article {
    min-height: 0;
  }
}
/* =========================================================
   01 / GOLDEN WILLOWS IDEA — FUTURE LIFE
   ========================================================= */

.gw-idea-v2 {
  position: relative;
  overflow: hidden;

  background:
    linear-gradient(
      90deg,
      var(--color-warm-ivory) 0%,
      var(--color-warm-ivory) 67%,
      #e2e5dc 67%,
      #e2e5dc 100%
    );

  color: var(--color-dark-ink);
}

.gw-idea-v2-inner {
  position: relative;
  z-index: 1;
}


/* =========================================
   MAIN HEADING
   ========================================= */

.gw-idea-v2-heading {
  display: grid;
  grid-template-columns: 0.42fr 1.58fr;
  gap: clamp(35px, 5vw, 78px);
  align-items: start;
}

.gw-idea-v2-heading .gw-eyebrow {
  padding-top: 14px;
  color: var(--color-primary-forest);
}

.gw-idea-v2-heading h2 {
  max-width: 780px;

  font-size: clamp(70px, 7vw, 108px);
  line-height: 0.86;
  letter-spacing: -0.035em;

  color: var(--color-dark-ink);
}

.gw-idea-v2-heading h2 em {
  display: block;

  margin-top: 9px;

  font-weight: 400;
  font-style: italic;

  color: var(--color-primary-forest);
}


/* =========================================
   IMAGINATION COPY
   ========================================= */

.gw-idea-v2-copy {
  width: min(560px, 100%);

  margin:
    clamp(42px, 5vw, 68px)
    7%
    0
    auto;
}

.gw-page .gw-idea-v2-lead {
  margin-bottom: 14px;

  font-family: var(--font-headline);
  font-size: clamp(24px, 2.1vw, 31px);
  line-height: 1.2;

  color: var(--color-dark-ink);
}

.gw-idea-v2-copy > p:last-child {
  max-width: 500px;

  font-size: 15px;
  line-height: 1.85;

  color: var(--color-muted-text);
}


/* =========================================
   EVERYDAY MOMENTS
   ========================================= */

.gw-idea-v2-moments {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  margin-top: clamp(65px, 7vw, 95px);

  border-top: 1px solid rgba(22, 53, 46, 0.22);
  border-bottom: 1px solid rgba(22, 53, 46, 0.22);
}

.gw-idea-moment {
  position: relative;

  min-height: 270px;

  padding:
    34px
    clamp(26px, 3vw, 48px)
    38px;
}

.gw-idea-moment + .gw-idea-moment {
  border-left: 1px solid rgba(22, 53, 46, 0.18);
}

.gw-idea-moment-number {
  display: block;

  margin-bottom: 30px;

  font-size: 10px;
  letter-spacing: 0.12em;

  color: var(--color-brass);
}

.gw-page .gw-idea-moment-label {
  margin-bottom: 11px;

  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.16em;

  color: var(--color-primary-forest);
}

.gw-idea-moment h3 {
  max-width: 310px;

  font-size: clamp(30px, 2.6vw, 40px);
  line-height: 1.02;

  color: var(--color-dark-ink);
}

.gw-idea-moment > p:last-child {
  max-width: 300px;

  margin-top: 18px;

  font-size: 13px;
  line-height: 1.75;

  color: var(--color-muted-text);
}


/* =========================================
   FACT / PROOF STRIP
   ========================================= */

.gw-idea-v2-proof {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1.2fr;

  align-items: stretch;

  margin-top: 34px;
}

.gw-idea-v2-proof > div {
  padding: 18px 26px 18px 0;
}

.gw-idea-v2-proof > div + div {
  padding-left: 26px;
  border-left: 1px solid rgba(22, 53, 46, 0.16);
}

.gw-idea-v2-proof span {
  display: block;

  margin-bottom: 8px;

  font-size: 8px;
  letter-spacing: 0.13em;

  color: var(--color-muted-text);
}

.gw-idea-v2-proof strong {
  font-size: 12px;
  font-weight: 600;

  color: var(--color-dark-ink);
}

.gw-idea-v2-proof > a {
  display: flex;
  align-items: center;
  justify-content: space-between;

  margin-left: 30px;

  padding: 17px 20px;

  border: 1px solid var(--color-primary-forest);

  font-size: 12px;
  font-weight: 600;

  color: var(--color-primary-forest);

  transition:
    background 180ms ease,
    color 180ms ease;
}

.gw-idea-v2-proof > a:hover {
  background: var(--color-primary-forest);
  color: var(--color-warm-ivory);
}


/* =========================================
   BOTANICAL SIGNATURE
   ========================================= */

.gw-idea-v2-botanical {
  position: absolute;

  top: 5%;
  right: -72px;

  width: 330px;
  height: 540px;

  opacity: 0.21;

  pointer-events: none;
}

.gw-idea-branch {
  position: absolute;

  left: 100px;
  top: 5px;

  width: 230px;
  height: 500px;

  border-left: 1px solid var(--color-primary-forest);
  border-radius: 50%;

  transform: rotate(-11deg);
}

.gw-idea-leaf {
  position: absolute;

  width: 58px;
  height: 20px;

  border: 1px solid var(--color-primary-forest);
  border-radius: 100% 0 100% 0;
}

.leaf-a {
  top: 90px;
  left: 93px;
  transform: rotate(-28deg);
}

.leaf-b {
  top: 170px;
  left: 126px;
  transform: rotate(27deg);
}

.leaf-c {
  top: 250px;
  left: 80px;
  transform: rotate(-21deg);
}

.leaf-d {
  top: 333px;
  left: 119px;
  transform: rotate(31deg);
}

.leaf-e {
  top: 410px;
  left: 72px;
  transform: rotate(-18deg);
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 760px) {

  .gw-idea-v2 {
    background: var(--color-warm-ivory);
  }

  .gw-idea-v2-heading {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .gw-idea-v2-heading .gw-eyebrow {
    padding-top: 0;
  }

  .gw-idea-v2-heading h2 {
    font-size: clamp(53px, 15vw, 72px);
  }

  .gw-idea-v2-copy {
    margin: 38px 0 0;
  }

  .gw-page .gw-idea-v2-lead {
    font-size: 25px;
  }

  .gw-idea-v2-copy > p:last-child {
    font-size: 15px;
  }

  .gw-idea-v2-moments {
    grid-template-columns: 1fr;
    margin-top: 52px;
  }

  .gw-idea-moment {
    min-height: auto;
    padding: 29px 0;
  }

  .gw-idea-moment + .gw-idea-moment {
    border-left: 0;
    border-top: 1px solid rgba(22, 53, 46, 0.16);
  }

  .gw-idea-moment-number {
    margin-bottom: 20px;
  }

  .gw-idea-moment h3 {
    font-size: 32px;
  }

  .gw-idea-moment > p:last-child {
    max-width: 100%;
    font-size: 14px;
  }

  .gw-idea-v2-proof {
    grid-template-columns: 1fr;
    margin-top: 28px;
  }

  .gw-idea-v2-proof > div,
  .gw-idea-v2-proof > div + div {
    padding: 16px 0;
    border-left: 0;
    border-top: 1px solid rgba(22, 53, 46, 0.14);
  }

  .gw-idea-v2-proof > a {
    margin: 18px 0 0;
    min-height: 50px;
  }

  .gw-idea-v2-botanical {
    top: 8%;
    right: -165px;

    opacity: 0.11;
  }
}

/* =========================================================
   01 / GOLDEN WILLOWS IDEA — FINAL VISUAL VERSION
   ========================================================= */

.gw-idea-v3 {
  position: relative;
  overflow: hidden;
  background: var(--color-warm-ivory);
  color: var(--color-dark-ink);
}


/* =========================================================
   TOP — DREAM + VISUAL
   ========================================================= */

.gw-idea-v3-top {
  position: relative;

  display: grid;
  grid-template-columns: minmax(360px, 0.82fr) minmax(0, 1.55fr);

  align-items: stretch;

  margin-bottom: 0;
}


/* LEFT COPY */

.gw-idea-v3-message {
  position: relative;
  z-index: 3;

  padding:
    clamp(10px, 1vw, 18px)
    clamp(38px, 4vw, 68px)
    clamp(52px, 5vw, 82px)
    0;
}

.gw-idea-v3-message .gw-eyebrow {
  margin: 0 0 clamp(38px, 4vw, 60px);

  color: var(--color-primary-forest);
}

.gw-idea-v3-message h2 {
  margin: 0;

  max-width: 650px;

  font-family: "Instrument Serif", serif;
  font-size: clamp(64px, 6.2vw, 98px);
  font-weight: 400;

  line-height: 0.88;
  letter-spacing: -0.035em;

  color: var(--color-dark-ink);
}

.gw-idea-v3-message h2 em {
  display: block;

  margin-top: 8px;

  font-weight: 400;
  font-style: italic;

  color: var(--color-primary-forest);
}


.gw-idea-v3-intro {
  width: min(500px, 100%);

  margin-top: clamp(44px, 5vw, 66px);
}

.gw-page .gw-idea-v3-lead {
  margin: 0 0 18px;

  font-family: "Instrument Serif", serif;
  font-size: clamp(25px, 2vw, 31px);
  line-height: 1.12;

  color: var(--color-dark-ink);
}

.gw-idea-v3-intro > p:last-child {
  max-width: 470px;

  margin: 0;

  font-size: 15px;
  line-height: 1.8;

  color: rgba(23, 37, 33, 0.65);
}


/* RIGHT VISUAL */

.gw-idea-v3-visual {
  position: relative;

  min-width: 0;
  min-height: 500px;

  margin: 0;

  overflow: hidden;

  background: #e1e5db;
}

.gw-idea-v3-visual img {
  width: 100%;
  height: 100%;

  display: block;

  object-fit: cover;
  object-position: center;

  transition: transform 800ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .gw-idea-v3-visual:hover img {
    transform: scale(1.012);
  }
}

.gw-idea-v3-visual figcaption {
  position: absolute;

  right: 18px;
  bottom: 14px;

  padding: 5px 8px;

  font-size: 9px;
  line-height: 1.3;

  color: rgba(250, 248, 242, 0.95);

  background: rgba(13, 39, 34, 0.38);
  backdrop-filter: blur(5px);
}


/* =========================================================
   BOTANICAL EDGE
   ========================================================= */

.gw-idea-v3-botanical {
  position: absolute;

  z-index: 4;

  width: 260px;
  height: 500px;

  top: 2%;
  right: -155px;

  opacity: 0.22;

  pointer-events: none;
}

.gw-v3-branch {
  position: absolute;

  left: 75px;
  top: 0;

  width: 190px;
  height: 470px;

  border-left: 1px solid var(--color-primary-forest);
  border-radius: 50%;

  transform: rotate(-10deg);
}

.gw-v3-leaf {
  position: absolute;

  width: 52px;
  height: 17px;

  border: 1px solid var(--color-primary-forest);
  border-radius: 100% 0 100% 0;
}

.gw-v3-leaf.leaf-1 {
  top: 75px;
  left: 72px;
  transform: rotate(-28deg);
}

.gw-v3-leaf.leaf-2 {
  top: 155px;
  left: 106px;
  transform: rotate(28deg);
}

.gw-v3-leaf.leaf-3 {
  top: 235px;
  left: 62px;
  transform: rotate(-22deg);
}

.gw-v3-leaf.leaf-4 {
  top: 315px;
  left: 101px;
  transform: rotate(31deg);
}

.gw-v3-leaf.leaf-5 {
  top: 393px;
  left: 54px;
  transform: rotate(-20deg);
}


/* =========================================================
   THREE FUTURE-LIFE MOMENTS
   ========================================================= */

.gw-idea-v3-moments {
  display: grid;
  grid-template-columns: repeat(3, 1fr);

  border-top: 1px solid rgba(22, 53, 46, 0.2);
  border-bottom: 1px solid rgba(22, 53, 46, 0.2);
}

.gw-idea-v3-moments article {
  min-height: 250px;

  padding:
    30px
    clamp(28px, 3vw, 46px)
    36px;
}

.gw-idea-v3-moments article + article {
  border-left: 1px solid rgba(22, 53, 46, 0.18);
}

.gw-v3-number {
  display: block;

  margin-bottom: 25px;

  font-size: 10px;
  letter-spacing: 0.12em;

  color: var(--color-brass);
}

.gw-page .gw-v3-label {
  margin: 0 0 11px;

  font-size: 9px;
  font-weight: 600;

  letter-spacing: 0.16em;

  color: var(--color-primary-forest);
}

.gw-idea-v3-moments h3 {
  max-width: 320px;

  margin: 0;

  font-family: "Instrument Serif", serif;
  font-size: clamp(30px, 2.4vw, 39px);
  font-weight: 400;

  line-height: 1.02;

  color: var(--color-dark-ink);
}

.gw-idea-v3-moments article > p:last-child {
  max-width: 300px;

  margin: 18px 0 0;

  font-size: 13px;
  line-height: 1.75;

  color: rgba(23, 37, 33, 0.62);
}


/* =========================================================
   PROOF STRIP
   ========================================================= */

.gw-idea-v3-proof {
  display: grid;

  grid-template-columns:
    minmax(160px, 0.9fr)
    minmax(190px, 1fr)
    minmax(180px, 1fr)
    minmax(250px, 1.45fr);

  align-items: stretch;

  padding-top: 22px;
}

.gw-idea-v3-proof > div {
  padding: 13px 26px 18px 0;
}

.gw-idea-v3-proof > div + div {
  padding-left: 26px;

  border-left: 1px solid rgba(22, 53, 46, 0.16);
}

.gw-idea-v3-proof > div span {
  display: block;

  margin-bottom: 8px;

  font-size: 8px;
  letter-spacing: 0.13em;

  color: rgba(23, 37, 33, 0.52);
}

.gw-idea-v3-proof strong {
  font-size: 12px;
  font-weight: 600;

  color: var(--color-dark-ink);
}

.gw-idea-v3-proof > a {
  display: flex;

  align-items: center;
  justify-content: space-between;

  min-height: 60px;

  margin-left: 28px;
  padding: 0 22px;

  border: 1px solid var(--color-primary-forest);

  font-size: 12px;
  font-weight: 600;

  color: var(--color-primary-forest);

  transition:
    background 180ms ease,
    color 180ms ease;
}

.gw-idea-v3-proof > a b {
  font-size: 18px;
  font-weight: 400;
}

.gw-idea-v3-proof > a:hover {
  background: var(--color-primary-forest);
  color: var(--color-warm-ivory);
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 980px) {

  .gw-idea-v3-top {
    grid-template-columns: 1fr;
  }

  .gw-idea-v3-message {
    padding-right: 0;
  }

  .gw-idea-v3-visual {
    min-height: auto;
    aspect-ratio: 16 / 10;
  }

  .gw-idea-v3-moments {
    margin-top: 0;
  }

  .gw-idea-v3-proof {
    grid-template-columns: repeat(2, 1fr);
  }

  .gw-idea-v3-proof > a {
    margin: 18px 0 0;

    grid-column: 1 / -1;
  }

  .gw-idea-v3-botanical {
    display: none;
  }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

  .gw-idea-v3-message {
    padding-bottom: 40px;
  }

  .gw-idea-v3-message .gw-eyebrow {
    margin-bottom: 28px;
  }

  .gw-idea-v3-message h2 {
    font-size: clamp(52px, 15vw, 70px);
  }

  .gw-idea-v3-intro {
    margin-top: 34px;
  }

  .gw-page .gw-idea-v3-lead {
    font-size: 25px;
  }

  .gw-idea-v3-visual {
    aspect-ratio: 4 / 3;
  }

  .gw-idea-v3-visual figcaption {
    right: 10px;
    bottom: 9px;

    font-size: 8px;
  }

  .gw-idea-v3-moments {
    grid-template-columns: 1fr;
  }

  .gw-idea-v3-moments article {
    min-height: auto;

    padding: 26px 0;
  }

  .gw-idea-v3-moments article + article {
    border-left: 0;
    border-top: 1px solid rgba(22, 53, 46, 0.16);
  }

  .gw-idea-v3-moments h3 {
    font-size: 32px;
  }

  .gw-idea-v3-moments article > p:last-child {
    max-width: 100%;

    font-size: 14px;
  }

  .gw-idea-v3-proof {
    grid-template-columns: 1fr;

    padding-top: 18px;
  }

  .gw-idea-v3-proof > div,
  .gw-idea-v3-proof > div + div {
    padding: 15px 0;

    border-left: 0;
    border-top: 1px solid rgba(22, 53, 46, 0.14);
  }

  .gw-idea-v3-proof > a {
    grid-column: auto;

    min-height: 50px;

    margin-top: 16px;
  }
}
/* =========================================================
   02 / RESIDENCE EXPLORER — FINAL POLISH
   ========================================================= */


/* ---------------------------------------------------------
   SECTION INTRO
   --------------------------------------------------------- */

.gw-residences .gw-section-heading > p {
  max-width: 330px;
  line-height: 1.75;
}


/* ---------------------------------------------------------
   CONFIGURATION SELECTOR
   Make the current choice feel intentional
   --------------------------------------------------------- */

.gw-residences .gw-configuration-tabs button {
  transition:
    background 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.gw-residences
.gw-configuration-tabs
button[aria-selected="true"] {
  background: var(--color-primary-forest);
  color: var(--color-warm-ivory);

  box-shadow:
    inset 0 0 0 1px var(--color-brass),
    0 6px 20px rgba(13, 39, 34, 0.06);
}

.gw-residences
.gw-configuration-tabs
button[aria-selected="true"] > span {
  font-size: 34px;
}

.gw-residences
.gw-configuration-tabs
button[aria-selected="true"] > small {
  color: rgba(244, 240, 231, 0.78);
}


/* Give inactive options a subtle hover */
@media (hover: hover) and (pointer: fine) {

  .gw-residences
  .gw-configuration-tabs
  button:not([aria-selected="true"]):hover {
    background: rgba(244, 240, 231, 0.44);
  }

}


/* ---------------------------------------------------------
   MAIN RESIDENCE / PLAN COMPOSITION
   Give the official plan greater visual importance
   --------------------------------------------------------- */

@media (min-width: 901px) {

  .gw-residences .gw-residence-panel {
    grid-template-columns:
      minmax(300px, 0.78fr)
      minmax(0, 1.38fr);

    gap: clamp(44px, 5.8vw, 84px);
  }

}


/* ---------------------------------------------------------
   FLOOR PLAN PANEL
   --------------------------------------------------------- */

.gw-residences .gw-residence-plan {
  position: relative;

  box-shadow:
    0 9px 32px rgba(13, 39, 34, 0.055);

  border: 1px solid rgba(22, 53, 46, 0.07);
}

@media (min-width: 901px) {

  .gw-residences .gw-plan-image-link img {
    max-height: 685px;
  }

}


/* Make toolbar slightly more editorial */
.gw-residences .gw-plan-toolbar {
  min-height: 55px;
}

.gw-residences .gw-plan-toolbar > p {
  color: var(--color-dark-ink);
}

.gw-residences .gw-plan-toolbar > span {
  letter-spacing: 0.12em;
}


/* ---------------------------------------------------------
   RESIDENCE INFORMATION
   --------------------------------------------------------- */

.gw-residences .gw-residence-copy h3 {
  letter-spacing: -0.018em;
}

.gw-residences .gw-residence-copy h3 em {
  margin-top: 8px;
}


/* Keep the actual area as one of the strongest facts */
.gw-residences .gw-area-head {
  margin-top: 30px;
}

.gw-residences .gw-area-value {
  margin-bottom: 4px;
}


/* ---------------------------------------------------------
   TRUST / AREA NOTE
   --------------------------------------------------------- */

.gw-residences .gw-residence-area-note {
  margin-top: 4px;

  padding:
    2px
    0
    2px
    14px;
}


/* ---------------------------------------------------------
   MAIN CTA
   --------------------------------------------------------- */

.gw-residences
.gw-residence-copy > .gw-button {
  min-height: 56px;

  margin-top: 28px;

  padding:
    12px
    20px;

  gap: 20px;

  line-height: 1.35;

  transition:
    background 180ms ease,
    transform 180ms ease;
}

.gw-residences
.gw-residence-copy > .gw-button span {
  text-align: left;
}

@media (hover: hover) and (pointer: fine) {

  .gw-residences
  .gw-residence-copy > .gw-button:hover {
    transform: translateY(-1px);
  }

}


/* ---------------------------------------------------------
   FLOOR PLAN ENLARGE ACTION
   --------------------------------------------------------- */

.gw-residences .gw-image-enlarge {
  transition:
    border-color 180ms ease,
    background 180ms ease;
}

@media (hover: hover) and (pointer: fine) {

  .gw-residences
  .gw-plan-image-link:hover
  .gw-image-enlarge {
    border-color: var(--color-primary-forest);
    background: var(--color-warm-white);
  }

}


/* ---------------------------------------------------------
   MOBILE / TABLET SAFETY
   --------------------------------------------------------- */

@media (max-width: 900px) {

  .gw-residences
  .gw-configuration-tabs
  button[aria-selected="true"] > span {
    font-size: 27px;
  }

  .gw-residences .gw-residence-panel {
    grid-template-columns:
      minmax(250px, 0.92fr)
      minmax(0, 1.15fr);

    gap: 27px;
  }

  .gw-residences .gw-plan-image-link img {
    max-height: none;
  }

}


@media (max-width: 700px) {

  .gw-residences .gw-section-heading > p {
    max-width: none;
  }

  .gw-residences
  .gw-configuration-tabs
  button[aria-selected="true"] > span {
    font-size: 25px;
  }

  .gw-residences .gw-residence-panel {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .gw-residences
  .gw-residence-copy > .gw-button {
    min-height: 54px;

    padding:
      12px
      16px;

    font-size: 12px;
  }

  .gw-residences .gw-residence-plan {
    box-shadow:
      0 6px 22px rgba(13, 39, 34, 0.045);
  }

}

/* =========================================================
   03 / THE BIGGER PICTURE — FINAL PSYCHOLOGY PASS
   ========================================================= */


/* Selected residence carried forward from Section 02 */

.gw-selected-context {
  position: relative;

  margin:
    26px
    0
    26px;

  padding:
    17px
    0
    17px
    20px;

  border-left:
    1px solid
    var(--color-brass);
}


/* Small identity label */

.gw-selected-context > span {
  display: block;

  margin-bottom: 8px;

  font-size: 8px;
  font-weight: 600;

  letter-spacing: 0.15em;

  color:
    var(--color-brass);
}


/* Residence name */

.gw-selected-context > strong {
  display: block;

  font-family:
    "Instrument Serif",
    serif;

  font-size:
    clamp(
      23px,
      2vw,
      29px
    );

  font-weight: 400;

  line-height: 1.08;

  color:
    var(--color-dark-ink);
}


/* Supporting instruction */

.gw-selected-context > p {
  max-width: 330px;

  margin:
    9px
    0
    0 !important;

  font-size:
    12px !important;

  line-height:
    1.65 !important;

  color:
    rgba(
      23,
      37,
      33,
      0.60
    );
}


/* Make masterplan itself slightly more important */

@media (min-width: 901px) {

  .gw-plans .gw-drawing-grid {
    grid-template-columns:
      minmax(0, 1.55fr)
      minmax(280px, 0.72fr);

    gap:
      clamp(
        44px,
        5.5vw,
        82px
      );
  }

}


/* Give the drawing a subtle premium frame */

.gw-plans .gw-masterplan-figure {
  position: relative;
}

.gw-plans .gw-masterplan-figure > a {
  display: block;

  background:
    var(--color-warm-white);

  border:
    1px solid
    rgba(
      22,
      53,
      46,
      0.07
    );

  box-shadow:
    0 10px 34px
    rgba(
      13,
      39,
      34,
      0.045
    );
}


/* Slightly stronger hierarchy on right */

.gw-plans .gw-drawing-copy h3 {
  margin-top: 12px;

  font-size:
    clamp(
      38px,
      3.4vw,
      52px
    );

  line-height: 0.98;
}


/* Intro remains rational and calm */

.gw-plans
.gw-section-heading > p {
  max-width: 340px;

  line-height: 1.75;
}


/* MOBILE */

@media (max-width: 700px) {

  .gw-selected-context {
    margin:
      22px
      0;

    padding-left:
      16px;
  }


  .gw-selected-context > strong {
    font-size:
      25px;
  }


  .gw-selected-context > p {
    max-width:
      none;

    font-size:
      13px !important;
  }

}

/* =========================================================
   LOCATION — GOOGLE MAPS CTA
   ========================================================= */

.gw-location-maps-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;

  min-width: 250px;
  min-height: 52px;

  margin-top: 22px;
  padding: 0 18px;

  border: 1px solid var(--color-primary-forest);

  background: var(--color-primary-forest);
  color: var(--color-warm-ivory);

  font-size: 12px;
  font-weight: 600;

  text-decoration: none;

  transition:
    background 180ms ease,
    color 180ms ease,
    transform 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  .gw-location-maps-cta:hover {
    background: var(--color-deep-forest);
    transform: translateY(-1px);
  }
}

@media (max-width: 700px) {
  .gw-location-maps-cta {
    width: 100%;
    min-width: 0;
    min-height: 54px;
  }
}

/* =========================================================
   04 / ADDRESS — GOOGLE MAPS CTA
   ========================================================= */

.gw-location-copy > .gw-location-maps-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  gap: 26px !important;

  width: fit-content !important;
  min-width: 285px !important;
  min-height: 56px !important;

  margin-top: 25px !important;

  padding:
    0
    19px !important;

  border:
    1px solid
    var(--color-primary-forest) !important;

  border-radius:
    var(--button-radius) !important;

  background:
    var(--color-primary-forest) !important;

  color:
    var(--color-warm-ivory) !important;

  font-size:
    12px !important;

  font-weight:
    600 !important;

  line-height:
    1.2 !important;

  text-decoration:
    none !important;

  box-shadow:
    0 7px 20px
    rgba(13, 39, 34, 0.07);

  transition:
    background 180ms ease,
    transform 180ms ease,
    box-shadow 180ms ease !important;
}


/* External-link icon */

.gw-location-maps-cta svg {
  width: 18px !important;
  height: 18px !important;

  flex-shrink: 0;

  color:
    var(--color-warm-ivory) !important;
}


/* Hover */

@media (hover: hover) and (pointer: fine) {

  .gw-location-maps-cta:hover {
    background:
      var(--color-deep-forest) !important;

    color:
      var(--color-warm-ivory) !important;

    transform:
      translateY(-1px);

    box-shadow:
      0 10px 25px
      rgba(13, 39, 34, 0.11);
  }

}


/* Mobile */

@media (max-width: 700px) {

  .gw-location-copy > .gw-location-maps-cta {
    width: 100% !important;
    min-width: 0 !important;

    min-height: 55px !important;
  }

}
/* =========================================================
   05 / A CLEARER VIEW — FINAL TRUST SECTION
   ========================================================= */

.gw-trust {
  background: var(--color-deep-forest) !important;
  color: var(--color-warm-ivory) !important;
}


.gw-trust-grid {
  display: grid !important;

  grid-template-columns:
    minmax(300px, 0.85fr)
    minmax(0, 1.15fr) !important;

  gap: clamp(70px, 9vw, 145px) !important;

  align-items: start !important;
}


/* LEFT SIDE */

.gw-trust-intro .gw-eyebrow {
  color: var(--color-brass) !important;
  margin-bottom: 27px !important;
}


.gw-trust-intro h2 {
  max-width: 560px;

  font-size:
    clamp(52px, 5vw, 76px) !important;

  line-height: 0.96 !important;

  color: var(--color-warm-ivory) !important;
}


.gw-trust-intro > p:not(.gw-eyebrow) {
  max-width: 430px !important;

  margin-top: 28px !important;

  font-size: 15px !important;
  line-height: 1.8 !important;

  color:
    rgba(244, 240, 231, 0.72) !important;
}


/* RIGHT SIDE ROWS */

.gw-trust-rows {
  border-top:
    1px solid
    rgba(244, 240, 231, 0.22);
}


.gw-trust-rows > .gw-trust-row {
  display: grid !important;

  grid-template-columns:
    45px
    minmax(0, 1fr);

  gap: 22px !important;

  padding:
    25px
    0 !important;

  border-top: 0 !important;

  border-bottom:
    1px solid
    rgba(244, 240, 231, 0.18) !important;
}


.gw-trust-row > span {
  font-family:
    "Instrument Serif",
    serif !important;

  font-size: 19px !important;

  color:
    var(--color-brass) !important;
}


.gw-trust-row p {
  margin: 0;

  font-size: 13px !important;
  line-height: 1.8 !important;

  color:
    rgba(244, 240, 231, 0.70) !important;
}


.gw-trust-row strong {
  display: block;

  margin-bottom: 8px !important;

  font-size: 14px !important;
  font-weight: 600 !important;

  color:
    var(--color-warm-ivory) !important;
}


.gw-trust-row a {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  margin-top: 3px;

  color:
    var(--color-warm-ivory) !important;

  text-decoration: underline;
  text-underline-offset: 5px;
}


.gw-trust-row a svg {
  width: 15px;
  height: 15px;
}



/* REGISTRATIONS — ROW 04 */

.gw-registrations {
  padding: 0 !important;

  border: 0 !important;

  border-bottom:
    1px solid
    rgba(244, 240, 231, 0.18) !important;
}


.gw-registrations summary {
  display: grid !important;

  grid-template-columns:
    45px
    minmax(0, 1fr)
    auto;

  gap: 22px !important;

  align-items: center;

  min-height: 76px;

  padding:
    24px
    0 !important;

  list-style: none;

  color:
    var(--color-warm-ivory) !important;

  cursor: pointer;
}


.gw-registrations summary::-webkit-details-marker {
  display: none;
}


.gw-registration-number {
  font-family:
    "Instrument Serif",
    serif;

  font-size: 19px;

  color:
    var(--color-brass);
}


.gw-registration-title {
  font-size: 14px;
  font-weight: 600;
}


.gw-registration-plus {
  font-size: 20px;

  color:
    var(--color-brass);

  transition:
    transform 180ms ease;
}


.gw-registrations[open]
.gw-registration-plus {
  transform:
    rotate(45deg);
}


.gw-registration-content {
  padding:
    4px
    0
    28px
    67px;
}


.gw-registration-content dl {
  margin:
    0
    0
    22px !important;
}


.gw-registration-content dl > div {
  display: flex;

  justify-content: space-between;

  gap: 25px;

  padding:
    9px
    0 !important;

  border-top:
    1px solid
    rgba(244, 240, 231, 0.12) !important;

  font-size: 11px !important;

  color:
    rgba(244, 240, 231, 0.72);
}


.gw-registration-content dd {
  margin: 0;

  font-variant-numeric:
    tabular-nums;
}


.gw-registration-content .gw-text-link {
  color:
    var(--color-warm-ivory) !important;

  border-color:
    rgba(244, 240, 231, 0.45) !important;
}


.gw-registration-content > p {
  max-width: 460px;

  margin-top: 18px !important;

  font-size: 10px !important;
  line-height: 1.8 !important;

  color:
    rgba(244, 240, 231, 0.52) !important;
}



/* =========================================================
   06 / BEFORE THE NEXT STEP — FINAL FAQ SECTION
   ========================================================= */

.gw-faq {
  background:
    var(--color-warm-ivory) !important;
}


.gw-faq-grid {
  display: grid !important;

  grid-template-columns:
    minmax(300px, 0.78fr)
    minmax(0, 1.22fr) !important;

  gap:
    clamp(75px, 9vw, 145px) !important;

  align-items: start !important;
}


/* LEFT */

.gw-faq-intro .gw-eyebrow {
  margin-bottom: 27px !important;

  color:
    var(--color-brass) !important;
}


.gw-faq-intro h2 {
  max-width: 550px;

  font-size:
    clamp(52px, 5vw, 72px);

  line-height: 0.97;
}


.gw-faq-intro > p:not(.gw-eyebrow) {
  max-width: 390px;

  margin-top: 27px !important;

  font-size: 15px !important;
  line-height: 1.8 !important;

  color:
    rgba(23, 37, 33, 0.62) !important;
}


/* FAQ ROWS */

.gw-faq-items {
  border-top:
    1px solid var(--gw-rule);
}


.gw-faq-items details {
  border-top: 0 !important;

  border-bottom:
    1px solid var(--gw-rule);
}


.gw-faq-items summary {
  display: grid !important;

  grid-template-columns:
    42px
    minmax(0, 1fr)
    24px;

  align-items: center;

  gap: 18px !important;

  min-height: 82px !important;

  padding:
    22px
    0 !important;

  font-size: 14px !important;
  font-weight: 600 !important;

  line-height: 1.5 !important;

  list-style: none;

  cursor: pointer;
}


.gw-faq-items summary::-webkit-details-marker {
  display: none;
}


.gw-faq-number {
  font-family:
    "Instrument Serif",
    serif !important;

  font-size: 18px !important;

  color:
    var(--color-brass) !important;
}


.gw-faq-plus {
  font-size: 22px !important;

  font-weight: 400 !important;

  color:
    var(--color-primary-forest);

  transition:
    transform 180ms ease;
}


.gw-faq-items
details[open]
.gw-faq-plus {
  transform:
    rotate(45deg);
}


.gw-faq-items details > p {
  max-width: 650px;

  padding:
    0
    42px
    27px
    60px !important;

  font-size: 14px !important;
  line-height: 1.85 !important;

  color:
    rgba(23, 37, 33, 0.66) !important;
}



/* =========================================================
   MOBILE SAFETY — TRUST + FAQ
   ========================================================= */

@media (max-width: 800px) {

  .gw-trust-grid,
  .gw-faq-grid {
    grid-template-columns:
      1fr !important;

    gap:
      42px !important;
  }


  .gw-trust-intro h2,
  .gw-faq-intro h2 {
    font-size:
      clamp(43px, 12vw, 58px) !important;
  }


  .gw-registration-content {
    padding-left:
      0;
  }


  .gw-faq-items summary {
    grid-template-columns:
      34px
      minmax(0, 1fr)
      22px;

    gap:
      12px !important;

    min-height:
      72px !important;

    font-size:
      13px !important;
  }


  .gw-faq-items details > p {
    padding:
      0
      4px
      23px
      46px !important;
  }

}

/* =========================================================
   GOLDEN WILLOWS FOOTER — SITE SWITCHER
   ========================================================= */

.gw-footer-nav {
  display: flex;

  align-items: center;

  gap: 27px;
}


.gw-footer-nav a,
.gw-footer-back {
  font-size: 10px;

  color:
    var(--color-warm-ivory, #F4F0E7);

  text-decoration: none;

  transition:
    color 160ms ease;
}


.gw-footer-nav a[aria-current="page"] {
  color:
    var(--color-brass, #B59A68);
}


.gw-footer-back {
  display: flex;

  align-items: center;

  gap: 5px;

  white-space: nowrap;
}


@media (hover: hover) and (pointer: fine) {

  .gw-footer-nav a:hover,
  .gw-footer-back:hover {

    color:
      var(--color-brass, #B59A68);
  }

}


/* MOBILE */

@media (max-width: 700px) {

  .gw-footer-top {
    flex-wrap: wrap;

    gap: 23px;
  }


  .gw-footer-top > .gw-wordmark {
    margin-right: auto;
  }


  .gw-footer-nav {
    order: 3;

    width: 100%;

    justify-content: space-between;

    gap: 10px;

    padding-top: 4px;
  }


  .gw-footer-nav a {
    font-size: 10px;
  }


  .gw-footer-back {
    font-size: 10px;
  }

}