diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6b1f337 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.playwright-mcp \ No newline at end of file diff --git a/new front/about.html b/new front/about.html new file mode 100644 index 0000000..cb77070 --- /dev/null +++ b/new front/about.html @@ -0,0 +1,804 @@ + + + + + + + Hop On Hop Off — About us + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+
+ +

Know more about

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

Hop On Hop Off

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+
+ +
+
+
25+
+
Years Experience
+
+
+
500+
+
Tours Conducted
+
+
+
430+
+
Tours this Year
+
+
+
15+
+
Different Tours
+
+
+ +
+

Gallery

+
+ + + + + +
+
+ +
+

Why Choose us?

+
    +
  • + +
    + Duration + 1h 30m +
    +
  • +
  • + +
    + Max Travelers + 15 people +
    +
  • +
  • + +
    + Free Cancellation + Up to 24 hrs +
    +
  • +
  • + +
    + Category + Best Conversion +
    +
  • +
+
+
+
+
+
+ + +
+
+
+

Your Comment’s

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit

+
+
+ +
+ +
+
+
+ + + Malika Favre + Paris Tour + +
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut + labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod + tempor incididunt ut labore et dolore magna aliqua
+
+
+
+ + + Malika Favre + Paris Tour + +
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut + labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit
+
+
+
+ + + Malika Favre + Paris Tour + +
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut + labore
+
+
+
+ + + Malika Favre + Paris Tour + +
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut + labore et dolore magna aliqua
+
+
+
+
+
+ + + + + + + + diff --git a/new front/assets/about-hero.png b/new front/assets/about-hero.png new file mode 100644 index 0000000..10099c4 Binary files /dev/null and b/new front/assets/about-hero.png differ diff --git a/new front/assets/blog-hero.png b/new front/assets/blog-hero.png new file mode 100644 index 0000000..1c24951 Binary files /dev/null and b/new front/assets/blog-hero.png differ diff --git a/new front/assets/blog-reviewer.png b/new front/assets/blog-reviewer.png new file mode 100644 index 0000000..e630783 Binary files /dev/null and b/new front/assets/blog-reviewer.png differ diff --git a/new front/assets/blogs-hero.png b/new front/assets/blogs-hero.png new file mode 100644 index 0000000..99efa4e Binary files /dev/null and b/new front/assets/blogs-hero.png differ diff --git a/new front/assets/contact-hero.png b/new front/assets/contact-hero.png new file mode 100644 index 0000000..3ebb8b8 Binary files /dev/null and b/new front/assets/contact-hero.png differ diff --git a/new front/assets/faq-hero.png b/new front/assets/faq-hero.png new file mode 100644 index 0000000..3ebb8b8 Binary files /dev/null and b/new front/assets/faq-hero.png differ diff --git a/new front/assets/nashvile.png b/new front/assets/nashvile.png new file mode 100644 index 0000000..7931391 Binary files /dev/null and b/new front/assets/nashvile.png differ diff --git a/new front/assets/paris.png b/new front/assets/paris.png new file mode 100644 index 0000000..e211971 Binary files /dev/null and b/new front/assets/paris.png differ diff --git a/new front/assets/sandiego.png b/new front/assets/sandiego.png new file mode 100644 index 0000000..97c9a9d Binary files /dev/null and b/new front/assets/sandiego.png differ diff --git a/new front/assets/sydney.png b/new front/assets/sydney.png new file mode 100644 index 0000000..b37e0fb Binary files /dev/null and b/new front/assets/sydney.png differ diff --git a/new front/blog-post.html b/new front/blog-post.html new file mode 100644 index 0000000..49e6c2e --- /dev/null +++ b/new front/blog-post.html @@ -0,0 +1,865 @@ + + + + + + + Hop On Hop Off — Finding the best tour + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + + +
+ + +
+
+
+
+

Finding the best tour might be a little challange!

+ +
+ + + 4.8/5 + + + + + London + + + + + from Mr. Bill + +
+
+ +
+
+

Intro

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+
+ + +
+

Part one

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+
+ + +
+

Part Two

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+
+
+ + +
+ +
+

Last Words

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

+
+
+ + +
+ + +
+

Review’s

+ +
+

+ + Submit review +

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

+ +
+ + + +
+ + + +
+
+
+
+ + + + + + + + diff --git a/new front/blog.html b/new front/blog.html new file mode 100644 index 0000000..2cad3bd --- /dev/null +++ b/new front/blog.html @@ -0,0 +1,1462 @@ + + + + + + + Hop On Hop Off — HOHO Weblog + + + + + + + + + + + + + + + + + +
+ +
+
+ + +
+ +
+

Tour & Travel Articles

+ +

HOHO Weblog

+ + +
+
+ + +
+
+
+

+ +
+ +
    +
  • +
    +
    + + 3 hours ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 Days ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/12/04 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 1 week ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/11/18 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/10/02 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/09/21 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 hours ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 Days ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/12/04 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 1 week ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/11/18 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/10/02 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/09/21 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 hours ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 Days ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/12/04 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 1 week ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/11/18 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/10/02 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/09/21 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 hours ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 Days ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/12/04 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 1 week ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/11/18 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 3 weeks ago +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/10/02 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
  • +
    +
    + + 2026/09/21 +
    +

    Finding the best tour might be a little challange!

    + + + + + + +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliquaLorem…

    +
    +
  • +
+ + + + +
+
+
+ + + + + + + + diff --git a/new front/contact.html b/new front/contact.html new file mode 100644 index 0000000..247c610 --- /dev/null +++ b/new front/contact.html @@ -0,0 +1,628 @@ + + + + + + + Hop On Hop Off — Contact us + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+ +

Contact us

+
+
+ +
+
+
+
+

Contact Information

+
    +
  • + +
    + Address + Up to 24 hrs +
    +
  • +
  • + +
    + CEO unit + +1 1234 5678 +
    +
  • +
  • + +
    + Support + +1 1234 5678 +
    +
  • +
  • + +
    + Mail + info@hoho.com +
    +
  • +
+ +
+ +
+

Send Ticket

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

+ +
+
+
+
+
+ + + + + + + + diff --git a/new front/css/style.css b/new front/css/style.css index b7fbb1a..d6b8c9f 100644 --- a/new front/css/style.css +++ b/new front/css/style.css @@ -58,7 +58,15 @@ html { body { margin: 0; - font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; + font-family: + "Plus Jakarta Sans", + system-ui, + -apple-system, + "Segoe UI", + Roboto, + Helvetica, + Arial, + sans-serif; font-size: var(--fs-body); line-height: 1.5; color: var(--c-ink); @@ -173,7 +181,10 @@ dd { border-radius: var(--r-pill); font-weight: 700; white-space: nowrap; - transition: transform 0.2s var(--ease), filter 0.2s var(--ease), background 0.2s var(--ease); + transition: + transform 0.2s var(--ease), + filter 0.2s var(--ease), + background 0.2s var(--ease); } .btn:hover { @@ -378,7 +389,9 @@ dd { .rail:hover .dcard.is-active:not(:hover):not(:focus-within) .ring-badge__dot, .rail:hover .acard.is-active:not(:hover):not(:focus-within) .ring-badge__dot, -.bus__grid:hover .tcard.is-active:not(:hover):not(:focus-within) .ring-badge__dot { +.bus__grid:hover + .tcard.is-active:not(:hover):not(:focus-within) + .ring-badge__dot { color: var(--c-white); background: var(--c-glass); } @@ -430,7 +443,6 @@ dd { } @keyframes nudge { - 0%, 60%, 100% { @@ -541,11 +553,14 @@ dd { opacity: 0; visibility: hidden; transform: translateY(-0.375rem); - transition: opacity 0.2s var(--ease), transform 0.2s var(--ease), visibility 0.2s; + transition: + opacity 0.2s var(--ease), + transform 0.2s var(--ease), + visibility 0.2s; } .nav__item--has-menu:hover .nav__submenu, -.nav__toggle[aria-expanded="true"]+.nav__submenu { +.nav__toggle[aria-expanded="true"] + .nav__submenu { opacity: 1; visibility: visible; transform: translateY(0); @@ -585,7 +600,9 @@ dd { height: 0.125rem; border-radius: 1px; background: var(--c-white); - transition: transform 0.25s var(--ease), opacity 0.25s var(--ease); + transition: + transform 0.25s var(--ease), + opacity 0.25s var(--ease); } .burger[aria-expanded="true"] span:nth-child(1) { @@ -609,7 +626,8 @@ dd { align-items: end; min-height: clamp(34rem, 88svh, 56rem); margin: var(--page-inset); - padding-block: calc(var(--header-h) + var(--sp-6)) clamp(3rem, 1.5rem + 6vw, 6rem); + padding-block: calc(var(--header-h) + var(--sp-6)) + clamp(3rem, 1.5rem + 6vw, 6rem); border-radius: var(--r-xl); isolation: isolate; } @@ -634,7 +652,11 @@ dd { position: absolute; inset: 0; background: - radial-gradient(39.91% 77.37% at 60.22% 50%, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%), + radial-gradient( + 39.91% 77.37% at 60.22% 50%, + rgba(0, 0, 0, 0) 0%, + rgba(0, 0, 0, 0.5) 100% + ), linear-gradient(180deg, rgba(44, 175, 194, 0) 51.6%, var(--c-teal) 100%); } @@ -823,15 +845,15 @@ dd { display: none; } -.rail>* { +.rail > * { scroll-snap-align: start; } -.rail--dest>* { +.rail--dest > * { flex: 0 0 calc((100% - 4 * var(--gap)) / 5); } -.rail--art>* { +.rail--art > * { flex: 0 0 calc((100% - 2 * var(--gap)) / 3); } @@ -870,7 +892,11 @@ dd { position: absolute; inset: 0; z-index: -1; - background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.65) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0) 35%, + rgba(0, 0, 0, 0.65) 100% + ); } /* highlighted card — gradients copied from Figma */ @@ -884,7 +910,11 @@ dd { .dcard:hover::after, .dcard:focus-within::after { background: - linear-gradient(180deg, rgba(255, 255, 255, 0) 51.6%, rgba(255, 255, 255, 0.4) 100%), + linear-gradient( + 180deg, + rgba(255, 255, 255, 0) 51.6%, + rgba(255, 255, 255, 0.4) 100% + ), linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), linear-gradient(180deg, rgba(44, 175, 194, 0) 37.33%, #2cafc2 84.53%); } @@ -897,7 +927,11 @@ dd { .rail:hover .dcard.is-active:not(:hover):not(:focus-within)::after, .rail:focus-within .dcard.is-active:not(:hover):not(:focus-within)::after { - background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.65) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0) 35%, + rgba(0, 0, 0, 0.65) 100% + ); } .dcard__desc { @@ -907,7 +941,9 @@ dd { top: clamp(2.75rem, 2rem + 2vw, 3.5rem); opacity: 0; transform: translateY(-0.375rem); - transition: opacity 0.25s var(--ease), transform 0.25s var(--ease); + transition: + opacity 0.25s var(--ease), + transform 0.25s var(--ease); } .dcard.is-active .dcard__desc, @@ -918,7 +954,9 @@ dd { } .rail:hover .dcard.is-active:not(:hover):not(:focus-within) .dcard__desc, -.rail:focus-within .dcard.is-active:not(:hover):not(:focus-within) .dcard__desc { +.rail:focus-within + .dcard.is-active:not(:hover):not(:focus-within) + .dcard__desc { opacity: 0; transform: translateY(-0.375rem); } @@ -1039,7 +1077,8 @@ dd { object-fit: contain; object-position: left; /* Figma tints the blue coach towards the teal brand colour */ - filter: hue-rotate(-32deg) saturate(1.15) drop-shadow(0 1rem 1.5rem rgba(0, 0, 0, 0.18)); + filter: hue-rotate(-32deg) saturate(1.15) + drop-shadow(0 1rem 1.5rem rgba(0, 0, 0, 0.18)); } .promo__note { @@ -1085,7 +1124,12 @@ dd { position: absolute; inset: 0; z-index: -1; - background: linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.1) 45%, rgba(0, 0, 0, 0.6) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0.45) 0%, + rgba(0, 0, 0, 0.1) 45%, + rgba(0, 0, 0, 0.6) 100% + ); } .tcard.is-active, @@ -1098,7 +1142,11 @@ dd { .tcard:hover::after, .tcard:focus-within::after { background: - radial-gradient(53.59% 137.34% at 50% 46.41%, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 100%), + radial-gradient( + 53.59% 137.34% at 50% 46.41%, + rgba(255, 255, 255, 0) 0%, + rgba(255, 255, 255, 0.4) 100% + ), linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), linear-gradient(180deg, rgba(44, 175, 194, 0) 37.33%, #2cafc2 84.53%); } @@ -1110,7 +1158,12 @@ dd { .bus__grid:hover .tcard.is-active:not(:hover):not(:focus-within)::after, .bus__grid:focus-within .tcard.is-active:not(:hover):not(:focus-within)::after { - background: linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0.1) 45%, rgba(0, 0, 0, 0.6) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0.45) 0%, + rgba(0, 0, 0, 0.1) 45%, + rgba(0, 0, 0, 0.6) 100% + ); } .tcard__k { @@ -1164,11 +1217,13 @@ dd { right: -34%; top: 42%; height: 28%; - background: linear-gradient(90deg, - rgba(44, 175, 194, 0) 0%, - rgba(44, 175, 194, 0.16) 22%, - rgba(44, 175, 194, 0.2) 55%, - rgba(44, 175, 194, 0) 100%); + background: linear-gradient( + 90deg, + rgba(44, 175, 194, 0) 0%, + rgba(44, 175, 194, 0.16) 22%, + rgba(44, 175, 194, 0.2) 55%, + rgba(44, 175, 194, 0) 100% + ); /* small blur only — the band keeps its straight parallel edges */ filter: blur(2px); /* 25deg == the roof ridge angle, measured off the artwork itself */ @@ -1295,8 +1350,20 @@ dd { .marquee { position: relative; overflow: hidden; - -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); - mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); + -webkit-mask-image: linear-gradient( + 90deg, + transparent, + #000 8%, + #000 92%, + transparent + ); + mask-image: linear-gradient( + 90deg, + transparent, + #000 8%, + #000 92%, + transparent + ); } .marquee__route { @@ -1420,14 +1487,23 @@ dd { position: absolute; inset: 0; z-index: -1; - background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.65) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0.35) 0%, + rgba(0, 0, 0, 0.05) 40%, + rgba(0, 0, 0, 0.65) 100% + ); } .acard.is-active .acard__media::after, .acard:hover .acard__media::after, .acard:focus-within .acard__media::after { background: - radial-gradient(53.59% 137.34% at 50% 46.41%, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 100%), + radial-gradient( + 53.59% 137.34% at 50% 46.41%, + rgba(255, 255, 255, 0) 0%, + rgba(255, 255, 255, 0.4) 100% + ), linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), linear-gradient(180deg, rgba(44, 175, 194, 0) 37.33%, #2cafc2 84.53%); } @@ -1446,8 +1522,15 @@ dd { box-shadow: none; } -.rail:hover .acard.is-active:not(:hover):not(:focus-within) .acard__media::after { - background: linear-gradient(180deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.05) 40%, rgba(0, 0, 0, 0.65) 100%); +.rail:hover + .acard.is-active:not(:hover):not(:focus-within) + .acard__media::after { + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0.35) 0%, + rgba(0, 0, 0, 0.05) 40%, + rgba(0, 0, 0, 0.65) 100% + ); } .acard__time { @@ -1559,7 +1642,7 @@ dd { gap: var(--sp-4); } -.acc+.acc { +.acc + .acc { border-top: 1px solid var(--c-line); padding-top: var(--sp-4); } @@ -1613,11 +1696,11 @@ dd { transition: grid-template-rows 0.3s var(--ease); } -.acc__q[aria-expanded="true"]+.acc__a { +.acc__q[aria-expanded="true"] + .acc__a { grid-template-rows: 1fr; } -.acc__a>* { +.acc__a > * { overflow: hidden; } @@ -1634,7 +1717,8 @@ dd { ========================================================= */ .footer { position: relative; - margin: calc(var(--sp-6) + var(--page-inset)) var(--page-inset) var(--page-inset); + margin: calc(var(--sp-6) + var(--page-inset)) var(--page-inset) + var(--page-inset); padding-block: var(--sp-6) 0; border-radius: var(--r-xl); color: var(--c-white); @@ -1770,7 +1854,11 @@ dd { padding: var(--sp-4); padding-bottom: clamp(2rem, 1rem + 3vw, 3rem); border-radius: var(--r-pill) var(--r-pill) 0 0; - background: linear-gradient(180deg, rgba(44, 175, 194, 0.99) 0%, var(--c-teal-20) 100%); + background: linear-gradient( + 180deg, + rgba(44, 175, 194, 0.99) 0%, + var(--c-teal-20) 100% + ); box-shadow: 0 0.75rem 8.25rem var(--c-teal); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); @@ -1785,7 +1873,7 @@ dd { Responsive ========================================================= */ @media (max-width: 78rem) { - .rail--dest>* { + .rail--dest > * { flex: 0 0 calc((100% - 3 * var(--gap)) / 4); } } @@ -1813,7 +1901,7 @@ dd { max-width: none; } - .rail--dest>* { + .rail--dest > * { flex: 0 0 calc((100% - 2 * var(--gap)) / 3); } @@ -1861,7 +1949,10 @@ dd { opacity: 0; visibility: hidden; transform: translateY(-0.5rem); - transition: opacity 0.25s var(--ease), transform 0.25s var(--ease), visibility 0.25s; + transition: + opacity 0.25s var(--ease), + transform 0.25s var(--ease), + visibility 0.25s; } .nav.is-open { @@ -1902,7 +1993,7 @@ dd { display: none; } - .nav__toggle[aria-expanded="true"]+.nav__submenu { + .nav__toggle[aria-expanded="true"] + .nav__submenu { display: grid; } @@ -1915,7 +2006,7 @@ dd { width: 100%; } - .rail--art>* { + .rail--art > * { flex: 0 0 calc((100% - var(--gap)) / 2); } @@ -1925,7 +2016,7 @@ dd { } @media (max-width: 48rem) { - .rail--dest>* { + .rail--dest > * { flex: 0 0 calc((100% - var(--gap)) / 2); } @@ -1988,11 +2079,11 @@ dd { flex: 1 1 auto; } - .rail--dest>* { + .rail--dest > * { flex: 0 0 min(72%, 15rem); } - .rail--art>* { + .rail--art > * { flex: 0 0 min(85%, 22rem); } @@ -2200,20 +2291,23 @@ dd { border-radius: 0.25rem; color: transparent; background: var(--c-white); - transition: color 0.2s var(--ease), background-color 0.2s var(--ease), border-color 0.2s var(--ease); + transition: + color 0.2s var(--ease), + background-color 0.2s var(--ease), + border-color 0.2s var(--ease); } .check:hover .check__box { border-color: rgba(0, 0, 0, 0.45); } -.check__input:checked+.check__box { +.check__input:checked + .check__box { color: var(--c-white); border-color: var(--c-black); background: var(--c-black); } -.check__input:focus-visible+.check__box { +.check__input:focus-visible + .check__box { outline: 2px solid var(--c-teal); outline-offset: 2px; } @@ -2225,7 +2319,7 @@ dd { transition: opacity 0.2s var(--ease); } -.check__input:checked~.check__text { +.check__input:checked ~ .check__text { opacity: 1; } @@ -2345,7 +2439,9 @@ dd { line-height: 1.5; text-align: justify; opacity: 0.7; - transition: color 0.25s var(--ease), opacity 0.25s var(--ease); + transition: + color 0.25s var(--ease), + opacity 0.25s var(--ease); } .titem.is-active .titem__desc, @@ -2357,7 +2453,9 @@ dd { /* hovering any card in the grid hands the highlight over to it */ .tgrid:hover .titem.is-active:not(:hover):not(:focus-within) .titem__desc, -.tgrid:focus-within .titem.is-active:not(:hover):not(:focus-within) .titem__desc { +.tgrid:focus-within + .titem.is-active:not(:hover):not(:focus-within) + .titem__desc { color: inherit; opacity: 0.7; } @@ -2369,11 +2467,17 @@ dd { .tgrid:hover .dcard.is-active:not(:hover):not(:focus-within)::after, .tgrid:focus-within .dcard.is-active:not(:hover):not(:focus-within)::after { - background: linear-gradient(180deg, rgba(0, 0, 0, 0) 35%, rgba(0, 0, 0, 0.65) 100%); + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0) 35%, + rgba(0, 0, 0, 0.65) 100% + ); } .tgrid:hover .dcard.is-active:not(:hover):not(:focus-within) .ring-badge__dot, -.tgrid:focus-within .dcard.is-active:not(:hover):not(:focus-within) .ring-badge__dot { +.tgrid:focus-within + .dcard.is-active:not(:hover):not(:focus-within) + .ring-badge__dot { color: var(--c-white); background: var(--c-glass); } @@ -2411,7 +2515,10 @@ dd { color: var(--c-black); background: transparent; cursor: pointer; - transition: color 0.2s var(--ease), background-color 0.2s var(--ease), border-color 0.2s var(--ease); + transition: + color 0.2s var(--ease), + background-color 0.2s var(--ease), + border-color 0.2s var(--ease); } .pager__num { @@ -2518,6 +2625,68 @@ dd { } } +/* ========================================================= + Weblog archive + ========================================================= */ +.hero--blog { + min-height: clamp(22rem, 52svh, 30rem); +} + +.filters--blog .filters__row { + padding: var(--sp-3); +} + +.filters--blog .fsearch { + flex-grow: 1; +} + +/* the article cards carry their own tint, so the grid only lays them out */ +.titem .acard { + width: 100%; + height: 100%; +} + +.titem .acard__excerpt { + padding: var(--sp-3) var(--sp-4) var(--sp-4); +} + +/* hovering any card in the grid hands the highlight over to it */ +.tgrid:hover .acard.is-active:not(:hover):not(:focus-within), +.tgrid:focus-within .acard.is-active:not(:hover):not(:focus-within) { + background: var(--c-white); +} + +.tgrid:hover .acard.is-active:not(:hover):not(:focus-within) .acard__media, +.tgrid:focus-within .acard.is-active:not(:hover):not(:focus-within) .acard__media { + box-shadow: none; +} + +.tgrid:hover .acard.is-active:not(:hover):not(:focus-within) .acard__media::after, +.tgrid:focus-within + .acard.is-active:not(:hover):not(:focus-within) + .acard__media::after { + background: linear-gradient( + 180deg, + rgba(0, 0, 0, 0.35) 0%, + rgba(0, 0, 0, 0.05) 40%, + rgba(0, 0, 0, 0.65) 100% + ); +} + +.tgrid:hover .acard.is-active:not(:hover):not(:focus-within) .acard__excerpt, +.tgrid:focus-within .acard.is-active:not(:hover):not(:focus-within) .acard__excerpt { + opacity: 0.7; + color: inherit; +} + +.tgrid:hover .acard.is-active:not(:hover):not(:focus-within) .ring-badge__dot, +.tgrid:focus-within + .acard.is-active:not(:hover):not(:focus-within) + .ring-badge__dot { + color: var(--c-white); + background: var(--c-glass); +} + /* ========================================================= Tour details — hero ========================================================= */ @@ -2530,7 +2699,8 @@ dd { --word: clamp(3rem, 0.4rem + 9.5vw, 11.25rem); min-height: clamp(26rem, 62svh, 38rem); margin: var(--page-inset); - padding-block: calc(var(--header-h) + var(--sp-5)) clamp(0.75rem, 0.4rem + 1vw, 1.5rem); + padding-block: calc(var(--header-h) + var(--sp-5)) + clamp(0.75rem, 0.4rem + 1vw, 1.5rem); border-radius: var(--r-xl); isolation: isolate; overflow: clip; @@ -2555,8 +2725,17 @@ dd { z-index: -1; border-radius: inherit; background: - radial-gradient(70% 50% at 50% 100%, rgba(255, 255, 255, 0.3) 0%, rgba(255, 255, 255, 0) 70%), - linear-gradient(180deg, rgba(27, 147, 166, 0.82) 0%, rgba(44, 175, 194, 0.62) 45%, rgba(111, 208, 221, 0.78) 100%); + radial-gradient( + 70% 50% at 50% 100%, + rgba(255, 255, 255, 0.3) 0%, + rgba(255, 255, 255, 0) 70% + ), + linear-gradient( + 180deg, + rgba(27, 147, 166, 0.82) 0%, + rgba(44, 175, 194, 0.62) 45%, + rgba(111, 208, 221, 0.78) 100% + ); } .hero-tour__inner { @@ -2590,7 +2769,7 @@ dd { font-weight: 500; } -.crumbs__list li+li::before { +.crumbs__list li + li::before { content: "/"; margin-inline-end: var(--sp-1); opacity: 0.5; @@ -2643,6 +2822,33 @@ dd { scale: 1.2; } +/* per-city figures: each cut-out has its own aspect, so each gets its own + offset and height (em against the display word, like the London one) */ +.hero-tour__figure--nashville { + left: 2.3em; + top: -0.5em; + height: 2.48em; +} + +.hero-tour__figure--paris { + left: 0.7em; + top: -0.55em; + height: 2.3em; +} + +.hero-tour__figure--sydney { + left: 1.05em; + top: 0.35em; + height: 2.3em; + scale: 1; +} + +.hero-tour__figure--san-diego { + left: 2.1em; + top: -0.26em; + height: 2.3em; +} + /* ========================================================= Tour details — layout ========================================================= */ @@ -2677,11 +2883,10 @@ dd { font-size: 1rem; font-weight: 500; line-height: 1.6; - text-align: justify; opacity: 0.7; } -.tour__text+.tour__text { +.tour__text + .tour__text { margin-block-start: var(--sp-3); } @@ -3094,3 +3299,822 @@ dd { width: 100%; } } + +/* ========================================================= + Weblog — single article + ========================================================= */ +.hero--post { + min-height: clamp(20rem, 46svh, 31rem); +} + +.post__inner { + display: flex; + flex-direction: column; + gap: clamp(3rem, 2rem + 3vw, 6.25rem); + max-width: 58.5rem; + margin-inline: auto; +} + +.post__head { + align-items: flex-start; + margin-block-end: var(--sp-5); +} + +.post__title { + max-width: 28rem; + margin: 0; + font-size: var(--fs-h2); + font-weight: 500; + line-height: 1.15; + letter-spacing: -0.01em; +} + +.post__h2 { + margin: 0; + font-size: var(--fs-h2); + font-weight: 500; + letter-spacing: -0.01em; +} + +.post__body { + display: flex; + flex-direction: column; + gap: var(--sp-5); +} + +.post__img { + width: 100%; + height: clamp(13rem, 8rem + 16vw, 22.1875rem); + border-radius: var(--r-card); + object-fit: cover; +} + +.post__pair { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: var(--sp-5); +} + +.post__rule { + width: 100%; + height: 1px; + margin: 0; + border: 0; + background: var(--c-line); +} + +/* --- tip callout --- */ +.tip { + display: flex; + align-items: center; + gap: var(--sp-3); + padding: var(--sp-4); + border-radius: var(--r-card); + background: var(--c-teal-05); + -webkit-backdrop-filter: blur(20px); + backdrop-filter: blur(20px); +} + +.tip__icon { + color: var(--c-teal); +} + +.tip__k { + display: block; + font-size: 0.75rem; + font-weight: 500; + color: var(--c-teal); +} + +.tip__text p { + margin: 0; + font-weight: 500; +} + +/* --- share --- */ +.share { + display: flex; + align-items: center; + justify-content: space-between; + flex-wrap: wrap; + gap: var(--sp-3) var(--sp-4); +} + +.share__title { + margin: 0; + font-size: var(--fs-h2); + font-weight: 500; + letter-spacing: -0.01em; +} + +.share__btns { + display: flex; + align-items: center; + flex-wrap: wrap; + gap: var(--sp-1); +} + +.share__btn { + display: inline-flex; + align-items: center; + justify-content: center; + min-width: 3rem; + height: 3rem; + padding-inline: var(--sp-3); + border: 1px solid var(--c-line); + border-radius: var(--r-pill); + font: inherit; + font-weight: 500; + color: var(--c-black); + background: var(--c-white); + cursor: pointer; + transition: + border-color 0.2s var(--ease), + background-color 0.2s var(--ease); +} + +.share__btn:hover { + border-color: var(--c-black); +} + +white); + border-color: var(--c-black); + background: var(--c-black); +} + +/* --- reviews --- */ +.reviews { + display: flex; + flex-direction: column; + gap: var(--sp-4); +} + +.rform { + display: flex; + flex-direction: column; + align-items: flex-end; + gap: var(--sp-3); + padding: var(--sp-3); + border: 1px solid var(--c-line); + border-radius: var(--r-card); + background: var(--c-white); +} + +.rform .field { + align-self: stretch; +} + +.rform__title { + display: flex; + align-items: center; + align-self: stretch; + gap: var(--sp-1); + margin: 0; + font-weight: 500; +} + +.rform__row { + display: flex; + align-self: stretch; + gap: var(--sp-3); +} + +.rinput { + width: 100%; + min-height: var(--control-h); + padding: 0 var(--sp-3); + border: 1px solid var(--c-white); + border-radius: var(--r-pill); + font: inherit; + font-size: 0.875rem; + font-weight: 500; + color: var(--c-black); + background: rgba(0, 0, 0, 0.05); + transition: border-color 0.2s var(--ease); +} + +.rinput::placeholder { + color: var(--c-black); + opacity: 0.5; +} + +.rinput:focus-visible { + outline: 0; + border-color: var(--c-teal); +} + +.rinput[aria-invalid="true"] { + border-color: var(--c-red); +} + +.rinput--area { + min-height: 8.25rem; + padding-block: var(--sp-2); + border-radius: var(--r-card); + resize: vertical; +} + +.rform__status { + align-self: stretch; + min-height: 1.25rem; + margin: 0; + font-size: 0.875rem; + font-weight: 500; + color: var(--c-teal); +} + +.rform__status.is-error { + color: var(--c-red); +} + +.rform__submit { + min-width: 10.625rem; +} + +.reviews__list { + position: relative; + display: flex; + flex-direction: column; + gap: var(--sp-3); +} + +.reviews__list.is-collapsed { + max-height: 68rem; + overflow: hidden; +} + +/* fade the cut-off review out so it reads as "more below" */ +.reviews__list.is-collapsed::after { + content: ""; + position: absolute; + inset: auto 0 0; + height: 8rem; + background: linear-gradient(180deg, rgba(255, 255, 255, 0), var(--c-white)); + pointer-events: none; +} + +.reviews__more { + align-self: center; + display: inline-flex; + align-items: center; + gap: var(--sp-1); + padding: var(--sp-1); + border: 0; + font: inherit; + font-weight: 500; + color: var(--c-teal); + background: none; + cursor: pointer; +} + +.reviews__more .icon { + transition: transform 0.2s var(--ease); +} + +.reviews__more[aria-expanded="true"] .icon { + transform: rotate(180deg); +} + +.rcard { + display: flex; + flex-direction: column; + gap: var(--sp-3); + padding: var(--sp-4) var(--sp-5); + border: 1px solid var(--c-line); + border-radius: var(--r-card); + background: var(--c-white); +} + +.rcard--tint { + border-color: transparent; + background: var(--c-teal-05); + -webkit-backdrop-filter: blur(20px); + backdrop-filter: blur(20px); +} + +.rcard__head { + display: flex; + align-items: center; + gap: var(--sp-2); +} + +.rcard__avatar { + width: 3rem; + aspect-ratio: 1; + border-radius: 50%; + object-fit: cover; +} + +.rcard__who { + display: flex; + flex-direction: column; + margin-inline-end: auto; +} + +.rcard__who b { + font-weight: 700; +} + +.rcard__who span { + font-weight: 500; + color: var(--c-teal); +} + +.rcard__text { + margin: 0; + font-weight: 500; + line-height: 1.5; + text-align: justify; + opacity: 0.5; +} + +.rcard__votes { + display: flex; + align-items: center; +} + +.vote { + display: grid; + place-items: center; + width: 2.5rem; + height: 2.5rem; + border: 0; + border-radius: 50%; + .share__btn--copy { + width: 9.125rem; +} + +col.share__btn--copy { + width: 9.125rem; +} + +or: var(--c-teal); + background: none; + cursor: pointer; + transition: background-color 0.2s var(--ease); +} + +.vote:hover { + background: var(--c-teal-05); +} + +.vote--down .icon { + transform: scaleY(-1); +} + +.vote[aria-pressed="true"] { + color: var(--c-white); + background: var(--c-teal); +} + +/* replies hang off the review above with a rule down the left */ +.replies { + position: relative; + display: flex; + flex-direction: column; + gap: var(--sp-3); + margin-inline-start: 6.875rem; + padding-block-start: 2.5rem; +} + +.replies__k { + position: absolute; + left: -2.5rem; + top: 0; + font-size: 0.75rem; + font-weight: 500; + opacity: 0.3; +} + +.replies::before { + content: ""; + position: absolute; + left: -3.375rem; + top: 0; + width: 1px; + height: 2.5rem; + background: var(--c-line); +} + +.replies__all { + align-self: flex-end; + font-weight: 500; + color: var(--c-teal); +} + +/* --- related --- */ +.related { + display: flex; + flex-direction: column; + gap: 2.5rem; +} + +.related__head { + display: flex; + align-items: center; + justify-content: space-between; + gap: var(--sp-3); +} + +.related__all { + width: 9.125rem; +} + +.tgrid--related { + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: var(--sp-4); +} + +@media (max-width: 40rem) { + .rform__row { + flex-direction: column; + } + + .rform__submit { + align-self: stretch; + } + + .rcard { + padding: var(--sp-3); + } + + .replies { + margin-inline-start: var(--sp-4); + padding-block-start: 0; + } + + .replies__k, + .replies::before { + display: none; + } + + .post__pair, + .tgrid--related { + grid-template-columns: minmax(0, 1fr); + } + + .share { + align-items: flex-start; + } +} + +/* ========================================================= + Inner pages — About, FAQ, Contact + ========================================================= */ +.hero--page { + align-items: start; + min-height: clamp(20rem, 28vw, 26.25rem); + padding-block: calc(var(--header-h) + var(--sp-5)) 0; +} + +.hero--page .hero__title { + max-width: none; + font-size: clamp(2rem, 1.5rem + 1.6vw, 3rem); +} + +.hero--page .crumbs__list { + color: var(--c-black); +} + +.hero--page .hero__content { + gap: var(--sp-2); +} + +.hero--page .hero__img { + object-position: center top; +} + +/* the cards climb up over the foot of the hero */ +.pagebody { + position: relative; + z-index: 2; + padding-block-start: 0; +} + +/* ---------- About ---------- */ +.hero--about { + align-items: center; + min-height: clamp(26rem, 38.5vw, 36rem); + padding-block: calc(var(--header-h) + var(--sp-2)) var(--sp-6); +} + +.about-hero__block { + display: flex; + flex-direction: column; + align-self: center; + align-items: flex-start; + gap: var(--sp-1); + width: max-content; + max-width: 100%; + margin-inline: auto; +} + +.about-hero__title { + margin: 0; + font-size: clamp(1.75rem, 1.2rem + 2.2vw, 2.5rem); + font-weight: 500; + color: var(--c-black); +} + +.about-hero__mark { + position: relative; + padding-inline-end: 1.5rem; +} + +.about-hero__logo { + display: block; + width: clamp(15rem, 10rem + 20vw, 29.75rem); + height: auto; + filter: drop-shadow(0 0.25rem 1.5rem rgba(0, 0, 0, 0.15)); +} + +.about-hero__chip { + position: absolute; + right: 0; + top: 2.75rem; + transform: rotate(-6deg); +} + +.aboutpage__inner { + max-width: 53.5rem; + margin-inline: auto; +} + +.aboutpage { + padding-block-end: 0; +} + +.tour__block--roomy { + gap: var(--sp-4); +} + +.astats { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: var(--sp-4); + margin: 0; + padding: var(--sp-4); + border: 1px dashed var(--c-line); + border-radius: var(--r-card); +} + +.astat { + display: flex; + flex-direction: column; + justify-content: flex-end; + gap: var(--sp-1); +} + +.astat__num { + margin: 0; + font-size: var(--fs-h2); + font-weight: 500; + line-height: 1; +} + +.astat__num span { + color: var(--c-teal); +} + +.astat__label { + margin: 0; + font-weight: 500; + opacity: 0.5; +} + +.agallery { + display: grid; + grid-template-columns: 350fr 245fr 245fr; + grid-template-rows: repeat(2, minmax(0, 1fr)); + gap: var(--sp-3); + height: clamp(16rem, 10rem + 20vw, 24.9375rem); +} + +.agallery img { + width: 100%; + height: 100%; + min-height: 0; + border-radius: var(--r-card); + object-fit: cover; +} + +.agallery__hero { + grid-row: span 2; +} + +.aboutpage + .testimonials { + padding-block-start: var(--sp-6); +} + +/* ---------- FAQ ---------- */ +.faqpage { + margin-block-start: calc(var(--sp-6) * -1.4); +} + +.faqpage__layout { + display: grid; + grid-template-columns: 19.125rem minmax(0, 1fr); + align-items: start; + gap: var(--sp-4); +} + +.catnav { + position: sticky; + top: calc(var(--header-h) + var(--sp-3)); + display: flex; + flex-direction: column; + gap: var(--sp-3); + padding: var(--sp-4); + border: 1px solid var(--c-line); + border-radius: var(--r-card); + background: var(--c-white); +} + +.catnav__title { + display: flex; + align-items: center; + gap: var(--sp-1); + margin: 0; + font-weight: 500; +} + +.catnav__list { + display: flex; + flex-direction: column; + gap: var(--sp-1); + margin: 0; + padding: 0; + list-style: none; +} + +.catnav__link { + display: flex; + align-items: center; + justify-content: space-between; + min-height: 3rem; + padding-inline: var(--sp-3); + border: 1px solid var(--c-line); + border-radius: var(--r-pill); + font-weight: 500; + color: var(--c-black); + background: var(--c-white); + transition: + color 0.2s var(--ease), + background-color 0.2s var(--ease), + border-color 0.2s var(--ease); +} + +.catnav__link:hover { + border-color: var(--c-black); +} + +.catnav__link.is-active { + color: var(--c-white); + border-color: var(--c-black); + background: var(--c-black); +} + +.faqpage__main { + display: flex; + flex-direction: column; + gap: var(--sp-4); + min-width: 0; +} + +.faqcard { + display: flex; + flex-direction: column; + gap: var(--sp-5); + padding: var(--sp-5); + border: 1px solid var(--c-line); + border-radius: var(--r-card); + background: var(--c-white); + scroll-margin-top: calc(var(--header-h) + var(--sp-3)); +} + +.faqcard__title { + margin: 0; + font-size: var(--fs-h2); + font-weight: 500; + letter-spacing: -0.01em; +} + +.faqcard .accordion { + gap: var(--sp-4); +} + +/* ---------- Contact ---------- */ +.contactpage { + margin-block-start: calc(var(--sp-6) * -3); +} + +.contactpage__grid { + display: grid; + grid-template-columns: 26rem minmax(0, 1fr); + gap: var(--sp-4); + width: min(60.375rem, 100%); + margin-inline-start: auto; +} + +.contactcard { + align-items: stretch; + align-content: start; +} + +.contactcard__social { + display: flex; + align-items: center; + justify-content: space-between; + flex-wrap: wrap; + gap: var(--sp-2); +} + +.facts--col { + grid-template-columns: minmax(0, 1fr); +} + +.ticketform { + min-height: 27rem; +} + +.ticketform__grow { + flex: 1 1 auto; +} + +.ticketform__grow .rinput--area { + flex: 1 1 auto; +} + +@media (max-width: 68.75rem) { + .astats { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + + .contactpage { + margin-block-start: calc(var(--sp-6) * -2); + } + + .contactpage__grid { + grid-template-columns: minmax(0, 1fr); + } +} + +@media (max-width: 56rem) { + .faqpage__layout { + grid-template-columns: minmax(0, 1fr); + } + + .catnav { + position: static; + } + + .catnav__list { + flex-direction: row; + flex-wrap: wrap; + } + + .catnav__link { + gap: var(--sp-1); + } +} + +@media (max-width: 40rem) { + .faqcard { + padding: var(--sp-3); + } + + .agallery { + height: auto; + grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); + grid-template-rows: none; + } + + .agallery__hero { + grid-column: span 2; + grid-row: auto; + aspect-ratio: 16 / 10; + } + + .agallery img { + aspect-ratio: 1; + } + + .about-hero__chip { + top: 1.75rem; + } +} + +/* the FAQ and contact photos are tinted to the brand teal, as in the design */ +.hero--faq .hero__media::after, +.hero--contact .hero__media::after { + content: ""; + position: absolute; + inset: 0; + background: var(--c-teal); + mix-blend-mode: hue; +} + +/* a closed answer must not keep its top padding, or every collapsed row looks taller */ +.acc__q[aria-expanded="false"] + .acc__a p { + padding-top: 0; +} diff --git a/new front/faq.html b/new front/faq.html new file mode 100644 index 0000000..abcfdac --- /dev/null +++ b/new front/faq.html @@ -0,0 +1,836 @@ + + + + + + + Hop On Hop Off — FAQ’s + + + + + + + + + + + + + + + + + +
+
+
+ +
+ +
+ +

FAQ’s

+
+
+ +
+
+ + +
+
+

General

+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+
+
+

Tours

+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+
+
+

Accounts

+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+
+
+

Other

+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+

+ +

+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut laboreLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore

+
+
+
+
+
+
+
+
+ + + + + + + + diff --git a/new front/index.html b/new front/index.html index ee51038..af9d671 100644 --- a/new front/index.html +++ b/new front/index.html @@ -303,10 +303,10 @@
  • Paris
  • -
  • Weblog
  • -
  • FAQ’s
  • -
  • Contact us
  • -
  • About us
  • +
  • Weblog
  • +
  • FAQ’s
  • +
  • Contact us
  • +
  • About us
  • @@ -1062,7 +1062,7 @@

    Hop On Hop OffMemorable

    - + About us

    Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua

    - + See all 3 hours ago

    Finding the best tour might be a little challange!

    -
    + 3 Days ago

    Finding the best tour might be a little challange!

    -
    + 2026/12/04 @@ -758,9 +758,9 @@
    - Duration 3 Days
    - Duration 1 Day
    - Duration Half day
    - Duration 3 Days
    - Duration 1 Day - Duration Half day - Duration 7 Days - Duration 1 Day - Duration Half day - Duration 7 Days - Duration 3 Days - Duration Half day - Duration 7 Days - Duration 3 Days - Duration 1 Day - Duration 7 Days - Duration 3 Days - Duration 1 Day - Duration Half day - Duration 3 Days - Duration 1 Day - Duration Half day - Duration 7 Days - Duration 1 Day - Duration Half day - Duration 7 Days - Duration 3 Days -